diff options
author | Igor Murashkin <iam@google.com> | 2015-06-18 17:25:31 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-06-18 17:25:32 +0000 |
commit | db3791542b8e836b60544b8941a17628c9aad1f9 (patch) | |
tree | d44bad11cc5694fc0de27a931c9c53dea40ba485 | |
parent | bf1a4101cf54e92fb289135429deb143d8a744b1 (diff) | |
parent | df6b78ea7d5d7803cbdc67d4606d4376c33725a4 (diff) | |
download | smali-db3791542b8e836b60544b8941a17628c9aad1f9.tar.gz |
Merge changes I46aa2ec8,I07990426android-m-preview-2android-m-preview-1
* changes:
Update antlr/flex scripts and bring-up smali to tip of tree
Merge remote-tracking branch 'remotes/aosp/upstream-master' into HEAD
88 files changed, 10747 insertions, 7672 deletions
@@ -5,3 +5,7 @@ /dexlib2/accessorTestGenerator/build /smali/build /util/build +*.iml +*.ipr +*.iws +.idea @@ -11,7 +11,7 @@ The primary webpage is http://smali.googlecode.com, and the source is also mirro #### Some useful links for getting started with smali -- [Official dex bytecode reference](http://s.android.com/tech/dalvik/dalvik-bytecode.html) +- [Official dex bytecode reference](https://source.android.com/devices/tech/dalvik/dalvik-bytecode.html) - [Registers wiki page](https://code.google.com/p/smali/wiki/Registers) - [Types, Methods and Fields wiki page](https://code.google.com/p/smali/wiki/TypesMethodsAndFields) -- [Official dex format reference](http://s.android.com/tech/dalvik/dex-format.html)
\ No newline at end of file +- [Official dex format reference](https://source.android.com/devices/tech/dalvik/dex-format.html) diff --git a/baksmali/build.gradle b/baksmali/build.gradle index 150eb6fd..4780cd76 100644 --- a/baksmali/build.gradle +++ b/baksmali/build.gradle @@ -29,8 +29,13 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -configurations { - proguard +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath depends.proguard_gradle + } } dependencies { @@ -41,8 +46,6 @@ dependencies { testCompile depends.junit testCompile project(':smali') - - proguard depends.proguard } processResources.inputs.property('version', version) @@ -59,11 +62,11 @@ task fatJar(type: Jar) { from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } manifest { - attributes("Main-Class": "org.jf.baksmali.main") + attributes('Main-Class': 'org.jf.baksmali.main') } doLast { - if (!System.getProperty("os.name").toLowerCase().contains("windows")) { + if (!System.getProperty('os.name').toLowerCase().contains('windows')) { ant.symlink(link: file("${destinationDir}/baksmali.jar"), resource: archivePath, overwrite: true) } } @@ -81,22 +84,22 @@ uploadArchives { } } -task proguard(type: JavaExec, dependsOn: fatJar) { +task proguard(type: proguard.gradle.ProGuardTask, dependsOn: fatJar) { def outFile = fatJar.destinationDir.getPath() + '/' + fatJar.baseName + '-' + fatJar.version + '-small' + '.' + fatJar.extension - inputs.file fatJar.archivePath - outputs.file outFile - - classpath = configurations.proguard - main = 'proguard.ProGuard' - args '-injars ' + fatJar.archivePath - args '-outjars ' + outFile - args '-libraryjars ' + System.properties['java.home'] + '/lib/rt.jar' - args '-dontobfuscate' - args '-dontoptimize' - args '-keep public class org.jf.baksmali.main { public static void main(java.lang.String[]); }' - args '-keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); }' - args '-dontwarn com.google.common.**' - args '-dontnote com.google.common.**' + + injars fatJar.archivePath + outjars outFile + + libraryjars "${System.properties['java.home']}/lib/rt.jar" + + dontobfuscate + dontoptimize + + keep 'public class org.jf.baksmali.main { public static void main(java.lang.String[]); }' + keepclassmembers 'enum * { public static **[] values(); public static ** valueOf(java.lang.String); }' + + dontwarn 'com.google.common.**' + dontnote 'com.google.common.**' } tasks.getByPath(':release').dependsOn(proguard) diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java index 12acd791..b3f9ae17 100644 --- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java +++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java @@ -41,8 +41,6 @@ import org.jf.dexlib2.iface.instruction.*; import org.jf.dexlib2.iface.instruction.formats.Instruction20bc; import org.jf.dexlib2.iface.instruction.formats.Instruction31t; import org.jf.dexlib2.iface.instruction.formats.UnknownInstruction; -import org.jf.dexlib2.iface.reference.FieldReference; -import org.jf.dexlib2.iface.reference.MethodReference; import org.jf.dexlib2.iface.reference.Reference; import org.jf.dexlib2.util.ReferenceUtil; import org.jf.util.ExceptionWithContext; @@ -132,26 +130,37 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem { } if (instruction instanceof Instruction31t) { - Opcode payloadOpcode; + boolean validPayload = true; + switch (instruction.getOpcode()) { case PACKED_SWITCH: - payloadOpcode = Opcode.PACKED_SWITCH_PAYLOAD; + int baseAddress = methodDef.getPackedSwitchBaseAddress( + this.codeAddress + ((Instruction31t)instruction).getCodeOffset()); + if (baseAddress == -1) { + validPayload = false; + } break; case SPARSE_SWITCH: - payloadOpcode = Opcode.SPARSE_SWITCH_PAYLOAD; + baseAddress = methodDef.getSparseSwitchBaseAddress( + this.codeAddress + ((Instruction31t)instruction).getCodeOffset()); + if (baseAddress == -1) { + validPayload = false; + } break; case FILL_ARRAY_DATA: - payloadOpcode = Opcode.ARRAY_PAYLOAD; + try { + methodDef.findPayloadOffset(this.codeAddress + ((Instruction31t)instruction).getCodeOffset(), + Opcode.ARRAY_PAYLOAD); + } catch (InvalidSwitchPayload ex) { + validPayload = false; + } break; default: throw new ExceptionWithContext("Invalid 31t opcode: %s", instruction.getOpcode()); } - try { - methodDef.findSwitchPayload(this.codeAddress + ((Instruction31t)instruction).getCodeOffset(), - payloadOpcode); - } catch (InvalidSwitchPayload ex) { - writer.write("#invalid payload reference"); + if (!validPayload) { + writer.write("#invalid payload reference\n"); commentOutInstruction = true; } } @@ -300,6 +309,11 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem { writer.write(", "); writeThirdRegister(writer); break; + case Format25x: + writeOpcode(writer); + writer.write(' '); + writeInvoke25xRegisters(writer); // vC, {vD, ...} + break; case Format35c: writeOpcode(writer); writer.write(' '); @@ -425,6 +439,43 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem { writer.write('}'); } + protected void writeInvoke25xRegisters(IndentingWriter writer) throws IOException { + OneFixedFourParameterRegisterInstruction instruction = + (OneFixedFourParameterRegisterInstruction)this.instruction; + final int parameterRegCount = instruction.getParameterRegisterCount(); + + writeRegister(writer, instruction.getRegisterFixedC()); // fixed register always present + + writer.write(", {"); + switch (parameterRegCount) { + case 1: + writeRegister(writer, instruction.getRegisterParameterD()); + break; + case 2: + writeRegister(writer, instruction.getRegisterParameterD()); + writer.write(", "); + writeRegister(writer, instruction.getRegisterParameterE()); + break; + case 3: + writeRegister(writer, instruction.getRegisterParameterD()); + writer.write(", "); + writeRegister(writer, instruction.getRegisterParameterE()); + writer.write(", "); + writeRegister(writer, instruction.getRegisterParameterF()); + break; + case 4: + writeRegister(writer, instruction.getRegisterParameterD()); + writer.write(", "); + writeRegister(writer, instruction.getRegisterParameterE()); + writer.write(", "); + writeRegister(writer, instruction.getRegisterParameterF()); + writer.write(", "); + writeRegister(writer, instruction.getRegisterParameterG()); + break; + } + writer.write('}'); + } + protected void writeInvokeRangeRegisters(IndentingWriter writer) throws IOException { RegisterRangeInstruction instruction = (RegisterRangeInstruction)this.instruction; diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/PackedSwitchMethodItem.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/PackedSwitchMethodItem.java index f0dd656b..30edfcd4 100644 --- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/PackedSwitchMethodItem.java +++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/PackedSwitchMethodItem.java @@ -28,6 +28,7 @@ package org.jf.baksmali.Adaptors.Format; +import org.jf.baksmali.Adaptors.CommentingIndentingWriter; import org.jf.baksmali.Adaptors.LabelMethodItem; import org.jf.baksmali.Adaptors.MethodDefinition; import org.jf.dexlib2.iface.instruction.SwitchElement; @@ -43,6 +44,9 @@ public class PackedSwitchMethodItem extends InstructionMethodItem<PackedSwitchPa private final List<PackedSwitchTarget> targets; private final int firstKey; + // Whether this sparse switch instruction should be commented out because it is never referenced + private boolean commentedOut; + public PackedSwitchMethodItem(MethodDefinition methodDef, int codeAddress, PackedSwitchPayload instruction) { super(methodDef, codeAddress, instruction); @@ -51,7 +55,6 @@ public class PackedSwitchMethodItem extends InstructionMethodItem<PackedSwitchPa targets = new ArrayList<PackedSwitchTarget>(); boolean first = true; - //TODO: does dalvik allow switc payloads with no cases? int firstKey = 0; if (baseCodeAddress >= 0) { for (SwitchElement switchElement: instruction.getSwitchElements()) { @@ -65,6 +68,7 @@ public class PackedSwitchMethodItem extends InstructionMethodItem<PackedSwitchPa targets.add(new PackedSwitchLabelTarget(label)); } } else { + commentedOut = true; for (SwitchElement switchElement: instruction.getSwitchElements()) { if (first) { firstKey = switchElement.getKey(); @@ -78,6 +82,9 @@ public class PackedSwitchMethodItem extends InstructionMethodItem<PackedSwitchPa @Override public boolean writeTo(IndentingWriter writer) throws IOException { + if (commentedOut) { + writer = new CommentingIndentingWriter(writer); + } writer.write(".packed-switch "); IntegerRenderer.writeTo(writer, firstKey); writer.indent(4); diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/SparseSwitchMethodItem.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/SparseSwitchMethodItem.java index 0e01f41b..68d7e92b 100644 --- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/SparseSwitchMethodItem.java +++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/SparseSwitchMethodItem.java @@ -28,6 +28,7 @@ package org.jf.baksmali.Adaptors.Format; +import org.jf.baksmali.Adaptors.CommentingIndentingWriter; import org.jf.baksmali.Adaptors.LabelMethodItem; import org.jf.baksmali.Adaptors.MethodDefinition; import org.jf.dexlib2.iface.instruction.SwitchElement; @@ -42,6 +43,9 @@ import java.util.List; public class SparseSwitchMethodItem extends InstructionMethodItem<SparseSwitchPayload> { private final List<SparseSwitchTarget> targets; + // Whether this sparse switch instruction should be commented out because it is never referenced + private boolean commentedOut; + public SparseSwitchMethodItem(MethodDefinition methodDef, int codeAddress, SparseSwitchPayload instruction) { super(methodDef, codeAddress, instruction); @@ -56,6 +60,7 @@ public class SparseSwitchMethodItem extends InstructionMethodItem<SparseSwitchPa targets.add(new SparseSwitchLabelTarget(switchElement.getKey(), label)); } } else { + commentedOut = true; //if we couldn't determine a base address, just use relative offsets rather than labels for (SwitchElement switchElement: instruction.getSwitchElements()) { targets.add(new SparseSwitchOffsetTarget(switchElement.getKey(), switchElement.getOffset())); @@ -65,6 +70,10 @@ public class SparseSwitchMethodItem extends InstructionMethodItem<SparseSwitchPa @Override public boolean writeTo(IndentingWriter writer) throws IOException { + if (commentedOut) { + writer = new CommentingIndentingWriter(writer); + } + writer.write(".sparse-switch\n"); writer.indent(4); for (SparseSwitchTarget target: targets) { diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/MethodDefinition.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/MethodDefinition.java index eb5caa67..4081a75c 100644 --- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/MethodDefinition.java +++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/MethodDefinition.java @@ -29,6 +29,7 @@ package org.jf.baksmali.Adaptors; import com.google.common.collect.ImmutableList; +import com.google.common.collect.Lists; import org.jf.baksmali.Adaptors.Debug.DebugMethodItem; import org.jf.baksmali.Adaptors.Format.InstructionMethodItemFactory; import org.jf.baksmali.baksmaliOptions; @@ -45,11 +46,14 @@ import org.jf.dexlib2.iface.debug.DebugItem; import org.jf.dexlib2.iface.instruction.Instruction; import org.jf.dexlib2.iface.instruction.OffsetInstruction; import org.jf.dexlib2.iface.instruction.ReferenceInstruction; +import org.jf.dexlib2.iface.instruction.formats.Instruction31t; import org.jf.dexlib2.iface.reference.MethodReference; +import org.jf.dexlib2.immutable.instruction.ImmutableInstruction31t; import org.jf.dexlib2.util.InstructionOffsetMap; import org.jf.dexlib2.util.InstructionOffsetMap.InvalidInstructionOffset; import org.jf.dexlib2.util.ReferenceUtil; import org.jf.dexlib2.util.SyntheticAccessorResolver; +import org.jf.dexlib2.util.SyntheticAccessorResolver.AccessedMember; import org.jf.dexlib2.util.TypeUtils; import org.jf.util.ExceptionWithContext; import org.jf.util.IndentingWriter; @@ -65,6 +69,8 @@ public class MethodDefinition { @Nonnull public final Method method; @Nonnull public final MethodImplementation methodImpl; @Nonnull public final ImmutableList<Instruction> instructions; + @Nonnull public final List<Instruction> effectiveInstructions; + @Nonnull public final ImmutableList<MethodParameter> methodParameters; public RegisterFormatter registerFormatter; @@ -86,10 +92,15 @@ public class MethodDefinition { instructions = ImmutableList.copyOf(methodImpl.getInstructions()); methodParameters = ImmutableList.copyOf(method.getParameters()); + effectiveInstructions = Lists.newArrayList(instructions); + packedSwitchMap = new SparseIntArray(0); sparseSwitchMap = new SparseIntArray(0); instructionOffsetMap = new InstructionOffsetMap(instructions); + int endOffset = instructionOffsetMap.getInstructionCodeOffset(instructions.size()-1) + + instructions.get(instructions.size()-1).getCodeUnits(); + for (int i=0; i<instructions.size(); i++) { Instruction instruction = instructions.get(i); @@ -99,11 +110,20 @@ public class MethodDefinition { int codeOffset = instructionOffsetMap.getInstructionCodeOffset(i); int targetOffset = codeOffset + ((OffsetInstruction)instruction).getCodeOffset(); try { - targetOffset = findSwitchPayload(targetOffset, Opcode.PACKED_SWITCH_PAYLOAD); + targetOffset = findPayloadOffset(targetOffset, Opcode.PACKED_SWITCH_PAYLOAD); } catch (InvalidSwitchPayload ex) { valid = false; } if (valid) { + if (packedSwitchMap.get(targetOffset, -1) != -1) { + Instruction payloadInstruction = + findSwitchPayload(targetOffset, Opcode.PACKED_SWITCH_PAYLOAD); + targetOffset = endOffset; + effectiveInstructions.set(i, new ImmutableInstruction31t(opcode, + ((Instruction31t)instruction).getRegisterA(), targetOffset-codeOffset)); + effectiveInstructions.add(payloadInstruction); + endOffset += payloadInstruction.getCodeUnits(); + } packedSwitchMap.append(targetOffset, codeOffset); } } else if (opcode == Opcode.SPARSE_SWITCH) { @@ -111,18 +131,27 @@ public class MethodDefinition { int codeOffset = instructionOffsetMap.getInstructionCodeOffset(i); int targetOffset = codeOffset + ((OffsetInstruction)instruction).getCodeOffset(); try { - targetOffset = findSwitchPayload(targetOffset, Opcode.SPARSE_SWITCH_PAYLOAD); + targetOffset = findPayloadOffset(targetOffset, Opcode.SPARSE_SWITCH_PAYLOAD); } catch (InvalidSwitchPayload ex) { valid = false; // The offset to the payload instruction was invalid. Nothing to do, except that we won't // add this instruction to the map. } if (valid) { + if (sparseSwitchMap.get(targetOffset, -1) != -1) { + Instruction payloadInstruction = + findSwitchPayload(targetOffset, Opcode.SPARSE_SWITCH_PAYLOAD); + targetOffset = endOffset; + effectiveInstructions.set(i, new ImmutableInstruction31t(opcode, + ((Instruction31t)instruction).getRegisterA(), targetOffset-codeOffset)); + effectiveInstructions.add(payloadInstruction); + endOffset += payloadInstruction.getCodeUnits(); + } sparseSwitchMap.append(targetOffset, codeOffset); } } } - }catch (Exception ex) { + } catch (Exception ex) { String methodString; try { methodString = ReferenceUtil.getMethodDescriptor(method); @@ -216,7 +245,36 @@ public class MethodDefinition { writer.write(".end method\n"); } - public int findSwitchPayload(int targetOffset, Opcode type) { + public Instruction findSwitchPayload(int targetOffset, Opcode type) { + int targetIndex; + try { + targetIndex = instructionOffsetMap.getInstructionIndexAtCodeOffset(targetOffset); + } catch (InvalidInstructionOffset ex) { + throw new InvalidSwitchPayload(targetOffset); + } + + //TODO: does dalvik let you pad with multiple nops? + //TODO: does dalvik let a switch instruction point to a non-payload instruction? + + Instruction instruction = instructions.get(targetIndex); + if (instruction.getOpcode() != type) { + // maybe it's pointing to a NOP padding instruction. Look at the next instruction + if (instruction.getOpcode() == Opcode.NOP) { + targetIndex += 1; + if (targetIndex < instructions.size()) { + instruction = instructions.get(targetIndex); + if (instruction.getOpcode() == type) { + return instruction; + } + } + } + throw new InvalidSwitchPayload(targetOffset); + } else { + return instruction; + } + } + + public int findPayloadOffset(int targetOffset, Opcode type) { int targetIndex; try { targetIndex = instructionOffsetMap.getInstructionIndexAtCodeOffset(targetOffset); @@ -343,15 +401,16 @@ public class MethodDefinition { private void addInstructionMethodItems(List<MethodItem> methodItems) { int currentCodeAddress = 0; - for (int i=0; i<instructions.size(); i++) { - Instruction instruction = instructions.get(i); + + for (int i=0; i<effectiveInstructions.size(); i++) { + Instruction instruction = effectiveInstructions.get(i); MethodItem methodItem = InstructionMethodItemFactory.makeInstructionFormatMethodItem(this, currentCodeAddress, instruction); methodItems.add(methodItem); - if (i != instructions.size() - 1) { + if (i != effectiveInstructions.size() - 1) { methodItems.add(new BlankMethodItem(currentCodeAddress)); } @@ -386,7 +445,7 @@ public class MethodDefinition { if (methodReference != null && SyntheticAccessorResolver.looksLikeSyntheticAccessor(methodReference.getName())) { - SyntheticAccessorResolver.AccessedMember accessedMember = + AccessedMember accessedMember = classDef.options.syntheticAccessorResolver.getAccessedMember(methodReference); if (accessedMember != null) { methodItems.add(new SyntheticAccessCommentMethodItem(accessedMember, currentCodeAddress)); diff --git a/baksmali/src/main/java/org/jf/baksmali/baksmali.java b/baksmali/src/main/java/org/jf/baksmali/baksmali.java index 765e77ec..47fa406d 100644 --- a/baksmali/src/main/java/org/jf/baksmali/baksmali.java +++ b/baksmali/src/main/java/org/jf/baksmali/baksmali.java @@ -67,7 +67,7 @@ public class baksmali { options.classPath = ClassPath.fromClassPath(options.bootClassPathDirs, Iterables.concat(options.bootClassPathEntries, extraClassPathEntries), dexFile, - options.apiLevel, options.checkPackagePrivateAccess); + options.apiLevel, options.checkPackagePrivateAccess, options.experimental); if (options.customInlineDefinitions != null) { options.inlineResolver = new CustomInlineMethodResolver(options.classPath, diff --git a/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java b/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java index ada28239..b6cc1571 100644 --- a/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java +++ b/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java @@ -71,6 +71,7 @@ public class baksmaliOptions { public boolean noAccessorComments = false; public boolean allowOdex = false; public boolean deodex = false; + public boolean experimental = false; public boolean ignoreErrors = false; public boolean checkPackagePrivateAccess = false; public boolean useImplicitReferences = false; diff --git a/baksmali/src/main/java/org/jf/baksmali/dump.java b/baksmali/src/main/java/org/jf/baksmali/dump.java index bd040e6d..1ef7df0e 100644 --- a/baksmali/src/main/java/org/jf/baksmali/dump.java +++ b/baksmali/src/main/java/org/jf/baksmali/dump.java @@ -40,7 +40,7 @@ import java.io.IOException; import java.io.Writer; public class dump { - public static void dump(DexBackedDexFile dexFile, String dumpFileName, int apiLevel) throws IOException { + public static void dump(DexBackedDexFile dexFile, String dumpFileName, int apiLevel, boolean experimental) throws IOException { if (dumpFileName != null) { Writer writer = null; @@ -52,7 +52,7 @@ public class dump { consoleWidth = 120; } - RawDexFile rawDexFile = new RawDexFile(new Opcodes(apiLevel), dexFile); + RawDexFile rawDexFile = new RawDexFile(new Opcodes(apiLevel, experimental), dexFile); DexAnnotator annotator = new DexAnnotator(rawDexFile, consoleWidth); annotator.writeAnnotations(writer); } catch (IOException ex) { diff --git a/baksmali/src/main/java/org/jf/baksmali/main.java b/baksmali/src/main/java/org/jf/baksmali/main.java index 28c42030..71598fa6 100644 --- a/baksmali/src/main/java/org/jf/baksmali/main.java +++ b/baksmali/src/main/java/org/jf/baksmali/main.java @@ -192,6 +192,9 @@ public class main { case 'x': options.deodex = true; break; + case 'X': + options.experimental = true; + break; case 'm': options.noAccessorComments = true; break; @@ -253,7 +256,8 @@ public class main { } //Read in and parse the dex file - DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, options.dexEntry, options.apiLevel); + DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, options.dexEntry, + options.apiLevel, options.experimental); if (dexFile.isOdexFile()) { if (!options.deodex) { @@ -270,13 +274,15 @@ public class main { if (dexFile instanceof DexBackedOdexFile) { options.bootClassPathEntries = ((DexBackedOdexFile)dexFile).getDependencies(); } else { - options.bootClassPathEntries = getDefaultBootClassPathForApi(options.apiLevel); + options.bootClassPathEntries = getDefaultBootClassPathForApi(options.apiLevel, + options.experimental); } } if (options.customInlineDefinitions == null && dexFile instanceof DexBackedOdexFile) { options.inlineResolver = - InlineMethodResolver.createInlineMethodResolver(((DexBackedOdexFile)dexFile).getOdexVersion()); + InlineMethodResolver.createInlineMethodResolver( + ((DexBackedOdexFile)dexFile).getOdexVersion()); } boolean errorOccurred = false; @@ -288,7 +294,7 @@ public class main { if (dumpFileName == null) { dumpFileName = commandLine.getOptionValue(inputDexFileName + ".dump"); } - dump.dump(dexFile, dumpFileName, options.apiLevel); + dump.dump(dexFile, dumpFileName, options.apiLevel, options.experimental); } if (errorOccurred) { @@ -352,6 +358,10 @@ public class main { "odex file") .create("x"); + Option experimentalOption = OptionBuilder.withLongOpt("experimental") + .withDescription("enable experimental opcodes to be disassembled, even if they aren't necessarily supported in the Android runtime yet") + .create("X"); + Option useLocalsOption = OptionBuilder.withLongOpt("use-locals") .withDescription("output the .locals directive with the number of non-parameter registers, rather" + " than the .register directive with the total number of register") @@ -469,6 +479,7 @@ public class main { basicOptions.addOption(outputDirOption); basicOptions.addOption(noParameterRegistersOption); basicOptions.addOption(deodexerantOption); + basicOptions.addOption(experimentalOption); basicOptions.addOption(useLocalsOption); basicOptions.addOption(sequentialLabelsOption); basicOptions.addOption(noDebugInfoOption); @@ -496,9 +507,9 @@ public class main { options.addOption((Option)option); } } - + @Nonnull - private static List<String> getDefaultBootClassPathForApi(int apiLevel) { + private static List<String> getDefaultBootClassPathForApi(int apiLevel, boolean experimental) { if (apiLevel < 9) { return Lists.newArrayList( "/system/framework/core.jar", diff --git a/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java b/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java index bf353e83..725032af 100644 --- a/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java +++ b/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java @@ -85,7 +85,7 @@ public class AnalysisTest { public void runTest(String test, boolean registerInfo) throws IOException, URISyntaxException { String dexFilePath = String.format("%s%sclasses.dex", test, File.separatorChar); - DexFile dexFile = DexFileFactory.loadDexFile(findResource(dexFilePath), 15); + DexFile dexFile = DexFileFactory.loadDexFile(findResource(dexFilePath), 15, false); baksmaliOptions options = new baksmaliOptions(); if (registerInfo) { diff --git a/baksmali/src/test/java/org/jf/baksmali/BaksmaliTestUtils.java b/baksmali/src/test/java/org/jf/baksmali/BaksmaliTestUtils.java new file mode 100644 index 00000000..1c570b6c --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/BaksmaliTestUtils.java @@ -0,0 +1,119 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import com.google.common.io.ByteStreams; +import junit.framework.Assert; + +import org.antlr.runtime.RecognitionException; +import org.jf.baksmali.Adaptors.ClassDefinition; +import org.jf.dexlib2.iface.ClassDef; +import org.jf.smali.SmaliTestUtils; +import org.jf.util.IndentingWriter; +import org.jf.util.TextUtils; + +import javax.annotation.Nonnull; +import java.io.IOException; +import java.io.InputStream; +import java.io.StringWriter; + +public class BaksmaliTestUtils { + public static void assertSmaliCompiledEquals(String source, String expected, + baksmaliOptions options, boolean stripComments) throws IOException, + RecognitionException { + ClassDef classDef = SmaliTestUtils.compileSmali(source, options.apiLevel, + options.experimental); + + // Remove unnecessary whitespace and optionally strip all comments from smali file + String normalizedActual = getNormalizedSmali(classDef, options, stripComments); + String normalizedExpected = normalizeSmali(expected, stripComments); + + // Assert that normalized strings are now equal + Assert.assertEquals(normalizedExpected, normalizedActual); + } + + public static void assertSmaliCompiledEquals(String source, String expected, + baksmaliOptions options) throws IOException, RecognitionException { + assertSmaliCompiledEquals(source, expected, options, false); + } + + public static void assertSmaliCompiledEquals(String source, String expected) + throws IOException, RecognitionException { + baksmaliOptions options = new baksmaliOptions(); + assertSmaliCompiledEquals(source, expected, options); + } + + @Nonnull + public static String normalizeSmali(@Nonnull String smaliText, boolean stripComments) { + if (stripComments) { + smaliText = TextUtils.stripComments(smaliText); + } + return TextUtils.normalizeWhitespace(smaliText); + } + + @Nonnull + public static String getNormalizedSmali(@Nonnull ClassDef classDef, @Nonnull baksmaliOptions options, + boolean stripComments) + throws IOException { + StringWriter stringWriter = new StringWriter(); + IndentingWriter writer = new IndentingWriter(stringWriter); + ClassDefinition classDefinition = new ClassDefinition(options, classDef); + classDefinition.writeTo(writer); + writer.close(); + return normalizeSmali(stringWriter.toString(), stripComments); + } + + @Nonnull + public static byte[] readResourceBytesFully(@Nonnull String fileName) throws IOException { + InputStream smaliStream = RoundtripTest.class.getClassLoader(). + getResourceAsStream(fileName); + if (smaliStream == null) { + org.junit.Assert.fail("Could not load " + fileName); + } + + return ByteStreams.toByteArray(smaliStream); + } + + @Nonnull + public static String readResourceFully(@Nonnull String fileName) throws IOException { + return readResourceFully(fileName, "UTF-8"); + } + + @Nonnull + public static String readResourceFully(@Nonnull String fileName, @Nonnull String encoding) + throws IOException { + return new String(readResourceBytesFully(fileName), encoding); + } + + // Static helpers class; do not instantiate. + private BaksmaliTestUtils() { throw new AssertionError(); } +} diff --git a/baksmali/src/test/java/org/jf/baksmali/DisassemblyTest.java b/baksmali/src/test/java/org/jf/baksmali/DisassemblyTest.java new file mode 100644 index 00000000..35304f7e --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/DisassemblyTest.java @@ -0,0 +1,104 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import com.google.common.collect.Iterables; +import org.jf.dexlib2.Opcodes; +import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.iface.ClassDef; +import org.junit.Assert; + +import javax.annotation.Nonnull; +import java.io.File; +import java.io.IOException; + +/** + * A base test class for performing a disassembly on a dex file and verifying the results + * + * The test accepts a single-class dex file as input, disassembles it, and verifies that + * the result equals a known-good output smali file. + * + * By default, the input and output files should be resources at [testDir]/[testName]Input.dex + * and [testDir]/[testName]Output.smali respectively + */ +public class DisassemblyTest { + protected final String testDir; + + protected DisassemblyTest(@Nonnull String testDir) { + this.testDir = testDir; + } + + protected DisassemblyTest() { + this.testDir = this.getClass().getSimpleName(); + } + + @Nonnull + protected String getInputFilename(@Nonnull String testName) { + return String.format("%s%s%sInput.dex", testDir, File.separatorChar, testName); + } + + @Nonnull + protected String getOutputFilename(@Nonnull String testName) { + return String.format("%s%s%sOutput.smali", testDir, File.separatorChar, testName); + } + + protected void runTest(@Nonnull String testName) { + runTest(testName, new baksmaliOptions()); + } + + protected void runTest(@Nonnull String testName, @Nonnull baksmaliOptions options) { + try { + // Load file from resources as a stream + String inputFilename = getInputFilename(testName); + byte[] inputBytes = BaksmaliTestUtils.readResourceBytesFully(getInputFilename(testName)); + + DexBackedDexFile inputDex = new DexBackedDexFile(new Opcodes(options.apiLevel, false), inputBytes); + Assert.assertEquals(1, inputDex.getClassCount()); + ClassDef inputClass = Iterables.getFirst(inputDex.getClasses(), null); + Assert.assertNotNull(inputClass); + String input = BaksmaliTestUtils.getNormalizedSmali(inputClass, options, true); + + String output; + if (getOutputFilename(testName).equals(inputFilename)) { + output = input; + } else { + output = BaksmaliTestUtils.readResourceFully(getOutputFilename(testName)); + } + output = BaksmaliTestUtils.normalizeSmali(output, true); + + // Run smali, baksmali, and then compare strings are equal (minus comments/whitespace) + Assert.assertEquals(output, input); + } catch (IOException ex) { + Assert.fail(); + } + } +} diff --git a/baksmali/src/test/java/org/jf/baksmali/IdenticalRoundtripTest.java b/baksmali/src/test/java/org/jf/baksmali/IdenticalRoundtripTest.java new file mode 100644 index 00000000..e636ee1e --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/IdenticalRoundtripTest.java @@ -0,0 +1,59 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import javax.annotation.Nonnull; +import java.io.File; + +/** + * A base test class for performing a roundtrip assembly/disassembly where the input and output + * should be identical. + * + * By default, the input/output file should be a resource at [testDir]/[testName].smali + */ +public abstract class IdenticalRoundtripTest extends RoundtripTest { + + public IdenticalRoundtripTest(@Nonnull String testDir) { + super(testDir); + } + + public IdenticalRoundtripTest() { + } + + @Nonnull @Override protected String getInputFilename(@Nonnull String testName) { + return String.format("%s%s%s.smali", testDir, File.separatorChar, testName); + } + + @Nonnull @Override protected String getOutputFilename(@Nonnull String testName) { + return getInputFilename(testName); + } +} diff --git a/baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java b/baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java index 0cda27a1..1f2ae5bf 100644 --- a/baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java +++ b/baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java @@ -31,22 +31,15 @@ package org.jf.baksmali; -import junit.framework.Assert; import org.antlr.runtime.RecognitionException; -import org.jf.baksmali.Adaptors.ClassDefinition; -import org.jf.dexlib2.iface.ClassDef; -import org.jf.smali.SmaliTestUtils; -import org.jf.util.IndentingWriter; -import org.jf.util.TextUtils; import org.junit.Test; import java.io.IOException; -import java.io.StringWriter; public class ImplicitReferenceTest { @Test public void testImplicitMethodReferences() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".method public static main([Ljava/lang/String;)V\n" + @@ -55,7 +48,7 @@ public class ImplicitReferenceTest { " invoke-static {p0}, LHelloWorld;->V()V\n" + " invoke-static {p0}, LHelloWorld;->I()V\n" + " return-void\n" + - ".end method"); + ".end method"; String expected = "" + ".class public LHelloWorld;\n" + @@ -72,19 +65,12 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = true; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } @Test public void testExplicitMethodReferences() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".method public static main([Ljava/lang/String;)V\n" + @@ -93,7 +79,7 @@ public class ImplicitReferenceTest { " invoke-static {p0}, LHelloWorld;->V()V\n" + " invoke-static {p0}, LHelloWorld;->I()V\n" + " return-void\n" + - ".end method"); + ".end method"; String expected = "" + ".class public LHelloWorld;\n" + @@ -110,25 +96,18 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = false; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } @Test public void testImplicitMethodLiterals() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".field public static field1:Ljava/lang/reflect/Method; = LHelloWorld;->toString()V\n" + ".field public static field2:Ljava/lang/reflect/Method; = LHelloWorld;->V()V\n" + ".field public static field3:Ljava/lang/reflect/Method; = LHelloWorld;->I()V\n" + - ".field public static field4:Ljava/lang/Class; = I"); + ".field public static field4:Ljava/lang/Class; = I"; String expected = "" + ".class public LHelloWorld;\n" + @@ -142,25 +121,18 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = true; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } @Test public void testExplicitMethodLiterals() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".field public static field1:Ljava/lang/reflect/Method; = LHelloWorld;->toString()V\n" + ".field public static field2:Ljava/lang/reflect/Method; = LHelloWorld;->V()V\n" + ".field public static field3:Ljava/lang/reflect/Method; = LHelloWorld;->I()V\n" + - ".field public static field4:Ljava/lang/Class; = I"); + ".field public static field4:Ljava/lang/Class; = I"; String expected = "" + ".class public LHelloWorld;\n" + @@ -174,19 +146,12 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = false; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } @Test public void testImplicitFieldReferences() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".method public static main([Ljava/lang/String;)V\n" + @@ -195,7 +160,7 @@ public class ImplicitReferenceTest { " sget v0, LHelloWorld;->I:I\n" + " sget v0, LHelloWorld;->V:I\n" + " return-void\n" + - ".end method"); + ".end method"; String expected = "" + ".class public LHelloWorld;\n" + @@ -212,19 +177,12 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = true; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } @Test public void testExplicitFieldReferences() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".method public static main([Ljava/lang/String;)V\n" + @@ -233,7 +191,7 @@ public class ImplicitReferenceTest { " sget v0, LHelloWorld;->I:I\n" + " sget v0, LHelloWorld;->V:I\n" + " return-void\n" + - ".end method"); + ".end method"; String expected = "" + ".class public LHelloWorld;\n" + @@ -250,24 +208,17 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = false; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } @Test public void testImplicitFieldLiterals() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".field public static field1:Ljava/lang/reflect/Field; = LHelloWorld;->someField:I\n" + ".field public static field2:Ljava/lang/reflect/Field; = LHelloWorld;->V:I\n" + - ".field public static field3:Ljava/lang/reflect/Field; = LHelloWorld;->I:I"); + ".field public static field3:Ljava/lang/reflect/Field; = LHelloWorld;->I:I"; String expected = "" + ".class public LHelloWorld;\n" + @@ -280,24 +231,17 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = true; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } @Test public void testExplicitFieldLiterals() throws IOException, RecognitionException { - ClassDef classDef = SmaliTestUtils.compileSmali("" + + String source = "" + ".class public LHelloWorld;\n" + ".super Ljava/lang/Object;\n" + ".field public static field1:Ljava/lang/reflect/Field; = LHelloWorld;->someField:I\n" + ".field public static field2:Ljava/lang/reflect/Field; = LHelloWorld;->V:I\n" + - ".field public static field3:Ljava/lang/reflect/Field; = LHelloWorld;->I:I"); + ".field public static field3:Ljava/lang/reflect/Field; = LHelloWorld;->I:I"; String expected = "" + ".class public LHelloWorld;\n" + @@ -310,13 +254,7 @@ public class ImplicitReferenceTest { baksmaliOptions options = new baksmaliOptions(); options.useImplicitReferences = false; - StringWriter stringWriter = new StringWriter(); - IndentingWriter writer = new IndentingWriter(stringWriter); - ClassDefinition classDefinition = new ClassDefinition(options, classDef); - classDefinition.writeTo(writer); - writer.close(); - - Assert.assertEquals(TextUtils.normalizeWhitespace(expected), - TextUtils.normalizeWhitespace(stringWriter.toString())); + BaksmaliTestUtils.assertSmaliCompiledEquals(source, expected, options); } + } diff --git a/baksmali/src/test/java/org/jf/baksmali/LambdaTest.java b/baksmali/src/test/java/org/jf/baksmali/LambdaTest.java new file mode 100644 index 00000000..5431df54 --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/LambdaTest.java @@ -0,0 +1,49 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import org.junit.Test; + +public class LambdaTest extends IdenticalRoundtripTest { + + private baksmaliOptions createOptions() { + baksmaliOptions options = new baksmaliOptions(); + options.apiLevel = 23; // since we need at least level 23 for lambda opcodes + options.experimental = true; // since these opcodes aren't implemented in runtime yet); + return options; + } + + @Test + public void testHelloWorldLambda() { + runTest("HelloWorldLambda", createOptions()); + } +} diff --git a/baksmali/src/test/java/org/jf/baksmali/ManyRegistersTest.java b/baksmali/src/test/java/org/jf/baksmali/ManyRegistersTest.java new file mode 100644 index 00000000..5a267161 --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/ManyRegistersTest.java @@ -0,0 +1,42 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import org.junit.Test; + +public class ManyRegistersTest extends IdenticalRoundtripTest { + + @Test + public void testManyRegisters() { + runTest("ManyRegisters"); + } +} diff --git a/baksmali/src/test/java/org/jf/baksmali/MultiSwitchTest.java b/baksmali/src/test/java/org/jf/baksmali/MultiSwitchTest.java new file mode 100644 index 00000000..cb29402f --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/MultiSwitchTest.java @@ -0,0 +1,42 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import org.junit.Test; + +public class MultiSwitchTest extends DisassemblyTest { + + @Test + public void testMultiSwitch() { + runTest("MultiSwitch"); + } +} diff --git a/baksmali/src/test/java/org/jf/baksmali/RoundtripTest.java b/baksmali/src/test/java/org/jf/baksmali/RoundtripTest.java new file mode 100644 index 00000000..c9ff2d4d --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/RoundtripTest.java @@ -0,0 +1,95 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import org.antlr.runtime.RecognitionException; +import org.junit.Assert; + +import javax.annotation.Nonnull; +import java.io.File; +import java.io.IOException; + +/** + * A base test class for performing a roundtrip assembly/disassembly + * + * The test accepts a smali file as input, performs a smali -> dex -> smali roundtrip, and + * verifies that the result equals a known-good output smali file. + * + * By default, the input and output files should be resources at [testDir]/[testName]Input.smali + * and [testDir]/[testName]Output.smali respectively + */ +public abstract class RoundtripTest { + protected final String testDir; + + protected RoundtripTest(@Nonnull String testDir) { + this.testDir = testDir; + } + + protected RoundtripTest() { + this.testDir = this.getClass().getSimpleName(); + } + + @Nonnull + protected String getInputFilename(@Nonnull String testName) { + return String.format("%s%s%sInput.smali", testDir, File.separatorChar, testName); + } + + @Nonnull + protected String getOutputFilename(@Nonnull String testName) { + return String.format("%s%s%sOutput.smali", testDir, File.separatorChar, testName); + } + + protected void runTest(@Nonnull String testName) { + runTest(testName, new baksmaliOptions()); + } + + protected void runTest(@Nonnull String testName, @Nonnull baksmaliOptions options) { + try { + // Load file from resources as a stream + String inputFilename = getInputFilename(testName); + String input = BaksmaliTestUtils.readResourceFully(getInputFilename(testName)); + String output; + if (getOutputFilename(testName).equals(inputFilename)) { + output = input; + } else { + output = BaksmaliTestUtils.readResourceFully(getOutputFilename(testName)); + } + + // Run smali, baksmali, and then compare strings are equal (minus comments/whitespace) + BaksmaliTestUtils.assertSmaliCompiledEquals(input, output, options, true); + } catch (IOException ex) { + Assert.fail(); + } catch (RecognitionException ex) { + Assert.fail(); + } + } +} diff --git a/baksmali/src/test/java/org/jf/baksmali/SwitchTest.java b/baksmali/src/test/java/org/jf/baksmali/SwitchTest.java new file mode 100644 index 00000000..48b64b22 --- /dev/null +++ b/baksmali/src/test/java/org/jf/baksmali/SwitchTest.java @@ -0,0 +1,41 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.baksmali; + +import org.junit.Test; + +public class SwitchTest extends RoundtripTest { + @Test + public void testUnorderedSparseSwitch() { + runTest("UnorderedSparseSwitch"); + } +} diff --git a/baksmali/src/test/resources/DuplicateTest/DuplicateDirectMethods.smali b/baksmali/src/test/resources/DuplicateTest/DuplicateDirectMethods.smali index b1f30c9a..fd43b021 100644 --- a/baksmali/src/test/resources/DuplicateTest/DuplicateDirectMethods.smali +++ b/baksmali/src/test/resources/DuplicateTest/DuplicateDirectMethods.smali @@ -22,7 +22,6 @@ # return-void # .end method - .method private clah()V .registers 1 diff --git a/baksmali/src/test/resources/DuplicateTest/DuplicateDirectVirtualMethods.smali b/baksmali/src/test/resources/DuplicateTest/DuplicateDirectVirtualMethods.smali index 8d87c1d8..52865737 100644 --- a/baksmali/src/test/resources/DuplicateTest/DuplicateDirectVirtualMethods.smali +++ b/baksmali/src/test/resources/DuplicateTest/DuplicateDirectVirtualMethods.smali @@ -17,7 +17,6 @@ # .end method - # virtual methods .method public alah()V .registers 1 @@ -40,7 +39,6 @@ # return-void # .end method - .method public clah()V .registers 1 diff --git a/baksmali/src/test/resources/DuplicateTest/DuplicateVirtualMethods.smali b/baksmali/src/test/resources/DuplicateTest/DuplicateVirtualMethods.smali index 74af4c58..3c080024 100644 --- a/baksmali/src/test/resources/DuplicateTest/DuplicateVirtualMethods.smali +++ b/baksmali/src/test/resources/DuplicateTest/DuplicateVirtualMethods.smali @@ -22,7 +22,6 @@ # return-void # .end method - .method public clah()V .registers 1 diff --git a/baksmali/src/test/resources/LambdaTest/HelloWorldLambda.smali b/baksmali/src/test/resources/LambdaTest/HelloWorldLambda.smali new file mode 100644 index 00000000..d70ced50 --- /dev/null +++ b/baksmali/src/test/resources/LambdaTest/HelloWorldLambda.smali @@ -0,0 +1,55 @@ +.class public LHelloWorldLambda; + +#Ye olde hello world application (with lambdas!) +#To assemble and run this on a phone or emulator: +# +#java -jar smali.jar -o classes.dex HelloWorldLambda.smali HelloWorldFunctionalInterface.smali +#zip HelloWorld.zip classes.dex +#adb push HelloWorld.zip /data/local +#adb shell dalvikvm -cp /data/local/HelloWorld.zip HelloWorld +# +#if you get out of memory type errors when running smali.jar, try +#java -Xmx512m -jar smali.jar HelloWorldLambda.smali +#instead + +.super Ljava/lang/Object; + +.method public static doHelloWorld(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + .registers 6 # 4 parameters, 2 locals + liberate-variable v0, p0, "helloworld" + + sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream; + invoke-virtual {v1, v0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V + + return-void +.end method + +.method public static main([Ljava/lang/String;)V + .registers 9 # 1 parameter, 8 locals + + sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream; + + const-string v1, "Hello World!" + const-string v2, "How" # vD + const-string v3, "are" # vE + const-string v4, "you" # vF + const-string v5, "doing?" # vG + + capture-variable v1, "helloworld" + + # TODO: do I need to pass the type of the lambda's functional interface here as a type id? + create-lambda v1, LHelloWorldLambda;->doHelloWorld(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + # Method descriptor is not required here, because only the single-abstract method is ever invoked. + invoke-lambda v1, {v2, v3, v4, v5} + + box-lambda v6, v1 + invoke-virtual {v6, v2, v3, v4, v5}, LHelloWorldFunctionalInterface;->applyFourStrings(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + + # FIXME: should be \HelloWorldFunctionalInterface; instead of L...; + + # TODO: do we really need the type descriptor here at all? + unbox-lambda v7, v6, LHelloWorldFunctionalInterface; + invoke-lambda v7, {v2, v3, v4, v5} + + return-void +.end method diff --git a/baksmali/src/test/resources/ManyRegistersTest/ManyRegisters.smali b/baksmali/src/test/resources/ManyRegistersTest/ManyRegisters.smali new file mode 100644 index 00000000..7f7c7bb1 --- /dev/null +++ b/baksmali/src/test/resources/ManyRegistersTest/ManyRegisters.smali @@ -0,0 +1,7 @@ +.class LManyRegisters; +.super Ljava/lang/Object; + +.method public manyRegisters()V + .registers 65535 + return-void +.end method
\ No newline at end of file diff --git a/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchInput.dex b/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchInput.dex Binary files differnew file mode 100644 index 00000000..6ef3d349 --- /dev/null +++ b/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchInput.dex diff --git a/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchInput.smali b/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchInput.smali new file mode 100644 index 00000000..b4fd27d8 --- /dev/null +++ b/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchInput.smali @@ -0,0 +1,72 @@ +.class public LMultiSwitch; +.super Ljava/lang/Object; +.source "Format31t.smali" + +.method public multi-packed-switch()V + .registers 1 + const p0, 0xc + packed-switch p0, :pswitch_data_12 + goto :goto_b + :pswitch_7 + return-void + :pswitch_8 + return-void + :pswitch_9 + return-void + :pswitch_a + return-void + :goto_b + packed-switch p0, :pswitch_data_12 + nop + return-void + :pswitch_f + return-void + :pswitch_10 + return-void + :pswitch_11 + return-void + :pswitch_12 + :pswitch_data_12 + .packed-switch 0xa + :pswitch_7 + :pswitch_8 + :pswitch_9 + :pswitch_a + .end packed-switch + +.end method + +.method public multi-sparse-switch()V + .registers 1 + const p0, 0xd + sparse-switch p0, :sswitch_data_12 + goto :goto_b + :sswitch_7 + return-void + :sswitch_8 + return-void + :sswitch_9 + return-void + :sswitch_a + return-void + :goto_b + sparse-switch p0, :sswitch_data_12 + nop + return-void + :sswitch_f + return-void + :sswitch_10 + return-void + :sswitch_11 + return-void + + :sswitch_12 + + :sswitch_data_12 + .sparse-switch + 0xa -> :sswitch_7 + 0xf -> :sswitch_9 + 0x14 -> :sswitch_8 + 0x63 -> :sswitch_a + .end sparse-switch +.end method
\ No newline at end of file diff --git a/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchOutput.smali b/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchOutput.smali new file mode 100644 index 00000000..f3aeeed5 --- /dev/null +++ b/baksmali/src/test/resources/MultiSwitchTest/MultiSwitchOutput.smali @@ -0,0 +1,119 @@ +.class public LMultiSwitch; +.super Ljava/lang/Object; +.source "Format31t.smali" + + +# virtual methods +.method public multi-packed-switch()V + .registers 1 + + const p0, 0xc + + packed-switch p0, :pswitch_data_14 + + goto :goto_b + + :pswitch_7 + return-void + + :pswitch_8 + return-void + + :pswitch_9 + return-void + + :pswitch_a + return-void + + :goto_b + packed-switch p0, :pswitch_data_20 + + nop + + :pswitch_f + return-void + + :pswitch_10 + return-void + + :pswitch_11 + return-void + + :pswitch_12 + return-void + + nop + + :pswitch_data_14 + .packed-switch 0xa + :pswitch_7 + :pswitch_8 + :pswitch_9 + :pswitch_a + .end packed-switch + + :pswitch_data_20 + .packed-switch 0xa + :pswitch_f + :pswitch_10 + :pswitch_11 + :pswitch_12 + .end packed-switch +.end method + +.method public multi-sparse-switch()V + .registers 1 + + const p0, 0xd + + sparse-switch p0, :sswitch_data_14 + + goto :goto_b + + :sswitch_7 + return-void + + :sswitch_8 + return-void + + :sswitch_9 + return-void + + :sswitch_a + return-void + + :goto_b + sparse-switch p0, :sswitch_data_26 + + nop + + :sswitch_f + return-void + + :sswitch_10 + return-void + + :sswitch_11 + return-void + + :sswitch_12 + return-void + + nop + + :sswitch_data_14 + .sparse-switch + 0xa -> :sswitch_7 + 0xf -> :sswitch_9 + 0x14 -> :sswitch_8 + 0x63 -> :sswitch_a + .end sparse-switch + + :sswitch_data_26 + .sparse-switch + 0xa -> :sswitch_f + 0xf -> :sswitch_11 + 0x14 -> :sswitch_10 + 0x63 -> :sswitch_12 + .end sparse-switch +.end method diff --git a/baksmali/src/test/resources/SwitchTest/UnorderedSparseSwitchInput.smali b/baksmali/src/test/resources/SwitchTest/UnorderedSparseSwitchInput.smali new file mode 100644 index 00000000..6e3d23d4 --- /dev/null +++ b/baksmali/src/test/resources/SwitchTest/UnorderedSparseSwitchInput.smali @@ -0,0 +1,35 @@ +.class public LUnorderedSparseSwitch; +.super Ljava/lang/Object; + +.method public static test_sparse-switch()V + .registers 1 + + const v0, 13 + + sparse-switch v0, :SparseSwitch + +:Label10 + return-void + +:Label20 + return-void + +:Label15 + return-void + +:Label13 + return-void + +:Label99 + return-void + +# Note: unordered keys +:SparseSwitch + .sparse-switch + 10 -> :Label10 + 20 -> :Label20 + 15 -> :Label15 + 99 -> :Label99 + 13 -> :Label13 + .end sparse-switch +.end method
\ No newline at end of file diff --git a/baksmali/src/test/resources/SwitchTest/UnorderedSparseSwitchOutput.smali b/baksmali/src/test/resources/SwitchTest/UnorderedSparseSwitchOutput.smali new file mode 100644 index 00000000..c4c455b6 --- /dev/null +++ b/baksmali/src/test/resources/SwitchTest/UnorderedSparseSwitchOutput.smali @@ -0,0 +1,28 @@ +.class public LUnorderedSparseSwitch; +.super Ljava/lang/Object; +.method public static test_sparse-switch()V +.registers 1 +const v0, 0xd +sparse-switch v0, :sswitch_data_c +:sswitch_6 +return-void +:sswitch_7 +return-void +:sswitch_8 +return-void +:sswitch_9 +return-void +:sswitch_a +return-void +nop + +# Note: ordered keys +:sswitch_data_c +.sparse-switch +0xa -> :sswitch_6 +0xd -> :sswitch_9 +0xf -> :sswitch_8 +0x14 -> :sswitch_7 +0x63 -> :sswitch_a +.end sparse-switch +.end method
\ No newline at end of file diff --git a/build.gradle b/build.gradle index a9ee7e0e..f0d1e00a 100644 --- a/build.gradle +++ b/build.gradle @@ -39,7 +39,7 @@ if (!('release' in gradle.startParameter.taskNames)) { def versionSuffix try { def git = org.eclipse.jgit.api.Git.open(file('.')) - def head = git.getRepository().getRef("HEAD") + def head = git.getRepository().getRef('HEAD') versionSuffix = head.getObjectId().abbreviate(8).name() if (!git.status().call().clean) { @@ -90,7 +90,9 @@ subprojects { stringtemplate: 'org.antlr:stringtemplate:3.2.1', commons_cli: 'commons-cli:commons-cli:1.2', jflex: 'de.jflex:jflex:1.4.3', - proguard: 'net.sf.proguard:proguard-base:4.8' + jflex_plugin: 'co.tomlee.gradle.plugins:gradle-jflex-plugin:0.0.1', + proguard_gradle: 'net.sf.proguard:proguard-gradle:5.2.1', + dx: 'com.google.android.tools:dx:1.7' ] } @@ -124,7 +126,7 @@ subprojects { } signing { - required { gradle.taskGraph.hasTask("uploadArchives") } + required { gradle.taskGraph.hasTask('uploadArchives') } sign configurations.archives } @@ -135,7 +137,7 @@ subprojects { beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } if (rootProject.hasProperty('sonatypeUsername') && rootProject.hasProperty('sonatypePassword')) { - repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") { + repository(url: 'https://oss.sonatype.org/service/local/staging/deploy/maven2/') { authentication(userName: sonatypeUsername, password: sonatypePassword) } } @@ -182,5 +184,5 @@ buildscript { } task wrapper(type: Wrapper) { - gradleVersion = '1.10' + gradleVersion = '2.3' }
\ No newline at end of file diff --git a/deodexerant/Android.mk b/deodexerant/Android.mk index c1921f9b..46a9dba8 100644 --- a/deodexerant/Android.mk +++ b/deodexerant/Android.mk @@ -39,4 +39,6 @@ LOCAL_SHARED_LIBRARIES := libdl LOCAL_MODULE_TAGS := optional -include $(BUILD_EXECUTABLE)
\ No newline at end of file +LOCAL_LDFLAGS := -Wl,--hash-style=sysv + +include $(BUILD_EXECUTABLE) diff --git a/dexlib2/build.gradle b/dexlib2/build.gradle index d39c5db9..dc3e853a 100644 --- a/dexlib2/build.gradle +++ b/dexlib2/build.gradle @@ -31,6 +31,7 @@ configurations { accessorTestGenerator + dx } dependencies { @@ -41,42 +42,13 @@ dependencies { testCompile depends.junit accessorTestGenerator project('accessorTestGenerator') + + dx depends.dx } ext.testAccessorOutputDir = file("${buildDir}/generated-accessor-test-sources") ext.testAccessorOutputFile = file("${buildDir}/generated-accessor-test-sources/org/jf/dexlib2/AccessorTypes.java") -sourceSets { - // The sources for building the test dex file for the accessor test - accessorTestDex { - java { - srcDir testAccessorOutputDir - } - } - - // The sources for the accessor test itself - accessorTest { - java { - compileClasspath += main.output - runtimeClasspath += main.output - } - } -} - -configurations { - accessorTestDexCompile.extendsFrom compile - accessorTestDexRuntime.extendsFrom runtime - - accessorTestCompile.extendsFrom testCompile - accessorTestRuntime.extendsFrom testRuntime -} - -idea { - module { - testSourceDirs += sourceSets.accessorTest.java.srcDirs - } -} - // You must manually execute this task to regenerate SyntheticAccessorFSM.java, after modifying the ragel file // e.g. ./gradlew ragel task ragel(type:Exec) { @@ -87,36 +59,48 @@ task ragel(type:Exec) { } task generateAccessorTestSource(type: JavaExec) { - outputs.dir file(testAccessorOutputDir) + doFirst { + file(testAccessorOutputFile.parent).mkdirs() + } - mkdir(file(testAccessorOutputFile).parent) + outputs.dir file(testAccessorOutputDir) + sourceSets['test'].java.srcDir file(testAccessorOutputDir) classpath = configurations.accessorTestGenerator main = 'org.jf.dexlib2.AccessorTestGenerator' args testAccessorOutputFile } -compileAccessorTestDexJava.dependsOn(generateAccessorTestSource) +compileTestJava.dependsOn generateAccessorTestSource -task generateAccessorTestDex(type: Exec, dependsOn: compileAccessorTestDexJava) { - def outputDex = file("${sourceSets.accessorTest.output.resourcesDir}/accessorTest.dex") - mkdir(outputDex.parent) +task generateAccessorTestDex(type: JavaExec, dependsOn: compileTestJava) { + def outputDex = file(new File(sourceSets.test.output.resourcesDir, 'accessorTest.dex')) - inputs.dir project.sourceSets.accessorTestDex.output.classesDir + doFirst { + file(outputDex.parent).mkdirs() + + // this has to be done in doFirst, so that the generated classes will be available. + // otherwise, it the tree will be populated while the build is being configured, + // which is before the compileTestJava has run + fileTree(project.sourceSets.test.output.classesDir) { + include 'org/jf/dexlib2/AccessorTypes*.class' + }.each { File file -> + args file + } + } + + inputs.dir(project.sourceSets.test.output.classesDir) outputs.file outputDex - sourceSets.accessorTest.resources + main 'com.android.dx.command.Main' + classpath = configurations.dx - workingDir project.sourceSets.accessorTestDex.output.classesDir - executable 'dx' + workingDir project.sourceSets.test.output.classesDir + //executable 'dx' args '--dex' + args '--no-strict' args "--output=${outputDex}" - args '.' -} - -task accessorTest(type: Test, dependsOn: generateAccessorTestDex) { - testClassesDir = project.sourceSets.accessorTest.output.classesDir - classpath = project.sourceSets.accessorTest.runtimeClasspath } +test.dependsOn generateAccessorTestDex uploadArchives { repositories.mavenDeployer { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java b/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java index d08da036..a1ddee2e 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java @@ -45,22 +45,26 @@ import java.util.zip.ZipFile; public final class DexFileFactory { @Nonnull - public static DexBackedDexFile loadDexFile(String path, int api) throws IOException { - return loadDexFile(new File(path), "classes.dex", new Opcodes(api)); + public static DexBackedDexFile loadDexFile(String path, int api, boolean experimental) + throws IOException { + return loadDexFile(new File(path), "classes.dex", new Opcodes(api, experimental)); } @Nonnull - public static DexBackedDexFile loadDexFile(File dexFile, int api) throws IOException { - return loadDexFile(dexFile, "classes.dex", new Opcodes(api)); + public static DexBackedDexFile loadDexFile(File dexFile, int api, boolean experimental) + throws IOException { + return loadDexFile(dexFile, "classes.dex", new Opcodes(api, experimental)); } @Nonnull - public static DexBackedDexFile loadDexFile(File dexFile, String dexEntry, int api) throws IOException { - return loadDexFile(dexFile, dexEntry, new Opcodes(api)); + public static DexBackedDexFile loadDexFile(File dexFile, String dexEntry, int api, + boolean experimental) throws IOException { + return loadDexFile(dexFile, dexEntry, new Opcodes(api, experimental)); } @Nonnull - public static DexBackedDexFile loadDexFile(File dexFile, String dexEntry, @Nonnull Opcodes opcodes) throws IOException { + public static DexBackedDexFile loadDexFile(File dexFile, String dexEntry, + @Nonnull Opcodes opcodes) throws IOException { ZipFile zipFile = null; boolean isZipFile = false; try { @@ -98,19 +102,22 @@ public final class DexFileFactory { } InputStream inputStream = new BufferedInputStream(new FileInputStream(dexFile)); - try { - return DexBackedDexFile.fromInputStream(opcodes, inputStream); - } catch (DexBackedDexFile.NotADexFile ex) { - // just eat it - } + try { + return DexBackedDexFile.fromInputStream(opcodes, inputStream); + } catch (DexBackedDexFile.NotADexFile ex) { + // just eat it + } - // Note: DexBackedDexFile.fromInputStream will reset inputStream back to the same position, if it fails + // Note: DexBackedDexFile.fromInputStream will reset inputStream back to the same position, if it fails - try { - return DexBackedOdexFile.fromInputStream(opcodes, inputStream); - } catch (DexBackedOdexFile.NotAnOdexFile ex) { - // just eat it + try { + return DexBackedOdexFile.fromInputStream(opcodes, inputStream); + } catch (DexBackedOdexFile.NotAnOdexFile ex) { + // just eat it + } + } finally { + inputStream.close(); } throw new ExceptionWithContext("%s is not an apk, dex file or odex file.", dexFile.getPath()); diff --git a/dexlib2/src/main/java/org/jf/dexlib2/Format.java b/dexlib2/src/main/java/org/jf/dexlib2/Format.java index d91b7432..ee34aa50 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/Format.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/Format.java @@ -51,6 +51,7 @@ public enum Format { Format22t(4), Format22x(4), Format23x(4), + Format25x(4), Format30t(6), Format31c(6), Format31i(6), diff --git a/dexlib2/src/main/java/org/jf/dexlib2/Opcode.java b/dexlib2/src/main/java/org/jf/dexlib2/Opcode.java index d0adee8c..3b082ee8 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/Opcode.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/Opcode.java @@ -269,13 +269,13 @@ public enum Opcode INVOKE_OBJECT_INIT_RANGE((short)0xf0, "invoke-object-init/range", minApi(14), ReferenceType.METHOD, Format.Format3rc, Opcode.ODEX_ONLY | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT | Opcode.CAN_INITIALIZE_REFERENCE), RETURN_VOID_BARRIER((short)0xf1, "return-void-barrier", minApi(11), ReferenceType.NONE, Format.Format10x, Opcode.ODEX_ONLY), IGET_QUICK((short)0xf2, "iget-quick", ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_REGISTER), - IGET_WIDE_QUICK((short)0xf3, "iget-wide-quick", ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_REGISTER | Opcode.SETS_WIDE_REGISTER), - IGET_OBJECT_QUICK((short)0xf4, "iget-object-quick", ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_REGISTER), - IPUT_QUICK((short)0xf5, "iput-quick", ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE), - IPUT_WIDE_QUICK((short)0xf6, "iput-wide-quick", ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE), - IPUT_OBJECT_QUICK((short)0xf7, "iput-object-quick", ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE), - INVOKE_VIRTUAL_QUICK((short)0xf8, "invoke-virtual-quick", ReferenceType.NONE, Format.Format35ms, Opcode.ODEX_ONLY | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT), - INVOKE_VIRTUAL_QUICK_RANGE((short)0xf9, "invoke-virtual-quick/range", ReferenceType.NONE, Format.Format3rms, Opcode.ODEX_ONLY | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT), + IGET_WIDE_QUICK((short)0xf3, "iget-wide-quick", maxApi(22), ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_REGISTER | Opcode.SETS_WIDE_REGISTER), + IGET_OBJECT_QUICK((short)0xf4, "iget-object-quick", maxApi(22), ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_REGISTER), + IPUT_QUICK((short)0xf5, "iput-quick", maxApi(22), ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE), + IPUT_WIDE_QUICK((short)0xf6, "iput-wide-quick", maxApi(22), ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE), + IPUT_OBJECT_QUICK((short)0xf7, "iput-object-quick", maxApi(22), ReferenceType.NONE, Format.Format22cs, Opcode.ODEX_ONLY | Opcode.ODEXED_INSTANCE_QUICK | Opcode.CAN_THROW | Opcode.CAN_CONTINUE), + INVOKE_VIRTUAL_QUICK((short)0xf8, "invoke-virtual-quick", maxApi(22), ReferenceType.NONE, Format.Format35ms, Opcode.ODEX_ONLY | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT), + INVOKE_VIRTUAL_QUICK_RANGE((short)0xf9, "invoke-virtual-quick/range", maxApi(22), ReferenceType.NONE, Format.Format3rms, Opcode.ODEX_ONLY | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT), INVOKE_SUPER_QUICK((short)0xfa, "invoke-super-quick", ReferenceType.NONE, Format.Format35ms, Opcode.ODEX_ONLY | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT), INVOKE_SUPER_QUICK_RANGE((short)0xfb, "invoke-super-quick/range", ReferenceType.NONE, Format.Format3rms, Opcode.ODEX_ONLY | Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT), @@ -285,7 +285,17 @@ public enum Opcode PACKED_SWITCH_PAYLOAD((short)0x100, "packed-switch-payload", ReferenceType.NONE, Format.PackedSwitchPayload, 0), SPARSE_SWITCH_PAYLOAD((short)0x200, "sparse-switch-payload", ReferenceType.NONE, Format.SparseSwitchPayload, 0), - ARRAY_PAYLOAD((short)0x300, "array-payload", ReferenceType.NONE, Format.ArrayPayload, 0); + ARRAY_PAYLOAD((short)0x300, "array-payload", ReferenceType.NONE, Format.ArrayPayload, 0), + + // Reuse the deprecated f3-ff opcodes in Art: + INVOKE_LAMBDA((short)0xf3, "invoke-lambda", minApi(23), ReferenceType.NONE, Format.Format25x, Opcode.CAN_THROW | Opcode.CAN_CONTINUE | Opcode.SETS_RESULT | Opcode.EXPERIMENTAL), + // TODO: What about JUMBO support if the string ID is too large? + CAPTURE_VARIABLE((short)0xf5, "capture-variable", minApi(23), ReferenceType.STRING, Format.Format21c, Opcode.EXPERIMENTAL), + CREATE_LAMBDA((short)0xf6, "create-lambda", minApi(23), ReferenceType.METHOD, Format.Format21c, Opcode.SETS_REGISTER | Opcode.EXPERIMENTAL), + // TODO: do we need a capture/liberate wide? + LIBERATE_VARIABLE((short)0xf7, "liberate-variable", minApi(23), ReferenceType.STRING, Format.Format22c, Opcode.SETS_REGISTER | Opcode.EXPERIMENTAL), + BOX_LAMBDA((short)0xf8, "box-lambda", minApi(23), ReferenceType.NONE, Format.Format22x, Opcode.SETS_REGISTER | Opcode.EXPERIMENTAL), + UNBOX_LAMBDA((short)0xf9, "unbox-lambda", minApi(23), ReferenceType.TYPE, Format.Format22c, Opcode.SETS_REGISTER | Opcode.EXPERIMENTAL); //if the instruction can throw an exception public static final int CAN_THROW = 0x1; @@ -309,6 +319,8 @@ public enum Opcode public static final int JUMBO_OPCODE = 0x200; //if the instruction can initialize an uninitialized object reference public static final int CAN_INITIALIZE_REFERENCE = 0x400; + //if the instruction is experimental (not potentially supported by Android runtime yet) + public static final int EXPERIMENTAL = 0x800; private static final int ALL_APIS = 0xFFFF0000; @@ -417,4 +429,8 @@ public enum Opcode public final boolean canInitializeReference() { return (flags & CAN_INITIALIZE_REFERENCE) != 0; } + + public final boolean isExperimental() { + return (flags & EXPERIMENTAL) != 0; + } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/Opcodes.java b/dexlib2/src/main/java/org/jf/dexlib2/Opcodes.java index d6e5532e..dd876813 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/Opcodes.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/Opcodes.java @@ -40,13 +40,14 @@ public class Opcodes { private final Opcode[] opcodesByValue; private final HashMap<String, Opcode> opcodesByName; - public Opcodes(int api) { + public Opcodes(int api, boolean experimental) { opcodesByValue = new Opcode[256]; opcodesByName = Maps.newHashMap(); for (Opcode opcode: Opcode.values()) { if (!opcode.format.isPayloadFormat) { - if (api <= opcode.getMaxApi() && api >= opcode.getMinApi()) { + if (api <= opcode.getMaxApi() && api >= opcode.getMinApi() && + (experimental || !opcode.isExperimental())) { opcodesByValue[opcode.value] = opcode; opcodesByName.put(opcode.name.toLowerCase(), opcode); } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java b/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java index 7efeb408..bd9cfb1b 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java @@ -164,18 +164,18 @@ public class ClassPath { @Nonnull public static ClassPath fromClassPath(Iterable<String> classPathDirs, Iterable<String> classPath, DexFile dexFile, - int api) { - return fromClassPath(classPathDirs, classPath, dexFile, api, api == 17); + int api, boolean experimental) { + return fromClassPath(classPathDirs, classPath, dexFile, api, api == 17, experimental); } @Nonnull public static ClassPath fromClassPath(Iterable<String> classPathDirs, Iterable<String> classPath, DexFile dexFile, - int api, boolean checkPackagePrivateAccess) { + int api, boolean checkPackagePrivateAccess, boolean experimental) { ArrayList<DexFile> dexFiles = Lists.newArrayList(); for (String classPathEntry: classPath) { try { - dexFiles.add(loadClassPathEntry(classPathDirs, classPathEntry, api)); + dexFiles.add(loadClassPathEntry(classPathDirs, classPathEntry, api, experimental)); } catch (ExceptionWithContext e){} } dexFiles.add(dexFile); @@ -186,7 +186,8 @@ public class ClassPath { @Nonnull private static DexFile loadClassPathEntry(@Nonnull Iterable<String> classPathDirs, - @Nonnull String bootClassPathEntry, int api) { + @Nonnull String bootClassPathEntry, int api, + boolean experimental) { File rawEntry = new File(bootClassPathEntry); // strip off the path - we only care about the filename String entryName = rawEntry.getName(); @@ -221,7 +222,7 @@ public class ClassPath { "warning: cannot open %s for reading. Will continue looking.", file.getPath())); } else { try { - return DexFileFactory.loadDexFile(file, api); + return DexFileFactory.loadDexFile(file, api, experimental); } catch (DexFileFactory.NoClassesDexException ex) { // ignore and continue } catch (Exception ex) { diff --git a/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpFields.java b/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpFields.java index d57ce961..2bb3e492 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpFields.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpFields.java @@ -73,6 +73,7 @@ public class DumpFields { ArrayList<String> bootClassPathDirs = Lists.newArrayList(); String outFile = "fields.txt"; int apiLevel = 15; + boolean experimental = false; for (int i=0; i<parsedOptions.length; i++) { Option option = parsedOptions[i]; @@ -88,6 +89,9 @@ public class DumpFields { case 'a': apiLevel = Integer.parseInt(commandLine.getOptionValue("a")); break; + case 'X': + experimental = true; + break; default: assert false; } @@ -107,9 +111,9 @@ public class DumpFields { } try { - DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, apiLevel); + DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, apiLevel, experimental); Iterable<String> bootClassPaths = Splitter.on(":").split("core.jar:ext.jar:framework.jar:android.policy.jar:services.jar"); - ClassPath classPath = ClassPath.fromClassPath(bootClassPathDirs, bootClassPaths, dexFile, apiLevel); + ClassPath classPath = ClassPath.fromClassPath(bootClassPathDirs, bootClassPaths, dexFile, apiLevel, experimental); FileOutputStream outStream = new FileOutputStream(outFile); for (ClassDef classDef: dexFile.getClasses()) { @@ -163,8 +167,14 @@ public class DumpFields { .withArgName("API_LEVEL") .create("a"); + Option experimentalOption = OptionBuilder.withLongOpt("experimental") + .withDescription("Enable dumping experimental opcodes, that aren't necessarily " + + "supported by the android runtime yet.") + .create("X"); + options.addOption(classPathDirOption); options.addOption(outputFileOption); options.addOption(apiLevelOption); + options.addOption(experimentalOption); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpVtables.java b/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpVtables.java index 0d7656c3..193c0d39 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpVtables.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/analysis/DumpVtables.java @@ -71,6 +71,7 @@ public class DumpVtables { ArrayList<String> bootClassPathDirs = Lists.newArrayList(); String outFile = "vtables.txt"; int apiLevel = 15; + boolean experimental = false; for (int i=0; i<parsedOptions.length; i++) { Option option = parsedOptions[i]; @@ -86,6 +87,9 @@ public class DumpVtables { case 'a': apiLevel = Integer.parseInt(commandLine.getOptionValue("a")); break; + case 'X': + experimental = true; + break; default: assert false; } @@ -105,9 +109,9 @@ public class DumpVtables { } try { - DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, apiLevel); + DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, apiLevel, experimental); Iterable<String> bootClassPaths = Splitter.on(":").split("core.jar:ext.jar:framework.jar:android.policy.jar:services.jar"); - ClassPath classPath = ClassPath.fromClassPath(bootClassPathDirs, bootClassPaths, dexFile, apiLevel); + ClassPath classPath = ClassPath.fromClassPath(bootClassPathDirs, bootClassPaths, dexFile, apiLevel, experimental); FileOutputStream outStream = new FileOutputStream(outFile); for (ClassDef classDef: dexFile.getClasses()) { @@ -167,8 +171,14 @@ public class DumpVtables { .withArgName("API_LEVEL") .create("a"); + Option experimentalOption = OptionBuilder.withLongOpt("experimental") + .withDescription("Enable dumping experimental opcodes, that aren't necessarily " + + "supported by the android runtime yet.") + .create("X"); + options.addOption(classPathDirOption); options.addOption(outputFileOption); options.addOption(apiLevelOption); + options.addOption(experimentalOption); } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/builder/MutableMethodImplementation.java b/dexlib2/src/main/java/org/jf/dexlib2/builder/MutableMethodImplementation.java index f734e018..84981221 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/builder/MutableMethodImplementation.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/builder/MutableMethodImplementation.java @@ -511,82 +511,90 @@ public class MutableMethodImplementation implements MethodImplementation { @Nonnull Instruction instruction) { switch (instruction.getOpcode().format) { case Format10t: - setInstruction(location, newBuilderInstruction10t(location.codeAddress, codeAddressToIndex, - (Instruction10t)instruction)); + setInstruction(location, newBuilderInstruction10t(location.codeAddress, + codeAddressToIndex, + (Instruction10t) instruction)); return; case Format10x: - setInstruction(location, newBuilderInstruction10x((Instruction10x)instruction)); + setInstruction(location, newBuilderInstruction10x((Instruction10x) instruction)); return; case Format11n: - setInstruction(location, newBuilderInstruction11n((Instruction11n)instruction)); + setInstruction(location, newBuilderInstruction11n((Instruction11n) instruction)); return; case Format11x: - setInstruction(location, newBuilderInstruction11x((Instruction11x)instruction)); + setInstruction(location, newBuilderInstruction11x((Instruction11x) instruction)); return; case Format12x: - setInstruction(location, newBuilderInstruction12x((Instruction12x)instruction)); + setInstruction(location, newBuilderInstruction12x((Instruction12x) instruction)); return; case Format20bc: - setInstruction(location, newBuilderInstruction20bc((Instruction20bc)instruction)); + setInstruction(location, newBuilderInstruction20bc((Instruction20bc) instruction)); return; case Format20t: - setInstruction(location, newBuilderInstruction20t(location.codeAddress, codeAddressToIndex, - (Instruction20t)instruction)); + setInstruction(location, newBuilderInstruction20t(location.codeAddress, + codeAddressToIndex, + (Instruction20t) instruction)); return; case Format21c: - setInstruction(location, newBuilderInstruction21c((Instruction21c)instruction)); + setInstruction(location, newBuilderInstruction21c((Instruction21c) instruction)); return; case Format21ih: - setInstruction(location, newBuilderInstruction21ih((Instruction21ih)instruction)); + setInstruction(location, newBuilderInstruction21ih((Instruction21ih) instruction)); return; case Format21lh: - setInstruction(location, newBuilderInstruction21lh((Instruction21lh)instruction)); + setInstruction(location, newBuilderInstruction21lh((Instruction21lh) instruction)); return; case Format21s: - setInstruction(location, newBuilderInstruction21s((Instruction21s)instruction)); + setInstruction(location, newBuilderInstruction21s((Instruction21s) instruction)); return; case Format21t: - setInstruction(location, newBuilderInstruction21t(location.codeAddress, codeAddressToIndex, - (Instruction21t)instruction)); + setInstruction(location, newBuilderInstruction21t(location.codeAddress, + codeAddressToIndex, + (Instruction21t) instruction)); return; case Format22b: - setInstruction(location, newBuilderInstruction22b((Instruction22b)instruction)); + setInstruction(location, newBuilderInstruction22b((Instruction22b) instruction)); return; case Format22c: - setInstruction(location, newBuilderInstruction22c((Instruction22c)instruction)); + setInstruction(location, newBuilderInstruction22c((Instruction22c) instruction)); return; case Format22s: - setInstruction(location, newBuilderInstruction22s((Instruction22s)instruction)); + setInstruction(location, newBuilderInstruction22s((Instruction22s) instruction)); return; case Format22t: - setInstruction(location, newBuilderInstruction22t(location.codeAddress, codeAddressToIndex, - (Instruction22t)instruction)); + setInstruction(location, newBuilderInstruction22t(location.codeAddress, + codeAddressToIndex, + (Instruction22t) instruction)); return; case Format22x: - setInstruction(location, newBuilderInstruction22x((Instruction22x)instruction)); + setInstruction(location, newBuilderInstruction22x((Instruction22x) instruction)); return; case Format23x: - setInstruction(location, newBuilderInstruction23x((Instruction23x)instruction)); + setInstruction(location, newBuilderInstruction23x((Instruction23x) instruction)); + return; + case Format25x: + setInstruction(location, newBuilderInstruction25x((Instruction25x) instruction)); return; case Format30t: - setInstruction(location, newBuilderInstruction30t(location.codeAddress, codeAddressToIndex, - (Instruction30t)instruction)); + setInstruction(location, newBuilderInstruction30t(location.codeAddress, + codeAddressToIndex, + (Instruction30t) instruction)); return; case Format31c: - setInstruction(location, newBuilderInstruction31c((Instruction31c)instruction)); + setInstruction(location, newBuilderInstruction31c((Instruction31c) instruction)); return; case Format31i: - setInstruction(location, newBuilderInstruction31i((Instruction31i)instruction)); + setInstruction(location, newBuilderInstruction31i((Instruction31i) instruction)); return; case Format31t: setInstruction(location, newBuilderInstruction31t(location, codeAddressToIndex, - (Instruction31t)instruction)); + (Instruction31t) instruction)); return; case Format32x: - setInstruction(location, newBuilderInstruction32x((Instruction32x)instruction)); + setInstruction(location, newBuilderInstruction32x((Instruction32x) instruction)); return; case Format35c: - setInstruction(location, newBuilderInstruction35c((Instruction35c)instruction)); + setInstruction(location, newBuilderInstruction35c((Instruction35c) instruction)); return; case Format3rc: setInstruction(location, newBuilderInstruction3rc((Instruction3rc)instruction)); @@ -821,6 +829,18 @@ public class MutableMethodImplementation implements MethodImplementation { } @Nonnull + private BuilderInstruction25x newBuilderInstruction25x(@Nonnull Instruction25x instruction) { + return new BuilderInstruction25x( + instruction.getOpcode(), + instruction.getParameterRegisterCount(), + instruction.getRegisterFixedC(), + instruction.getRegisterParameterD(), + instruction.getRegisterParameterE(), + instruction.getRegisterParameterF(), + instruction.getRegisterParameterG()); + } + + @Nonnull private BuilderInstruction3rc newBuilderInstruction3rc(@Nonnull Instruction3rc instruction) { return new BuilderInstruction3rc( instruction.getOpcode(), diff --git a/dexlib2/src/main/java/org/jf/dexlib2/builder/instruction/BuilderInstruction25x.java b/dexlib2/src/main/java/org/jf/dexlib2/builder/instruction/BuilderInstruction25x.java new file mode 100644 index 00000000..3783d2b6 --- /dev/null +++ b/dexlib2/src/main/java/org/jf/dexlib2/builder/instruction/BuilderInstruction25x.java @@ -0,0 +1,82 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.dexlib2.builder.instruction; + +import org.jf.dexlib2.Format; +import org.jf.dexlib2.Opcode; +import org.jf.dexlib2.builder.BuilderInstruction; +import org.jf.dexlib2.iface.instruction.formats.Instruction25x; +import org.jf.dexlib2.util.Preconditions; + +import javax.annotation.Nonnull; + +public class BuilderInstruction25x extends BuilderInstruction implements Instruction25x { + public static final Format FORMAT = Format.Format25x; + + protected final int parameterRegisterCount; + protected final int registerClosure; + protected final int registerD; + protected final int registerE; + protected final int registerF; + protected final int registerG; + + public BuilderInstruction25x(@Nonnull Opcode opcode, + int parameterRegisterCount, + int registerClosure, + int registerD, + int registerE, + int registerF, + int registerG) { + super(opcode); + this.parameterRegisterCount = + Preconditions.check25xParameterRegisterCount(parameterRegisterCount); + this.registerClosure = Preconditions.checkNibbleRegister(registerClosure); //at least 1 reg + this.registerD = (parameterRegisterCount>0) ? + Preconditions.checkNibbleRegister(registerD) : 0; + this.registerE = (parameterRegisterCount>1) ? + Preconditions.checkNibbleRegister(registerE) : 0; + this.registerF = (parameterRegisterCount>2) ? + Preconditions.checkNibbleRegister(registerF) : 0; + this.registerG = (parameterRegisterCount>3) ? + Preconditions.checkNibbleRegister(registerG) : 0; + } + + @Override public int getRegisterCount() { return parameterRegisterCount + 1; } + @Override public int getParameterRegisterCount() { return parameterRegisterCount; } + @Override public int getRegisterFixedC() { return registerClosure; } + @Override public int getRegisterParameterD() { return registerD; } + @Override public int getRegisterParameterE() { return registerE; } + @Override public int getRegisterParameterF() { return registerF; } + @Override public int getRegisterParameterG() { return registerG; } + + @Override public Format getFormat() { return FORMAT; } +} diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java index a4c29990..ac82f4b4 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction.java @@ -115,6 +115,8 @@ public abstract class DexBackedInstruction implements Instruction { return new DexBackedInstruction22x(dexFile, opcode, instructionStartOffset); case Format23x: return new DexBackedInstruction23x(dexFile, opcode, instructionStartOffset); + case Format25x: + return new DexBackedInstruction25x(dexFile, opcode, instructionStartOffset); case Format30t: return new DexBackedInstruction30t(dexFile, opcode, instructionStartOffset); case Format31c: diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction25x.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction25x.java new file mode 100644 index 00000000..80fb8767 --- /dev/null +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedInstruction25x.java @@ -0,0 +1,83 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.dexlib2.dexbacked.instruction; + +import org.jf.dexlib2.Opcode; +import org.jf.dexlib2.dexbacked.DexBackedDexFile; +import org.jf.dexlib2.iface.instruction.formats.Instruction25x; +import org.jf.util.NibbleUtils; + +import javax.annotation.Nonnull; + +public class DexBackedInstruction25x extends DexBackedInstruction implements Instruction25x { + public DexBackedInstruction25x(@Nonnull DexBackedDexFile dexFile, + @Nonnull Opcode opcode, + int instructionStart) { + super(dexFile, opcode, instructionStart); + } + + @Override + public int getRegisterCount() { + return getParameterRegisterCount() + 1; + } + + @Override + public int getParameterRegisterCount() { + return NibbleUtils.extractHighUnsignedNibble(dexFile.readUbyte(instructionStart + 1)); + } + + @Override + public int getRegisterFixedC() { + return NibbleUtils.extractLowUnsignedNibble(dexFile.readUbyte(instructionStart + 2)); + } + + @Override + public int getRegisterParameterD() { + return NibbleUtils.extractHighUnsignedNibble(dexFile.readUbyte(instructionStart + 2)); + } + + @Override + public int getRegisterParameterE() { + return NibbleUtils.extractLowUnsignedNibble(dexFile.readUbyte(instructionStart + 3)); + } + + @Override + public int getRegisterParameterF() { + return NibbleUtils.extractHighUnsignedNibble(dexFile.readUbyte(instructionStart + 3)); + } + + @Override + public int getRegisterParameterG() { + return NibbleUtils.extractLowUnsignedNibble(dexFile.readUbyte(instructionStart + 1)); + } + +} diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CodeItem.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CodeItem.java index c3946976..9c79e270 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CodeItem.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/raw/CodeItem.java @@ -129,6 +129,9 @@ public class CodeItem { case Format10x: annotateInstruction10x(out, instruction); break; + case Format25x: + annotateInstruction25x(out, (Instruction25x) instruction); + break; case Format35c: annotateInstruction35c(out, (Instruction35c)instruction); break; @@ -282,6 +285,30 @@ public class CodeItem { instruction.getOpcode().name, Joiner.on(", ").join(args), reference)); } + private void annotateInstruction25x(@Nonnull AnnotatedBytes out, + @Nonnull Instruction25x instruction) { + List<String> args = Lists.newArrayList(); + + int registerCount = instruction.getRegisterCount(); //at least 1. + if (registerCount == 2) { + args.add(formatRegister(instruction.getRegisterParameterD())); + } else if (registerCount == 3) { + args.add(formatRegister(instruction.getRegisterParameterD())); + args.add(formatRegister(instruction.getRegisterParameterE())); + } else if (registerCount == 4) { + args.add(formatRegister(instruction.getRegisterParameterD())); + args.add(formatRegister(instruction.getRegisterParameterE())); + args.add(formatRegister(instruction.getRegisterParameterF())); + } else if (registerCount == 5) { + args.add(formatRegister(instruction.getRegisterParameterD())); + args.add(formatRegister(instruction.getRegisterParameterE())); + args.add(formatRegister(instruction.getRegisterParameterF())); + args.add(formatRegister(instruction.getRegisterParameterG())); + } + out.annotate(6, String.format("%s %s, {%s}", + instruction.getOpcode().name, instruction.getRegisterFixedC(), Joiner.on(", ").join(args))); + } + private void annotateInstruction3rc(@Nonnull AnnotatedBytes out, @Nonnull Instruction3rc instruction) { int startRegister = instruction.getStartRegister(); int endRegister = startRegister + instruction.getRegisterCount() - 1; diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/Annotatable.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/Annotatable.java new file mode 100644 index 00000000..f16c207b --- /dev/null +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/Annotatable.java @@ -0,0 +1,49 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.dexlib2.iface; + +import javax.annotation.Nonnull; +import java.util.Set; + +/** + * This class represents an object that can have Annotations applied to it + */ +public interface Annotatable { + /** + * Gets a set of the annotations that are applied to this object. + * + * The annotations in the returned set are guaranteed to have unique types. + * + * @return A set of the annotations that are applied to this object + */ + @Nonnull Set<? extends Annotation> getAnnotations(); +} diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/Annotation.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/Annotation.java index 251ac123..7c107a45 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/iface/Annotation.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/Annotation.java @@ -55,7 +55,7 @@ public interface Annotation extends BasicAnnotation, Comparable<Annotation> { * * @return The type of this annotation */ - @Nonnull String getType(); + @Nonnull @Override String getType(); /** * Gets a set of the name/value elements associated with this annotation. @@ -64,7 +64,7 @@ public interface Annotation extends BasicAnnotation, Comparable<Annotation> { * * @return A set of AnnotationElements */ - @Nonnull Set<? extends AnnotationElement> getElements(); + @Nonnull @Override Set<? extends AnnotationElement> getElements(); /** * Returns a hashcode for this Annotation. diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/ClassDef.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/ClassDef.java index 73ab8690..31d7fb99 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/iface/ClassDef.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/ClassDef.java @@ -43,7 +43,7 @@ import java.util.Set; * It also acts as a TypeReference to itself. Any equality/comparison is based on its identity as a TypeReference, * and shouldn't take into account anything other than the type of this class. */ -public interface ClassDef extends TypeReference { +public interface ClassDef extends TypeReference, Annotatable { /** * Gets the class type. * @@ -95,7 +95,7 @@ public interface ClassDef extends TypeReference { * * @return A set of the annotations that are applied to this class */ - @Nonnull Set<? extends Annotation> getAnnotations(); + @Override @Nonnull Set<? extends Annotation> getAnnotations(); /** * Gets the static fields that are defined by this class. diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/Field.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/Field.java index 7b4aad38..0091929b 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/iface/Field.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/Field.java @@ -44,27 +44,27 @@ import java.util.Set; * It also acts as a FieldReference to itself. Any equality/comparison is based on its identity as a FieldReference, * and shouldn't take into account any non-FieldReference specifics of this field. */ -public interface Field extends FieldReference { +public interface Field extends FieldReference, Member { /** * Gets the type of the class that defines this field. * * @return The type of the class that defines this field */ - @Nonnull String getDefiningClass(); + @Override @Nonnull String getDefiningClass(); /** * Gets the name of this field. * * @return The name of this field */ - @Nonnull String getName(); + @Override @Nonnull String getName(); /** * Gets the type of this field. * * @return The type of this field */ - @Nonnull String getType(); + @Override @Nonnull String getType(); /** * Gets the access flags for this field. @@ -73,7 +73,7 @@ public interface Field extends FieldReference { * * @return The access flags for this field */ - int getAccessFlags(); + @Override int getAccessFlags(); /** * Gets the initial value for this field, if available. @@ -92,5 +92,5 @@ public interface Field extends FieldReference { * * @return A set of the annotations that are applied to this field */ - @Nonnull Set<? extends Annotation> getAnnotations(); + @Override @Nonnull Set<? extends Annotation> getAnnotations(); } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/Member.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/Member.java new file mode 100644 index 00000000..343c4032 --- /dev/null +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/Member.java @@ -0,0 +1,63 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.dexlib2.iface; + +import javax.annotation.Nonnull; + +/** + * This class represents a generic class member + */ +public interface Member extends Annotatable { + /** + * Gets the type of the class that defines this member. + * + * @return The type of the class that defines this member + */ + @Nonnull String getDefiningClass(); + + /** + * Gets the name of this member. + * + * @return The name of this field + */ + @Nonnull String getName(); + + /** + * Gets the access flags for this member. + * + * This will be a combination of the AccessFlags.* flags that are marked as compatible for use with this type + * of member. + * + * @return The access flags for this member + */ + int getAccessFlags(); +} diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/Method.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/Method.java index c9080e0f..5d3796ff 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/iface/Method.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/Method.java @@ -44,7 +44,7 @@ import java.util.Set; * It also acts as a MethodReference to itself. Any equality/comparison is based on its identity as a MethodReference, * and shouldn't take into account any non-MethodReference specifics of this method. */ -public interface Method extends MethodReference { +public interface Method extends MethodReference, Member { /** * Gets the type of the class that defines this method. * @@ -86,7 +86,7 @@ public interface Method extends MethodReference { * * @return The access flags for this method */ - int getAccessFlags(); + @Override int getAccessFlags(); /** * Gets a set of the annotations that are applied to this method. @@ -95,7 +95,7 @@ public interface Method extends MethodReference { * * @return A set of the annotations that are applied to this method */ - @Nonnull Set<? extends Annotation> getAnnotations(); + @Override @Nonnull Set<? extends Annotation> getAnnotations(); /** * Gets a MethodImplementation object that defines the implementation of the method. diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/instruction/OneFixedFourParameterRegisterInstruction.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/instruction/OneFixedFourParameterRegisterInstruction.java new file mode 100644 index 00000000..c03bff77 --- /dev/null +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/instruction/OneFixedFourParameterRegisterInstruction.java @@ -0,0 +1,47 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.dexlib2.iface.instruction; + +public interface OneFixedFourParameterRegisterInstruction extends VariableRegisterInstruction { + int getRegisterFixedC(); + int getRegisterParameterD(); + int getRegisterParameterE(); + int getRegisterParameterF(); + int getRegisterParameterG(); + + /** Returns the count of just the parameter register counts; in range of [0, 4] */ + int getParameterRegisterCount(); + + /** Includes the total sum of both fixed and parameter register counts; at least 1 */ + @Override + int getRegisterCount(); +} diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/instruction/formats/Instruction25x.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/instruction/formats/Instruction25x.java new file mode 100644 index 00000000..51df2dee --- /dev/null +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/instruction/formats/Instruction25x.java @@ -0,0 +1,37 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.dexlib2.iface.instruction.formats; + +import org.jf.dexlib2.iface.instruction.OneFixedFourParameterRegisterInstruction; + +public interface Instruction25x extends OneFixedFourParameterRegisterInstruction { +} diff --git a/dexlib2/src/main/java/org/jf/dexlib2/immutable/instruction/ImmutableInstruction.java b/dexlib2/src/main/java/org/jf/dexlib2/immutable/instruction/ImmutableInstruction.java index 432f1930..ed50ef5b 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/immutable/instruction/ImmutableInstruction.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/immutable/instruction/ImmutableInstruction.java @@ -97,6 +97,8 @@ public abstract class ImmutableInstruction implements Instruction { return ImmutableInstruction22x.of((Instruction22x)instruction); case Format23x: return ImmutableInstruction23x.of((Instruction23x)instruction); + case Format25x: + return ImmutableInstruction25x.of((Instruction25x) instruction); case Format30t: return ImmutableInstruction30t.of((Instruction30t)instruction); case Format31c: diff --git a/dexlib2/src/main/java/org/jf/dexlib2/immutable/instruction/ImmutableInstruction25x.java b/dexlib2/src/main/java/org/jf/dexlib2/immutable/instruction/ImmutableInstruction25x.java new file mode 100644 index 00000000..2f31eaea --- /dev/null +++ b/dexlib2/src/main/java/org/jf/dexlib2/immutable/instruction/ImmutableInstruction25x.java @@ -0,0 +1,97 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.dexlib2.immutable.instruction; + +import org.jf.dexlib2.Format; +import org.jf.dexlib2.Opcode; +import org.jf.dexlib2.iface.instruction.formats.Instruction25x; +import org.jf.dexlib2.util.Preconditions; + +import javax.annotation.Nonnull; + +public class ImmutableInstruction25x extends ImmutableInstruction implements Instruction25x { + public static final Format FORMAT = Format.Format25x; + + protected final int parameterRegisterCount; + protected final int registerClosure; + protected final int registerD; + protected final int registerE; + protected final int registerF; + protected final int registerG; + + public ImmutableInstruction25x(@Nonnull Opcode opcode, + int parameterRegisterCount, + int registerClosure, + int registerD, + int registerE, + int registerF, + int registerG) { + super(opcode); + this.parameterRegisterCount = + Preconditions.check25xParameterRegisterCount(parameterRegisterCount); + this.registerClosure = Preconditions.checkNibbleRegister(registerClosure); + this.registerD = (parameterRegisterCount>0) ? + Preconditions.checkNibbleRegister(registerD) : 0; + this.registerE = (parameterRegisterCount>1) ? + Preconditions.checkNibbleRegister(registerE) : 0; + this.registerF = (parameterRegisterCount>2) ? + Preconditions.checkNibbleRegister(registerF) : 0; + this.registerG = (parameterRegisterCount>3) ? + Preconditions.checkNibbleRegister(registerG) : 0; + } + + public static ImmutableInstruction25x of(Instruction25x instruction) { + if (instruction instanceof ImmutableInstruction25x) { + return (ImmutableInstruction25x)instruction; + } + return new ImmutableInstruction25x( + instruction.getOpcode(), + instruction.getRegisterCount(), + instruction.getRegisterFixedC(), + instruction.getRegisterParameterD(), + instruction.getRegisterParameterE(), + instruction.getRegisterParameterF(), + instruction.getRegisterParameterG()); + } + + + @Override public int getParameterRegisterCount() { return parameterRegisterCount; } + @Override public int getRegisterCount() { return parameterRegisterCount + 1; } + + @Override public int getRegisterFixedC() { return registerClosure; } + @Override public int getRegisterParameterD() { return registerD; } + @Override public int getRegisterParameterE() { return registerE; } + @Override public int getRegisterParameterF() { return registerF; } + @Override public int getRegisterParameterG() { return registerG; } + + @Override public Format getFormat() { return FORMAT; } +} diff --git a/dexlib2/src/main/java/org/jf/dexlib2/util/Preconditions.java b/dexlib2/src/main/java/org/jf/dexlib2/util/Preconditions.java index ab86b652..51c083ca 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/util/Preconditions.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/util/Preconditions.java @@ -133,6 +133,15 @@ public class Preconditions { return registerCount; } + public static int check25xParameterRegisterCount(int registerCount) { + if (registerCount < 0 || registerCount > 4) { + throw new IllegalArgumentException( + String.format("Invalid parameter register count: %d. " + + "Must be between 0 and 4, inclusive.", registerCount)); + } + return registerCount; + } + public static int checkRegisterRangeCount(int registerCount) { if ((registerCount & 0xFFFFFF00) != 0) { throw new IllegalArgumentException( diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java index 87a2ae6b..0650ab3c 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java @@ -572,10 +572,12 @@ public abstract class DexWriter< } } - private void writeAnnotationSets(@Nonnull DexDataWriter writer) throws IOException { writer.align(); annotationSetSectionOffset = writer.getPosition(); + if (shouldCreateEmptyAnnotationSet()) { + writer.writeInt(0); + } for (Map.Entry<? extends AnnotationSetKey, Integer> entry: annotationSetSection.getItems()) { Collection<? extends AnnotationKey> annotations = Ordering.from(BaseAnnotation.BY_TYPE) .immutableSortedCopy(annotationSetSection.getAnnotations(entry.getKey())); @@ -613,6 +615,8 @@ public abstract class DexWriter< for (AnnotationSetKey annotationSetKey: parameterAnnotations) { if (annotationSetSection.getAnnotations(annotationSetKey).size() > 0) { writer.writeInt(annotationSetSection.getItemOffset(annotationSetKey)); + } else if (shouldCreateEmptyAnnotationSet()) { + writer.writeInt(annotationSetSectionOffset); } else { writer.writeInt(NO_OFFSET); } @@ -971,6 +975,9 @@ public abstract class DexWriter< case Format23x: instructionWriter.write((Instruction23x)instruction); break; + case Format25x: + instructionWriter.write((Instruction25x)instruction); + break; case Format30t: instructionWriter.write((Instruction30t)instruction); break; @@ -1115,7 +1122,7 @@ public abstract class DexWriter< if (annotationSection.getItems().size() > 0) { numItems++; } - if (annotationSetSection.getItems().size() > 0) { + if (annotationSetSection.getItems().size() > 0 || shouldCreateEmptyAnnotationSet()) { numItems++; } if (numAnnotationSetRefItems > 0) { @@ -1163,8 +1170,8 @@ public abstract class DexWriter< writeMapItem(writer, ItemType.TYPE_LIST, typeListSection.getItems().size(), typeListSectionOffset); writeMapItem(writer, ItemType.ENCODED_ARRAY_ITEM, numEncodedArrayItems, encodedArraySectionOffset); writeMapItem(writer, ItemType.ANNOTATION_ITEM, annotationSection.getItems().size(), annotationSectionOffset); - writeMapItem(writer, ItemType.ANNOTATION_SET_ITEM, annotationSetSection.getItems().size(), - annotationSetSectionOffset); + writeMapItem(writer, ItemType.ANNOTATION_SET_ITEM, + annotationSetSection.getItems().size() + (shouldCreateEmptyAnnotationSet() ? 1 : 0), annotationSetSectionOffset); writeMapItem(writer, ItemType.ANNOTATION_SET_REF_LIST, numAnnotationSetRefItems, annotationSetRefSectionOffset); writeMapItem(writer, ItemType.ANNOTATION_DIRECTORY_ITEM, numAnnotationDirectoryItems, annotationDirectorySectionOffset); @@ -1226,4 +1233,11 @@ public abstract class DexWriter< writer.writeInt(0); } } + + private boolean shouldCreateEmptyAnnotationSet() { + // Workaround for a crash in Dalvik VM before Jelly Bean MR1 (4.2) + // which is triggered by NO_OFFSET in parameter annotation list. + // (https://code.google.com/p/android/issues/detail?id=35304) + return (api < 17); + } } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/EncodedValueWriter.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/EncodedValueWriter.java index 53d77b39..def326c6 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/EncodedValueWriter.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/EncodedValueWriter.java @@ -31,7 +31,9 @@ package org.jf.dexlib2.writer; +import com.google.common.collect.Ordering; import org.jf.dexlib2.ValueType; +import org.jf.dexlib2.base.BaseAnnotationElement; import org.jf.dexlib2.iface.reference.FieldReference; import org.jf.dexlib2.iface.reference.MethodReference; @@ -40,7 +42,8 @@ import java.io.IOException; import java.util.Collection; public abstract class EncodedValueWriter<StringKey, TypeKey, FieldRefKey extends FieldReference, - MethodRefKey extends MethodReference, AnnotationElement, EncodedValue> { + MethodRefKey extends MethodReference, AnnotationElement extends org.jf.dexlib2.iface.AnnotationElement, + EncodedValue> { @Nonnull private final DexDataWriter writer; @Nonnull private final StringSection<StringKey, ?> stringSection; @Nonnull private final TypeSection<?, TypeKey, ?> typeSection; @@ -70,7 +73,11 @@ public abstract class EncodedValueWriter<StringKey, TypeKey, FieldRefKey extends writer.writeEncodedValueHeader(ValueType.ANNOTATION, 0); writer.writeUleb128(typeSection.getItemIndex(annotationType)); writer.writeUleb128(elements.size()); - for (AnnotationElement element: elements) { + + Collection<? extends AnnotationElement> sortedElements = Ordering.from(BaseAnnotationElement.BY_NAME) + .immutableSortedCopy(elements); + + for (AnnotationElement element: sortedElements) { writer.writeUleb128(stringSection.getItemIndex(annotationSection.getElementName(element))); writeEncodedValue(annotationSection.getElementValue(element)); } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/InstructionWriter.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/InstructionWriter.java index 17d31337..c9aa73a1 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/writer/InstructionWriter.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/InstructionWriter.java @@ -31,6 +31,8 @@ package org.jf.dexlib2.writer; +import com.google.common.collect.Ordering; +import com.google.common.primitives.Ints; import org.jf.dexlib2.ReferenceType; import org.jf.dexlib2.iface.instruction.ReferenceInstruction; import org.jf.dexlib2.iface.instruction.SwitchElement; @@ -43,6 +45,7 @@ import org.jf.util.ExceptionWithContext; import javax.annotation.Nonnull; import java.io.IOException; +import java.util.Comparator; import java.util.List; public class InstructionWriter<StringRef extends StringReference, TypeRef extends TypeReference, @@ -317,6 +320,19 @@ public class InstructionWriter<StringRef extends StringReference, TypeRef extend } } + public void write(@Nonnull Instruction25x instruction) { + try { + writer.write(instruction.getOpcode().value); + writer.write(packNibbles( + instruction.getRegisterParameterG(), instruction.getParameterRegisterCount())); + writer.write(packNibbles( + instruction.getRegisterFixedC(), instruction.getRegisterParameterD())); + writer.write(packNibbles( + instruction.getRegisterParameterE(), instruction.getRegisterParameterF())); + } catch (IOException ex) { + throw new RuntimeException(ex); + } + } public void write(@Nonnull Instruction3rc instruction) { try { writer.write(instruction.getOpcode().value); @@ -378,7 +394,8 @@ public class InstructionWriter<StringRef extends StringReference, TypeRef extend try { writer.writeUbyte(0); writer.writeUbyte(instruction.getOpcode().value >> 8); - List<? extends SwitchElement> elements = instruction.getSwitchElements(); + List<? extends SwitchElement> elements = Ordering.from(switchElementComparator).immutableSortedCopy( + instruction.getSwitchElements()); writer.writeUshort(elements.size()); for (SwitchElement element: elements) { writer.writeInt(element.getKey()); @@ -391,6 +408,12 @@ public class InstructionWriter<StringRef extends StringReference, TypeRef extend } } + private final Comparator<SwitchElement> switchElementComparator = new Comparator<SwitchElement>() { + @Override public int compare(SwitchElement element1, SwitchElement element2) { + return Ints.compare(element1.getKey(), element2.getKey()); + } + }; + public void write(@Nonnull PackedSwitchPayload instruction) { try { writer.writeUbyte(0); diff --git a/dexlib2/src/accessorTest/java/org/jf/dexlib2/AccessorTest.java b/dexlib2/src/test/java/org/jf/dexlib2/AccessorTest.java index 13e7b30f..924d3fd3 100644 --- a/dexlib2/src/accessorTest/java/org/jf/dexlib2/AccessorTest.java +++ b/dexlib2/src/test/java/org/jf/dexlib2/AccessorTest.java @@ -79,7 +79,7 @@ public class AccessorTest { public void testAccessors() throws IOException { URL url = AccessorTest.class.getClassLoader().getResource("accessorTest.dex"); Assert.assertNotNull(url); - DexFile f = DexFileFactory.loadDexFile(url.getFile(), 15); + DexFile f = DexFileFactory.loadDexFile(url.getFile(), 15, false); SyntheticAccessorResolver sar = new SyntheticAccessorResolver(f.getClasses()); diff --git a/dexlib2/src/test/java/org/jf/dexlib2/analysis/CustomMethodInlineTableTest.java b/dexlib2/src/test/java/org/jf/dexlib2/analysis/CustomMethodInlineTableTest.java index 686b2101..65a82f05 100644 --- a/dexlib2/src/test/java/org/jf/dexlib2/analysis/CustomMethodInlineTableTest.java +++ b/dexlib2/src/test/java/org/jf/dexlib2/analysis/CustomMethodInlineTableTest.java @@ -69,7 +69,7 @@ public class CustomMethodInlineTableTest { DexFile dexFile = new ImmutableDexFile(ImmutableList.of(classDef)); ClassPath classPath = ClassPath.fromClassPath(ImmutableList.<String>of(), ImmutableList.<String>of(), dexFile, - 15); + 15, false); InlineMethodResolver inlineMethodResolver = new CustomInlineMethodResolver(classPath, "Lblah;->blah()V"); MethodAnalyzer methodAnalyzer = new MethodAnalyzer(classPath, method, inlineMethodResolver); @@ -96,7 +96,7 @@ public class CustomMethodInlineTableTest { DexFile dexFile = new ImmutableDexFile(ImmutableList.of(classDef)); ClassPath classPath = ClassPath.fromClassPath(ImmutableList.<String>of(), ImmutableList.<String>of(), dexFile, - 15); + 15, false); InlineMethodResolver inlineMethodResolver = new CustomInlineMethodResolver(classPath, "Lblah;->blah()V"); MethodAnalyzer methodAnalyzer = new MethodAnalyzer(classPath, method, inlineMethodResolver); @@ -123,7 +123,7 @@ public class CustomMethodInlineTableTest { DexFile dexFile = new ImmutableDexFile(ImmutableList.of(classDef)); ClassPath classPath = ClassPath.fromClassPath(ImmutableList.<String>of(), ImmutableList.<String>of(), dexFile, - 15); + 15, false); InlineMethodResolver inlineMethodResolver = new CustomInlineMethodResolver(classPath, "Lblah;->blah()V"); MethodAnalyzer methodAnalyzer = new MethodAnalyzer(classPath, method, inlineMethodResolver); diff --git a/dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java b/dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java index b2cc52db..8ba975a1 100644 --- a/dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java +++ b/dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java @@ -41,10 +41,12 @@ import org.jf.dexlib2.dexbacked.DexBackedDexFile; import org.jf.dexlib2.iface.Annotation; import org.jf.dexlib2.iface.AnnotationElement; import org.jf.dexlib2.iface.ClassDef; +import org.jf.dexlib2.iface.value.AnnotationEncodedValue; import org.jf.dexlib2.immutable.ImmutableAnnotation; import org.jf.dexlib2.immutable.ImmutableAnnotationElement; import org.jf.dexlib2.immutable.ImmutableClassDef; import org.jf.dexlib2.immutable.ImmutableDexFile; +import org.jf.dexlib2.immutable.value.ImmutableAnnotationEncodedValue; import org.jf.dexlib2.immutable.value.ImmutableNullEncodedValue; import org.jf.dexlib2.writer.io.MemoryDataStore; import org.jf.dexlib2.writer.pool.DexPool; @@ -75,7 +77,7 @@ public class DexWriterTest { throw new RuntimeException(ex); } - DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15), dataStore.getData()); + DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15, false), dataStore.getData()); ClassDef dbClassDef = Iterables.getFirst(dexFile.getClasses(), null); Assert.assertNotNull(dbClassDef); Annotation dbAnnotation = Iterables.getFirst(dbClassDef.getAnnotations(), null); @@ -87,4 +89,48 @@ public class DexWriterTest { Assert.assertEquals("blah", dbElements.get(0).getName()); Assert.assertEquals("zabaglione", dbElements.get(1).getName()); } + + @Test + public void testEncodedAnnotationElementOrder() { + // Elements are out of order wrt to the element name + ImmutableSet<ImmutableAnnotationElement> encodedElements = + ImmutableSet.of(new ImmutableAnnotationElement("zabaglione", ImmutableNullEncodedValue.INSTANCE), + new ImmutableAnnotationElement("blah", ImmutableNullEncodedValue.INSTANCE)); + + ImmutableAnnotationEncodedValue encodedAnnotations = + new ImmutableAnnotationEncodedValue("Lan/encoded/annotation", encodedElements); + + ImmutableSet<ImmutableAnnotationElement> elements = + ImmutableSet.of(new ImmutableAnnotationElement("encoded_annotation", encodedAnnotations)); + + ImmutableAnnotation annotation = new ImmutableAnnotation(AnnotationVisibility.RUNTIME, + "Lorg/test/anno;", elements); + + ImmutableClassDef classDef = new ImmutableClassDef("Lorg/test/blah;", + 0, "Ljava/lang/Object;", null, null, ImmutableSet.of(annotation), null, null); + + MemoryDataStore dataStore = new MemoryDataStore(); + + try { + DexPool.writeTo(dataStore, new ImmutableDexFile(ImmutableSet.of(classDef))); + } catch (IOException ex) { + throw new RuntimeException(ex); + } + + DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15, false), dataStore.getData()); + ClassDef dbClassDef = Iterables.getFirst(dexFile.getClasses(), null); + Assert.assertNotNull(dbClassDef); + Annotation dbAnnotation = Iterables.getFirst(dbClassDef.getAnnotations(), null); + Assert.assertNotNull(dbAnnotation); + + AnnotationElement element = Iterables.getFirst(dbAnnotation.getElements(), null); + AnnotationEncodedValue dbAnnotationEncodedValue = (AnnotationEncodedValue)element.getValue(); + + List<AnnotationElement> dbElements = Lists.newArrayList(dbAnnotationEncodedValue.getElements()); + + // Ensure that the elements were written out in sorted order + Assert.assertEquals(2, dbElements.size()); + Assert.assertEquals("blah", dbElements.get(0).getName()); + Assert.assertEquals("zabaglione", dbElements.get(1).getName()); + } } diff --git a/dexlib2/src/test/java/org/jf/dexlib2/writer/JumboStringConversionTest.java b/dexlib2/src/test/java/org/jf/dexlib2/writer/JumboStringConversionTest.java index 38015e74..7e504a17 100644 --- a/dexlib2/src/test/java/org/jf/dexlib2/writer/JumboStringConversionTest.java +++ b/dexlib2/src/test/java/org/jf/dexlib2/writer/JumboStringConversionTest.java @@ -92,7 +92,7 @@ public class JumboStringConversionTest { MemoryDataStore dexStore = new MemoryDataStore(); dexBuilder.writeTo(dexStore); - DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15), dexStore.getData()); + DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15, false), dexStore.getData()); ClassDef classDef = Iterables.getFirst(dexFile.getClasses(), null); Assert.assertNotNull(classDef); @@ -189,7 +189,7 @@ public class JumboStringConversionTest { MemoryDataStore dexStore = new MemoryDataStore(); dexBuilder.writeTo(dexStore); - DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15), dexStore.getData()); + DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15, false), dexStore.getData()); ClassDef classDef = Iterables.getFirst(dexFile.getClasses(), null); Assert.assertNotNull(classDef); diff --git a/examples/HelloWorldLambda/HelloWorldFunctionalInterface.smali b/examples/HelloWorldLambda/HelloWorldFunctionalInterface.smali new file mode 100644 index 00000000..c2ada47d --- /dev/null +++ b/examples/HelloWorldLambda/HelloWorldFunctionalInterface.smali @@ -0,0 +1,8 @@ +# Functional interface used by HelloWorld.smali +# Required in order to reify the lambda with create-lambda or unbox-lambda instructions + +.class public abstract interface LHelloWorldFunctionalInterface; +.super Ljava/lang/Object; + +.method public abstract applyFourStrings(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V +.end method diff --git a/examples/HelloWorldLambda/HelloWorldLambda.smali b/examples/HelloWorldLambda/HelloWorldLambda.smali new file mode 100644 index 00000000..36c8e49c --- /dev/null +++ b/examples/HelloWorldLambda/HelloWorldLambda.smali @@ -0,0 +1,57 @@ +.class public LHelloWorldLambda; + +#Ye olde hello world application (with lambdas!) +#To assemble and run this on a phone or emulator: +# +#java -jar smali.jar -o classes.dex HelloWorldLambda.smali HelloWorldFunctionalInterface.smali +#zip HelloWorld.zip classes.dex +#adb push HelloWorld.zip /data/local +#adb shell dalvikvm -cp /data/local/HelloWorld.zip HelloWorld +# +#if you get out of memory type errors when running smali.jar, try +#java -Xmx512m -jar smali.jar HelloWorldLambda.smali +#instead + +.super Ljava/lang/Object; + +.method public static main([Ljava/lang/String;)V + .registers 9 # 1 parameter, 8 locals + + sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream; + + const-string v1, "Hello World!" + const-string v2, "How" # vD + const-string v3, "are" # vE + const-string v4, "you" # vF + const-string v5, "doing?" # vG + + capture-variable v1, "helloworld" + + # TODO: do I need to pass the type of the lambda's functional interface here as a type id? + create-lambda v1, LHelloWorldLambda;->doHelloWorld(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + # Method descriptor is not required here, because only the single-abstract method is ever invoked. + invoke-lambda v1, {v2, v3, v4, v5} + + box-lambda v6, v1 # The type of v6 is now 'LHelloWorldFunctionalInterface;' + invoke-virtual {v6, v2, v3, v4, v5}, LHelloWorldFunctionalInterface;->applyFourStrings(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + + # FIXME: should be \HelloWorldFunctionalInterface; instead of L...; + + # TODO: do we really need the type descriptor here at all? + unbox-lambda v7, v6, LHelloWorldFunctionalInterface; # The type of v7 is now \HelloWorldFunctionalInterface; + invoke-lambda v7, {v2, v3, v4, v5} + + return-void +.end method + +.method public static doHelloWorld(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + .registers 6 # 4 parameters, 2 locals + + # This helloworld variable is brought to you by the variable liberation front + liberate-variable v0, p0, "helloworld" + + sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream; + invoke-virtual {v1, v0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V + + return-void +.end method diff --git a/gradle.properties b/gradle.properties index 335740c6..567bbb91 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +1,2 @@ -org.gradle.daemon=true
\ No newline at end of file +org.gradle.daemon=true +org.gradle.parallel=true
\ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar Binary files differindex 58385981..085a1cdc 100644 --- a/gradle/wrapper/gradle-wrapper.jar +++ b/gradle/wrapper/gradle-wrapper.jar diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 3f70b064..7e793277 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sun Feb 02 12:47:14 PST 2014 +#Sun Mar 01 19:20:47 PST 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-2.3-all.zip diff --git a/smali/build.gradle b/smali/build.gradle index 0f43d756..0e5cbf2d 100644 --- a/smali/build.gradle +++ b/smali/build.gradle @@ -29,25 +29,28 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -configurations { - antlr3 - jflex - proguard -} - -ext.antlrSource = 'src/main/antlr3' -ext.antlrOutput = file("${buildDir}/generated-sources/antlr3") +apply plugin: 'antlr' +apply plugin: 'jflex' -ext.jflexSource = "src/main/jflex" -ext.jflexOutput = file("${buildDir}/generated-sources/jflex") - -ext.testAntlrSource = 'src/test/antlr3' -ext.testAntlrOutput = file("${buildDir}/generated-test-sources/antlr3") +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath depends.jflex_plugin + classpath depends.proguard_gradle + } +} -sourceSets.main.java.srcDir antlrOutput -sourceSets.main.java.srcDir jflexOutput +configurations { + // Remove the full antlr library that's added by the antlr plugin. We manually + // add the smaller antlr_runtime library instead + compile.exclude group: 'org.antlr', module: 'antlr' -sourceSets.test.java.srcDir testAntlrOutput + // The jflex lexer doesn't have any runtime dependencies, so remove the dependency + // that gets added by the jflex plugin + compile.exclude group: 'de.jflex', module: 'jflex' +} idea { module { @@ -73,68 +76,10 @@ dependencies { testCompile depends.junit - antlr3 depends.antlr + antlr depends.antlr jflex depends.jflex - proguard depends.proguard } -task generateParserAntlrSource(type: JavaExec) { - inputs.dir file(antlrSource) - outputs.dir file(antlrOutput) - - mkdir(antlrOutput) - def grammars = fileTree(antlrSource).include('**/smaliParser.g') - - classpath = configurations.antlr3 - main = 'org.antlr.Tool' - args '-fo', relativePath("${antlrOutput}/org/jf/smali") - args grammars.files -} - -task generateTreeWalkerAntlrSource(type: JavaExec) { - inputs.dir file(antlrSource) - outputs.dir file(antlrOutput) - - mkdir(antlrOutput) - def grammars = fileTree(antlrSource).include('**/smaliTreeWalker.g') - - classpath = configurations.antlr3 - main = 'org.antlr.Tool' - args '-fo', relativePath("${antlrOutput}/org/jf/smali") - args grammars.files -} - -task generateTestAntlrSource(type: JavaExec) { - inputs.dir file(testAntlrSource) - outputs.dir file(testAntlrOutput) - - mkdir(testAntlrOutput) - def grammars = fileTree(testAntlrSource).include('**/*.g') - - classpath = configurations.antlr3 - main = 'org.antlr.Tool' - args '-fo', relativePath("${testAntlrOutput}/org/jf/smali") - args grammars.files.join(' ') -} - -task generateJflexSource(type: JavaExec) { - inputs.dir file(jflexSource) - outputs.dir file(jflexOutput) - - mkdir(jflexOutput) - def grammars = fileTree(jflexSource).include('**/*.flex') - - classpath = configurations.jflex - main = 'JFlex.Main' - args '-q' - args '-d', relativePath("${jflexOutput}/org/jf/smali") - args grammars.files.join(' ') - environment LC_ALL: "en_US" -} - -compileJava.dependsOn generateParserAntlrSource, generateTreeWalkerAntlrSource, generateJflexSource -compileTestJava.dependsOn generateTestAntlrSource - processResources.inputs.property('version', version) processResources.expand('version': version) @@ -149,17 +94,29 @@ task fatJar(type: Jar, dependsOn: jar) { from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } manifest { - attributes("Main-Class": "org.jf.smali.main") + attributes('Main-Class': 'org.jf.smali.main') } doLast { - if (!System.getProperty("os.name").toLowerCase().contains("windows")) { + if (!System.getProperty('os.name').toLowerCase().contains('windows')) { ant.symlink(link: file("${destinationDir}/smali.jar"), resource: archivePath, overwrite: true) } } } tasks.getByPath('build').dependsOn(fatJar) +generateTestGrammarSource { + outputDirectory = new File(outputDirectory, 'org/jf/smali') +} + +generateGrammarSource { + outputDirectory = new File(outputDirectory, 'org/jf/smali') +} + +generateJFlexSource { + outputDirectory = new File(outputDirectory, 'org/jf/smali') +} + uploadArchives { repositories.mavenDeployer { pom.project { @@ -171,22 +128,23 @@ uploadArchives { } } -task proguard(type: JavaExec, dependsOn: fatJar) { - def outFile = fatJar.destinationDir.getPath() + '/' + fatJar.baseName + '-' + fatJar.version + '-small' + '.' + fatJar.extension - inputs.file fatJar.archivePath - outputs.file outFile - - classpath = configurations.proguard - main = 'proguard.ProGuard' - args "-injars ${fatJar.archivePath}(!**/TestStringTemplate*.class)" - args "-outjars ${outFile}" - args "-libraryjars ${System.properties['java.home']}/lib/rt.jar" - args '-dontobfuscate' - args '-dontoptimize' - args '-keep public class org.jf.smali.main { public static void main(java.lang.String[]); }' - args '-keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); }' - args '-dontwarn com.google.common.**' - args '-dontnote com.google.common.**' +task proguard(type: proguard.gradle.ProGuardTask, dependsOn: fatJar) { + def outFile = fatJar.destinationDir.getPath() + '/' + fatJar.baseName + '-' + + fatJar.version + '-small' + '.' + fatJar.extension + + injars fatJar.archivePath + outjars outFile + + libraryjars "${System.properties['java.home']}/lib/rt.jar" + + dontobfuscate + dontoptimize + + keep 'public class org.jf.smali.main { public static void main(java.lang.String[]); }' + keepclassmembers 'enum * { public static **[] values(); public static ** valueOf(java.lang.String); }' + + dontwarn 'com.google.common.**' + dontnote 'com.google.common.**' } tasks.getByPath(':release').dependsOn(proguard) diff --git a/smali/runantlr.sh b/smali/runantlr.sh index 86cfdc1e..dc37de03 100755 --- a/smali/runantlr.sh +++ b/smali/runantlr.sh @@ -100,8 +100,8 @@ function cleanup_tokens { [[ -f "$TOKEN_FILE" ]] && rm "$TOKEN_FILE" } -generate_file "$SCRIPT_DIR/src/main/java/org/jf/smali/smaliParser.java" "$SCRIPT_DIR/src/main/antlr3/smaliParser.g" -generate_file "$SCRIPT_DIR/src/main/java/org/jf/smali/smaliTreeWalker.java" "$SCRIPT_DIR/src/main/antlr3/smaliTreeWalker.g" +generate_file "$SCRIPT_DIR/src/main/java/org/jf/smali/smaliParser.java" "$SCRIPT_DIR/src/main/antlr/smaliParser.g" +generate_file "$SCRIPT_DIR/src/main/java/org/jf/smali/smaliTreeWalker.java" "$SCRIPT_DIR/src/main/antlr/smaliTreeWalker.g" # Clean up the tokens, no longer necessary once the tree walker is generated cleanup_tokens "$SCRIPT_DIR/src/main/java/org/jf/smali/smaliParser.java" diff --git a/smali/runjflex.sh b/smali/runjflex.sh index ccc04013..70c06240 100755 --- a/smali/runjflex.sh +++ b/smali/runjflex.sh @@ -11,7 +11,8 @@ # this script should be checked in to the repository # Update when switching to a different version of jflex -EXPECTED_JFLEX_VERSION_STR="This is JFlex 1.4.3" +EXPECTED_JFLEX_VERSION="1.4.3" +EXPECTED_JFLEX_VERSION_STR="This is JFlex $EXPECTED_JFLEX_VERSION" # Get the location of this script used to find locations of other things in the tree. SCRIPT_DIR=`dirname $0` @@ -19,10 +20,22 @@ echo $SCRIPT_DIR TOP_PATH="$SCRIPT_DIR/../../.." +# Run the java jar when 'JFLEX' is not in the environment +function exec_jar_jflex { + java -jar "$jflex_location" "$@" +} + # All specifying jflex but fallback to default location if [ -z "$JFLEX" ] then - JFLEX=$TOP_PATH/external/jflex/bin/jflex + # Best effort to find it inside of the gradle cache + jflex_jar_name="jflex-${EXPECTED_JFLEX_VERSION}.jar" + jflex_location="$(find $HOME/.gradle/caches/artifacts-* -name "$jflex_jar_name" | head -n 1)" + if [ -z $jflex_location ]; then + echo "ERROR: Could not find jflex location, consider setting the \$JFLEX variable to point to it" + exit 1 + fi + JFLEX=exec_jar_jflex fi JFLEX_VERSION=`"$JFLEX" --version` @@ -42,7 +55,7 @@ fi JAVA_FILE=$SCRIPT_DIR/src/main/java/org/jf/smali/smaliFlexLexer.java rm -f "$JAVA_FILE" -$JFLEX --nobak -d $SCRIPT_DIR/src/main/java/org/jf/smali $SCRIPT_DIR/src/main/jflex/smaliLexer.flex +"$JFLEX" --nobak -d "$SCRIPT_DIR/src/main/java/org/jf/smali" "$SCRIPT_DIR/src/main/jflex/smaliLexer.jflex" # delete trailing space from end of each line to make gerrit happy sed 's/[ ]*$//' "$JAVA_FILE" > "$JAVA_FILE.tmp" diff --git a/smali/src/main/antlr3/smaliParser.g b/smali/src/main/antlr/smaliParser.g index d057b4a4..6d07452c 100644 --- a/smali/src/main/antlr3/smaliParser.g +++ b/smali/src/main/antlr/smaliParser.g @@ -86,6 +86,8 @@ tokens { INSTRUCTION_FORMAT21c_FIELD_ODEX; INSTRUCTION_FORMAT21c_STRING; INSTRUCTION_FORMAT21c_TYPE; + INSTRUCTION_FORMAT21c_LAMBDA; + INSTRUCTION_FORMAT21c_METHOD; INSTRUCTION_FORMAT21ih; INSTRUCTION_FORMAT21lh; INSTRUCTION_FORMAT21s; @@ -94,12 +96,14 @@ tokens { INSTRUCTION_FORMAT22c_FIELD; INSTRUCTION_FORMAT22c_FIELD_ODEX; INSTRUCTION_FORMAT22c_TYPE; + INSTRUCTION_FORMAT22c_STRING; INSTRUCTION_FORMAT22cs_FIELD; INSTRUCTION_FORMAT22s; INSTRUCTION_FORMAT22s_OR_ID; INSTRUCTION_FORMAT22t; INSTRUCTION_FORMAT22x; INSTRUCTION_FORMAT23x; + INSTRUCTION_FORMAT25x; INSTRUCTION_FORMAT30t; INSTRUCTION_FORMAT31c; INSTRUCTION_FORMAT31i; @@ -209,6 +213,8 @@ tokens { I_STATEMENT_FORMAT21c_TYPE; I_STATEMENT_FORMAT21c_FIELD; I_STATEMENT_FORMAT21c_STRING; + I_STATEMENT_FORMAT21c_LAMBDA; + I_STATEMENT_FORMAT21c_METHOD; I_STATEMENT_FORMAT21ih; I_STATEMENT_FORMAT21lh; I_STATEMENT_FORMAT21s; @@ -216,10 +222,12 @@ tokens { I_STATEMENT_FORMAT22b; I_STATEMENT_FORMAT22c_FIELD; I_STATEMENT_FORMAT22c_TYPE; + I_STATEMENT_FORMAT22c_STRING; I_STATEMENT_FORMAT22s; I_STATEMENT_FORMAT22t; I_STATEMENT_FORMAT22x; I_STATEMENT_FORMAT23x; + I_STATEMENT_FORMAT25x; I_STATEMENT_FORMAT30t; I_STATEMENT_FORMAT31c; I_STATEMENT_FORMAT31i; @@ -252,7 +260,7 @@ import org.jf.dexlib2.Opcodes; private boolean verboseErrors = false; private boolean allowOdex = false; private int apiLevel = 15; - private Opcodes opcodes = new Opcodes(apiLevel); + private Opcodes opcodes = new Opcodes(apiLevel, false); public void setVerboseErrors(boolean verboseErrors) { this.verboseErrors = verboseErrors; @@ -262,8 +270,8 @@ import org.jf.dexlib2.Opcodes; this.allowOdex = allowOdex; } - public void setApiLevel(int apiLevel) { - this.opcodes = new Opcodes(apiLevel); + public void setApiLevel(int apiLevel, boolean experimental) { + this.opcodes = new Opcodes(apiLevel, experimental); this.apiLevel = apiLevel; } @@ -561,14 +569,18 @@ simple_name | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] + | INSTRUCTION_FORMAT21c_LAMBDA -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_LAMBDA] + | INSTRUCTION_FORMAT21c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_METHOD] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] + | INSTRUCTION_FORMAT22c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_STRING] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] + | INSTRUCTION_FORMAT25x -> SIMPLE_NAME[$INSTRUCTION_FORMAT25x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] @@ -806,6 +818,8 @@ instruction | insn_format21c_field_odex | insn_format21c_string | insn_format21c_type + | insn_format21c_lambda + | insn_format21c_method | insn_format21ih | insn_format21lh | insn_format21s @@ -814,11 +828,13 @@ instruction | insn_format22c_field | insn_format22c_field_odex | insn_format22c_type + | insn_format22c_string | insn_format22cs_field | insn_format22s | insn_format22t | insn_format22x | insn_format23x + | insn_format25x | insn_format30t | insn_format31c | insn_format31i @@ -912,6 +928,16 @@ insn_format21c_type INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor -> ^(I_STATEMENT_FORMAT21c_TYPE[$start, "I_STATEMENT_FORMAT21c"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor); +insn_format21c_lambda + : //e.g. capture-variable v1, "foobar" + INSTRUCTION_FORMAT21c_LAMBDA REGISTER COMMA STRING_LITERAL + -> ^(I_STATEMENT_FORMAT21c_LAMBDA[$start, "I_STATEMENT_FORMAT21c_LAMBDA"] INSTRUCTION_FORMAT21c_LAMBDA REGISTER STRING_LITERAL); + +insn_format21c_method + : //e.g. create-lambda v1, java/io/PrintStream/print(Ljava/lang/Stream;)V + INSTRUCTION_FORMAT21c_METHOD REGISTER COMMA method_reference + -> ^(I_STATEMENT_FORMAT21c_METHOD[$start, "I_STATEMENT_FORMAT21c_METHOD"] INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference); + insn_format21ih : //e.g. const/high16 v1, 1234 INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal @@ -957,6 +983,11 @@ insn_format22c_type INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor -> ^(I_STATEMENT_FORMAT22c_TYPE[$start, "I_STATEMENT_FORMAT22c_TYPE"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor); +insn_format22c_string + : //e.g. liberate-variable v0, v1, "baz" + INSTRUCTION_FORMAT22c_STRING REGISTER COMMA REGISTER COMMA STRING_LITERAL + -> ^(I_STATEMENT_FORMAT22c_STRING[$start, "I_STATEMENT_FORMAT22c_STRING"] INSTRUCTION_FORMAT22c_STRING REGISTER REGISTER STRING_LITERAL); + insn_format22cs_field : //e.g. iget-quick v0, v1, field@0xc INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET @@ -984,6 +1015,11 @@ insn_format23x INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER -> ^(I_STATEMENT_FORMAT23x[$start, "I_STATEMENT_FORMAT23x"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER); +insn_format25x + : //e.g. invoke-lambda vClosure, {vA, vB, vC, vD} -- up to 4 parameters + the closure. + INSTRUCTION_FORMAT25x REGISTER COMMA OPEN_BRACE register_list CLOSE_BRACE + -> ^(I_STATEMENT_FORMAT25x[$start, "I_STATEMENT_FORMAT25x"] INSTRUCTION_FORMAT25x REGISTER register_list); + insn_format30t : //e.g. goto/32 endloop: INSTRUCTION_FORMAT30t label_ref diff --git a/smali/src/main/antlr3/smaliTreeWalker.g b/smali/src/main/antlr/smaliTreeWalker.g index f49f10ef..8eed2b20 100644 --- a/smali/src/main/antlr3/smaliTreeWalker.g +++ b/smali/src/main/antlr/smaliTreeWalker.g @@ -77,15 +77,15 @@ import java.util.*; public String classType; private boolean verboseErrors = false; private int apiLevel = 15; - private Opcodes opcodes = new Opcodes(apiLevel); + private Opcodes opcodes = new Opcodes(apiLevel, false); private DexBuilder dexBuilder; public void setDexBuilder(DexBuilder dexBuilder) { this.dexBuilder = dexBuilder; } - public void setApiLevel(int apiLevel) { - this.opcodes = new Opcodes(apiLevel); + public void setApiLevel(int apiLevel, boolean experimental) { + this.opcodes = new Opcodes(apiLevel, experimental); this.apiLevel = apiLevel; } @@ -532,7 +532,7 @@ registers_directive returns[boolean isLocalsDirective, int registers] ^(( I_REGISTERS {$isLocalsDirective = false;} | I_LOCALS {$isLocalsDirective = true;} ) - short_integral_literal {$registers = $short_integral_literal.value;} + short_integral_literal {$registers = $short_integral_literal.value & 0xFFFF;} ); label_def @@ -674,6 +674,22 @@ register_list returns[byte[\] registers, byte registerCount] $registers[$registerCount++] = parseRegister_nibble($REGISTER.text); })*); +register_list4 returns[byte[\] registers, byte registerCount] + @init + { + $registers = new byte[4]; + $registerCount = 0; + } + : ^(I_REGISTER_LIST + (REGISTER + { + if ($registerCount == 4) { + throw new SemanticException(input, $I_REGISTER_LIST, "A list4 of registers can only have a maximum of 4 " + + "registers. Use the <op>/range alternate opcode instead."); + } + $registers[$registerCount++] = parseRegister_nibble($REGISTER.text); + })*); + register_range returns[int startRegister, int endRegister] : ^(I_REGISTER_RANGE (startReg=REGISTER endReg=REGISTER?)?) { @@ -726,6 +742,8 @@ instruction | insn_format21c_field | insn_format21c_string | insn_format21c_type + | insn_format21c_lambda + | insn_format21c_method | insn_format21ih | insn_format21lh | insn_format21s @@ -733,10 +751,12 @@ instruction | 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 @@ -861,6 +881,30 @@ insn_format21c_type dexBuilder.internTypeReference($nonvoid_type_descriptor.type))); }; +insn_format21c_lambda + : //e.g. capture-variable v1, "foobar" + ^(I_STATEMENT_FORMAT21c_LAMBDA INSTRUCTION_FORMAT21c_LAMBDA REGISTER string_literal) + { + Opcode opcode = opcodes.getOpcodeByName($INSTRUCTION_FORMAT21c_LAMBDA.text); + short regA = parseRegister_byte($REGISTER.text); + + $method::methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, + dexBuilder.internStringReference($string_literal.value))); + }; + +insn_format21c_method + : //e.g. create-lambda v1, java/io/PrintStream/print(Ljava/lang/Stream;)V + ^(I_STATEMENT_FORMAT21c_METHOD INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference) + { + Opcode opcode = opcodes.getOpcodeByName($INSTRUCTION_FORMAT21c_METHOD.text); + short regA = parseRegister_byte($REGISTER.text); + + ImmutableMethodReference methodReference = $method_reference.methodReference; + + $method::methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, + dexBuilder.internMethodReference(methodReference))); + }; + insn_format21ih : //e.g. const/high16 v1, 1234 ^(I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal) @@ -947,6 +991,18 @@ insn_format22c_type dexBuilder.internTypeReference($nonvoid_type_descriptor.type))); }; +insn_format22c_string + : //e.g. liberate-variable v0, v1, "baz" + ^(I_STATEMENT_FORMAT22c_STRING INSTRUCTION_FORMAT22c_STRING registerA=REGISTER registerB=REGISTER string_literal) + { + Opcode opcode = opcodes.getOpcodeByName($INSTRUCTION_FORMAT22c_STRING.text); + byte regA = parseRegister_nibble($registerA.text); + byte regB = parseRegister_nibble($registerB.text); + + $method::methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB, + dexBuilder.internStringReference($string_literal.value))); + }; + insn_format22s : //e.g. add-int/lit16 v0, v1, 12345 ^(I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA=REGISTER registerB=REGISTER short_integral_literal) @@ -994,6 +1050,23 @@ insn_format23x $method::methodBuilder.addInstruction(new BuilderInstruction23x(opcode, regA, regB, regC)); }; +insn_format25x + : //e.g. invoke-lambda vClosure, {vD, vE, vF, vG} -- up to 4 parameters + the closure. + ^(I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4) + { + Opcode opcode = opcodes.getOpcodeByName($INSTRUCTION_FORMAT25x.text); + + byte closureRegister = parseRegister_nibble($REGISTER.text); + + //this depends on the fact that register_list4 returns a byte[4] + byte[] registers = $register_list4.registers; + int parameterRegisterCount = $register_list4.registerCount; // don't count closure register + + $method::methodBuilder.addInstruction(new BuilderInstruction25x(opcode, + parameterRegisterCount, closureRegister, registers[0], registers[1], + registers[2], registers[3])); + }; + insn_format30t : //e.g. goto/32 endloop: ^(I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref) diff --git a/smali/src/main/java/org/jf/smali/SmaliTestUtils.java b/smali/src/main/java/org/jf/smali/SmaliTestUtils.java index 9fd73473..26de0089 100644 --- a/smali/src/main/java/org/jf/smali/SmaliTestUtils.java +++ b/smali/src/main/java/org/jf/smali/SmaliTestUtils.java @@ -48,10 +48,16 @@ import java.io.Reader; import java.io.StringReader; public class SmaliTestUtils { + public static ClassDef compileSmali(String smaliText) throws RecognitionException, IOException { + return compileSmali(smaliText, 15, false); + } + + public static ClassDef compileSmali(String smaliText, int apiLevel, boolean experimental) + throws RecognitionException, IOException { CommonTokenStream tokens; LexerErrorInterface lexer; - DexBuilder dexBuilder = DexBuilder.makeDexBuilder(15); + DexBuilder dexBuilder = DexBuilder.makeDexBuilder(apiLevel); Reader reader = new StringReader(smaliText); @@ -61,7 +67,7 @@ public class SmaliTestUtils { smaliParser parser = new smaliParser(tokens); parser.setVerboseErrors(true); parser.setAllowOdex(false); - parser.setApiLevel(15); + parser.setApiLevel(apiLevel, experimental); smaliParser.smali_file_return result = parser.smali_file(); @@ -75,6 +81,7 @@ public class SmaliTestUtils { treeStream.setTokenStream(tokens); smaliTreeWalker dexGen = new smaliTreeWalker(treeStream); + dexGen.setApiLevel(apiLevel, experimental); dexGen.setVerboseErrors(true); dexGen.setDexBuilder(dexBuilder); dexGen.smali_file(); @@ -87,7 +94,8 @@ public class SmaliTestUtils { dexBuilder.writeTo(dataStore); - DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15), dataStore.getData()); + DexBackedDexFile dexFile = new DexBackedDexFile( + new Opcodes(apiLevel, experimental), dataStore.getData()); return Iterables.getFirst(dexFile.getClasses(), null); } diff --git a/smali/src/main/java/org/jf/smali/main.java b/smali/src/main/java/org/jf/smali/main.java index c6095bf3..31f65a88 100644 --- a/smali/src/main/java/org/jf/smali/main.java +++ b/smali/src/main/java/org/jf/smali/main.java @@ -34,6 +34,7 @@ import org.antlr.runtime.Token; import org.antlr.runtime.TokenSource; import org.antlr.runtime.tree.CommonTree; import org.antlr.runtime.tree.CommonTreeNodeStream; +import org.antlr.runtime.tree.TreeNodeStream; import org.apache.commons.cli.*; import org.jf.dexlib2.writer.builder.DexBuilder; import org.jf.dexlib2.writer.io.FileDataStore; @@ -110,6 +111,7 @@ public class main { boolean allowOdex = false; boolean verboseErrors = false; boolean printTokens = false; + boolean experimental = false; int apiLevel = 15; @@ -142,6 +144,9 @@ public class main { case 'x': allowOdex = true; break; + case 'X': + experimental = true; + break; case 'a': apiLevel = Integer.parseInt(commandLine.getOptionValue("a")); break; @@ -198,11 +203,12 @@ public class main { final boolean finalPrintTokens = printTokens; final boolean finalAllowOdex = allowOdex; final int finalApiLevel = apiLevel; + final boolean finalExperimental = experimental; for (final File file: filesToProcess) { tasks.add(executor.submit(new Callable<Boolean>() { @Override public Boolean call() throws Exception { return assembleSmaliFile(file, dexBuilder, finalVerboseErrors, finalPrintTokens, - finalAllowOdex, finalApiLevel); + finalAllowOdex, finalApiLevel, finalExperimental); } })); } @@ -252,7 +258,8 @@ public class main { } private static boolean assembleSmaliFile(File smaliFile, DexBuilder dexBuilder, boolean verboseErrors, - boolean printTokens, boolean allowOdex, int apiLevel) + boolean printTokens, boolean allowOdex, int apiLevel, + boolean experimental) throws Exception { CommonTokenStream tokens; @@ -267,7 +274,7 @@ public class main { if (printTokens) { tokens.getTokens(); - + for (int i=0; i<tokens.size(); i++) { Token token = tokens.get(i); if (token.getChannel() == smaliParser.HIDDEN) { @@ -276,12 +283,14 @@ public class main { System.out.println(smaliParser.tokenNames[token.getType()] + ": " + token.getText()); } + + System.out.flush(); } smaliParser parser = new smaliParser(tokens); parser.setVerboseErrors(verboseErrors); parser.setAllowOdex(allowOdex); - parser.setApiLevel(apiLevel); + parser.setApiLevel(apiLevel, experimental); smaliParser.smali_file_return result = parser.smali_file(); @@ -294,7 +303,13 @@ public class main { CommonTreeNodeStream treeStream = new CommonTreeNodeStream(t); treeStream.setTokenStream(tokens); + if (printTokens) { + System.out.println(t.toStringTree()); + } + smaliTreeWalker dexGen = new smaliTreeWalker(treeStream); + dexGen.setApiLevel(apiLevel, experimental); + dexGen.setVerboseErrors(verboseErrors); dexGen.setDexBuilder(dexBuilder); dexGen.smali_file(); @@ -363,6 +378,11 @@ public class main { .withArgName("API_LEVEL") .create("a"); + Option experimentalOption = OptionBuilder.withLongOpt("experimental") + .withDescription("enable experimental opcodes to be assembled, even if they " + + " aren't necessarily supported by the Android runtime yet") + .create("X"); + Option jobsOption = OptionBuilder.withLongOpt("jobs") .withDescription("The number of threads to use. Defaults to the number of cores available, up to a " + "maximum of 6") @@ -383,6 +403,7 @@ public class main { basicOptions.addOption(outputOption); basicOptions.addOption(allowOdexOption); basicOptions.addOption(apiLevelOption); + basicOptions.addOption(experimentalOption); basicOptions.addOption(jobsOption); debugOptions.addOption(verboseErrorsOption); diff --git a/smali/src/main/java/org/jf/smali/smaliFlexLexer.java b/smali/src/main/java/org/jf/smali/smaliFlexLexer.java index 0e3d3f49..6008fe45 100644 --- a/smali/src/main/java/org/jf/smali/smaliFlexLexer.java +++ b/smali/src/main/java/org/jf/smali/smaliFlexLexer.java @@ -1,4 +1,4 @@ -/* The following code was generated by JFlex 1.4.3 on 2/19/15 1:23 PM */ +/* The following code was generated by JFlex 1.4.3 on 4/23/15 12:35 PM */ package org.jf.smali; @@ -11,8 +11,8 @@ import static org.jf.smali.smaliParser.*; /** * This class is a scanner generated by * <a href="http://www.jflex.de/">JFlex</a> 1.4.3 - * on 2/19/15 1:23 PM from the specification file - * <tt>./src/main/jflex/smaliLexer.flex</tt> + * on 4/23/15 12:35 PM from the specification file + * <tt>./src/main/jflex/smaliLexer.jflex</tt> */ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { @@ -71,55 +71,57 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { "\2\3\1\11\1\12\1\1\1\13\1\14\1\15\1\16"+ "\1\17\1\20\1\21\1\22\1\5\3\23\1\24\1\25"+ "\1\26\1\0\1\24\1\27\1\30\1\0\1\2\3\3"+ - "\1\31\1\32\1\33\1\0\1\34\1\35\1\36\2\3"+ + "\1\31\1\32\1\33\1\0\1\34\1\35\1\36\3\3"+ "\2\37\1\3\1\0\1\40\12\3\3\4\1\41\10\4"+ - "\1\42\1\3\1\0\1\3\1\0\1\43\2\0\22\3"+ + "\1\42\1\3\1\0\1\3\1\0\1\43\2\0\26\3"+ "\1\44\31\3\4\0\1\43\2\0\1\45\1\46\1\47"+ "\1\50\1\51\1\52\1\53\1\54\1\55\1\56\1\57"+ - "\1\2\1\0\1\36\1\3\1\0\1\60\1\33\2\3"+ + "\1\2\1\0\1\36\1\3\1\0\1\60\1\33\3\3"+ "\1\37\11\3\1\36\5\3\21\4\1\3\1\0\1\61"+ - "\2\0\1\62\2\0\43\3\1\63\14\3\1\64\1\0"+ - "\1\62\2\0\1\50\1\57\1\0\1\33\1\0\2\3"+ - "\1\37\5\3\1\65\11\3\25\4\4\0\7\3\1\66"+ - "\5\3\1\67\11\3\1\70\5\3\1\71\1\3\1\72"+ + "\2\0\1\62\2\0\47\3\1\63\14\3\1\64\1\0"+ + "\1\62\2\0\1\50\1\57\1\0\1\33\1\0\3\3"+ + "\1\37\5\3\1\65\11\3\25\4\4\0\12\3\1\66"+ + "\5\3\1\67\12\3\1\70\5\3\1\71\1\3\1\72"+ "\6\3\1\73\6\3\1\74\3\3\1\50\1\57\1\75"+ - "\2\3\1\76\13\3\4\4\1\77\13\4\1\100\1\0"+ - "\3\4\3\3\1\101\32\3\1\0\11\3\1\102\5\3"+ - "\1\0\3\3\1\50\1\57\1\3\1\103\17\3\1\0"+ + "\3\3\1\76\13\3\4\4\1\77\13\4\1\100\1\0"+ + "\3\4\5\3\1\101\34\3\1\0\11\3\1\102\5\3"+ + "\1\0\3\3\1\50\1\57\2\3\1\103\17\3\1\0"+ "\1\3\1\4\1\104\1\105\1\106\1\107\3\4\1\110"+ - "\3\4\1\111\13\4\5\3\1\0\34\3\1\102\5\3"+ - "\2\0\12\3\1\66\4\3\2\0\3\3\2\112\12\3"+ + "\3\4\1\111\13\4\7\3\1\0\36\3\1\102\5\3"+ + "\2\0\12\3\1\66\4\3\2\0\3\3\2\112\13\3"+ "\1\0\7\3\1\0\1\3\2\4\1\113\4\4\1\114"+ - "\15\4\1\115\7\3\1\0\1\116\1\0\16\3\1\66"+ - "\11\3\1\66\12\3\1\0\1\117\1\71\11\3\1\0"+ - "\3\3\1\120\1\121\1\0\1\57\11\3\1\0\14\3"+ - "\1\0\1\3\24\4\1\3\1\66\5\3\1\0\1\122"+ - "\13\3\1\0\10\3\1\0\3\3\1\123\10\3\1\0"+ - "\4\3\1\124\1\3\2\0\3\3\1\0\4\3\1\65"+ - "\2\3\1\65\2\3\1\0\15\3\1\125\1\3\1\4"+ - "\1\126\5\4\1\127\1\130\11\4\1\0\1\4\6\3"+ - "\1\0\11\3\1\67\2\3\1\67\1\3\1\0\2\3"+ + "\15\4\1\115\11\3\1\0\1\116\1\0\17\3\1\66"+ + "\11\3\1\66\13\3\1\0\1\117\1\71\11\3\1\0"+ + "\3\3\1\120\1\121\1\0\1\57\12\3\1\0\15\3"+ + "\1\0\1\3\24\4\3\3\1\66\5\3\1\0\1\122"+ + "\14\3\1\0\10\3\1\0\4\3\1\123\10\3\1\0"+ + "\4\3\1\124\1\3\2\0\3\3\1\0\5\3\1\65"+ + "\2\3\1\65\2\3\1\0\16\3\1\125\1\3\1\4"+ + "\1\126\5\4\1\127\1\130\11\4\1\0\1\4\10\3"+ + "\1\0\12\3\1\67\2\3\1\67\1\3\1\0\3\3"+ "\1\0\7\3\1\71\1\0\2\3\1\131\4\3\2\0"+ - "\2\3\1\0\7\3\1\132\1\133\14\3\6\4\1\134"+ - "\1\135\5\4\1\136\2\4\1\137\3\3\1\140\1\0"+ - "\1\3\1\141\7\3\1\0\11\3\1\0\5\3\2\0"+ - "\2\3\1\142\16\3\1\143\1\144\1\145\10\4\1\146"+ - "\1\4\2\3\2\0\5\3\1\0\2\3\1\102\1\63"+ - "\3\3\1\102\1\147\5\3\1\0\1\150\1\0\7\3"+ - "\1\151\6\3\11\4\1\152\2\0\1\153\13\3\1\154"+ - "\1\155\2\3\1\156\2\3\1\0\1\151\1\3\1\151"+ - "\3\3\11\4\2\0\1\157\1\160\1\161\7\3\1\0"+ - "\4\3\1\162\1\163\1\164\5\4\1\165\2\0\1\166"+ - "\5\3\1\0\3\3\1\167\1\170\3\4\3\0\4\3"+ - "\1\0\2\3\1\171\3\4\3\0\4\3\1\0\2\3"+ - "\1\0\3\4\1\0\1\172\1\0\2\3\1\173\1\174"+ - "\2\3\1\0\1\175\1\176\1\177\1\200\1\0\2\3"+ - "\2\0\1\201\2\0\1\202\1\3\3\0\1\203\1\3"+ - "\3\0\1\3\2\0\1\204\1\3\2\0\1\3\1\205"+ - "\1\206\1\207"; + "\2\3\1\0\1\132\7\3\1\133\1\134\15\3\6\4"+ + "\1\135\1\136\5\4\1\137\2\4\1\140\5\3\1\141"+ + "\1\0\1\3\1\142\10\3\1\0\12\3\1\0\5\3"+ + "\2\0\2\3\1\143\17\3\1\144\1\145\1\146\10\4"+ + "\1\147\1\4\4\3\2\0\6\3\1\0\3\3\1\102"+ + "\1\63\3\3\1\102\1\132\5\3\1\0\1\150\1\0"+ + "\10\3\1\151\6\3\11\4\2\3\1\152\2\0\1\153"+ + "\14\3\1\154\1\155\2\3\1\156\1\3\1\157\1\3"+ + "\1\0\1\151\1\3\1\151\3\3\11\4\1\3\1\160"+ + "\2\0\1\161\1\3\1\162\1\163\7\3\1\0\4\3"+ + "\1\164\1\165\1\166\5\4\1\167\1\3\2\0\1\3"+ + "\1\170\5\3\1\0\3\3\1\171\1\172\3\4\1\3"+ + "\2\0\1\3\1\0\4\3\1\0\2\3\1\173\3\4"+ + "\1\174\2\0\1\3\1\0\4\3\1\0\2\3\1\0"+ + "\3\4\1\0\1\175\1\176\1\0\2\3\1\177\1\200"+ + "\2\3\1\0\1\201\1\202\1\203\1\204\1\0\2\3"+ + "\2\0\1\205\2\0\1\206\1\3\3\0\1\207\1\3"+ + "\3\0\1\3\2\0\1\210\1\3\2\0\1\3\1\211"+ + "\1\212\1\213"; private static int [] zzUnpackAction() { - int [] result = new int[1169]; + int [] result = new int[1237]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -153,33 +155,33 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { "\0\u0186\0\u0186\0\u0186\0\u0186\0\u0be2\0\u0c30\0\u0c7e\0\u0186"+ "\0\u0186\0\u0ccc\0\u0d1a\0\u0186\0\u0186\0\u0d68\0\u0db6\0\u0e04"+ "\0\u0e52\0\u0ea0\0\u0222\0\u0222\0\u0eee\0\u0492\0\u0222\0\u0222"+ - "\0\u0222\0\u0f3c\0\u0f8a\0\u0fd8\0\u1026\0\u1074\0\u10c2\0\u0186"+ - "\0\u1110\0\u115e\0\u11ac\0\u11fa\0\u1248\0\u1296\0\u12e4\0\u1332"+ - "\0\u1380\0\u13ce\0\u141c\0\u146a\0\u14b8\0\u0186\0\u1506\0\u1554"+ - "\0\u15a2\0\u15f0\0\u163e\0\u168c\0\u16da\0\u1728\0\u04e0\0\u1776"+ - "\0\u17c4\0\u1812\0\u1860\0\u17c4\0\u18ae\0\u05ca\0\u18fc\0\u194a"+ + "\0\u0222\0\u0f3c\0\u0f8a\0\u0fd8\0\u1026\0\u1074\0\u10c2\0\u1110"+ + "\0\u0186\0\u115e\0\u11ac\0\u11fa\0\u1248\0\u1296\0\u12e4\0\u1332"+ + "\0\u1380\0\u13ce\0\u141c\0\u146a\0\u14b8\0\u1506\0\u0186\0\u1554"+ + "\0\u15a2\0\u15f0\0\u163e\0\u168c\0\u16da\0\u1728\0\u1776\0\u04e0"+ + "\0\u17c4\0\u1812\0\u1860\0\u18ae\0\u1812\0\u18fc\0\u05ca\0\u194a"+ "\0\u1998\0\u19e6\0\u1a34\0\u1a82\0\u1ad0\0\u1b1e\0\u1b6c\0\u1bba"+ "\0\u1c08\0\u1c56\0\u1ca4\0\u1cf2\0\u1d40\0\u1d8e\0\u1ddc\0\u1e2a"+ "\0\u1e78\0\u1ec6\0\u1f14\0\u1f62\0\u1fb0\0\u1ffe\0\u204c\0\u209a"+ "\0\u20e8\0\u2136\0\u2184\0\u21d2\0\u2220\0\u226e\0\u22bc\0\u230a"+ "\0\u2358\0\u23a6\0\u23f4\0\u2442\0\u2490\0\u24de\0\u252c\0\u257a"+ - "\0\u25c8\0\u2616\0\u2664\0\u26b2\0\u2700\0\u274e\0\u0186\0\u279c"+ - "\0\u0c30\0\u0186\0\u0186\0\u0186\0\u27ea\0\u0186\0\u0186\0\u0186"+ - "\0\u0186\0\u0186\0\u0186\0\u2838\0\u2886\0\u28d4\0\u2922\0\u2970"+ - "\0\u29be\0\u0186\0\u0186\0\u2a0c\0\u2a5a\0\u2aa8\0\u2af6\0\u2b44"+ + "\0\u25c8\0\u2616\0\u2664\0\u26b2\0\u2700\0\u274e\0\u279c\0\u27ea"+ + "\0\u2838\0\u2886\0\u28d4\0\u0186\0\u2922\0\u0c30\0\u0186\0\u0186"+ + "\0\u0186\0\u2970\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186"+ + "\0\u29be\0\u2a0c\0\u2a5a\0\u2aa8\0\u2af6\0\u2b44\0\u0186\0\u0186"+ "\0\u2b92\0\u2be0\0\u2c2e\0\u2c7c\0\u2cca\0\u2d18\0\u2d66\0\u2db4"+ "\0\u2e02\0\u2e50\0\u2e9e\0\u2eec\0\u2f3a\0\u2f88\0\u2fd6\0\u3024"+ "\0\u3072\0\u30c0\0\u310e\0\u315c\0\u31aa\0\u31f8\0\u3246\0\u3294"+ "\0\u32e2\0\u3330\0\u337e\0\u33cc\0\u341a\0\u3468\0\u34b6\0\u3504"+ - "\0\u17c4\0\u3552\0\u35a0\0\u17c4\0\u35ee\0\u363c\0\u368a\0\u36d8"+ - "\0\u3726\0\u3774\0\u37c2\0\u3810\0\u385e\0\u38ac\0\u38fa\0\u3948"+ + "\0\u3552\0\u35a0\0\u35ee\0\u363c\0\u368a\0\u36d8\0\u1812\0\u3726"+ + "\0\u3774\0\u1812\0\u37c2\0\u3810\0\u385e\0\u38ac\0\u38fa\0\u3948"+ "\0\u3996\0\u39e4\0\u3a32\0\u3a80\0\u3ace\0\u3b1c\0\u3b6a\0\u3bb8"+ "\0\u3c06\0\u3c54\0\u3ca2\0\u3cf0\0\u3d3e\0\u3d8c\0\u3dda\0\u3e28"+ "\0\u3e76\0\u3ec4\0\u3f12\0\u3f60\0\u3fae\0\u3ffc\0\u404a\0\u4098"+ - "\0\u40e6\0\u0222\0\u4134\0\u4182\0\u41d0\0\u421e\0\u426c\0\u42ba"+ - "\0\u4308\0\u4356\0\u43a4\0\u43f2\0\u4440\0\u448e\0\u0186\0\u0be2"+ - "\0\u0186\0\u44dc\0\u452a\0\u4578\0\u45c6\0\u4614\0\u4662\0\u46b0"+ - "\0\u46fe\0\u474c\0\u479a\0\u47e8\0\u4836\0\u4884\0\u48d2\0\u4920"+ + "\0\u40e6\0\u4134\0\u4182\0\u41d0\0\u421e\0\u426c\0\u42ba\0\u4308"+ + "\0\u4356\0\u43a4\0\u43f2\0\u0222\0\u4440\0\u448e\0\u44dc\0\u452a"+ + "\0\u4578\0\u45c6\0\u4614\0\u4662\0\u46b0\0\u46fe\0\u474c\0\u479a"+ + "\0\u0186\0\u0be2\0\u0186\0\u47e8\0\u4836\0\u4884\0\u48d2\0\u4920"+ "\0\u496e\0\u49bc\0\u4a0a\0\u4a58\0\u4aa6\0\u4af4\0\u4b42\0\u4b90"+ "\0\u4bde\0\u4c2c\0\u4c7a\0\u4cc8\0\u4d16\0\u4d64\0\u4db2\0\u4e00"+ "\0\u4e4e\0\u4e9c\0\u4eea\0\u4f38\0\u4f86\0\u4fd4\0\u5022\0\u5070"+ @@ -187,113 +189,121 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { "\0\u532e\0\u537c\0\u53ca\0\u5418\0\u5466\0\u54b4\0\u5502\0\u5550"+ "\0\u559e\0\u55ec\0\u563a\0\u5688\0\u56d6\0\u5724\0\u5772\0\u57c0"+ "\0\u580e\0\u585c\0\u58aa\0\u58f8\0\u5946\0\u5994\0\u59e2\0\u5a30"+ - "\0\u5a7e\0\u5acc\0\u0222\0\u5b1a\0\u5b68\0\u5bb6\0\u5c04\0\u5c52"+ - "\0\u5ca0\0\u5cee\0\u0222\0\u5d3c\0\u5d8a\0\u5dd8\0\u5e26\0\u5e74"+ - "\0\u5ec2\0\u0222\0\u5f10\0\u5f5e\0\u5fac\0\u5ffa\0\u6048\0\u6096"+ - "\0\u60e4\0\u6132\0\u6180\0\u61ce\0\u621c\0\u626a\0\u0222\0\u62b8"+ - "\0\u6306\0\u6354\0\u63a2\0\u63f0\0\u643e\0\u648c\0\u64da\0\u6528"+ - "\0\u6576\0\u65c4\0\u6612\0\u6660\0\u66ae\0\u66fc\0\u674a\0\u6798"+ - "\0\u67e6\0\u141c\0\u6834\0\u6882\0\u68d0\0\u691e\0\u696c\0\u69ba"+ - "\0\u6a08\0\u6a56\0\u6aa4\0\u6af2\0\u6b40\0\u141c\0\u6b8e\0\u6bdc"+ - "\0\u6c2a\0\u6c78\0\u6cc6\0\u6d14\0\u6d62\0\u6db0\0\u6dfe\0\u6e4c"+ - "\0\u6e9a\0\u6ee8\0\u6f36\0\u6f84\0\u6fd2\0\u7020\0\u706e\0\u70bc"+ + "\0\u5a7e\0\u5acc\0\u5b1a\0\u5b68\0\u5bb6\0\u5c04\0\u5c52\0\u5ca0"+ + "\0\u5cee\0\u5d3c\0\u5d8a\0\u5dd8\0\u5e26\0\u5e74\0\u5ec2\0\u5f10"+ + "\0\u5f5e\0\u0222\0\u5fac\0\u5ffa\0\u6048\0\u6096\0\u60e4\0\u6132"+ + "\0\u6180\0\u0222\0\u61ce\0\u621c\0\u626a\0\u62b8\0\u6306\0\u6354"+ + "\0\u0222\0\u63a2\0\u63f0\0\u643e\0\u648c\0\u64da\0\u6528\0\u6576"+ + "\0\u65c4\0\u6612\0\u6660\0\u66ae\0\u66fc\0\u0222\0\u674a\0\u6798"+ + "\0\u67e6\0\u6834\0\u6882\0\u68d0\0\u691e\0\u696c\0\u69ba\0\u6a08"+ + "\0\u6a56\0\u6aa4\0\u6af2\0\u6b40\0\u6b8e\0\u6bdc\0\u6c2a\0\u6c78"+ + "\0\u6cc6\0\u146a\0\u6d14\0\u6d62\0\u6db0\0\u6dfe\0\u6e4c\0\u6e9a"+ + "\0\u6ee8\0\u6f36\0\u6f84\0\u6fd2\0\u7020\0\u146a\0\u706e\0\u70bc"+ "\0\u710a\0\u7158\0\u71a6\0\u71f4\0\u7242\0\u7290\0\u72de\0\u732c"+ "\0\u737a\0\u73c8\0\u7416\0\u7464\0\u74b2\0\u7500\0\u754e\0\u759c"+ "\0\u75ea\0\u7638\0\u7686\0\u76d4\0\u7722\0\u7770\0\u77be\0\u780c"+ "\0\u785a\0\u78a8\0\u78f6\0\u7944\0\u7992\0\u79e0\0\u7a2e\0\u7a7c"+ - "\0\u7aca\0\u7b18\0\u7b66\0\u7bb4\0\u7c02\0\u7c50\0\u7c9e\0\u0222"+ - "\0\u7cec\0\u7d3a\0\u7d88\0\u7dd6\0\u7e24\0\u7e72\0\u7ec0\0\u7f0e"+ - "\0\u7f5c\0\u7faa\0\u7ff8\0\u8046\0\u8094\0\u80e2\0\u8130\0\u817e"+ - "\0\u81cc\0\u821a\0\u141c\0\u141c\0\u8268\0\u82b6\0\u8304\0\u8352"+ - "\0\u83a0\0\u141c\0\u83ee\0\u843c\0\u848a\0\u141c\0\u84d8\0\u8526"+ - "\0\u8574\0\u85c2\0\u8610\0\u865e\0\u86ac\0\u86fa\0\u8748\0\u8796"+ - "\0\u87e4\0\u8832\0\u8880\0\u88ce\0\u891c\0\u896a\0\u89b8\0\u8a06"+ - "\0\u8a54\0\u8aa2\0\u8af0\0\u8b3e\0\u8b8c\0\u8bda\0\u8c28\0\u8c76"+ + "\0\u7aca\0\u7b18\0\u7b66\0\u7bb4\0\u7c02\0\u7c50\0\u7c9e\0\u7cec"+ + "\0\u7d3a\0\u7d88\0\u7dd6\0\u7e24\0\u7e72\0\u7ec0\0\u7f0e\0\u7f5c"+ + "\0\u7faa\0\u7ff8\0\u8046\0\u8094\0\u80e2\0\u8130\0\u817e\0\u81cc"+ + "\0\u821a\0\u8268\0\u82b6\0\u8304\0\u0222\0\u8352\0\u83a0\0\u83ee"+ + "\0\u843c\0\u848a\0\u84d8\0\u8526\0\u8574\0\u85c2\0\u8610\0\u865e"+ + "\0\u86ac\0\u86fa\0\u8748\0\u8796\0\u87e4\0\u8832\0\u8880\0\u146a"+ + "\0\u146a\0\u88ce\0\u891c\0\u896a\0\u89b8\0\u8a06\0\u146a\0\u8a54"+ + "\0\u8aa2\0\u8af0\0\u146a\0\u8b3e\0\u8b8c\0\u8bda\0\u8c28\0\u8c76"+ "\0\u8cc4\0\u8d12\0\u8d60\0\u8dae\0\u8dfc\0\u8e4a\0\u8e98\0\u8ee6"+ "\0\u8f34\0\u8f82\0\u8fd0\0\u901e\0\u906c\0\u90ba\0\u9108\0\u9156"+ "\0\u91a4\0\u91f2\0\u9240\0\u928e\0\u92dc\0\u932a\0\u9378\0\u93c6"+ "\0\u9414\0\u9462\0\u94b0\0\u94fe\0\u954c\0\u959a\0\u95e8\0\u9636"+ "\0\u9684\0\u96d2\0\u9720\0\u976e\0\u97bc\0\u980a\0\u9858\0\u98a6"+ - "\0\u98f4\0\u9942\0\u9990\0\u99de\0\u9a2c\0\u9a7a\0\u9ac8\0\u0186"+ - "\0\u9b16\0\u9b64\0\u9bb2\0\u9c00\0\u9c4e\0\u9c9c\0\u9cea\0\u9d38"+ - "\0\u9d86\0\u9dd4\0\u9e22\0\u9e70\0\u9ebe\0\u9f0c\0\u9f5a\0\u9fa8"+ - "\0\u9ff6\0\ua044\0\ua092\0\ua0e0\0\ua12e\0\ua17c\0\ua1ca\0\u141c"+ - "\0\ua218\0\ua266\0\ua2b4\0\ua302\0\u141c\0\ua350\0\ua39e\0\ua3ec"+ - "\0\ua43a\0\ua488\0\ua4d6\0\ua524\0\ua572\0\ua5c0\0\ua60e\0\ua65c"+ - "\0\ua6aa\0\ua6f8\0\u141c\0\ua746\0\ua794\0\ua7e2\0\ua830\0\ua87e"+ - "\0\ua8cc\0\ua91a\0\ua968\0\u0186\0\ua9b6\0\uaa04\0\uaa52\0\uaaa0"+ - "\0\uaaee\0\uab3c\0\uab8a\0\uabd8\0\uac26\0\uac74\0\uacc2\0\uad10"+ - "\0\uad5e\0\uadac\0\uadfa\0\uae48\0\uae96\0\uaee4\0\uaf32\0\uaf80"+ - "\0\uafce\0\ub01c\0\ub06a\0\ub0b8\0\ub106\0\ub154\0\ub1a2\0\ub1f0"+ + "\0\u98f4\0\u9942\0\u9990\0\u99de\0\u9a2c\0\u9a7a\0\u9ac8\0\u9b16"+ + "\0\u9b64\0\u9bb2\0\u9c00\0\u9c4e\0\u9c9c\0\u9cea\0\u9d38\0\u9d86"+ + "\0\u9dd4\0\u9e22\0\u9e70\0\u9ebe\0\u9f0c\0\u9f5a\0\u9fa8\0\u9ff6"+ + "\0\ua044\0\ua092\0\ua0e0\0\ua12e\0\ua17c\0\ua1ca\0\ua218\0\ua266"+ + "\0\u0186\0\ua2b4\0\ua302\0\ua350\0\ua39e\0\ua3ec\0\ua43a\0\ua488"+ + "\0\ua4d6\0\ua524\0\ua572\0\ua5c0\0\ua60e\0\ua65c\0\ua6aa\0\ua6f8"+ + "\0\ua746\0\ua794\0\ua7e2\0\ua830\0\ua87e\0\ua8cc\0\ua91a\0\ua968"+ + "\0\ua9b6\0\u146a\0\uaa04\0\uaa52\0\uaaa0\0\uaaee\0\u146a\0\uab3c"+ + "\0\uab8a\0\uabd8\0\uac26\0\uac74\0\uacc2\0\uad10\0\uad5e\0\uadac"+ + "\0\uadfa\0\uae48\0\uae96\0\uaee4\0\u146a\0\uaf32\0\uaf80\0\uafce"+ + "\0\ub01c\0\ub06a\0\ub0b8\0\ub106\0\ub154\0\ub1a2\0\ub1f0\0\u0186"+ "\0\ub23e\0\ub28c\0\ub2da\0\ub328\0\ub376\0\ub3c4\0\ub412\0\ub460"+ - "\0\ub4ae\0\u0186\0\u0222\0\ub4fc\0\ub54a\0\ub598\0\ub5e6\0\ub634"+ - "\0\ub682\0\ub6d0\0\ub71e\0\ub76c\0\ub7ba\0\ub808\0\ub856\0\ub8a4"+ - "\0\u0186\0\u0186\0\ub8f2\0\u9b16\0\ub940\0\ub98e\0\ub9dc\0\uba2a"+ - "\0\uba78\0\ubac6\0\ubb14\0\ubb62\0\ubbb0\0\ubbfe\0\ubc4c\0\ubc9a"+ - "\0\ubce8\0\ubd36\0\ubd84\0\ubdd2\0\ube20\0\ube6e\0\ubebc\0\ubf0a"+ - "\0\ubf58\0\ubfa6\0\ubff4\0\uc042\0\uc090\0\uc0de\0\uc12c\0\uc17a"+ - "\0\uc1c8\0\uc216\0\uc264\0\uc2b2\0\uc300\0\uc34e\0\uc39c\0\uc3ea"+ + "\0\ub4ae\0\ub4fc\0\ub54a\0\ub598\0\ub5e6\0\ub634\0\ub682\0\ub6d0"+ + "\0\ub71e\0\ub76c\0\ub7ba\0\ub808\0\ub856\0\ub8a4\0\ub8f2\0\ub940"+ + "\0\ub98e\0\ub9dc\0\uba2a\0\uba78\0\ubac6\0\ubb14\0\ubb62\0\ubbb0"+ + "\0\ubbfe\0\ubc4c\0\ubc9a\0\ubce8\0\ubd36\0\ubd84\0\ubdd2\0\u0186"+ + "\0\u0222\0\ube20\0\ube6e\0\ubebc\0\ubf0a\0\ubf58\0\ubfa6\0\ubff4"+ + "\0\uc042\0\uc090\0\uc0de\0\uc12c\0\uc17a\0\uc1c8\0\u0186\0\u0186"+ + "\0\uc216\0\ua2b4\0\uc264\0\uc2b2\0\uc300\0\uc34e\0\uc39c\0\uc3ea"+ "\0\uc438\0\uc486\0\uc4d4\0\uc522\0\uc570\0\uc5be\0\uc60c\0\uc65a"+ - "\0\uc6a8\0\u0222\0\uc6f6\0\uc744\0\uc792\0\uc7e0\0\uc82e\0\uc87c"+ - "\0\u0186\0\uc8ca\0\uc918\0\uc966\0\uc9b4\0\uca02\0\uca50\0\uca9e"+ - "\0\ucaec\0\ucb3a\0\ucb88\0\ucbd6\0\ucc24\0\ucc72\0\uccc0\0\ucd0e"+ - "\0\ucd5c\0\ucdaa\0\ucdf8\0\uce46\0\uce94\0\ucee2\0\ucf30\0\ucf7e"+ - "\0\ucfcc\0\ud01a\0\ud068\0\ud0b6\0\ud104\0\ud152\0\ud1a0\0\ud1ee"+ - "\0\ud23c\0\ud28a\0\ud2d8\0\ud326\0\ud374\0\ud3c2\0\ud410\0\u0222"+ - "\0\ud45e\0\ud4ac\0\ud4fa\0\ud548\0\ud596\0\ud5e4\0\ud632\0\ud680"+ - "\0\ud6ce\0\ud71c\0\ud76a\0\u0222\0\ud7b8\0\ud806\0\ud854\0\ud8a2"+ - "\0\ud8f0\0\ud93e\0\ud98c\0\ud9da\0\uda28\0\uda76\0\udac4\0\udb12"+ - "\0\udb60\0\udbae\0\udbfc\0\udc4a\0\udc98\0\udce6\0\udd34\0\ubff4"+ - "\0\udd82\0\uddd0\0\u141c\0\ude1e\0\ude6c\0\udeba\0\udf08\0\udf56"+ - "\0\u141c\0\u141c\0\udfa4\0\udff2\0\ue040\0\ue08e\0\ue0dc\0\ue12a"+ - "\0\ue178\0\ue1c6\0\ue214\0\ue262\0\ue2b0\0\ue2fe\0\ue34c\0\ue39a"+ - "\0\ue3e8\0\ue436\0\ue484\0\ue4d2\0\ue520\0\ue56e\0\ue5bc\0\ue60a"+ - "\0\ue658\0\ue6a6\0\ue6f4\0\ue742\0\ue790\0\u0222\0\ue7de\0\ue82c"+ - "\0\ue87a\0\ue8c8\0\ue916\0\ue964\0\ue9b2\0\uea00\0\uea4e\0\uea9c"+ - "\0\ueaea\0\ueb38\0\ueb86\0\uebd4\0\uec22\0\uec70\0\uecbe\0\ued0c"+ - "\0\ued5a\0\u0222\0\ueda8\0\uedf6\0\uee44\0\uee92\0\ueee0\0\uef2e"+ - "\0\uef7c\0\uefca\0\uf018\0\uf066\0\uf0b4\0\uf102\0\uf150\0\uf19e"+ - "\0\uf1ec\0\uf23a\0\u0222\0\ud93e\0\uf288\0\uf2d6\0\uf324\0\uf372"+ - "\0\uf3c0\0\uf40e\0\uf45c\0\uf4aa\0\uf4f8\0\uf546\0\uf594\0\uf5e2"+ - "\0\uf630\0\uf67e\0\uf6cc\0\uf71a\0\uf768\0\uf7b6\0\u141c\0\u141c"+ - "\0\uf804\0\uf852\0\uf8a0\0\uf8ee\0\uf93c\0\u141c\0\uf98a\0\uf9d8"+ - "\0\u141c\0\ufa26\0\ufa74\0\ufac2\0\ufb10\0\ufb5e\0\ufbac\0\u0222"+ - "\0\ufbfa\0\ufc48\0\ufc96\0\ufce4\0\ufd32\0\ufd80\0\ufdce\0\ufe1c"+ - "\0\ufe6a\0\ufeb8\0\uff06\0\uff54\0\uffa2\0\ufff0\1\76\1\214"+ - "\1\332\1\u0128\1\u0176\1\u01c4\1\u0212\1\u0260\1\u02ae\1\u02fc"+ - "\1\u034a\1\u0398\1\u03e6\0\uf018\1\u0434\1\u0482\1\u04d0\1\u051e"+ - "\1\u056c\1\u05ba\1\u0608\1\u0656\1\u06a4\1\u06f2\1\u0740\1\u078e"+ - "\1\u07dc\1\u082a\0\u141c\0\u141c\0\u141c\1\u0878\1\u08c6\1\u0914"+ - "\1\u0962\1\u09b0\1\u09fe\1\u0a4c\1\u0a9a\0\u141c\1\u0ae8\1\u0b36"+ - "\1\u0b84\1\u0bd2\1\u0c20\1\u0c6e\1\u0cbc\1\u0d0a\1\u0d58\1\u0da6"+ - "\1\u0df4\1\u0e42\1\u0e90\0\u0222\1\u0ede\1\u0f2c\1\u0f7a\1\u0fc8"+ - "\1\u1016\0\u0186\1\u1064\1\u10b2\1\u1100\1\u114e\1\u119c\1\u11ea"+ - "\0\u0186\1\u1238\1\u1286\1\u12d4\1\u1322\1\u1370\1\u13be\1\u140c"+ - "\1\u145a\1\u14a8\1\u14f6\1\u1544\1\u1592\1\u15e0\1\u162e\1\u167c"+ - "\1\u16ca\1\u1718\1\u1766\1\u17b4\1\u1802\1\u1850\1\u189e\1\u18ec"+ - "\1\u193a\1\u1988\1\u19d6\1\u1a24\0\u0186\1\u1a72\1\u1ac0\1\u1b0e"+ - "\1\u1b5c\1\u1baa\1\u1bf8\1\u1c46\1\u1c94\1\u1ce2\1\u1d30\1\u1d7e"+ - "\0\u0186\0\u0186\1\u1dcc\1\u1e1a\0\u0222\1\u1e68\1\u1eb6\1\u1f04"+ - "\1\u1f52\1\u1fa0\1\u1fee\1\u203c\1\u208a\1\u20d8\1\u2126\1\u2174"+ - "\1\u21c2\1\u2210\1\u225e\1\u22ac\1\u22fa\1\u2348\1\u2396\1\u23e4"+ - "\1\u2432\0\u0186\0\u0222\0\u0222\1\u2480\1\u24ce\1\u251c\1\u256a"+ - "\1\u25b8\1\u2606\1\u2654\1\u26a2\1\u26f0\1\u273e\1\u278c\1\u27da"+ - "\0\u141c\0\u141c\0\u141c\1\u2828\1\u2876\1\u28c4\1\u2912\1\u2960"+ - "\0\u141c\1\u29ae\1\u29fc\1\u2a4a\1\u2a98\1\u2ae6\1\u2b34\1\u2b82"+ - "\1\u2bd0\1\u2c1e\1\u2c6c\1\u2cba\1\u2d08\0\u141c\0\u141c\1\u2d56"+ - "\1\u2da4\1\u2df2\1\u2e40\1\u2e8e\1\u2edc\1\u2f2a\1\u2f78\1\u2fc6"+ - "\1\u3014\1\u3062\1\u30b0\1\u30fe\1\u314c\1\u319a\1\u31e8\1\u3236"+ - "\1\u3284\1\u32d2\1\u3320\1\u336e\1\u33bc\1\u340a\1\u3458\1\u34a6"+ - "\1\u34f4\1\u3542\1\u3590\1\u35de\1\u362c\1\u367a\1\u36c8\0\u0186"+ - "\1\u3716\1\u3764\1\u37b2\1\u3800\0\u0186\1\u384e\1\u389c\1\u38ea"+ - "\0\u141c\0\u141c\0\u141c\0\u0186\1\u3938\1\u3986\1\u39d4\1\u3a22"+ - "\1\u3a70\0\u0222\1\u3abe\1\u3b0c\0\u0222\1\u3b5a\1\u3ba8\1\u3bf6"+ - "\1\u3c44\0\u0186\1\u3c92\1\u3ce0\1\u3d2e\1\u3d7c\1\u3dca\1\u3e18"+ - "\1\u3e66\0\u0186\1\u3eb4\1\u3f02\1\u3f50\1\u3f9e\0\u0186\0\u0186"+ - "\0\u0222"; + "\0\uc6a8\0\uc6f6\0\uc744\0\uc792\0\uc7e0\0\uc82e\0\uc87c\0\uc8ca"+ + "\0\uc918\0\uc966\0\uc9b4\0\uca02\0\uca50\0\uca9e\0\ucaec\0\ucb3a"+ + "\0\ucb88\0\ucbd6\0\ucc24\0\ucc72\0\uccc0\0\ucd0e\0\ucd5c\0\ucdaa"+ + "\0\ucdf8\0\uce46\0\uce94\0\ucee2\0\ucf30\0\ucf7e\0\ucfcc\0\ud01a"+ + "\0\ud068\0\ud0b6\0\ud104\0\u0222\0\ud152\0\ud1a0\0\ud1ee\0\ud23c"+ + "\0\ud28a\0\ud2d8\0\u0186\0\ud326\0\ud374\0\ud3c2\0\ud410\0\ud45e"+ + "\0\ud4ac\0\ud4fa\0\ud548\0\ud596\0\ud5e4\0\ud632\0\ud680\0\ud6ce"+ + "\0\ud71c\0\ud76a\0\ud7b8\0\ud806\0\ud854\0\ud8a2\0\ud8f0\0\ud93e"+ + "\0\ud98c\0\ud9da\0\uda28\0\uda76\0\udac4\0\udb12\0\udb60\0\udbae"+ + "\0\udbfc\0\udc4a\0\udc98\0\udce6\0\udd34\0\udd82\0\uddd0\0\ude1e"+ + "\0\ude6c\0\udeba\0\udf08\0\u0222\0\udf56\0\udfa4\0\udff2\0\ue040"+ + "\0\ue08e\0\ue0dc\0\ue12a\0\ue178\0\ue1c6\0\ue214\0\ue262\0\ue2b0"+ + "\0\u0222\0\ue2fe\0\ue34c\0\ue39a\0\ue3e8\0\ue436\0\ue484\0\ue4d2"+ + "\0\ue520\0\ue56e\0\ue5bc\0\ue60a\0\ue658\0\ue6a6\0\ue6f4\0\ue742"+ + "\0\ue790\0\ue7de\0\ue82c\0\ue87a\0\ue8c8\0\uc9b4\0\ue916\0\ue964"+ + "\0\u146a\0\ue9b2\0\uea00\0\uea4e\0\uea9c\0\ueaea\0\u146a\0\u146a"+ + "\0\ueb38\0\ueb86\0\uebd4\0\uec22\0\uec70\0\uecbe\0\ued0c\0\ued5a"+ + "\0\ueda8\0\uedf6\0\uee44\0\uee92\0\ueee0\0\uef2e\0\uef7c\0\uefca"+ + "\0\uf018\0\uf066\0\uf0b4\0\uf102\0\uf150\0\uf19e\0\uf1ec\0\uf23a"+ + "\0\uf288\0\uf2d6\0\uf324\0\uf372\0\uf3c0\0\uf40e\0\u0222\0\uf45c"+ + "\0\uf4aa\0\uf4f8\0\uf546\0\uf594\0\uf5e2\0\uf630\0\uf67e\0\uf6cc"+ + "\0\uf71a\0\uf768\0\uf7b6\0\uf804\0\uf852\0\uf8a0\0\uf8ee\0\uf93c"+ + "\0\uf98a\0\uf9d8\0\ufa26\0\u0222\0\ufa74\0\ufac2\0\ufb10\0\ufb5e"+ + "\0\ufbac\0\ufbfa\0\ufc48\0\ufc96\0\ufce4\0\u0222\0\ufd32\0\ufd80"+ + "\0\ufdce\0\ufe1c\0\ufe6a\0\ufeb8\0\uff06\0\u0222\0\ue484\0\uff54"+ + "\0\uffa2\0\ufff0\1\76\1\214\1\332\1\u0128\1\u0176\1\u01c4"+ + "\1\u0212\1\u0260\1\u02ae\1\u02fc\1\u034a\1\u0398\1\u03e6\1\u0434"+ + "\1\u0482\1\u04d0\0\u146a\0\u146a\1\u051e\1\u056c\1\u05ba\1\u0608"+ + "\1\u0656\0\u146a\1\u06a4\1\u06f2\0\u146a\1\u0740\1\u078e\1\u07dc"+ + "\1\u082a\1\u0878\1\u08c6\1\u0914\1\u0962\0\u0222\1\u09b0\1\u09fe"+ + "\1\u0a4c\1\u0a9a\1\u0ae8\1\u0b36\1\u0b84\1\u0bd2\1\u0c20\1\u0c6e"+ + "\1\u0cbc\1\u0d0a\1\u0d58\1\u0da6\1\u0df4\1\u0e42\1\u0e90\1\u0ede"+ + "\1\u0f2c\1\u0f7a\1\u0fc8\1\u1016\1\u1064\1\u10b2\1\u1100\1\u114e"+ + "\1\u119c\1\u11ea\1\u1238\0\ufce4\1\u1286\1\u12d4\1\u1322\1\u1370"+ + "\1\u13be\1\u140c\1\u145a\1\u14a8\1\u14f6\1\u1544\1\u1592\1\u15e0"+ + "\1\u162e\1\u167c\1\u16ca\0\u146a\0\u146a\0\u146a\1\u1718\1\u1766"+ + "\1\u17b4\1\u1802\1\u1850\1\u189e\1\u18ec\1\u193a\0\u146a\1\u1988"+ + "\1\u19d6\1\u1a24\1\u1a72\1\u1ac0\1\u1b0e\1\u1b5c\1\u1baa\1\u1bf8"+ + "\1\u1c46\1\u1c94\1\u1ce2\1\u1d30\1\u1d7e\1\u1dcc\1\u1e1a\1\u1e68"+ + "\0\u0222\1\u1eb6\1\u1f04\1\u1f52\1\u1fa0\1\u1fee\0\u0186\1\u203c"+ + "\1\u208a\1\u20d8\1\u2126\1\u2174\1\u21c2\0\u0186\1\u2210\1\u225e"+ + "\1\u22ac\1\u22fa\1\u2348\1\u2396\1\u23e4\1\u2432\1\u2480\1\u24ce"+ + "\1\u251c\1\u256a\1\u25b8\1\u2606\1\u2654\1\u26a2\1\u26f0\1\u273e"+ + "\1\u278c\1\u27da\1\u2828\1\u2876\1\u28c4\1\u2912\1\u2960\1\u29ae"+ + "\1\u29fc\1\u2a4a\1\u2a98\1\u2ae6\0\u0186\1\u2b34\1\u2b82\1\u2bd0"+ + "\1\u2c1e\1\u2c6c\1\u2cba\1\u2d08\1\u2d56\1\u2da4\1\u2df2\1\u2e40"+ + "\1\u2e8e\0\u0186\0\u0186\1\u2edc\1\u2f2a\0\u0222\1\u2f78\0\u0222"+ + "\1\u2fc6\1\u3014\1\u3062\1\u30b0\1\u30fe\1\u314c\1\u319a\1\u31e8"+ + "\1\u3236\1\u3284\1\u32d2\1\u3320\1\u336e\1\u33bc\1\u340a\1\u3458"+ + "\1\u34a6\1\u34f4\0\u0222\1\u3542\1\u3590\0\u0186\1\u35de\0\u0222"+ + "\0\u0222\1\u362c\1\u367a\1\u36c8\1\u3716\1\u3764\1\u37b2\1\u3800"+ + "\1\u384e\1\u389c\1\u38ea\1\u3938\1\u3986\0\u146a\0\u146a\0\u146a"+ + "\1\u39d4\1\u3a22\1\u3a70\1\u3abe\1\u3b0c\0\u146a\1\u3b5a\1\u3ba8"+ + "\1\u3bf6\1\u3c44\1\u3c92\1\u3ce0\1\u3d2e\1\u3d7c\1\u3dca\1\u3e18"+ + "\1\u3e66\1\u3eb4\1\u3f02\1\u3f50\0\u146a\0\u146a\1\u3f9e\1\u3fec"+ + "\1\u403a\1\u4088\1\u40d6\1\u4124\1\u4172\1\u41c0\1\u420e\1\u425c"+ + "\1\u42aa\1\u42f8\1\u4346\1\u4394\1\u43e2\1\u4430\1\u447e\1\u44cc"+ + "\1\u451a\0\u0222\1\u4568\1\u45b6\1\u4604\1\u4652\1\u46a0\1\u46ee"+ + "\1\u473c\1\u478a\1\u47d8\1\u4826\1\u4874\1\u48c2\1\u4910\1\u495e"+ + "\1\u49ac\1\u49fa\0\u0186\0\u0222\1\u4a48\1\u4a96\1\u4ae4\1\u4b32"+ + "\0\u0186\1\u4b80\1\u4bce\1\u4c1c\0\u146a\0\u146a\0\u146a\0\u0186"+ + "\1\u4c6a\1\u4cb8\1\u4d06\1\u4d54\1\u4da2\0\u0222\1\u4df0\1\u4e3e"+ + "\0\u0222\1\u4e8c\1\u4eda\1\u4f28\1\u4f76\0\u0186\1\u4fc4\1\u5012"+ + "\1\u5060\1\u50ae\1\u50fc\1\u514a\1\u5198\0\u0186\1\u51e6\1\u5234"+ + "\1\u5282\1\u52d0\0\u0186\0\u0186\0\u0222"; private static int [] zzUnpackRowMap() { - int [] result = new int[1169]; + int [] result = new int[1237]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -336,2383 +346,2541 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { "\1\77\1\10\13\0\16\10\1\0\1\106\1\0\6\10"+ "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\4\10\1\112\2\10\1\113\5\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\1\12\2\10\2\12\1\102\4\10"+ - "\1\103\1\104\2\10\1\105\1\106\1\0\3\10\1\103"+ - "\1\10\1\107\3\0\1\10\1\107\1\10\1\110\2\10"+ - "\1\102\3\10\1\104\1\10\1\111\1\0\5\10\1\0"+ - "\1\10\1\110\1\111\4\0\2\10\1\0\1\10\1\0"+ - "\1\12\1\10\3\12\1\10\2\12\1\10\13\0\1\114"+ - "\2\10\2\115\3\10\1\116\5\10\1\117\1\106\1\0"+ - "\2\10\1\116\3\10\3\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\1\115\1\10"+ - "\3\115\1\10\2\115\1\10\1\0\1\120\11\0\11\10"+ - "\1\121\1\122\3\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\10\1\123\3\10\1\124\3\10\1\125\3\10\1\0"+ - "\1\10\1\126\3\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\15\10\1\127\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\127\12\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\130\5\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\131\1\132\12\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\1\105\2\133\2\105\3\133\1\134\1\133\1\135\3\133"+ - "\1\136\3\0\5\133\2\0\1\133\1\137\1\140\1\141"+ - "\1\142\1\133\1\143\1\144\1\145\1\146\4\133\1\0"+ - "\11\133\3\0\3\133\1\0\1\133\1\0\1\105\1\133"+ - "\3\105\1\133\2\105\1\133\33\0\1\10\75\0\16\10"+ - "\1\0\1\106\1\0\1\10\4\147\1\150\2\0\1\151"+ - "\15\10\1\0\5\10\1\0\1\10\2\147\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\11\10\1\121\4\10"+ - "\1\0\1\106\1\0\1\10\4\147\1\150\2\0\1\151"+ - "\11\10\1\121\3\10\1\0\5\10\1\0\1\10\2\147"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\152"+ - "\1\0\1\153\1\0\6\152\3\0\15\152\1\0\5\152"+ - "\1\0\3\152\4\0\2\152\1\0\1\152\1\0\11\152"+ - "\35\0\4\154\1\155\2\0\1\156\25\0\2\154\35\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\157"+ - "\6\10\1\160\2\10\1\161\1\10\1\0\1\162\4\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\163\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\2\10\1\164\13\10"+ - "\1\0\1\106\1\0\6\10\3\0\5\10\1\165\1\10"+ - "\1\166\1\10\1\167\2\10\1\170\1\0\1\10\1\171"+ - "\3\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\1\0\6\10\3\0\4\10\1\112\2\10\1\113\3\10"+ + "\1\114\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\1\12\2\10\2\12"+ + "\1\102\4\10\1\103\1\104\2\10\1\105\1\106\1\0"+ + "\3\10\1\103\1\10\1\107\3\0\1\10\1\107\1\10"+ + "\1\110\2\10\1\102\3\10\1\104\1\10\1\111\1\0"+ + "\5\10\1\0\1\10\1\110\1\111\4\0\2\10\1\0"+ + "\1\10\1\0\1\12\1\10\3\12\1\10\2\12\1\10"+ + "\13\0\1\115\2\10\2\116\3\10\1\117\5\10\1\120"+ + "\1\106\1\0\2\10\1\117\3\10\3\0\15\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\1\116\1\10\3\116\1\10\2\116\1\10\1\0\1\121"+ + "\11\0\11\10\1\122\1\123\3\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\10\1\124\3\10\1\125\3\10\1\126"+ + "\3\10\1\0\1\10\1\127\3\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\15\10\1\130"+ + "\1\0\1\106\1\0\6\10\3\0\2\10\1\130\12\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\10\10\1\131\5\10\1\0\1\106"+ + "\1\0\6\10\3\0\1\10\1\132\1\133\12\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\1\105\2\134\2\105\3\134\1\135\1\134"+ + "\1\136\3\134\1\137\3\0\5\134\2\0\1\134\1\140"+ + "\1\141\1\142\1\143\1\134\1\144\1\145\1\146\1\147"+ + "\4\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\1\105\1\134\3\105\1\134\2\105\1\134\33\0\1\10"+ + "\75\0\16\10\1\0\1\106\1\0\1\10\4\150\1\151"+ + "\2\0\1\152\15\10\1\0\5\10\1\0\1\10\2\150"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\11\10"+ + "\1\122\4\10\1\0\1\106\1\0\1\10\4\150\1\151"+ + "\2\0\1\152\11\10\1\122\3\10\1\0\5\10\1\0"+ + "\1\10\2\150\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\153\1\0\1\154\1\0\6\153\3\0\15\153"+ + "\1\0\5\153\1\0\3\153\4\0\2\153\1\0\1\153"+ + "\1\0\11\153\35\0\4\155\1\156\2\0\1\157\25\0"+ + "\2\155\35\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\10\1\160\1\161\4\10\1\162\1\163\2\10\1\164"+ + "\1\10\1\0\1\165\4\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\10\10\1\166\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\13\10\1\167\1\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\2\10\1\170\13\10\1\0\1\106"+ + "\1\0\6\10\3\0\5\10\1\171\1\10\1\172\1\10"+ + "\1\173\2\10\1\174\1\0\1\10\1\175\3\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\4\10\1\176"+ + "\1\177\4\10\1\200\2\10\1\0\1\201\1\202\1\203"+ + "\2\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\4\10\1\172\1\173\4\10\1\174\2\10\1\0\1\175"+ - "\1\176\1\177\2\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\3\10\1\200\11\10\1\0\5\10\1\0"+ + "\3\10\1\204\5\10\1\205\3\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\1\201\2\10\2\201\11\10\1\0\1\106\1\0\6\10"+ - "\3\0\2\10\1\202\1\10\1\203\2\10\1\204\5\10"+ + "\1\206\2\10\2\206\11\10\1\0\1\106\1\0\6\10"+ + "\3\0\2\10\1\207\1\10\1\210\2\10\1\211\5\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\1\201\1\10\3\201\1\10\2\201\1\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\11\10\1\205"+ + "\1\0\1\206\1\10\3\206\1\10\2\206\1\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\11\10\1\212"+ "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\206\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\3\10\1\207\1\210\1\10\1\211\6\10"+ + "\1\213\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\3\10\1\214\1\215\1\10\1\216\6\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\4\10\1\212\6\10\1\213\1\10\1\0\5\10"+ + "\3\0\4\10\1\217\6\10\1\220\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\15\10\1\127\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\214\1\10\1\215\1\10\1\216\4\10\1\217"+ + "\13\0\15\10\1\130\1\0\1\106\1\0\6\10\3\0"+ + "\2\10\1\221\1\10\1\222\1\10\1\223\4\10\1\224"+ "\1\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\7\10\1\220\5\10\1\0\1\221\4\10"+ + "\6\10\3\0\7\10\1\225\5\10\1\0\1\226\4\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ - "\1\222\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\10\1\223\5\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\224\4\10"+ - "\1\225\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\227\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\10\10\1\230\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\6\10\1\231\4\10"+ + "\1\232\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\62\0\1\42\13\0\1\42"+ "\30\0\1\42\1\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\226\4\10\1\227\1\10\1\0\5\10"+ + "\3\0\6\10\1\233\4\10\1\234\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\1\201\2\10\2\201\11\10\1\0\1\106\1\0"+ - "\6\10\3\0\2\10\1\230\7\10\1\231\1\232\1\10"+ + "\13\0\1\206\2\10\2\206\11\10\1\0\1\106\1\0"+ + "\6\10\3\0\2\10\1\235\7\10\1\236\1\237\1\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\1\201\1\10\3\201\1\10\2\201\1\10\13\0"+ + "\1\0\1\206\1\10\3\206\1\10\2\206\1\10\13\0"+ "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\40"+ "\1\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\12\0\64\50\1\0\31\50\1\0"+ - "\16\233\1\0\1\234\1\0\6\233\3\0\15\233\1\0"+ - "\5\233\1\0\3\233\4\0\2\233\1\0\1\233\1\0"+ - "\11\233\13\0\16\235\1\0\1\236\1\0\6\235\3\0"+ - "\15\235\1\0\5\235\1\0\3\235\4\0\2\235\1\0"+ - "\1\235\1\0\11\235\35\0\4\237\1\240\2\0\1\241"+ - "\25\0\2\237\34\0\62\67\1\0\1\67\2\0\30\67"+ - "\3\242\1\243\7\242\1\244\23\242\1\245\2\242\1\246"+ - "\1\242\1\247\1\250\14\242\1\251\1\252\1\242\1\253"+ - "\30\242\63\73\3\0\30\73\3\242\1\243\7\242\1\244"+ - "\23\242\1\254\2\242\1\246\1\242\1\247\1\250\14\242"+ - "\1\251\1\252\1\242\1\253\30\242\1\0\1\77\2\10"+ + "\16\240\1\0\1\241\1\0\6\240\3\0\15\240\1\0"+ + "\5\240\1\0\3\240\4\0\2\240\1\0\1\240\1\0"+ + "\11\240\13\0\16\242\1\0\1\243\1\0\6\242\3\0"+ + "\15\242\1\0\5\242\1\0\3\242\4\0\2\242\1\0"+ + "\1\242\1\0\11\242\35\0\4\244\1\245\2\0\1\246"+ + "\25\0\2\244\34\0\62\67\1\0\1\67\2\0\30\67"+ + "\3\247\1\250\7\247\1\251\23\247\1\252\2\247\1\253"+ + "\1\247\1\254\1\255\14\247\1\256\1\257\1\247\1\260"+ + "\30\247\63\73\3\0\30\73\3\247\1\250\7\247\1\251"+ + "\23\247\1\261\2\247\1\253\1\247\1\254\1\255\14\247"+ + "\1\256\1\257\1\247\1\260\30\247\1\0\1\77\2\10"+ "\1\101\1\77\1\102\4\10\1\103\1\104\2\10\1\105"+ "\1\106\1\0\3\10\1\103\1\10\1\107\3\0\1\10"+ "\1\107\1\10\1\110\2\10\1\102\3\10\1\104\1\10"+ "\1\111\1\0\5\10\1\0\1\10\1\110\1\111\4\0"+ "\2\10\1\0\1\10\1\0\1\77\1\10\3\77\1\10"+ - "\1\101\1\77\1\10\13\0\1\255\1\10\4\255\4\10"+ - "\1\255\2\10\1\255\1\256\1\106\1\0\1\10\1\255"+ - "\1\10\1\255\2\10\3\0\1\255\1\10\1\255\3\10"+ - "\1\255\5\10\1\255\1\0\5\10\1\0\2\10\1\255"+ - "\4\0\2\10\1\0\1\10\1\0\1\255\1\10\3\255"+ - "\1\10\2\255\1\10\13\0\1\101\2\10\2\101\1\102"+ + "\1\101\1\77\1\10\13\0\1\262\1\10\4\262\4\10"+ + "\1\262\2\10\1\262\1\263\1\106\1\0\1\10\1\262"+ + "\1\10\1\262\2\10\3\0\1\262\1\10\1\262\3\10"+ + "\1\262\5\10\1\262\1\0\5\10\1\0\2\10\1\262"+ + "\4\0\2\10\1\0\1\10\1\0\1\262\1\10\3\262"+ + "\1\10\2\262\1\10\13\0\1\101\2\10\2\101\1\102"+ "\4\10\1\103\3\10\1\105\1\106\1\0\3\10\1\103"+ "\2\10\3\0\6\10\1\102\5\10\1\111\1\0\5\10"+ "\1\0\2\10\1\111\4\0\2\10\1\0\1\10\1\0"+ - "\1\101\1\10\3\101\1\10\2\101\1\10\13\0\1\257"+ - "\2\10\2\257\1\10\1\260\7\10\1\0\1\106\1\0"+ + "\1\101\1\10\3\101\1\10\2\101\1\10\13\0\1\264"+ + "\2\10\2\264\1\10\1\265\7\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\1\257\1\10\3\257\1\10"+ - "\2\257\1\10\13\0\1\105\2\0\2\105\1\261\4\0"+ - "\1\262\11\0\1\262\13\0\1\261\5\0\1\263\11\0"+ - "\1\263\11\0\1\105\1\0\3\105\1\0\2\105\14\0"+ - "\10\10\1\264\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\2\10\1\0\1\10\1\0\1\264\1\10\3\264\1\10"+ + "\2\264\1\10\13\0\1\105\2\0\2\105\1\266\4\0"+ + "\1\267\11\0\1\267\13\0\1\266\5\0\1\270\11\0"+ + "\1\270\11\0\1\105\1\0\3\105\1\0\2\105\14\0"+ + "\10\10\1\271\5\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\10\10\1\265\5\10\1\0"+ + "\1\10\1\0\11\10\13\0\10\10\1\272\5\10\1\0"+ "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\1\266\1\267\1\10\1\101\1\266\1\102\4\10\1\103"+ - "\1\104\2\10\1\105\1\106\1\0\3\10\1\103\1\10"+ - "\1\107\3\0\1\10\1\107\1\10\1\110\2\10\1\102"+ - "\3\10\1\104\1\10\1\111\1\0\5\10\1\0\1\10"+ - "\1\110\1\111\4\0\2\10\1\0\1\267\1\0\1\266"+ - "\1\10\3\266\1\10\1\101\1\266\1\10\13\0\1\115"+ - "\2\10\2\115\1\102\4\10\1\103\1\104\2\10\1\105"+ - "\1\106\1\0\3\10\1\103\1\10\1\107\3\0\1\10"+ - "\1\107\1\10\1\110\2\10\1\102\3\10\1\104\1\10"+ - "\1\111\1\0\5\10\1\0\1\10\1\110\1\111\4\0"+ - "\2\10\1\0\1\10\1\0\1\115\1\10\3\115\1\10"+ - "\2\115\1\10\13\0\11\10\1\121\4\10\1\0\1\106"+ - "\1\0\6\10\3\0\11\10\1\121\3\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\1\105\2\0\2\105\65\0\1\105\1\0\3\105"+ - "\1\0\2\105\14\0\12\10\1\270\3\10\1\0\1\106"+ - "\1\0\3\10\1\270\2\10\3\0\15\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\6\10\1\271\7\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\10\1\272\13\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\4\10"+ - "\1\273\10\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\12\10\1\270\3\10"+ - "\1\0\1\106\1\0\3\10\1\270\2\10\3\0\1\10"+ - "\1\274\1\10\1\275\6\10\1\276\2\10\1\0\5\10"+ - "\1\0\3\10\4\0\1\277\1\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\6\10\1\273\6\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\11\10\1\300"+ - "\4\10\1\0\1\106\1\0\6\10\3\0\11\10\1\300"+ - "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\301\4\10\1\302\2\10\1\303"+ - "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\13\10\1\304\1\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\305"+ - "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\11\133\1\306"+ - "\4\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\10\133\1\307\5\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\2\133\1\310"+ - "\1\311\12\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\10\133\1\312\5\133\4\0\5\133"+ - "\2\0\14\133\1\313\1\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\10\133\1\314\1\133\1\315\3\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\5\133\1\316\1\317\5\133\1\320"+ - "\1\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\3\133\1\321"+ - "\4\133\1\322\5\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\6\133\1\323\3\133\1\324\3\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\7\133\1\325\6\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\7\133\1\326\6\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\327\1\0"+ - "\1\330\1\0\6\327\3\0\15\327\1\0\5\327\1\0"+ - "\3\327\4\0\2\327\1\0\1\327\1\0\11\327\35\0"+ - "\4\331\1\332\2\0\1\151\25\0\2\331\35\0\16\152"+ - "\1\0\1\153\1\0\6\152\1\333\1\334\1\0\15\152"+ - "\1\0\5\152\1\0\3\152\4\0\2\152\1\0\1\152"+ - "\1\0\11\152\33\0\1\152\75\0\16\335\1\0\1\336"+ - "\1\0\6\335\3\0\15\335\1\0\5\335\1\0\3\335"+ - "\4\0\2\335\1\0\1\335\1\0\11\335\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\2\10\1\337\12\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\5\10\1\340\7\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\341\3\10"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\273\1\0"+ + "\11\10\13\0\1\274\1\275\1\10\1\101\1\274\1\102"+ + "\4\10\1\103\1\104\2\10\1\105\1\106\1\0\3\10"+ + "\1\103\1\10\1\107\3\0\1\10\1\107\1\10\1\110"+ + "\2\10\1\102\3\10\1\104\1\10\1\111\1\0\5\10"+ + "\1\0\1\10\1\110\1\111\4\0\2\10\1\0\1\275"+ + "\1\0\1\274\1\10\3\274\1\10\1\101\1\274\1\10"+ + "\13\0\1\116\2\10\2\116\1\102\4\10\1\103\1\104"+ + "\2\10\1\105\1\106\1\0\3\10\1\103\1\10\1\107"+ + "\3\0\1\10\1\107\1\10\1\110\2\10\1\102\3\10"+ + "\1\104\1\10\1\111\1\0\5\10\1\0\1\10\1\110"+ + "\1\111\4\0\2\10\1\0\1\10\1\0\1\116\1\10"+ + "\3\116\1\10\2\116\1\10\13\0\11\10\1\122\4\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\122\3\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\342\6\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\343\3\10"+ + "\1\0\11\10\13\0\1\105\2\0\2\105\65\0\1\105"+ + "\1\0\3\105\1\0\2\105\14\0\12\10\1\276\3\10"+ + "\1\0\1\106\1\0\3\10\1\276\2\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\3\10\1\344\11\10\1\0\5\10\1\0\3\10"+ + "\1\0\11\10\13\0\6\10\1\277\7\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\4\10\1\345\10\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\300\13\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\7\10\1\346\5\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\347\2\10"+ - "\1\222\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\3\0\4\10\1\301\10\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\12\10"+ + "\1\276\3\10\1\0\1\106\1\0\3\10\1\276\2\10"+ + "\3\0\1\10\1\302\1\10\1\303\6\10\1\304\2\10"+ + "\1\0\5\10\1\0\3\10\4\0\1\305\1\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\14\10\1\350\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\345\6\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\2\10\1\351\13\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\2\10\1\352\1\10"+ - "\1\353\10\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\6\10\3\0\6\10\1\301\6\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\11\10\1\306\4\10\1\0\1\106\1\0\6\10\3\0"+ + "\11\10\1\306\3\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\10\1\307\4\10\1\310"+ + "\2\10\1\311\3\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\13\10\1\312\1\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\10\1\313\13\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\134\4\0"+ + "\5\134\2\0\16\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\11\134\1\314\4\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\10\134\1\315\5\134\4\0"+ + "\5\134\2\0\16\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\2\134\1\316\1\317\12\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\10\134\1\320\5\134"+ + "\4\0\5\134\2\0\14\134\1\321\1\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\10\134\1\322\1\134\1\323\3\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\5\134\1\324\1\325"+ + "\5\134\1\326\1\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\3\134\1\327\4\134\1\330\5\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\6\134\1\331\3\134\1\332\3\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\7\134\1\333\6\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\7\134\1\334\6\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\335\1\0\1\336\1\0\6\335\3\0\15\335\1\0"+ + "\5\335\1\0\3\335\4\0\2\335\1\0\1\335\1\0"+ + "\11\335\35\0\4\337\1\340\2\0\1\152\25\0\2\337"+ + "\35\0\16\153\1\0\1\154\1\0\6\153\1\341\1\342"+ + "\1\0\15\153\1\0\5\153\1\0\3\153\4\0\2\153"+ + "\1\0\1\153\1\0\11\153\33\0\1\153\75\0\16\343"+ + "\1\0\1\344\1\0\6\343\3\0\15\343\1\0\5\343"+ + "\1\0\3\343\4\0\2\343\1\0\1\343\1\0\11\343"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\345\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\354\4\10\1\355\5\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\356\5\10\1\356\5\10\1\0\5\10"+ + "\1\0\6\10\3\0\5\10\1\346\7\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\353\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\347\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\3\10\1\357\5\10\1\360\3\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\1\361\4\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\1\201\2\10"+ - "\2\201\11\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\1\201\1\10\3\201\1\10\2\201\1\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\362\14\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\2\10\1\363\13\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ - "\1\364\5\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\365\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\6\10\3\0\5\10\1\350\7\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ + "\1\351\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\4\10\1\366\10\10\1\0\5\10"+ + "\1\0\6\10\3\0\6\10\1\352\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\367\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\2\10\1\353\13\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\4\10\1\370\10\10\1\0\5\10"+ + "\1\0\6\10\3\0\11\10\1\354\3\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ - "\1\371\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\3\10"+ + "\1\355\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\4\10\1\356\10\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ + "\1\357\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\11\10\1\360\2\10\1\227\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\14\10\1\361\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\10\10\1\350\1\10\1\372\2\10"+ + "\1\0\6\10\3\0\6\10\1\356\6\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\2\10\1\362\13\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\2\10\1\363\1\10\1\364\10\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\2\10\1\365\4\10\1\366\5\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\367\5\10\1\367\5\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\6\10\1\364\6\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\350\13\10\1\0\5\10\1\0\3\10"+ + "\3\0\3\10\1\370\5\10\1\371\3\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\1\372\4\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\2\10\1\373\13\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\1\206\2\10\2\206\11\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\1\206\1\10\3\206\1\10\2\206"+ + "\1\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\374\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\2\10\1\375\13\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\10\10\1\376\5\10\1\0\1\106\1\0\6\10"+ + "\3\0\13\10\1\377\1\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\373\3\10"+ - "\1\0\5\10\1\0\3\10\4\0\1\374\1\10\1\0"+ - "\1\10\1\0\11\10\13\0\11\10\1\300\4\10\1\0"+ - "\1\106\1\0\6\10\3\0\11\10\1\300\1\375\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\4\10\1\u0100\10\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\376\13\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u0101\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\1\10"+ - "\1\377\2\10\1\u0100\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\6\10\1\u0101\7\10\1\0"+ - "\1\106\1\0\6\10\3\0\5\10\1\u0102\4\10\1\u0103"+ - "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\2\10\1\u0104\1\10\1\u0105\10\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\7\10\1\u0106\5\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u0107"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\1\350\1\10"+ + "\1\0\1\106\1\0\6\10\3\0\4\10\1\u0102\10\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\11\10\1\u0103\3\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\10\10\1\361\1\10"+ + "\1\u0104\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\u0108\14\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\4\10\1\u0109"+ + "\1\0\6\10\3\0\1\10\1\361\13\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ + "\1\u0105\3\10\1\0\5\10\1\0\3\10\4\0\1\u0106"+ + "\1\10\1\0\1\10\1\0\11\10\13\0\11\10\1\306"+ + "\4\10\1\0\1\106\1\0\6\10\3\0\11\10\1\306"+ + "\1\u0107\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\1\10\1\u0108\13\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\1\10\1\u0109\2\10\1\u010a\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u010b"+ + "\7\10\1\0\1\106\1\0\6\10\3\0\5\10\1\u010c"+ + "\4\10\1\u010d\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\2\10\1\u010e\1\10\1\u010f"+ "\10\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\11\10\1\u010a\3\10\1\0\5\10\1\0"+ + "\6\10\3\0\7\10\1\u0110\5\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u010b"+ - "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\7\10\1\u010c\5\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u010d"+ - "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u010e\13\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\233\1\0\1\234\1\0\6\233\3\0\15\233\1\0"+ - "\5\233\1\0\3\233\4\0\2\233\1\0\1\233\1\0"+ - "\11\233\1\0\1\u010f\31\0\1\233\75\0\16\235\1\0"+ - "\1\236\1\0\6\235\1\u0110\1\u0111\1\0\15\235\1\0"+ - "\5\235\1\0\3\235\4\0\2\235\1\0\1\235\1\0"+ - "\11\235\33\0\1\235\75\0\16\u0112\1\0\1\u0113\1\0"+ - "\6\u0112\3\0\15\u0112\1\0\5\u0112\1\0\3\u0112\4\0"+ - "\2\u0112\1\0\1\u0112\1\0\11\u0112\13\0\1\u0114\1\0"+ - "\4\u0114\4\0\1\u0114\2\0\1\u0114\4\0\1\u0114\1\0"+ - "\1\u0114\5\0\1\u0114\1\0\1\u0114\3\0\1\u0114\5\0"+ - "\1\u0114\11\0\1\u0114\11\0\1\u0114\1\0\3\u0114\1\0"+ - "\2\u0114\14\0\1\u0115\1\0\4\u0115\4\0\1\u0115\2\0"+ - "\1\u0115\4\0\1\u0115\1\0\1\u0115\5\0\1\u0115\1\0"+ - "\1\u0115\3\0\1\u0115\5\0\1\u0115\11\0\1\u0115\11\0"+ - "\1\u0115\1\0\3\u0115\1\0\2\u0115\14\0\1\255\1\10"+ - "\4\255\1\10\1\102\2\10\1\255\1\104\1\10\1\255"+ - "\1\u0116\1\106\1\0\1\10\1\255\1\10\1\255\1\10"+ - "\1\107\3\0\1\255\1\107\1\255\1\110\1\10\1\102"+ - "\1\255\3\10\1\104\1\10\1\255\1\0\5\10\1\0"+ - "\1\10\1\110\1\255\4\0\2\10\1\0\1\10\1\0"+ - "\1\255\1\10\3\255\1\10\2\255\1\10\13\0\1\u0116"+ - "\1\0\4\u0116\4\0\1\u0116\2\0\1\u0116\4\0\1\u0116"+ - "\1\0\1\u0116\5\0\1\u0116\1\0\1\u0116\3\0\1\u0116"+ - "\5\0\1\u0116\11\0\1\u0116\11\0\1\u0116\1\0\3\u0116"+ - "\1\0\2\u0116\14\0\1\257\2\10\2\257\5\10\1\103"+ - "\3\10\1\0\1\106\1\0\3\10\1\103\2\10\3\0"+ - "\14\10\1\111\1\0\5\10\1\0\2\10\1\111\4\0"+ - "\2\10\1\0\1\10\1\0\1\257\1\10\3\257\1\10"+ - "\2\257\1\10\13\0\1\257\2\10\2\257\11\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\1\257\1\10"+ - "\3\257\1\10\2\257\1\10\13\0\1\u0117\2\0\2\u0117"+ - "\1\0\1\u0118\63\0\1\u0117\1\0\3\u0117\1\0\2\u0117"+ - "\14\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ - "\1\u0119\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\14\10\1\u011a\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\1\266\2\10\1\101\1\266\1\102\4\10\1\103\1\104"+ - "\2\10\1\105\1\106\1\0\3\10\1\103\1\10\1\107"+ - "\3\0\1\10\1\107\1\10\1\110\2\10\1\102\3\10"+ - "\1\104\1\10\1\111\1\0\5\10\1\0\1\10\1\110"+ - "\1\111\4\0\2\10\1\0\1\10\1\0\1\266\1\10"+ - "\3\266\1\10\1\101\1\266\1\10\13\0\1\u011b\1\10"+ - "\4\u011b\4\10\1\u011b\2\10\1\u011b\1\256\1\106\1\0"+ - "\1\10\1\u011b\1\10\1\u011b\2\10\3\0\1\u011b\1\10"+ - "\1\u011b\3\10\1\u011b\5\10\1\u011b\1\0\5\10\1\0"+ - "\2\10\1\u011b\4\0\2\10\1\0\1\10\1\0\1\u011b"+ - "\1\10\3\u011b\1\10\2\u011b\1\10\13\0\10\10\1\u011c"+ - "\5\10\1\0\1\106\1\0\2\10\1\u011c\3\10\3\0"+ + "\6\10\1\u0111\7\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u011d\4\10\1\u011e\2\10\1\u011f"+ - "\3\10\1\0\1\10\1\u011d\3\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u0120\6\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u0121\2\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u0122"+ - "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\1\361\1\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\u0112\14\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u0123\2\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u0124"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u0125"+ - "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\13\10\1\u0126\1\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\12\10\1\103\3\10\1\0\1\106\1\0\3\10\1\103"+ - "\2\10\3\0\14\10\1\111\1\0\5\10\1\0\2\10"+ - "\1\111\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u0127"+ - "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u0128\13\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u0129"+ - "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\2\10\1\u012a\12\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\3\10\1\u0105"+ - "\11\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\133\4\0\5\133\2\0"+ - "\6\133\1\u012b\7\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\7\133\1\u012c\6\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\3\133\1\u012d\12\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\13\133\1\u012e\2\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\12\133\1\u012f\3\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\1\133\1\u0130\14\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\10\133\1\u0131\5\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\12\133\1\u0132\3\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\2\133\1\u0133\13\133\4\0"+ - "\5\133\2\0\6\133\1\u0134\7\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\3\133\1\u0135\12\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\5\133\1\u0136\10\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\1\133\1\u0137\6\133\1\u0138\5\133\1\0"+ - "\11\133\3\0\3\133\1\0\1\133\1\0\11\133\13\0"+ - "\16\133\4\0\5\133\2\0\14\133\1\u0139\1\133\1\0"+ - "\11\133\3\0\3\133\1\0\1\133\1\0\11\133\13\0"+ - "\10\133\1\u013a\5\133\4\0\5\133\2\0\16\133\1\0"+ - "\11\133\3\0\3\133\1\0\1\133\1\0\11\133\13\0"+ - "\16\133\4\0\5\133\2\0\5\133\1\u013b\7\133\1\u013c"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\4\133\1\u013d\11\133"+ - "\1\0\1\133\1\u013e\7\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\16\133\4\0\5\133\2\0\13\133"+ - "\1\u013f\2\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\16\327\1\0\1\330\1\0\6\327"+ - "\1\332\1\331\1\0\15\327\1\0\5\327\1\0\3\327"+ - "\4\0\2\327\1\0\1\327\1\0\11\327\33\0\1\327"+ - "\75\0\16\u0140\1\0\1\u0141\1\0\6\u0140\3\0\15\u0140"+ - "\1\0\5\u0140\1\0\3\u0140\4\0\2\u0140\1\0\1\u0140"+ - "\1\0\11\u0140\13\0\16\u0142\1\0\1\u0143\1\0\6\u0142"+ - "\3\0\15\u0142\1\0\5\u0142\1\0\3\u0142\4\0\2\u0142"+ - "\1\0\1\u0142\1\0\11\u0142\13\0\16\335\1\0\1\336"+ - "\1\0\6\335\1\155\1\154\1\0\15\335\1\0\5\335"+ - "\1\0\3\335\4\0\2\335\1\0\1\335\1\0\11\335"+ - "\33\0\1\335\75\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\3\10\1\u0144\11\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ - "\1\u0145\7\10\1\0\1\106\1\0\6\10\3\0\1\10"+ - "\1\u0146\13\10\1\0\1\10\1\u0146\3\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\3\10\1\u0147\11\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\u0148\14\10\1\0\5\10\1\0\3\10\4\0"+ + "\4\10\1\u0113\10\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\1\10\1\u0149"+ - "\3\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\1\106\1\0\6\10\3\0\11\10\1\u0114\3\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u014a\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\12\10\1\u0115\2\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u014b\2\10\1\0"+ + "\1\106\1\0\6\10\3\0\7\10\1\u0116\5\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\u014c\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\u0117\12\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\13\10\1\u014d\1\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\10\1\u0118\13\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u014e\7\10\1\0\1\106\1\0"+ + "\11\10\13\0\16\240\1\0\1\241\1\0\6\240\3\0"+ + "\15\240\1\0\5\240\1\0\3\240\4\0\2\240\1\0"+ + "\1\240\1\0\11\240\1\0\1\u0119\31\0\1\240\75\0"+ + "\16\242\1\0\1\243\1\0\6\242\1\u011a\1\u011b\1\0"+ + "\15\242\1\0\5\242\1\0\3\242\4\0\2\242\1\0"+ + "\1\242\1\0\11\242\33\0\1\242\75\0\16\u011c\1\0"+ + "\1\u011d\1\0\6\u011c\3\0\15\u011c\1\0\5\u011c\1\0"+ + "\3\u011c\4\0\2\u011c\1\0\1\u011c\1\0\11\u011c\13\0"+ + "\1\u011e\1\0\4\u011e\4\0\1\u011e\2\0\1\u011e\4\0"+ + "\1\u011e\1\0\1\u011e\5\0\1\u011e\1\0\1\u011e\3\0"+ + "\1\u011e\5\0\1\u011e\11\0\1\u011e\11\0\1\u011e\1\0"+ + "\3\u011e\1\0\2\u011e\14\0\1\u011f\1\0\4\u011f\4\0"+ + "\1\u011f\2\0\1\u011f\4\0\1\u011f\1\0\1\u011f\5\0"+ + "\1\u011f\1\0\1\u011f\3\0\1\u011f\5\0\1\u011f\11\0"+ + "\1\u011f\11\0\1\u011f\1\0\3\u011f\1\0\2\u011f\14\0"+ + "\1\262\1\10\4\262\1\10\1\102\2\10\1\262\1\104"+ + "\1\10\1\262\1\u0120\1\106\1\0\1\10\1\262\1\10"+ + "\1\262\1\10\1\107\3\0\1\262\1\107\1\262\1\110"+ + "\1\10\1\102\1\262\3\10\1\104\1\10\1\262\1\0"+ + "\5\10\1\0\1\10\1\110\1\262\4\0\2\10\1\0"+ + "\1\10\1\0\1\262\1\10\3\262\1\10\2\262\1\10"+ + "\13\0\1\u0120\1\0\4\u0120\4\0\1\u0120\2\0\1\u0120"+ + "\4\0\1\u0120\1\0\1\u0120\5\0\1\u0120\1\0\1\u0120"+ + "\3\0\1\u0120\5\0\1\u0120\11\0\1\u0120\11\0\1\u0120"+ + "\1\0\3\u0120\1\0\2\u0120\14\0\1\264\2\10\2\264"+ + "\5\10\1\103\3\10\1\0\1\106\1\0\3\10\1\103"+ + "\2\10\3\0\14\10\1\111\1\0\5\10\1\0\2\10"+ + "\1\111\4\0\2\10\1\0\1\10\1\0\1\264\1\10"+ + "\3\264\1\10\2\264\1\10\13\0\1\264\2\10\2\264"+ + "\11\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\1\264\1\10\3\264\1\10\2\264\1\10\13\0\1\u0121"+ + "\2\0\2\u0121\1\0\1\u0122\63\0\1\u0121\1\0\3\u0121"+ + "\1\0\2\u0121\14\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\1\10\1\u0123\13\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\14\10\1\u0124\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\6\10\1\u0125\7\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u014f"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\1\274\2\10"+ + "\1\101\1\274\1\102\4\10\1\103\1\104\2\10\1\105"+ + "\1\106\1\0\3\10\1\103\1\10\1\107\3\0\1\10"+ + "\1\107\1\10\1\110\2\10\1\102\3\10\1\104\1\10"+ + "\1\111\1\0\5\10\1\0\1\10\1\110\1\111\4\0"+ + "\2\10\1\0\1\10\1\0\1\274\1\10\3\274\1\10"+ + "\1\101\1\274\1\10\13\0\1\u0126\1\10\4\u0126\4\10"+ + "\1\u0126\2\10\1\u0126\1\263\1\106\1\0\1\10\1\u0126"+ + "\1\10\1\u0126\2\10\3\0\1\u0126\1\10\1\u0126\3\10"+ + "\1\u0126\5\10\1\u0126\1\0\5\10\1\0\2\10\1\u0126"+ + "\4\0\2\10\1\0\1\10\1\0\1\u0126\1\10\3\u0126"+ + "\1\10\2\u0126\1\10\13\0\10\10\1\u0127\5\10\1\0"+ + "\1\106\1\0\2\10\1\u0127\3\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\7\10\1\u0150\5\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u0151\2\10\1\0"+ + "\1\10\1\u0128\4\10\1\u0129\2\10\1\u012a\3\10\1\0"+ + "\1\10\1\u0128\3\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\6\10\1\u012b\6\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u012c"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\10\10\1\u012d\5\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u012e"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\6\10\1\u012f\7\10\1\0"+ + "\1\106\1\0\6\10\3\0\6\10\1\u0130\6\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u0152\2\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u0153"+ - "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u0154\7\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\13\10\1\u0131\1\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\12\10\1\103"+ + "\3\10\1\0\1\106\1\0\3\10\1\103\2\10\3\0"+ + "\14\10\1\111\1\0\5\10\1\0\2\10\1\111\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u0155\2\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\10\1\u0132\13\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\u0156\11\10\1\u0157\2\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\356\5\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\3\10\1\u0158\1\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0152\13\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\1\u0159"+ - "\1\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u015a\2\10\1\0"+ + "\1\10\1\u0133\13\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\2\10\1\u0134\12\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\10\10\1\u015b\4\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\u0135\12\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\u015c\14\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\2\10\1\u015d\13\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\106\1\0\6\10\3\0\3\10\1\u010f\11\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\134\4\0\5\134\2\0\6\134\1\u0136"+ + "\7\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\7\134\1\u0137"+ + "\6\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\3\134\1\u0138"+ + "\12\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\13\134\1\u0139"+ + "\2\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\12\134\1\u013a"+ + "\3\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\1\134\1\u013b"+ + "\14\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\10\134\1\u013c"+ + "\5\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\12\134\1\u013d"+ + "\3\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\2\134\1\u013e\13\134\4\0\5\134\2\0"+ + "\6\134\1\u013f\7\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\3\134\1\u0140\12\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\5\134\1\u0141\10\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\1\134\1\u0142\6\134\1\u0143\5\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\14\134\1\u0144\1\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\10\134\1\u0145"+ + "\5\134\4\0\5\134\2\0\16\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\5\134\1\u0146\7\134\1\u0147\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\4\134\1\u0148\11\134\1\0\1\134"+ + "\1\u0149\7\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\13\134\1\u014a\2\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\335\1\0\1\336\1\0\6\335\1\340\1\337"+ + "\1\0\15\335\1\0\5\335\1\0\3\335\4\0\2\335"+ + "\1\0\1\335\1\0\11\335\33\0\1\335\75\0\16\u014b"+ + "\1\0\1\u014c\1\0\6\u014b\3\0\15\u014b\1\0\5\u014b"+ + "\1\0\3\u014b\4\0\2\u014b\1\0\1\u014b\1\0\11\u014b"+ + "\13\0\16\u014d\1\0\1\u014e\1\0\6\u014d\3\0\15\u014d"+ + "\1\0\5\u014d\1\0\3\u014d\4\0\2\u014d\1\0\1\u014d"+ + "\1\0\11\u014d\13\0\16\343\1\0\1\344\1\0\6\343"+ + "\1\156\1\155\1\0\15\343\1\0\5\343\1\0\3\343"+ + "\4\0\2\343\1\0\1\343\1\0\11\343\33\0\1\343"+ + "\75\0\16\10\1\0\1\106\1\0\6\10\3\0\3\10"+ + "\1\u014f\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\12\10\1\u015e\2\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u0150\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\4\10"+ - "\1\u015f\10\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\10\1\u0160\5\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u0151\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u0152\7\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0153\13\10"+ + "\1\0\1\10\1\u0153\3\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\3\10\1\u0154\11\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u0161\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\10\1\u0162\5\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u0155"+ + "\14\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\6\10\1\u0156\6\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\1\10\1\u0157\3\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u0158\2\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u0159"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\2\10\1\u015a\12\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\u015b"+ + "\1\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\6\10\1\u015c\7\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\6\10\1\u015d\7\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\7\10\1\u015e\5\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u015f"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u0160\2\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u0161\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\6\10\1\u0162\7\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u0163"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\u0164\11\10\1\u0165\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ - "\1\u0163\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\6\10\1\u0164\7\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ + "\1\367\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\13\10\1\u0166\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\6\10\1\u0165\7\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\3\10\1\u0167\1\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\3\10\1\u0166\2\10\1\u0167\6\10"+ + "\1\0\6\10\3\0\1\10\1\u0160\13\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\1\u0168\1\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u0169\2\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\10\10\1\u016a"+ + "\4\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\u016b\14\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\2\10"+ + "\1\u016c\13\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\12\10\1\u016d\2\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\4\10\1\u016e\10\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u0168\7\10\1\0\1\106"+ + "\1\0\11\10\13\0\10\10\1\u016f\5\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\u0169\3\10"+ + "\1\0\1\106\1\0\6\10\3\0\6\10\1\u0170\6\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u016a\6\10\1\0\5\10\1\0\3\10"+ + "\1\0\11\10\13\0\10\10\1\u0171\5\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\13\10\1\u016b\1\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0172\13\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\10\10\1\u016c\5\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\10\1\u016d\13\10\1\0\5\10"+ + "\1\0\11\10\13\0\6\10\1\u0173\7\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ + "\1\u0174\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\3\10\1\u0175\2\10\1\u0176\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ - "\1\u016e\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\2\10\1\u016f\13\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\13\0\6\10\1\u0177\7\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\11\10\1\u0178\3\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u0170\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u0179\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\13\10\1\u0171\1\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u0172\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\2\10\1\u0173\13\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\6\10\3\0\13\10\1\u017a\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u0174\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\u0112\1\0\1\u0113"+ - "\1\0\6\u0112\1\240\1\237\1\0\15\u0112\1\0\5\u0112"+ - "\1\0\3\u0112\4\0\2\u0112\1\0\1\u0112\1\0\11\u0112"+ - "\33\0\1\u0112\75\0\1\u0175\1\0\4\u0175\4\0\1\u0175"+ - "\2\0\1\u0175\4\0\1\u0175\1\0\1\u0175\5\0\1\u0175"+ - "\1\0\1\u0175\3\0\1\u0175\5\0\1\u0175\11\0\1\u0175"+ - "\11\0\1\u0175\1\0\3\u0175\1\0\2\u0175\14\0\1\u0176"+ - "\1\0\4\u0176\4\0\1\u0176\2\0\1\u0176\4\0\1\u0176"+ - "\1\0\1\u0176\5\0\1\u0176\1\0\1\u0176\3\0\1\u0176"+ - "\5\0\1\u0176\11\0\1\u0176\11\0\1\u0176\1\0\3\u0176"+ - "\1\0\2\u0176\14\0\1\u0116\1\0\4\u0116\1\0\1\261"+ - "\2\0\1\u0116\2\0\1\u0116\4\0\1\u0116\1\0\1\u0116"+ - "\5\0\1\u0116\1\0\1\u0116\2\0\1\261\1\u0116\5\0"+ - "\1\u0116\11\0\1\u0116\11\0\1\u0116\1\0\3\u0116\1\0"+ - "\2\u0116\14\0\1\u0117\2\0\2\u0117\5\0\1\262\11\0"+ - "\1\262\21\0\1\263\11\0\1\263\11\0\1\u0117\1\0"+ - "\3\u0117\1\0\2\u0117\14\0\1\u0117\2\0\2\u0117\65\0"+ - "\1\u0117\1\0\3\u0117\1\0\2\u0117\14\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\14\10\1\u0177\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\1\10\1\u0178\3\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\1\u011b\1\10\4\u011b"+ - "\1\10\1\102\2\10\1\u011b\1\104\1\10\1\u011b\1\u0116"+ - "\1\106\1\0\1\10\1\u011b\1\10\1\u011b\1\10\1\107"+ - "\3\0\1\u011b\1\107\1\u011b\1\110\1\10\1\102\1\u011b"+ - "\3\10\1\104\1\10\1\u011b\1\0\5\10\1\0\1\10"+ - "\1\110\1\u011b\4\0\2\10\1\0\1\10\1\0\1\u011b"+ - "\1\10\3\u011b\1\10\2\u011b\1\10\13\0\11\10\1\u0179"+ - "\4\10\1\0\1\106\1\0\6\10\3\0\11\10\1\u0179"+ - "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\6\10\1\u017a\3\10\1\u017a\2\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\5\10\1\u017a\3\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u017a\6\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\1\10\1\u017b\3\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u017c"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\11\10\1\u017d\3\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\2\10\1\u017e\12\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u017f\2\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\7\10\1\u0180\5\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\3\10\1\u0181\1\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u0182"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u0183"+ - "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\14\10\1\u0184\1\0\5\10\1\0\3\10"+ + "\13\0\10\10\1\u017b\5\10\1\0\1\106\1\0\6\10"+ + "\3\0\1\10\1\u017c\13\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u017d\13\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\2\10\1\u017e\13\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u015b\13\10"+ + "\1\0\1\106\1\0\6\10\3\0\6\10\1\u017f\6\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\12\10\1\u0185\2\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\133"+ - "\4\0\5\133\2\0\2\133\1\u0186\13\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\2\133\1\u0187\13\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\4\133\1\u0188\11\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\1\133\1\u0189\14\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\7\133\1\u018a\6\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\3\133\1\u018b\12\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\3\133\1\u018c\12\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\14\133\1\u018d\1\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\3\133\1\u018e\12\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\7\133\1\u018f\6\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\10\133\1\u0190\5\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\10\133\1\u0191\5\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\16\133\1\0\3\133\1\u0192\5\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\3\133\1\u0193\12\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\2\133\1\u0194\13\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\2\133\1\u0195\13\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\11\133\1\u0196\4\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\16\133\1\u0197\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\13\133\1\u0198\2\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\10\133\1\u0199\5\133"+ - "\4\0\5\133\2\0\16\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\16\133\1\0\1\u019a\10\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\u0140\1\0\1\u0141\1\0"+ - "\6\u0140\1\332\1\331\1\0\15\u0140\1\0\5\u0140\1\0"+ - "\3\u0140\4\0\2\u0140\1\0\1\u0140\1\0\11\u0140\33\0"+ - "\1\u0140\75\0\16\u0142\1\0\1\u0143\1\0\6\u0142\1\333"+ - "\1\334\1\0\15\u0142\1\0\5\u0142\1\0\3\u0142\4\0"+ - "\2\u0142\1\0\1\u0142\1\0\11\u0142\33\0\1\u0142\75\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\3\10\1\u019b"+ - "\11\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\3\0\13\10\1\u0180\1\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\2\10\1\u0181\12\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\2\10\1\u0182\13\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\2\10\1\u0183\12\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\u011c\1\0\1\u011d\1\0\6\u011c"+ + "\1\245\1\244\1\0\15\u011c\1\0\5\u011c\1\0\3\u011c"+ + "\4\0\2\u011c\1\0\1\u011c\1\0\11\u011c\33\0\1\u011c"+ + "\75\0\1\u0184\1\0\4\u0184\4\0\1\u0184\2\0\1\u0184"+ + "\4\0\1\u0184\1\0\1\u0184\5\0\1\u0184\1\0\1\u0184"+ + "\3\0\1\u0184\5\0\1\u0184\11\0\1\u0184\11\0\1\u0184"+ + "\1\0\3\u0184\1\0\2\u0184\14\0\1\u0185\1\0\4\u0185"+ + "\4\0\1\u0185\2\0\1\u0185\4\0\1\u0185\1\0\1\u0185"+ + "\5\0\1\u0185\1\0\1\u0185\3\0\1\u0185\5\0\1\u0185"+ + "\11\0\1\u0185\11\0\1\u0185\1\0\3\u0185\1\0\2\u0185"+ + "\14\0\1\u0120\1\0\4\u0120\1\0\1\266\2\0\1\u0120"+ + "\2\0\1\u0120\4\0\1\u0120\1\0\1\u0120\5\0\1\u0120"+ + "\1\0\1\u0120\2\0\1\266\1\u0120\5\0\1\u0120\11\0"+ + "\1\u0120\11\0\1\u0120\1\0\3\u0120\1\0\2\u0120\14\0"+ + "\1\u0121\2\0\2\u0121\5\0\1\267\11\0\1\267\21\0"+ + "\1\270\11\0\1\270\11\0\1\u0121\1\0\3\u0121\1\0"+ + "\2\u0121\14\0\1\u0121\2\0\2\u0121\65\0\1\u0121\1\0"+ + "\3\u0121\1\0\2\u0121\14\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\14\10\1\u0186\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\1\10"+ + "\1\u0187\3\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\1\10\1\u0188\13\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u0126"+ + "\1\10\4\u0126\1\10\1\102\2\10\1\u0126\1\104\1\10"+ + "\1\u0126\1\u0120\1\106\1\0\1\10\1\u0126\1\10\1\u0126"+ + "\1\10\1\107\3\0\1\u0126\1\107\1\u0126\1\110\1\10"+ + "\1\102\1\u0126\3\10\1\104\1\10\1\u0126\1\0\5\10"+ + "\1\0\1\10\1\110\1\u0126\4\0\2\10\1\0\1\10"+ + "\1\0\1\u0126\1\10\3\u0126\1\10\2\u0126\1\10\13\0"+ + "\11\10\1\u0189\4\10\1\0\1\106\1\0\6\10\3\0"+ + "\11\10\1\u0189\3\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\6\10\1\u018a\3\10\1\u018a"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u019c\13\10\1\0\5\10\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\5\10\1\u018a\3\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u018a"+ + "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\1\10\1\u018b\3\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\6\10\1\u019d\7\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u018c\7\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\12\10\1\u019e\2\10\1\0\5\10\1\0"+ + "\6\10\3\0\11\10\1\u018d\3\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\3\10\1\u019f\1\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\6\10\1\u01a0\7\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u018e"+ + "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u018f\2\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\7\10\1\u01a1"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\7\10\1\u0190"+ "\5\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\6\10\1\u01a2\7\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\2\10\1\u01a3\2\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\12\10\1\u01a4\2\10\1\0\5\10\1\0"+ + "\6\10\3\0\15\10\1\0\3\10\1\u0191\1\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\10\10\1\u016c\1\10\1\u01a5\3\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u016d\12\10\1\u01a6\1\0\5\10"+ + "\6\10\1\u0192\7\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u0193\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\14\10\1\u0194\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u016a\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\12\10\1\u0195\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u01a7\1\10\1\u01a5\3\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\10\1\u016d\12\10\1\u01a6\1\0"+ + "\13\0\16\134\4\0\5\134\2\0\2\134\1\u0196\13\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\2\134\1\u0197\13\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\4\134\1\u0198\11\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\1\134\1\u0199\14\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\7\134\1\u019a\6\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\3\134\1\u019b\12\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\3\134\1\u019c\12\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\14\134\1\u019d\1\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\3\134\1\u019e\12\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\7\134\1\u019f\6\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\10\134\1\u01a0\5\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\10\134\1\u01a1\5\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\0\3\134"+ + "\1\u01a2\5\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\3\134\1\u01a3\12\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\2\134\1\u01a4\13\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\2\134\1\u01a5\13\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\11\134\1\u01a6\4\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\u01a7\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\13\134\1\u01a8\2\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\10\134"+ + "\1\u01a9\5\134\4\0\5\134\2\0\16\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\16\134\1\0\1\u01aa\10\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\u014b\1\0"+ + "\1\u014c\1\0\6\u014b\1\340\1\337\1\0\15\u014b\1\0"+ + "\5\u014b\1\0\3\u014b\4\0\2\u014b\1\0\1\u014b\1\0"+ + "\11\u014b\33\0\1\u014b\75\0\16\u014d\1\0\1\u014e\1\0"+ + "\6\u014d\1\341\1\342\1\0\15\u014d\1\0\5\u014d\1\0"+ + "\3\u014d\4\0\2\u014d\1\0\1\u014d\1\0\11\u014d\33\0"+ + "\1\u014d\75\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\3\10\1\u01ab\11\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\4\10\1\u01ac\10\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\3\10\1\u01a8\11\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u01a9"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\12\10\1\u01ad\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\10\1\u01ae\13\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u01aa\5\10\1\0\1\106\1\0"+ + "\11\10\13\0\6\10\1\u01af\7\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\u01ab\14\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u01ac\5\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\u016d\13\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u01ad\6\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\1\u01ae\4\10\1\0\3\10\4\0"+ + "\1\106\1\0\6\10\3\0\12\10\1\u01b0\2\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\3\10\1\u01b1\1\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\1\u01af\4\10"+ + "\1\106\1\0\6\10\3\0\7\10\1\u01b2\5\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\6\10\1\u01b3\7\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\7\10\1\u01b4\5\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\6\10\1\u01b5\7\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\2\10\1\u01b6"+ + "\2\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\12\10\1\u01b7\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u017b"+ + "\1\10\1\u01b8\3\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\10\1\u017c\12\10\1\u01b9\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ + "\1\u01ba\1\10\1\u01b8\3\10\1\0\1\106\1\0\6\10"+ + "\3\0\1\10\1\u017c\12\10\1\u01b9\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\3\10\1\u01bb"+ + "\11\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\6\10\1\u01bc\7\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u01bd\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\u01be\14\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ + "\1\u01bf\5\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u017c\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\6\10\1\u01c0\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\1\u01c1\4\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\1\u01c2\4\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\u01c3\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u01b0\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u01c4\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\u01b1\12\10\1\0\5\10"+ + "\1\0\6\10\3\0\2\10\1\u01c5\12\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u01b2\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u01c6\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\4\10\1\u01b3\10\10\1\0\5\10"+ + "\1\0\6\10\3\0\4\10\1\u01c7\10\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\6\10\1\u01b4\7\10\1\0\1\106\1\0\6\10"+ + "\13\0\6\10\1\u01c8\7\10\1\0\1\106\1\0\6\10"+ "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\10\1\u01b5\5\10"+ + "\1\0\1\10\1\0\11\10\13\0\10\10\1\u01c9\5\10"+ "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ - "\1\u01b6\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u01ca\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\12\10\1\u01b7\2\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u01cb\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\6\10\1\u01b8\7\10\1\0\1\106\1\0\6\10"+ - "\1\u01b9\2\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\13\0\6\10\1\u01cc\7\10\1\0\1\106\1\0\6\10"+ + "\1\u01cd\2\0\15\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\1\u0178\1\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u01ba\1\10\1\u01bb\3\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\10\1\u01bc\12\10\1\u01bd\1\0"+ + "\3\10\4\0\1\u0187\1\10\1\0\1\10\1\0\11\10"+ + "\13\0\10\10\1\u01ce\1\10\1\u01cf\3\10\1\0\1\106"+ + "\1\0\6\10\3\0\1\10\1\u01d0\12\10\1\u01d1\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u01be\5\10\1\0\1\106\1\0"+ - "\6\10\3\0\2\10\1\u01bf\12\10\1\0\5\10\1\0"+ + "\11\10\13\0\10\10\1\u01d2\5\10\1\0\1\106\1\0"+ + "\6\10\3\0\2\10\1\u01d3\12\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\4\10\1\u01c0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\4\10\1\u01d4"+ "\10\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\7\10\1\u01c1\5\10\1\0\5\10\1\0"+ + "\6\10\3\0\7\10\1\u01d5\5\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\10\10\1\u01ba\5\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\10\1\u01bc\13\10\1\0\5\10\1\0\3\10\4\0"+ + "\10\10\1\u01ce\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\10\1\u01d0\13\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\3\10\1\u01c2\11\10\1\0"+ + "\1\106\1\0\6\10\3\0\3\10\1\u01d6\11\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\4\10\1\u01c3\1\0\3\10\4\0\2\10"+ + "\15\10\1\0\4\10\1\u01d7\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\11\10\1\u01c4\3\10\1\0\5\10"+ + "\1\0\6\10\3\0\11\10\1\u01d8\3\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\u01c5\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u01d9\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\u01c6\12\10\1\0\5\10"+ + "\1\0\6\10\3\0\2\10\1\u01da\12\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ - "\1\u01c7\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u01db\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\7\10\1\u01c8\5\10\1\0\5\10"+ + "\1\0\6\10\3\0\7\10\1\u01dc\5\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\1\u01c9\2\0"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\1\u01dd\2\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\7\10\1\u01ca\5\10\1\0\5\10\1\0"+ + "\6\10\3\0\7\10\1\u01de\5\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u01cb"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u01df"+ "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\12\10\1\u01cc\2\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\1\u01cd\1\0\4\u01cd\4\0\1\u01cd\2\0\1\u01cd\4\0"+ - "\1\u01cd\1\0\1\u01cd\5\0\1\u01cd\1\0\1\u01cd\3\0"+ - "\1\u01cd\5\0\1\u01cd\11\0\1\u01cd\11\0\1\u01cd\1\0"+ - "\3\u01cd\1\0\2\u01cd\14\0\1\u01ce\1\0\4\u01ce\4\0"+ - "\1\u01ce\2\0\1\u01ce\4\0\1\u01ce\1\0\1\u01ce\5\0"+ - "\1\u01ce\1\0\1\u01ce\3\0\1\u01ce\5\0\1\u01ce\11\0"+ - "\1\u01ce\11\0\1\u01ce\1\0\3\u01ce\1\0\2\u01ce\14\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u015b"+ + "\6\10\3\0\12\10\1\u01e0\2\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\1\u01e1\1\0\4\u01e1\4\0\1\u01e1\2\0\1\u01e1\4\0"+ + "\1\u01e1\1\0\1\u01e1\5\0\1\u01e1\1\0\1\u01e1\3\0"+ + "\1\u01e1\5\0\1\u01e1\11\0\1\u01e1\11\0\1\u01e1\1\0"+ + "\3\u01e1\1\0\2\u01e1\14\0\1\u01e2\1\0\4\u01e2\4\0"+ + "\1\u01e2\2\0\1\u01e2\4\0\1\u01e2\1\0\1\u01e2\5\0"+ + "\1\u01e2\1\0\1\u01e2\3\0\1\u01e2\5\0\1\u01e2\11\0"+ + "\1\u01e2\11\0\1\u01e2\1\0\3\u01e2\1\0\2\u01e2\14\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u016a"+ "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\10\10\1\u01cf\5\10\1\0"+ - "\1\106\1\0\2\10\1\u01cf\3\10\3\0\15\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\2\10\1\u01e3\12\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u01e4\5\10\1\0\1\106\1\0\2\10\1\u01e4"+ + "\3\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\1\10\1\u01e5\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u01e6\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\2\10\1\u01e7\13\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\u01e8\2\10\1\u01e9"+ + "\7\10\1\u01ea\1\10\1\0\4\10\1\u01eb\1\0\3\10"+ + "\4\0\1\u01ec\1\10\1\0\1\10\1\0\5\10\1\u01ed"+ + "\3\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u01ee\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\11\10\1\u01ef\3\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\1\10\1\u01d0"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\u01d1\12\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\2\10\1\u01d2\13\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\u01d3\2\10\1\u01d4\7\10\1\u01d5\1\10\1\0"+ - "\4\10\1\u01d6\1\0\3\10\4\0\1\u01d7\1\10\1\0"+ - "\1\10\1\0\5\10\1\u01d8\3\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u01d9\6\10\1\0"+ + "\13\10\1\u01f0\1\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\12\10\1\u01f1"+ + "\3\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\11\10\1\u01da\3\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\13\10\1\u01db\1\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\12\10\1\u01dc\3\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\6\10\1\u01f2\6\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u01dd\6\10\1\0"+ + "\1\106\1\0\6\10\3\0\2\10\1\u01f3\12\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\u01de\12\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\14\10\1\u01df\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\u01e0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u01e1\7\10\1\0\1\106"+ + "\14\10\1\u01f4\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\133"+ - "\4\0\5\133\2\0\7\133\1\u01e2\6\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\15\133\1\u01e3\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\4\133\1\u01e4\11\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\16\133\1\0\1\u01e5\10\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\2\133\1\u01e6\13\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\16\133\1\0\2\133\1\u01e7\6\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\13\133\1\u01e8\2\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\12\133\1\u01e9\3\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\10\133\1\u01ea\5\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\4\133\1\u01eb\11\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\1\133\1\u01ec\14\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\7\133\1\u01ed\6\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\11\133\1\u01ee\4\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\14\133\1\u01ef\1\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\14\133\1\u01f0\1\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\12\133\1\u01f1\3\133"+ - "\4\0\5\133\2\0\2\133\1\u01f2\1\u01f3\1\u01f4\1\133"+ - "\1\u01f5\2\133\1\u01f6\4\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\3\133\1\u01f7\12\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\4\133\1\u01f8\11\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\14\133\1\u01f9\1\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\6\10\1\u01fa\7\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\4\0\2\10\1\u01f5\1\10\1\0\11\10\13\0\6\10"+ + "\1\u01f6\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\134\4\0\5\134\2\0\7\134"+ + "\1\u01f7\6\134\1\0\11\134\3\0\3\134\1\0\1\134"+ + "\1\0\11\134\13\0\16\134\4\0\5\134\2\0\15\134"+ + "\1\u01f8\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\4\134\1\u01f9"+ + "\11\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\16\134\1\0"+ + "\1\u01fa\10\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\2\134\1\u01fb\13\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\0\2\134"+ + "\1\u01fc\6\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\13\134\1\u01fd\2\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\12\134\1\u01fe\3\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\10\134\1\u01ff\5\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\4\134\1\u0200\11\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\1\134\1\u0201\14\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\7\134\1\u0202\6\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\11\134\1\u0203\4\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\14\134\1\u0204\1\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\14\134\1\u0205\1\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\12\134\1\u0206\3\134\4\0\5\134\2\0\2\134"+ + "\1\u0207\1\u0208\1\u0209\1\134\1\u020a\2\134\1\u020b\4\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\3\134\1\u020c\12\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\4\134\1\u020d\11\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\14\134\1\u020e\1\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\6\10\1\u020f\7\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\7\10\1\u0210\5\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\u01fb\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\12\10\1\u01fc\3\10"+ - "\1\0\1\106\1\0\6\10\3\0\14\10\1\u01fd\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u01fe\7\10\1\0\1\106\1\0"+ - "\6\10\1\u01ff\2\0\7\10\1\u0200\5\10\1\0\5\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ + "\1\u0211\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\13\10\1\u0212\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\6\10\1\u0201\7\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\12\10\1\u0213\3\10\1\0\1\106\1\0\6\10"+ + "\3\0\14\10\1\u0214\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u0215"+ + "\7\10\1\0\1\106\1\0\6\10\1\u0216\2\0\7\10"+ + "\1\u0217\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u0218\7\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u0219\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\12\10\1\u0202\2\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u021a\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u0203\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\2\10\1\u0204\13\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\u0205\2\10\1\u0206"+ - "\7\10\1\u0207\1\10\1\0\4\10\1\u0208\1\0\3\10"+ + "\1\u021b\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\2\10\1\u021c\13\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\u021d\2\10\1\u021e"+ + "\7\10\1\u021f\1\10\1\0\4\10\1\u0220\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ - "\1\u0209\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\u0221\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\2\10\1\u020a\12\10\1\0\5\10\1\0\3\10"+ + "\3\0\2\10\1\u0222\12\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u020b\13\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0223\13\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u020c\1\10\1\0\5\10\1\0\3\10"+ + "\3\0\13\10\1\u0224\1\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\u020d\3\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\u0225\3\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u020e\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u0226\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\2\10"+ - "\1\u020f\13\10\1\0\1\106\1\0\6\10\3\0\1\u0210"+ - "\2\10\1\u0211\7\10\1\u0212\1\10\1\0\4\10\1\u0213"+ - "\1\0\3\10\4\0\1\u0214\1\10\1\0\1\10\1\0"+ + "\1\u0227\13\10\1\0\1\106\1\0\6\10\3\0\1\u0228"+ + "\2\10\1\u0229\7\10\1\u022a\1\10\1\0\4\10\1\u022b"+ + "\1\0\3\10\4\0\1\u022c\1\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\u015b\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u016a\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\12\10\1\u0215\2\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u022d\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ - "\1\u0216\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u022e\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\10\10\1\u0177\4\10\1\0\5\10"+ + "\1\0\6\10\3\0\10\10\1\u0186\4\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ - "\1\u0217\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u022f\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\354\6\10\1\0\5\10"+ + "\1\0\6\10\3\0\6\10\1\365\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\14\10"+ - "\1\u020e\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\12\10\1\u0178\2\10\1\0\5\10\1\0"+ + "\13\0\6\10\1\u0230\7\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\14\10\1\u0226\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\u0218\14\10"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u0187"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\u0231\14\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0232\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\12\10\1\u0219\2\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ - "\1\u021a\5\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\11\10\13\0\10\10\1\u0233\5\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\10\10\1\u0234\4\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\10\10\1\u021b\4\10\1\0\5\10\1\0\3\10"+ + "\3\0\11\10\1\u0235\3\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\u021c\3\10"+ + "\1\0\1\106\1\0\6\10\3\0\13\10\1\u0236\1\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u021d\1\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u021e\1\u021f"+ - "\3\10\1\u0220\1\10\1\0\4\10\1\u0221\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\25\0\1\u0222"+ - "\62\0\1\u0223\20\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\11\10\1\u0224\3\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0225\13\10"+ + "\3\0\6\10\1\u0237\1\u0238\3\10\1\u0239\1\10\1\0"+ + "\4\10\1\u023a\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\25\0\1\u023b\62\0\1\u023c\20\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\u023d\3\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u0226\1\10\1\0\5\10\1\0\3\10"+ + "\3\0\1\10\1\u023e\13\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\13\10\1\u0227\1\10"+ + "\1\0\1\106\1\0\6\10\3\0\13\10\1\u023f\1\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\11\10\1\u0228\3\10\1\0\5\10\1\0\3\10"+ + "\3\0\13\10\1\u0240\1\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0229\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\u0241\3\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\u022a\14\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\7\10\1\u022b\5\10\1\0"+ + "\3\0\7\10\1\u0242\5\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\u0243\14\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\7\10\1\u0244\5\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u0245"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u022c\5\10\1\0\1\106\1\0"+ + "\11\10\13\0\6\10\1\u0246\7\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u022d"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\12\10\1\u0247\2\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u022e\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\11\10\1\u0248\3\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\11\10\1\u022f\3\10\1\0"+ + "\1\106\1\0\6\10\3\0\7\10\1\u0249\5\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\7\10\1\u0230\5\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u0231\6\10\1\0"+ + "\6\10\1\u024a\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u024b"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u0232\5\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\110\0\1\u0233\3\0"+ - "\1\u0234\14\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\1\10\1\u0235\3\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u0236\6\10\1\0"+ + "\11\10\110\0\1\u024c\3\0\1\u024d\14\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\1\10\1\u024e"+ + "\3\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u024f\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u0250"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u0237\5\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\1\u0238\1\0"+ - "\4\u0238\4\0\1\u0238\2\0\1\u0238\4\0\1\u0238\1\0"+ - "\1\u0238\5\0\1\u0238\1\0\1\u0238\3\0\1\u0238\5\0"+ - "\1\u0238\11\0\1\u0238\11\0\1\u0238\1\0\3\u0238\1\0"+ - "\2\u0238\14\0\1\u0239\1\0\4\u0239\4\0\1\u0239\2\0"+ - "\1\u0239\4\0\1\u0239\1\0\1\u0239\5\0\1\u0239\1\0"+ - "\1\u0239\3\0\1\u0239\5\0\1\u0239\11\0\1\u0239\11\0"+ - "\1\u0239\1\0\3\u0239\1\0\2\u0239\14\0\13\10\1\u023a"+ - "\2\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u023a"+ + "\11\10\13\0\1\u0251\1\0\4\u0251\4\0\1\u0251\2\0"+ + "\1\u0251\4\0\1\u0251\1\0\1\u0251\5\0\1\u0251\1\0"+ + "\1\u0251\3\0\1\u0251\5\0\1\u0251\11\0\1\u0251\11\0"+ + "\1\u0251\1\0\3\u0251\1\0\2\u0251\14\0\1\u0252\1\0"+ + "\4\u0252\4\0\1\u0252\2\0\1\u0252\4\0\1\u0252\1\0"+ + "\1\u0252\5\0\1\u0252\1\0\1\u0252\3\0\1\u0252\5\0"+ + "\1\u0252\11\0\1\u0252\11\0\1\u0252\1\0\3\u0252\1\0"+ + "\2\u0252\14\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\10\10\1\u0253\4\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\13\10\1\u0254"+ + "\2\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u0254"+ "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u023b\13\10\1\0\5\10\1\0"+ + "\6\10\3\0\1\10\1\u0255\13\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\u023c"+ - "\1\10\1\0\2\10\1\u023d\2\10\1\0\3\10\4\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\u0256"+ + "\1\10\1\0\2\10\1\u0257\2\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\1\u023e\4\10"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\1\u0258\4\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\1\u023f\4\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\2\10\1\u0240\13\10\1\0"+ + "\1\0\1\u0259\4\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\2\10\1\u025a\13\10\1\0"+ "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\10\10\1\u0241\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\10\10\1\u025b\5\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\13\10\1\u0242\1\10\1\0\5\10\1\0"+ + "\6\10\3\0\13\10\1\u025c\1\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\4\10\1\u0243"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\4\10\1\u025d"+ "\10\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\u0244\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\u0245\11\10\1\u0246\2\10"+ + "\2\10\1\u025e\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\u025f\11\10\1\u0260\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u0247\7\10\1\0\1\106"+ + "\1\0\11\10\13\0\6\10\1\u0261\7\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\2\10\1\u0248\12\10"+ + "\1\0\1\106\1\0\6\10\3\0\2\10\1\u0262\12\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u0249\7\10\1\0\1\106"+ + "\1\0\11\10\13\0\6\10\1\u0263\7\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u024a\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0264\5\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u024b\7\10\1\0\1\106"+ + "\1\0\11\10\13\0\6\10\1\u0265\7\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u024c"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u0266"+ "\115\0\16\10\1\0\1\106\1\0\6\10\3\0\12\10"+ - "\1\u024d\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\133\4\0\5\133"+ - "\2\0\11\133\1\u024e\4\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\3\133\1\u024f\12\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\4\133\1\u0250\11\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\6\133\1\u0251\7\133"+ - "\4\0\5\133\2\0\16\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\3\133\1\u0252\12\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\12\133\1\u0253\3\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\7\133\1\u0254\6\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\7\133\1\u0255\6\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\15\133\1\u0256\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\16\133\1\0\1\133\1\u0257\7\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\16\133\1\0\1\133\1\u0258\7\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\10\133\1\u0259\5\133\4\0"+ - "\5\133\2\0\16\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\14\133\1\u025a\1\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\10\133\1\u025b\1\133\1\u025c\3\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\5\133\1\u025d\1\u025e\7\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\3\133\1\u025f\12\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\7\133\1\u0260\6\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\10\133\1\u0261\5\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\13\133\1\u0262\2\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\15\133\1\u0263\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\u0264\14\10\1\0\5\10"+ + "\1\u0267\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\134\4\0\5\134"+ + "\2\0\11\134\1\u0268\4\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\3\134\1\u0269\12\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\4\134\1\u026a\11\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\6\134\1\u026b\7\134"+ + "\4\0\5\134\2\0\16\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\3\134\1\u026c\12\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\12\134\1\u026d\3\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\7\134\1\u026e\6\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\7\134\1\u026f\6\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\15\134\1\u0270\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\16\134\1\0\1\134\1\u0271\7\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\16\134\1\0\1\134\1\u0272\7\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\10\134\1\u0273\5\134\4\0"+ + "\5\134\2\0\16\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\14\134\1\u0274\1\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\10\134\1\u0275\1\134\1\u0276\3\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\5\134\1\u0277\1\u0278\7\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\3\134\1\u0279\12\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\7\134\1\u027a\6\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\10\134\1\u027b\5\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\13\134\1\u027c\2\134\1\0\11\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\13\0\16\134"+ + "\4\0\5\134\2\0\15\134\1\u027d\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\u027e\14\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ + "\1\u027f\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u0280\7\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ - "\1\u0265\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u0281\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\10\1\u0266\13\10\1\0\5\10"+ + "\1\0\6\10\3\0\1\10\1\u0282\13\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\u0267\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u0283\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\u0268\2\10\1\u0269\11\10\1\0"+ - "\4\10\1\u026a\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\63\0\1\u026b\21\0\1\u026c\2\0\1\u026d"+ + "\1\0\6\10\3\0\1\u0284\2\10\1\u0285\11\10\1\0"+ + "\4\10\1\u0286\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\63\0\1\u0287\21\0\1\u0288\2\0\1\u0289"+ "\20\0\16\10\1\0\1\106\1\0\6\10\3\0\4\10"+ - "\1\u026e\10\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u028a\10\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\u026f\14\10\1\0\5\10\1\0"+ + "\1\0\6\10\3\0\1\u028b\14\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\u0270"+ - "\1\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u028c"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\u0271\14\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\13\10\1\u0272\1\10"+ - "\1\0\2\10\1\u0273\2\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\1\u0274\4\10\1\0"+ + "\6\10\3\0\13\10\1\u028d\1\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\1\u0275\4\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\2\10\1\u0276\13\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ - "\1\u0277\5\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\u028e\14\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\u0278\13\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0279\2\10"+ + "\3\0\13\10\1\u028f\1\10\1\0\2\10\1\u0290\2\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\1\u0291\4\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\1\u0292\4\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\2\10"+ + "\1\u0293\13\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u027a\1\10\1\0\5\10\1\0\3\10"+ + "\1\0\11\10\13\0\10\10\1\u0294\5\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\4\10\1\u027b\10\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0295\13\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\12\10\1\u027c\2\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ - "\1\u027d\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\3\0\12\10\1\u0296\2\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\13\10\1\u0297\1\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u027e\1\10\1\0\2\10\1\u027f\2\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\1\u0280\4\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\1\u0281\4\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\2\10"+ - "\1\u0282\13\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\3\0\4\10\1\u0298\10\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0299\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\10\10\1\u0283\5\10\1\0\1\106"+ + "\1\0\11\10\13\0\6\10\1\u029a\7\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\13\10\1\u0284\1\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\12\10\1\u0285\3\10\1\0\1\106"+ + "\1\0\1\106\1\0\6\10\3\0\13\10\1\u029b\1\10"+ + "\1\0\2\10\1\u029c\2\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\1\u029d\4\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\1\u029e\4\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\2\10\1\u029f\13\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ + "\1\u02a0\5\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\13\10\1\u02a1\1\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\12\10"+ + "\1\u02a2\3\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\12\10\1\u02a3\2\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0286\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\13\10\1\u02a4\1\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u0287\1\10\1\0\5\10\1\0\3\10"+ + "\3\0\1\10\1\u02a5\13\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0288\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u02a6\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u0289\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u02a7\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\u028a\3\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\u02a8\3\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u0177\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u0186\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ - "\1\u028b\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\u02a9\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\7\10\1\u028c\5\10\1\0\5\10\1\0\3\10"+ + "\3\0\7\10\1\u02aa\5\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\u028d\1\0\11\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\u02ab\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u028e\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\2\10\1\u028f\13\10"+ + "\1\u02ac\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\2\10\1\u02ad\13\10"+ "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u0290\5\10\1\0\1\106\1\0\6\10"+ + "\13\0\10\10\1\u02ae\5\10\1\0\1\106\1\0\6\10"+ "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\54\0\1\u0291\152\0\1\u0292"+ + "\1\0\1\10\1\0\11\10\54\0\1\u02af\152\0\1\u02b0"+ "\17\0\16\10\1\0\1\106\1\0\6\10\3\0\12\10"+ - "\1\u0293\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u02b1\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\13\10\1\u0294\1\10\1\0\5\10"+ + "\1\0\6\10\3\0\13\10\1\u02b2\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ - "\1\u0295\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u02b3\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\4\10\1\u0296\10\10\1\0\5\10"+ + "\1\0\6\10\3\0\4\10\1\u02b4\10\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\3\10"+ - "\1\u0297\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u02b5\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\7\10\1\u0298\5\10\1\0\5\10"+ + "\1\0\6\10\3\0\7\10\1\u02b6\5\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\1\u0299\4\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\0\1\u02b7\4\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\13\10\1\u029a\1\10\1\0\5\10\1\0"+ + "\6\10\3\0\13\10\1\u02b8\1\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u029b"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u02b9"+ "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\1\u029c\1\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\1\u029d\2\0\15\10\1\0"+ + "\1\u02ba\1\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\1\u02bb\2\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\1\10\1\u027c\3\10\1\0\3\10\4\0"+ + "\15\10\1\0\1\10\1\u0299\3\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u029e\6\10\1\0"+ + "\1\106\1\0\6\10\3\0\6\10\1\u02bc\6\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u029f\7\10\1\0\1\106\1\0"+ + "\11\10\13\0\6\10\1\u02bd\7\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\u02a0\14\10\1\0\5\10"+ + "\1\106\1\0\6\10\3\0\1\u02be\14\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\111\0\1\u02a1\113\0\1\u02a2\21\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\3\10\1\u015b\11\10\1\0\5\10"+ + "\111\0\1\u02bf\113\0\1\u02c0\21\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\3\10\1\u016a\11\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\u02a3\1\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\u02c1\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\u0178\13\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u02a4"+ - "\1\0\4\u02a4\4\0\1\u02a4\2\0\1\u02a4\4\0\1\u02a4"+ - "\1\0\1\u02a4\5\0\1\u02a4\1\0\1\u02a4\3\0\1\u02a4"+ - "\5\0\1\u02a4\11\0\1\u02a4\11\0\1\u02a4\1\0\3\u02a4"+ - "\1\0\2\u02a4\14\0\14\10\1\300\1\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\2\10\1\300\2\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\6\10\1\u02a5\7\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\13\10\1\u02a6\1\10\1\0\5\10"+ + "\3\0\1\10\1\u0187\13\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u02c2"+ + "\1\0\4\u02c2\4\0\1\u02c2\2\0\1\u02c2\4\0\1\u02c2"+ + "\1\0\1\u02c2\5\0\1\u02c2\1\0\1\u02c2\3\0\1\u02c2"+ + "\5\0\1\u02c2\11\0\1\u02c2\11\0\1\u02c2\1\0\3\u02c2"+ + "\1\0\2\u02c2\14\0\2\10\1\u02c3\13\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\14\10"+ + "\1\306\1\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\2\10\1\306\2\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u02c4\7\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\12\10"+ - "\1\u02a7\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ + "\1\u02c5\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\u02a8\12\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u02c6\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\u02a9\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u02c7\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\1\10\1\u02aa\7\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\14\10"+ - "\1\u02ab\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u02ac\13\10\1\0\5\10\1\0"+ + "\1\0\6\10\3\0\13\10\1\u02c8\1\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\1\10\1\u02c9\7\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\14\10\1\u02ca\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\10\10\1\u02ad\5\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\1\u02ae\115\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u02af\6\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u02cb"+ + "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\10\10\1\u02cc\5\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\1\u02cd\115\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u02ce\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u02cf"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u02b0\5\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\2\10\1\u02b1"+ - "\7\10\1\u01bb\3\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\u02b2\1\u01bc\1\10\1\u02b3\10\10\1\u01bd\1\0\5\10"+ + "\11\10\13\0\2\10\1\u02d0\7\10\1\u01cf\3\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\u02d1\1\u01d0\1\10\1\u02d2"+ + "\10\10\1\u01d1\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\1\u0187\14\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u02d3\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\10\1\u02d4\1\10\1\u02d5\7\10\1\u02d6\1\u02d7\1\0"+ + "\5\10\1\0\3\10\4\0\1\u02d8\1\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\7\10\1\u02d9\5\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\u02da\3\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\103\0\1\u02db\25\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\13\10\1\u02dc\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u0178"+ - "\14\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\10\10\1\u02b4\5\10\1\0"+ - "\1\106\1\0\6\10\3\0\3\10\1\u02b5\7\10\1\u02b6"+ - "\1\u02b7\1\0\5\10\1\0\3\10\4\0\1\u02b8\1\10"+ + "\13\0\16\134\4\0\5\134\2\0\7\134\1\u02dd\6\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\2\134\1\u02de\13\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\15\134\1\u02df\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\13\134\1\u02e0\2\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\14\134\1\u02e1\1\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\6\134\1\u02e2\7\134\4\0\5\134\2\0\16\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\6\134\1\u02e3\7\134\4\0\5\134\2\0\16\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\5\134\1\u02e4\10\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\5\134\1\u02e5\10\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\7\134\1\u02e6\6\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\1\134\1\u02e7\14\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\10\134\1\u02e8\5\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\12\134\1\u02e9\3\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\2\134\1\u02ea\13\134\4\0\5\134\2\0\16\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\3\134\1\u02eb\12\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\1\134\1\u02ec\6\134\1\u02ed"+ + "\5\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\13\134\1\u02ee"+ + "\2\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\13\134\1\u02ef"+ + "\2\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\7\134\1\u02f0"+ + "\6\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\1\u02f1\4\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u02f2\7\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u02f3\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\7\10\1\u02b9\5\10\1\0\5\10"+ + "\1\0\6\10\3\0\15\10\1\0\1\10\1\u02f4\3\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ - "\1\u02ba\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\103\0\1\u02bb\25\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\13\10\1\u02bc\1\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\133\4\0\5\133\2\0\7\133"+ - "\1\u02bd\6\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\16\133\4\0\5\133\2\0\2\133"+ - "\1\u02be\13\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\16\133\4\0\5\133\2\0\15\133"+ - "\1\u02bf\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\13\133\1\u02c0"+ - "\2\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\14\133\1\u02c1"+ - "\1\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\6\133\1\u02c2\7\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\6\133\1\u02c3\7\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\5\133\1\u02c4"+ - "\10\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\5\133\1\u02c5"+ - "\10\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\7\133\1\u02c6"+ - "\6\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\1\133\1\u02c7"+ - "\14\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\10\133\1\u02c8"+ - "\5\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\12\133\1\u02c9"+ - "\3\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\2\133\1\u02ca\13\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\3\133\1\u02cb"+ - "\12\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\1\133\1\u02cc"+ - "\6\133\1\u02cd\5\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\13\133\1\u02ce\2\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\13\133\1\u02cf\2\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\7\133\1\u02d0\6\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\1\u02d1\4\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\1\10"+ - "\1\u02d2\3\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ + "\1\u02f5\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\4\10\1\u02f6\10\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u02f7\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\12\10\1\u02f8\2\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\10\10\1\u02f9\5\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\23\0\1\u02fa\203\0\1\u02fb"+ + "\17\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u02fc"+ + "\14\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\2\10\1\u02fd\12\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u02fe"+ + "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\6\10\1\u02ff\7\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u016a"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\13\10\1\u0300\1\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u0301"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\2\10\1\u0302\12\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\u0303"+ + "\1\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\1\10\1\u0304\7\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\14\10\1\u0301"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u02d3\1\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\4\10\1\u02d4\10\10"+ + "\3\0\6\10\1\u0305\6\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ + "\1\u0306\5\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\u02d5\13\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u02d6\2\10"+ + "\3\0\2\10\1\u0225\12\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\2\10"+ + "\1\u0307\13\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\10\10\1\u02d7\5\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\23\0\1\u02d8"+ - "\203\0\1\u02d9\17\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\u02da\14\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\2\10\1\u02db\12\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u02dc\7\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\1\u0308\2\0\15\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u015b\2\10\1\0"+ + "\1\106\1\0\6\10\3\0\3\10\1\u0309\11\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\13\10\1\u02dd\1\10\1\0\5\10\1\0\3\10\4\0"+ + "\13\10\1\u030a\1\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u02de\2\10\1\0"+ + "\1\106\1\0\6\10\3\0\12\10\1\u030b\2\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\u02df\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\u030c\12\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\13\10\1\u02e0\1\10\1\0"+ + "\1\106\1\0\6\10\3\0\13\10\1\u030d\1\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\1\10\1\u02e1\7\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\14\10\1\u02de\1\0\5\10"+ + "\1\10\1\0\1\10\1\u030e\7\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\14\10\1\u030f\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u02e2\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\10\1\u02e3\5\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u020d\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\2\10\1\u02e4\13\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u0310\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\5\10\1\u016a\7\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\1\u02e5\2\0"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\1\u0311\2\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\3\10\1\u02e6\11\10\1\0\5\10\1\0"+ + "\6\10\3\0\11\10\1\u0312\3\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\u02e7"+ - "\1\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u0313"+ + "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\12\10\1\u02e8\2\10\1\0\5\10\1\0"+ + "\6\10\3\0\6\10\1\u0314\6\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u02e9"+ - "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\6\10\1\u0315\7\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\13\10\1\u02ea\1\10\1\0\5\10\1\0"+ + "\6\10\3\0\12\10\1\u0316\2\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\13\10\1\u0317"+ + "\1\10\1\0\4\10\1\u0318\1\0\3\10\4\0\1\u0319"+ + "\1\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u031a"+ + "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\1\10\1\u02eb\7\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\14\10\1\u02ec\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u02ed\13\10"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\u031b\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\3\10\1\u031c\11\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\5\10\1\u015b\7\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\1\u02ee\2\0\15\10\1\0"+ + "\1\0\1\10\1\u031d\7\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\14\10\1\u031e\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\60\0"+ + "\1\u031f\50\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\2\10\1\u023d\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\1\10\1\u02b1"+ + "\3\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\2\10\1\u0320\13\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\12\10\1\u0321\2\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\11\10\1\u02ef\3\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u02f0\6\10\1\0"+ + "\2\10\1\u0322\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u0323"+ + "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u02f1\7\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\7\10\1\u0324\5\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u02f2\2\10\1\0"+ + "\1\106\1\0\6\10\3\0\11\10\1\u028e\3\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\13\10\1\u02f3\1\10\1\0\4\10\1\u02f4\1\0\3\10"+ - "\4\0\1\u02f5\1\10\1\0\1\10\1\0\11\10\13\0"+ - "\6\10\1\u02f6\7\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\u02f7\14\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\3\10\1\u02f8\11\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\6\10\1\u0325\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\46\0\1\u0326\40\0"+ + "\1\u0327\21\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\14\10\1\u0328\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\12\10\1\u0329\2\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\6\10\1\u032a\7\10\1\0\1\106\1\0\6\10"+ "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\1\10\1\u02f9\7\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\14\10\1\u02fa\1\0"+ + "\1\0\1\10\1\0\11\10\13\0\1\u032b\115\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\14\10\1\u032c\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\60\0\1\u02fb\50\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\2\10\1\u0224\12\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\1\10\1\u0293\3\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\2\10\1\u02fc\13\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u02fd"+ - "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\2\10\1\u02fe\12\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\6\10\1\u02ff\7\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\7\10\1\u0300\5\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\11\10\1\u0271"+ - "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\6\10\1\u0301\6\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\46\0"+ - "\1\u0302\40\0\1\u0303\21\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\14\10\1\u0304\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0305\2\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u0306\7\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u0307"+ - "\115\0\12\10\1\u0308\3\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\u0309\7\10\1\u030a\4\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u030b"+ - "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\6\10\1\u030c\6\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\7\10\1\u030c"+ - "\5\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\7\10\1\u030d\5\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u030e"+ - "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\6\10\1\u030f\6\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u0310"+ - "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\u0311\14\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\103\0\1\u0312"+ - "\25\0\6\10\1\u0313\7\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\11\10\13\0\12\10\1\u032d\3\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\u032e\7\10\1\u032f\4\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u0330\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\u0314\12\10\1\0\5\10"+ + "\1\0\6\10\3\0\6\10\1\u0331\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\2\10\1\u0315\2\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ + "\1\u0331\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\1\u0316\4\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\1\u0317\4\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\11\10\1\u0318\3\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\4\10\1\u0319\5\10"+ - "\1\u031a\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\2\10\1\u031b\13\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\6\10\3\0\7\10\1\u0332\5\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u031c\5\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\10\1\u031d\5\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ + "\1\u0333\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\6\10\1\u0334\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u031e\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u0335\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\u031f\6\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\1\u0320\1\0\4\u0320\4\0\1\u0320\2\0\1\u0320"+ - "\4\0\1\u0320\1\0\1\u0320\5\0\1\u0320\1\0\1\u0320"+ - "\3\0\1\u0320\5\0\1\u0320\11\0\1\u0320\11\0\1\u0320"+ - "\1\0\3\u0320\1\0\2\u0320\14\0\6\10\1\u0321\7\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\133\4\0\5\133\2\0\12\133\1\u0322\3\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\2\133\1\u0323\13\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u0324\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\10\133\1\u0325\5\133\4\0\5\133\2\0\16\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\13\133\1\u0326\2\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\4\133\1\u0327\11\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\4\133\1\u0328\11\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\7\133\1\u0329\6\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\7\133\1\u032a\6\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\2\133\1\u032b\13\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u032c\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u032d\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\14\133\1\u032e\1\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u032f\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\10\133\1\u0330\5\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\16\133\1\0\3\133"+ - "\1\u0331\5\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u0332\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\16\133\1\0\1\u0333"+ - "\10\133\3\0\3\133\1\0\1\133\1\0\11\133\13\0"+ - "\16\133\4\0\5\133\2\0\16\133\1\u0334\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\10\133\1\u0335\5\133\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\2\10\1\u0336\12\10\1\0"+ + "\1\0\6\10\3\0\1\u0336\14\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\103\0"+ + "\1\u0337\25\0\6\10\1\u0338\7\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\2\10\1\u0339\12\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\u0337\12\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\2\10\1\u0338"+ - "\13\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\15\10\1\0\2\10\1\u033a\2\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\1\u033b\4\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\1\u033c\4\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\11\10\1\u033d\3\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u033e"+ + "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\4\10\1\u033f\5\10\1\u0340\2\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\2\10\1\u0341\13\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u0342"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\10\10\1\u0343\5\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\2\10\1\u0344\12\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\u0339\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\6\10\1\u0345\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\1\u0346\1\0"+ + "\4\u0346\4\0\1\u0346\2\0\1\u0346\4\0\1\u0346\1\0"+ + "\1\u0346\5\0\1\u0346\1\0\1\u0346\3\0\1\u0346\5\0"+ + "\1\u0346\11\0\1\u0346\11\0\1\u0346\1\0\3\u0346\1\0"+ + "\2\u0346\14\0\6\10\1\u0347\7\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\134\4\0"+ + "\5\134\2\0\12\134\1\u0348\3\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\2\134\1\u0349\13\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\3\134\1\u034a\12\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\10\134\1\u034b"+ + "\5\134\4\0\5\134\2\0\16\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\13\134\1\u034c\2\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\4\134\1\u034d\11\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\4\134\1\u034e\11\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\7\134\1\u034f\6\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\7\134\1\u0350\6\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\2\134\1\u0351\13\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\3\134\1\u0352\12\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\3\134\1\u0353\12\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\14\134\1\u0354\1\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\3\134\1\u0355\12\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\10\134\1\u0356\5\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\16\134\1\0\3\134\1\u0357\5\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\3\134\1\u0358\12\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\16\134\1\0\1\u0359\10\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\16\134\1\u035a\11\134\3\0\3\134\1\0\1\134"+ + "\1\0\11\134\13\0\16\134\4\0\5\134\2\0\10\134"+ + "\1\u035b\5\134\1\0\11\134\3\0\3\134\1\0\1\134"+ + "\1\0\11\134\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\2\10\1\u035c\12\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\1\u035d\1\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\2\10\1\u035e\12\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\7\10\1\u033a\5\10\1\0"+ + "\1\106\1\0\6\10\3\0\2\10\1\u035f\12\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\2\10\1\u0360\13\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\2\10\1\u0361\12\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\14\10\1\u033b\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\64\0\1\u033c\44\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u033d\2\10"+ + "\7\10\1\u0362\5\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\14\10\1\u0363\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\64\0\1\u0364\44\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\12\10\1\u0365\2\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\3\10\1\u0366\11\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\3\10\1\u033e\11\10\1\0\5\10\1\0\3\10"+ + "\1\0\11\10\13\0\6\10\1\u0367\7\10\1\0\1\106"+ + "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ - "\1\u01ba\1\10\1\u01bb\3\10\1\0\1\106\1\0\6\10"+ - "\3\0\14\10\1\u01bd\1\0\5\10\1\0\3\10\4\0"+ + "\1\u01ce\1\10\1\u01cf\3\10\1\0\1\106\1\0\6\10"+ + "\3\0\14\10\1\u01d1\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\10\1\u033f\13\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\10\1\u0368\13\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\6\10\1\u02d2\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\6\10\1\u02f4\6\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\7\10\1\u02d2\5\10\1\0"+ + "\1\106\1\0\6\10\3\0\7\10\1\u02f4\5\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\7\10\1\u0337\5\10\1\0\5\10\1\0\3\10\4\0"+ + "\7\10\1\u035f\5\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u0340\6\10\1\0"+ + "\1\106\1\0\6\10\3\0\6\10\1\u0369\6\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\11\10\1\u0341\3\10\1\0\5\10\1\0\3\10\4\0"+ + "\11\10\1\u036a\3\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\13\10\1\u0342\1\10\1\0"+ + "\1\106\1\0\6\10\3\0\13\10\1\u036b\1\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\10\1\u0343\13\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\107\0\1\u0303\21\0"+ + "\1\10\1\u036c\13\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\107\0\1\u0327\21\0"+ "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\4\10\1\u0344\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\4\10\1\u036d\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\u0345\13\10\1\0\5\10\1\0\3\10"+ + "\3\0\1\10\1\u036e\13\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u0346\6\10"+ + "\1\0\1\106\1\0\6\10\3\0\6\10\1\u036f\6\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\7\10\1\u0346\5\10\1\0\5\10\1\0\3\10"+ + "\3\0\7\10\1\u036f\5\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0347\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0370\5\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u0348\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u0371\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u0349\6\10"+ + "\1\0\1\106\1\0\6\10\3\0\6\10\1\u0372\6\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\2\10\1\u034a\12\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\46\0\1\u034b"+ - "\40\0\1\u0303\21\0\10\10\1\u034c\5\10\1\0\1\106"+ + "\3\0\2\10\1\u0373\12\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\46\0\1\u0374"+ + "\40\0\1\u0327\21\0\10\10\1\u0375\5\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\14\10\1\u015b\1\0"+ + "\1\0\1\106\1\0\6\10\3\0\10\10\1\u0376\4\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\14\10\1\u016a\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u0377"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u034d\5\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\1\u034e\2\0\15\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\2\10\1\u034f\13\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\10\1\u0350\5\10"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\1\u0378"+ + "\2\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\2\10\1\u0379\13\10"+ "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\u0351\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\10\10\1\u037a\5\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\u0352\6\10\1\0\5\10"+ + "\1\0\6\10\3\0\13\10\1\u037b\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u0353\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u037c\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\4\10\1\u0354\10\10\1\0\5\10"+ + "\1\0\6\10\3\0\6\10\1\u037d\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u0355\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\4\10"+ + "\1\u037e\10\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\u0356\6\10\1\0\5\10"+ + "\1\0\6\10\3\0\6\10\1\u037f\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\55\0\1\u0357\53\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\10\1\u0358\13\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\2\10\1\u0359\12\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ + "\1\u0380\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\55\0\1\u0381\53\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0382\13\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\2\10\1\u035a\2\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\12\10"+ - "\1\u035b\3\10\1\0\1\106\1\0\6\10\3\0\1\u035c"+ - "\7\10\1\u035d\4\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\7\10\1\u035e\5\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\23\0\1\u035f\141\0\1\u0360\61\0\6\10\1\u0361"+ - "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\3\0\2\10\1\u0383\12\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\2\10"+ + "\1\u0384\2\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\12\10\1\u0385\3\10\1\0\1\106"+ + "\1\0\6\10\3\0\1\u0386\7\10\1\u0387\4\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\13\10\1\u0362\1\10\1\0\5\10\1\0\3\10\4\0"+ + "\7\10\1\u0388\5\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\23\0\1\u0389\141\0"+ + "\1\u038a\61\0\6\10\1\u038b\7\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u0167\6\10\1\0"+ + "\1\106\1\0\6\10\3\0\13\10\1\u038c\1\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\103\0\1\u0363\25\0\10\10\1\u0364\5\10\1\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u0176\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\103\0\1\u038d\25\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\2\10\1\u038e"+ + "\12\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\10\10\1\u038f\5\10\1\0"+ "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u0365"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u0390"+ "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\6\10\1\u0366\6\10\1\0\5\10\1\0"+ + "\6\10\3\0\6\10\1\u0391\6\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u0367"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u0392"+ "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\12\10\1\u030c\2\10\1\0\5\10\1\0"+ + "\6\10\3\0\12\10\1\u0331\2\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\u0368\14\10"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\u0393\14\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u0369\7\10\1\0\1\106"+ + "\1\0\11\10\13\0\6\10\1\u0394\7\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u036a\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0395\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\3\10\1\u036b\1\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u036c"+ - "\1\0\4\u036c\4\0\1\u036c\2\0\1\u036c\4\0\1\u036c"+ - "\1\0\1\u036c\5\0\1\u036c\1\0\1\u036c\3\0\1\u036c"+ - "\5\0\1\u036c\11\0\1\u036c\11\0\1\u036c\1\0\3\u036c"+ - "\1\0\2\u036c\14\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u036d\1\10\1\0\5\10\1\0\3\10"+ + "\3\0\15\10\1\0\3\10\1\u0396\1\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\1\u0397"+ + "\1\0\4\u0397\4\0\1\u0397\2\0\1\u0397\4\0\1\u0397"+ + "\1\0\1\u0397\5\0\1\u0397\1\0\1\u0397\3\0\1\u0397"+ + "\5\0\1\u0397\11\0\1\u0397\11\0\1\u0397\1\0\3\u0397"+ + "\1\0\2\u0397\14\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\13\10\1\u0398\1\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u036e\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0399\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\12\10\1\u0358\2\10\1\0\5\10\1\0\3\10"+ + "\3\0\12\10\1\u0382\2\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\2\10\1\u036f\12\10"+ + "\1\0\1\106\1\0\6\10\3\0\2\10\1\u039a\12\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u0370\1\10\1\0\5\10\1\0\3\10"+ + "\3\0\13\10\1\u039b\1\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0371\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u039c\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\5\10\1\u0372\7\10\1\0\5\10\1\0\3\10"+ + "\3\0\10\10\1\u039d\4\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\2\10\1\u0373\12\10"+ + "\1\0\1\106\1\0\6\10\3\0\5\10\1\u039e\7\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\1\10\1\u0374\7\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0375\5\10"+ + "\3\0\2\10\1\u039f\12\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\1\10"+ + "\1\u03a0\7\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\7\10\1\u03a1\5\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\7\10\1\u03a2\5\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\7\10\1\u0376\5\10\1\0\5\10\1\0\3\10"+ + "\3\0\15\10\1\0\2\10\1\u03a3\2\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\2\10"+ - "\1\u0377\2\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\4\10\1\u0378\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u01ba"+ - "\5\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u01bc"+ - "\12\10\1\u01bd\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\133\4\0\5\133"+ - "\2\0\13\133\1\u0379\2\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\13\133\1\u037a\2\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\14\133\1\u037b\1\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\3\133\1\u037c\12\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\16\133\1\0\4\133\1\u037d\4\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\16\133\1\0\4\133\1\u037e\4\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\15\133\1\u037f\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\2\133\1\u0380\13\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\16\133\1\0\2\133\1\u0381\6\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\13\133\1\u0382\2\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\12\133\1\u0383\3\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\4\133\1\u0384\11\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\7\133\1\u0385\6\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\11\133\1\u0386\4\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\14\133\1\u0387\1\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\2\133\1\u0388\13\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\4\133\1\u0389\11\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\11\10\1\u038a\3\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u02d2"+ - "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\4\10"+ + "\1\u03a4\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\10\10\1\u01ce\5\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\10\1\u01d0\12\10\1\u01d1\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\134\4\0\5\134\2\0\13\134\1\u03a5\2\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\13\134\1\u03a6\2\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\14\134\1\u03a7\1\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\3\134\1\u03a8\12\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\0\4\134"+ + "\1\u03a9\4\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\0\4\134"+ + "\1\u03aa\4\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\15\134\1\u03ab\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\2\134\1\u03ac\13\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\16\134\1\0\2\134\1\u03ad"+ + "\6\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\13\134\1\u03ae\2\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\12\134\1\u03af\3\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\4\134\1\u03b0\11\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\7\134\1\u03b1\6\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\11\134\1\u03b2\4\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\14\134\1\u03b3\1\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\2\134\1\u03b4\13\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\4\134\1\u03b5\11\134\1\0"+ + "\11\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\11\10\1\u03b6"+ + "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\10\1\u02de\13\10\1\0\5\10\1\0"+ + "\6\10\3\0\2\10\1\u03b7\12\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\3\10\1\u038b"+ - "\11\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\10\10\1\u038c\5\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\10\10\1\u03b8"+ + "\4\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u02f4\2\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\6\10\1\u038d"+ - "\6\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\63\0\1\u038e\45\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\13\10\1\u038f\1\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u0390\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u0301"+ + "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\3\10\1\u03b9\11\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u03ba\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\6\10\1\u03bb\6\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\63\0"+ + "\1\u03bc\45\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\13\10\1\u03bd\1\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u0391\6\10\1\0"+ + "\1\106\1\0\6\10\3\0\12\10\1\u03be\2\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\u0337\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\15\10\1\0\5\10\1\0\3\10\4\0\1\u03bf\1\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\1\10\1\u0392\3\10"+ + "\1\0\6\10\3\0\6\10\1\u03c0\6\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u035f"+ + "\14\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\1\10\1\u03c1\3\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\11\10\1\u016a"+ + "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\6\10\1\u0299\6\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u03c2\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\6\10\1\u03c3\6\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u036f"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\1\u03c4\14\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ + "\1\u03c5\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\12\10\1\u03c6\2\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\23\0\1\u03c7"+ + "\105\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\1\10\1\u02a6\1\0"+ + "\1\10\1\0\11\10\13\0\2\10\1\u03c8\13\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\11\10\1\u03c9"+ + "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\46\0\1\u0374\62\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\1\10\1\u03ca"+ + "\7\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\14\10\1\u03cb\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\10\10\1\u03cc\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ - "\1\u015b\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u03cd\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\u03ce\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\5\10\1\u03cf\7\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u03d0\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\u027c\6\10\1\0\5\10"+ + "\1\0\6\10\3\0\1\u03d1\14\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\1\u01cd\2\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\110\0\1\u03d2\20\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\6\10\1\u02b1\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u0393\5\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\11\10"+ + "\1\u03d3\3\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\10\10\1\u03d4\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ + "\1\u03d5\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\u0394\6\10\1\0\5\10"+ + "\1\0\6\10\3\0\6\10\1\u03d6\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\12\10"+ - "\1\u0346\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\10\10\1\u03d7\5\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\57\0\1\u03d8\117\0\1\u03d9"+ + "\47\0\16\10\1\0\1\106\1\0\6\10\3\0\3\10"+ + "\1\u03da\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u03db\7\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\1\u03dc\1\0\4\u03dc\4\0\1\u03dc\2\0\1\u03dc"+ + "\4\0\1\u03dc\1\0\1\u03dc\5\0\1\u03dc\1\0\1\u03dc"+ + "\3\0\1\u03dc\5\0\1\u03dc\11\0\1\u03dc\11\0\1\u03dc"+ + "\1\0\3\u03dc\1\0\2\u03dc\14\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\6\10\1\u03dd\6\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u03de\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\u0395\14\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\6\10\1\u0396\7\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\12\10\1\u0397\2\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\23\0"+ - "\1\u0398\105\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\1\10\1\u0288"+ + "\1\0\6\10\3\0\12\10\1\u03df\2\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u03e0\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\11\10\1\u0399\3\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u0334\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\46\0\1\u034b\62\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\1\10\1\u039a\7\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\14\10\1\u039b\1\0"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\1\u01ec\1\10\1\0"+ + "\1\10\1\0\5\10\1\u01ed\3\10\13\0\10\10\1\u03e1"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u039c\5\10\1\0\1\106\1\0"+ + "\11\10\13\0\12\10\1\u0384\3\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\11\10\1\u039d\3\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\u039e\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\5\10\1\u039f\7\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\10\1\u03a0\13\10\1\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u03e2"+ + "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\u03a1\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\1\u01b9\2\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\110\0"+ - "\1\u03a2\20\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\6\10\1\u0293\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\7\10\1\u02b1\5\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\11\10\1\u03a3\3\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u03a4\5\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\1\10\1\u03a5\13\10\1\0"+ + "\1\106\1\0\6\10\3\0\7\10\1\u023d\5\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\6\10\1\u03a6\6\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\10\10\1\u03a7"+ - "\5\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\57\0\1\u03a8\117\0\1\u03a9\47\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\3\10\1\u03aa\11\10\1\0"+ + "\6\10\1\u03e3\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\2\10\1\u03e4"+ + "\13\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u03ab\7\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\1\u03ac\1\0"+ - "\4\u03ac\4\0\1\u03ac\2\0\1\u03ac\4\0\1\u03ac\1\0"+ - "\1\u03ac\5\0\1\u03ac\1\0\1\u03ac\3\0\1\u03ac\5\0"+ - "\1\u03ac\11\0\1\u03ac\11\0\1\u03ac\1\0\3\u03ac\1\0"+ - "\2\u03ac\14\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\6\10\1\u03ad\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u03e5\6\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\2\10\1\u03ae\12\10\1\0"+ + "\1\106\1\0\6\10\3\0\12\10\1\u03e6\2\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u03af\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\6\10\1\u03e7\6\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\2\10\1\u03b0\12\10\1\0"+ + "\1\106\1\0\6\10\3\0\6\10\1\u03e8\6\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u030f\2\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\12\10\1\u03e9\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u03ea"+ + "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\6\10\1\u03eb\7\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\134\4\0"+ + "\5\134\2\0\4\134\1\u03ec\11\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\3\134\1\u03ed\12\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\12\134\1\u03ee\3\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\13\134\1\u03ef\2\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\10\134\1\u03f0"+ + "\5\134\4\0\5\134\2\0\16\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\10\134\1\u03f1"+ + "\5\134\4\0\5\134\2\0\16\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\6\134\1\u03f2"+ + "\7\134\4\0\5\134\2\0\16\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\3\134\1\u03f3\12\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\12\134\1\u03f4\3\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\7\134\1\u03f5\6\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\15\134\1\u03f6\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\15\134\1\u03f7\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\134\4\0\5\134\2\0"+ + "\14\134\1\u03f8\1\134\1\0\11\134\3\0\3\134\1\0"+ + "\1\134\1\0\11\134\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\1\10\1\u03f9\3\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\7\10\1\u03fa"+ + "\5\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\2\10\1\u03fb\13\10\1\0"+ "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\1\u01d7\1\10\1\0\1\10\1\0\5\10"+ - "\1\u01d8\3\10\13\0\10\10\1\u03b1\5\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\12\10"+ - "\1\u035a\3\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\10\10\1\u03b2\5\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0293\5\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\7\10\1\u0224\5\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u03b3\6\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u03b4\6\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u03b5\2\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u03b6\6\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u03b7\6\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\12\10\1\u03b8\2\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ - "\1\u03b9\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\3\10\1\u03be"+ + "\11\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\11\10\1\u03fc\3\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\1\u03fd\2\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\6\10\1\u03ba\7\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\133"+ - "\4\0\5\133\2\0\4\133\1\u03bb\11\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\3\133\1\u03bc\12\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\12\133\1\u03bd\3\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\13\133\1\u03be\2\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\10\133"+ - "\1\u03bf\5\133\4\0\5\133\2\0\16\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\10\133"+ - "\1\u03c0\5\133\4\0\5\133\2\0\16\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\6\133"+ - "\1\u03c1\7\133\4\0\5\133\2\0\16\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\3\133\1\u03c2\12\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\12\133\1\u03c3\3\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\7\133\1\u03c4\6\133\1\0\11\133"+ - "\3\0\3\133\1\0\1\133\1\0\11\133\13\0\16\133"+ - "\4\0\5\133\2\0\15\133\1\u03c5\1\0\11\133\3\0"+ - "\3\133\1\0\1\133\1\0\11\133\13\0\16\133\4\0"+ - "\5\133\2\0\15\133\1\u03c6\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\14\133\1\u03c7\1\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\1\10\1\u03c8\3\10"+ + "\1\0\11\10\110\0\1\u03fe\20\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\7\10\1\u016a\5\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\3\10"+ - "\1\u0390\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u03ff\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\2\10\1\u0400\12\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\12\10"+ + "\1\u0401\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\12\10\1\u0402\2\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u0403\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\12\10\1\u0372\2\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\1\u022c\1\10\1\0"+ + "\1\10\1\0\11\10\13\0\10\10\1\u0404\5\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\57\0"+ + "\1\u0405\51\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\14\10\1\u0406\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\1\10\1\u0407\13\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ + "\1\u0408\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\11\10\1\u03c9\3\10\1\0\5\10"+ + "\1\0\6\10\3\0\6\10\1\u0409\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\1\u03ca\2\0"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\14\10"+ + "\1\u040a\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u040b\2\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u040c\5\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\110\0\1\u03cb\20\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\7\10\1\u015b\5\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u040d\2\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\12\10\1\u040e"+ + "\2\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\12\10\1\u0380\2\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\111\0"+ + "\1\u040f\17\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\u0410\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\6\10\1\u0411\6\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u0412\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\12\10\1\u0413\2\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\12\10\1\u0414\3\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\110\0\1\u0415\2\0\1\u0416"+ + "\63\0\1\u0417\47\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\2\10\1\u0418\2\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\10\10"+ + "\1\u01ce\1\10\1\u01cf\3\10\1\0\1\106\1\0\6\10"+ + "\3\0\1\10\1\u01d0\13\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0419\13\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\3\10\1\u041a\11\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\1\u041b"+ + "\4\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\u03cc\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\11\10\1\u0331\3\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u03cd\2\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\10\1\u041c\13\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u03ce\2\10\1\0\5\10\1\0\3\10\4\0"+ + "\13\10\1\u041d\1\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\2\10\1\u03cf\12\10\1\0"+ + "\1\106\1\0\6\10\3\0\7\10\1\u041e\5\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u0349\2\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ - "\3\10\4\0\1\u0214\1\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u03d0\5\10\1\0\1\106\1\0\6\10"+ + "\14\10\1\u041f\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\7\10\1\u0420\5\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\10\10\1\u0421\5\10\1\0\1\106\1\0\6\10"+ "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\57\0\1\u03d1\51\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u03d2\13\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\1\u0422\14\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\u0423\14\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u03d3\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\4\10\1\u0424\10\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u03d4\6\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\14\10\1\u03d5\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u03d6\2\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u03d7\5\10\1\0\1\106\1\0"+ - "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u03d8\2\10\1\0"+ + "\1\0\1\106\1\0\6\10\3\0\14\10\1\u0425\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\12\10\1\u03d9\2\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\12\10\1\u0356\2\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\111\0\1\u03da\17\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\u03db\14\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u03dc\6\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\2\10\1\u03dd\12\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u03de\2\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\12\10\1\u03df\3\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\110\0\1\u03e0"+ - "\2\0\1\u03e1\63\0\1\u03e2\47\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\2\10\1\u03e3\2\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\10\10\1\u01ba\1\10\1\u01bb\3\10\1\0\1\106"+ - "\1\0\6\10\3\0\1\10\1\u01bc\13\10\1\0\5\10"+ + "\2\10\1\u0426\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\10\134\1\u0427"+ + "\5\134\4\0\5\134\2\0\16\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\13\134\1\u0428\2\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\13\134\1\u0429\2\134\1\0\11\134\3\0"+ + "\3\134\1\0\1\134\1\0\11\134\13\0\16\134\4\0"+ + "\5\134\2\0\15\134\1\u042a\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\13\134\1\u042b\2\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\14\134\1\u042c\1\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\6\134\1\u042d\7\134"+ + "\4\0\5\134\2\0\16\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\6\134\1\u042e\7\134"+ + "\4\0\5\134\2\0\16\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\1\134\1\u042f\14\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\6\10\1\u02be\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\10"+ - "\1\u03e4\13\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\10\10\1\u0430\5\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\3\10\1\u03e5\11\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ - "\1\0\1\u03e6\4\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\11\10\1\u030c\3\10\1\0\5\10\1\0"+ + "\1\0\6\10\3\0\14\10\1\u0431\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\10\1\u03e7"+ - "\13\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\13\10\1\u03e8\1\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\7\10\1\u03e9"+ - "\5\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\7\10\1\u03ea\5\10\1\0\5\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ + "\1\10\1\u0432\3\10\1\0\3\10\4\0\2\10\1\0"+ + "\1\10\1\0\11\10\63\0\1\u0433\24\0\1\u0289\3\0"+ + "\1\u0434\112\0\1\u0435\17\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\7\10\1\u0436\5\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\10\10\1\u03eb\5\10\1\0\1\106\1\0\6\10\3\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\11\10\1\u02f4"+ + "\3\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\u03ec\14\10\1\0\5\10\1\0\3\10"+ + "\6\10\3\0\15\10\1\0\1\u02b1\4\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\u03ed\14\10\1\0"+ + "\1\0\1\106\1\0\6\10\3\0\1\u0437\14\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\4\10\1\u03ee\10\10\1\0\5\10\1\0\3\10\4\0"+ + "\11\10\1\u036f\3\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\14\10\1\u03ef\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u03f0\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\10\133\1\u03f1\5\133"+ - "\4\0\5\133\2\0\16\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\13\133\1\u03f2\2\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\13\133\1\u03f3\2\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\15\133\1\u03f4\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\13\133\1\u03f5\2\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\14\133\1\u03f6\1\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\6\133\1\u03f7\7\133\4\0"+ - "\5\133\2\0\16\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\6\133\1\u03f8\7\133\4\0"+ - "\5\133\2\0\16\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\1\133\1\u03f9\14\133\1\0\11\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\6\10\1\u02a0\6\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\1\10\1\u03fa\3\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\63\0\1\u03fb\24\0\1\u026d\3\0"+ - "\1\u03fc\112\0\1\u03fd\17\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\11\10\1\u02d2\3\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\1\u0293\4\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\u03fe\14\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\11\10\1\u0346\3\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\10\1\u0438\13\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\10\1\u03ff\13\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\113\0\1\u03e1\15\0"+ - "\10\10\1\u0400\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\11\10\113\0\1\u0416\15\0\16\10\1\0\1\106\1\0"+ + "\6\10\3\0\2\10\1\u0384\12\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\10\10\1\u0439\5\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\1\u03d7\14\10\1\0\5\10\1\0\3\10"+ + "\6\10\3\0\1\u040c\14\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ - "\1\u0401\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\u043a\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u0402\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u043b\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u03d4\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u0409\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\10\10\1\u0403\5\10\1\0\1\106"+ + "\1\0\11\10\13\0\10\10\1\u043c\5\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\6\10"+ - "\1\u0404\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\u043d\7\10\1\0\1\106\1\0\6\10\3\0\15\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u0390\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u03be\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0405\13\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u043e\13\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\3\10\1\u0406\11\10\1\0\5\10\1\0\3\10"+ + "\3\0\3\10\1\u043f\11\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\1\u0407"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\1\u0440"+ "\4\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\10\1\u0408\5\10\1\0\1\106\1\0"+ + "\11\10\13\0\10\10\1\u0441\5\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\111\0\1\u0409\60\0"+ - "\1\u040a\54\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\11\10\1\u040b\3\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\111\0\1\u0442\60\0"+ + "\1\u0443\54\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\11\10\1\u0444\3\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\14\10\1\u040c\1\0\5\10"+ + "\1\106\1\0\6\10\3\0\14\10\1\u0445\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\3\10"+ - "\1\u040c\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u0445\11\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\13\10\1\u03e4\1\10\1\0\5\10"+ + "\1\0\6\10\3\0\13\10\1\u0419\1\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u040d\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u0446\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\11\10\1\u02a0\3\10\1\0\5\10"+ + "\1\0\6\10\3\0\11\10\1\u02be\3\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\12\10\1\u040e\3\10\1\0\1\106\1\0\6\10"+ + "\13\0\12\10\1\u0447\3\10\1\0\1\106\1\0\6\10"+ "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\6\10\1\u040f\7\10"+ - "\1\0\1\106\1\0\6\10\1\u0410\2\0\15\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\u0411\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\12\10\1\u0412\2\10\1\0\5\10"+ + "\1\0\6\10\3\0\2\10\1\u0448\12\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\6\10\1\u0449\7\10\1\0\1\106\1\0\6\10"+ + "\1\u044a\2\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\1\u044b\14\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\12\10"+ - "\1\u0413\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u044c\2\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\u0414\12\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u044d\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u0415\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\7\10\1\u0416\5\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\133\4\0\5\133\2\0\14\133\1\u0417\1\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\1\133\1\u0418\14\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\1\133\1\u0419\14\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u041a\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\10\133\1\u041b\5\133\4\0\5\133\2\0\16\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\13\133\1\u041c\2\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\4\133\1\u041d\11\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\4\133\1\u041e\11\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u041f\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\1\u0420\2\0"+ - "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\23\0\1\u0421\201\0\1\u0422\21\0"+ + "\1\u044e\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\2\10\1\u044f\12\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ + "\1\u0450\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\134\4\0\5\134"+ + "\2\0\14\134\1\u0451\1\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\1\134\1\u0452\14\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\1\134\1\u0453\14\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\3\134\1\u0454\12\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\10\134\1\u0455\5\134"+ + "\4\0\5\134\2\0\16\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\13\134\1\u0456\2\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\4\134\1\u0457\11\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\4\134\1\u0458\11\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\134\4\0\5\134"+ + "\2\0\3\134\1\u0459\12\134\1\0\11\134\3\0\3\134"+ + "\1\0\1\134\1\0\11\134\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\2\10\1\u045a\12\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u045b\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\1\u045c\2\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\23\0"+ + "\1\u045d\201\0\1\u045e\21\0\10\10\1\u045f\5\10\1\0"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ "\16\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ - "\1\u0423\4\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\u0460\4\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\6\10\1\u0424\6\10\1\0\5\10\1\0\3\10"+ + "\3\0\6\10\1\u0461\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\11\10\1\u0425\3\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\u0462\3\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\2\10\1\u0426\13\10\1\0\1\106"+ + "\1\0\11\10\13\0\2\10\1\u0463\13\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u03d4\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0409\5\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u0427\1\10\1\0\5\10\1\0\3\10"+ + "\3\0\13\10\1\u0464\1\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\13\10\1\u02f3\1\10"+ - "\1\0\4\10\1\u02f4\1\0\3\10\4\0\2\10\1\0"+ + "\1\0\1\106\1\0\6\10\3\0\13\10\1\u0317\1\10"+ + "\1\0\4\10\1\u0318\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\14\10\1\u0300\1\0\5\10\1\0\3\10"+ + "\6\10\3\0\14\10\1\u0324\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\3\10\1\u0300\11\10"+ + "\1\0\1\106\1\0\6\10\3\0\3\10\1\u0324\11\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\13\10\1\u0405\1\10\1\0\5\10\1\0\3\10"+ + "\3\0\13\10\1\u043e\1\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\u0428\14\10\1\0"+ + "\1\0\1\106\1\0\6\10\3\0\1\u0465\14\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\1\u0156\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\6\10\1\u0429\7\10"+ + "\1\u0164\14\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u0466\7\10"+ "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u042a\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u0467\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ "\1\0\6\10\3\0\15\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\5\10\1\u042b\3\10"+ - "\54\0\1\u042c\54\0\16\10\1\0\1\106\1\0\6\10"+ - "\1\u0410\2\0\15\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u042d"+ + "\4\0\2\10\1\0\1\10\1\0\5\10\1\u0468\3\10"+ + "\54\0\1\u0469\54\0\16\10\1\0\1\106\1\0\6\10"+ + "\1\u044a\2\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\6\10\1\u046a"+ "\7\10\1\0\1\106\1\0\6\10\3\0\15\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\6\10\1\u042e\7\10\1\0\1\106\1\0"+ - "\6\10\1\u0410\2\0\15\10\1\0\5\10\1\0\3\10"+ + "\11\10\13\0\6\10\1\u046b\7\10\1\0\1\106\1\0"+ + "\6\10\1\u044a\2\0\15\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\1\10\1\u03ea\13\10"+ + "\1\0\1\106\1\0\6\10\3\0\1\10\1\u0420\13\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\12\10\1\u042f\2\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0430\5\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\133\4\0\5\133\2\0\12\133"+ - "\1\u0431\3\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\16\133\4\0\5\133\2\0\16\133"+ - "\1\0\1\u0432\10\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\16\133\1\0"+ - "\1\u0433\10\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\13\133\1\u0434\2\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\14\133\1\u0435\1\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\3\133\1\u0436\12\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\16\133\1\0\4\133"+ - "\1\u0437\4\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\16\133\1\0\4\133"+ - "\1\u0438\4\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\13\0\16\133\4\0\5\133\2\0\2\133\1\u0439\13\133"+ - "\1\0\11\133\3\0\3\133\1\0\1\133\1\0\11\133"+ - "\106\0\1\u043a\73\0\1\u043b\44\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\u043c\6\10\1\0\5\10"+ + "\3\0\12\10\1\u046c\2\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\7\10\1\u046d\5\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\134\4\0\5\134\2\0\12\134"+ + "\1\u046e\3\134\1\0\11\134\3\0\3\134\1\0\1\134"+ + "\1\0\11\134\13\0\16\134\4\0\5\134\2\0\16\134"+ + "\1\0\1\u046f\10\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\16\134\1\0"+ + "\1\u0470\10\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\13\134\1\u0471\2\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\14\134\1\u0472\1\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\3\134\1\u0473\12\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\0\4\134"+ + "\1\u0474\4\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\0\4\134"+ + "\1\u0475\4\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\2\134\1\u0476\13\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\2\10\1\u0477\13\10\1\0\1\106\1\0\6\10"+ + "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\106\0\1\u0478\73\0\1\u0479"+ + "\44\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ + "\1\u047a\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\6\10\1\u047b\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u043d\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u047c\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\11\10\1\u03d4\3\10\1\0\5\10"+ + "\1\0\6\10\3\0\11\10\1\u0409\3\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\2\10"+ - "\1\u043e\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u047d\12\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\2\10\1\u043f\12\10\1\0\5\10"+ + "\1\0\6\10\3\0\2\10\1\u047e\12\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u0440"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u047f"+ "\14\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\4\10\1\u0441\10\10\1\0\5\10\1\0"+ + "\6\10\3\0\4\10\1\u0480\10\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\47\0"+ - "\1\u0442\61\0\10\10\1\u0443\5\10\1\0\1\106\1\0"+ + "\1\u0481\61\0\10\10\1\u0482\5\10\1\0\1\106\1\0"+ "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\6\10\1\u0444\6\10\1\0"+ + "\1\106\1\0\6\10\3\0\6\10\1\u0483\6\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\2\10\1\u0423\12\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\u0460\12\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\2\10\1\u0445\12\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\133\4\0\5\133\2\0\3\133\1\u0446"+ - "\12\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\12\133\1\u0447"+ - "\3\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\13\133\1\u0448"+ - "\2\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\10\133\1\u0449\5\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\10\133\1\u044a\5\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\51\0\1\u044b\127\0\1\u044c\45\0\16\10\1\0"+ - "\1\106\1\0\6\10\1\u044d\2\0\15\10\1\0\5\10"+ + "\1\106\1\0\6\10\3\0\2\10\1\u0484\12\10\1\0"+ + "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ + "\11\10\13\0\16\134\4\0\5\134\2\0\3\134\1\u0485"+ + "\12\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\12\134\1\u0486"+ + "\3\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\13\134\1\u0487"+ + "\2\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\10\134\1\u0488\5\134\4\0\5\134\2\0"+ + "\16\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\10\134\1\u0489\5\134\4\0\5\134\2\0"+ + "\16\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\10\1\u048a\13\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\51\0\1\u048b\127\0"+ + "\1\u048c\45\0\2\10\1\u048d\13\10\1\0\1\106\1\0"+ + "\6\10\3\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\1\u048e\2\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ - "\1\u044e\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\u048f\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\12\10\1\u044f\2\10\1\0\5\10"+ + "\1\0\6\10\3\0\12\10\1\u0490\2\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u0450"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\1\u0491"+ "\14\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\6\10\1\u0411\6\10\1\0\5\10\1\0"+ + "\6\10\3\0\6\10\1\u044b\6\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\10\10\1\u0451\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\10\10\1\u0492\5\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\56\0\1\u0452\52\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\11\10\1\u0453\3\10\1\0"+ + "\1\10\1\0\11\10\56\0\1\u0493\52\0\16\10\1\0"+ + "\1\106\1\0\6\10\3\0\11\10\1\u0494\3\10\1\0"+ "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ - "\10\10\1\u0454\4\10\1\0\5\10\1\0\3\10\4\0"+ + "\10\10\1\u0495\4\10\1\0\5\10\1\0\3\10\4\0"+ "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ - "\1\106\1\0\6\10\3\0\15\10\1\0\2\10\1\u0455"+ + "\1\106\1\0\6\10\3\0\15\10\1\0\2\10\1\u0496"+ "\2\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\10\133\1\u0456\5\133\4\0\5\133\2\0"+ - "\16\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\13\133\1\u0457"+ - "\2\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\13\0\16\133\4\0\5\133\2\0\13\133\1\u0458"+ - "\2\133\1\0\11\133\3\0\3\133\1\0\1\133\1\0"+ - "\11\133\55\0\1\u0459\150\0\1\u045a\61\0\1\u045b\54\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\7\10\1\u045c"+ + "\11\10\13\0\10\134\1\u0497\5\134\4\0\5\134\2\0"+ + "\16\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\13\134\1\u0498"+ + "\2\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\134\4\0\5\134\2\0\13\134\1\u0499"+ + "\2\134\1\0\11\134\3\0\3\134\1\0\1\134\1\0"+ + "\11\134\13\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\6\10\1\u049a\6\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\55\0\1\u049b\150\0"+ + "\1\u049c\20\0\16\10\1\0\1\106\1\0\6\10\3\0"+ + "\1\10\1\u049d\13\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\54\0\1\u049e\54\0"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\7\10\1\u049f"+ "\5\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ - "\1\10\1\0\11\10\13\0\10\10\1\u045d\5\10\1\0"+ + "\1\10\1\0\11\10\13\0\10\10\1\u04a0\5\10\1\0"+ "\1\106\1\0\6\10\3\0\15\10\1\0\5\10\1\0"+ "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\3\0\1\u045e\14\10"+ + "\16\10\1\0\1\106\1\0\6\10\3\0\1\u04a1\14\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\1\u045f\14\10\1\0\5\10\1\0\3\10\4\0"+ - "\2\10\1\0\1\10\1\0\11\10\64\0\1\u0460\44\0"+ - "\10\10\1\u0461\5\10\1\0\1\106\1\0\6\10\3\0"+ + "\3\0\1\u04a2\14\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\64\0\1\u04a3\44\0"+ + "\10\10\1\u04a4\5\10\1\0\1\106\1\0\6\10\3\0"+ "\15\10\1\0\5\10\1\0\3\10\4\0\2\10\1\0"+ "\1\10\1\0\11\10\13\0\16\10\1\0\1\106\1\0"+ - "\6\10\3\0\5\10\1\u0462\7\10\1\0\5\10\1\0"+ - "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ - "\16\10\1\0\1\106\1\0\6\10\1\u0463\2\0\15\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\13\0\16\133\4\0\5\133\2\0\14\133"+ - "\1\u0464\1\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\16\133\4\0\5\133\2\0\1\133"+ - "\1\u0465\14\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\13\0\16\133\4\0\5\133\2\0\1\133"+ - "\1\u0466\14\133\1\0\11\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\15\0\1\u0467\211\0\1\u0468\53\0\1\u0469"+ - "\61\0\10\10\1\u046a\5\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\13\10\1\u046b\1\10\1\0\5\10"+ + "\6\10\3\0\5\10\1\u04a5\7\10\1\0\5\10\1\0"+ + "\3\10\4\0\2\10\1\0\1\10\1\0\11\10\13\0"+ + "\16\10\1\0\1\106\1\0\6\10\1\u04a6\2\0\15\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\134\4\0\5\134\2\0\14\134"+ + "\1\u04a7\1\134\1\0\11\134\3\0\3\134\1\0\1\134"+ + "\1\0\11\134\13\0\16\134\4\0\5\134\2\0\1\134"+ + "\1\u04a8\14\134\1\0\11\134\3\0\3\134\1\0\1\134"+ + "\1\0\11\134\13\0\16\134\4\0\5\134\2\0\1\134"+ + "\1\u04a9\14\134\1\0\11\134\3\0\3\134\1\0\1\134"+ + "\1\0\11\134\15\0\1\u04aa\211\0\1\u04ab\17\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\6\10\1\u04ac\6\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\47\0\1\u04ad\61\0\10\10\1\u04ae\5\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ - "\1\u03dd\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ + "\1\u04af\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\3\10\1\u046c\1\10"+ + "\1\0\6\10\3\0\6\10\1\u0412\6\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\53\0\1\u046d\55\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\12\10\1\u046e\2\10\1\0\5\10\1\0\3\10"+ - "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\12\10\1\u046f\2\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\54\0\1\u0470\54\0\16\133\4\0\5\133"+ - "\2\0\12\133\1\u0471\3\133\1\0\11\133\3\0\3\133"+ - "\1\0\1\133\1\0\11\133\13\0\16\133\4\0\5\133"+ - "\2\0\16\133\1\0\1\u0472\10\133\3\0\3\133\1\0"+ - "\1\133\1\0\11\133\13\0\16\133\4\0\5\133\2\0"+ - "\16\133\1\0\1\u0473\10\133\3\0\3\133\1\0\1\133"+ - "\1\0\11\133\60\0\1\u0474\113\0\1\u0475\52\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\6\10\1\u0476\6\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\3\10\1\u04b0\1\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\53\0\1\u04b1\55\0\16\10"+ + "\1\0\1\106\1\0\6\10\3\0\12\10\1\u04b2\2\10"+ "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ - "\3\0\11\10\1\u0477\3\10\1\0\5\10\1\0\3\10"+ + "\3\0\12\10\1\u04b3\2\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\54\0\1\u04b4"+ + "\54\0\16\134\4\0\5\134\2\0\12\134\1\u04b5\3\134"+ + "\1\0\11\134\3\0\3\134\1\0\1\134\1\0\11\134"+ + "\13\0\16\134\4\0\5\134\2\0\16\134\1\0\1\u04b6"+ + "\10\134\3\0\3\134\1\0\1\134\1\0\11\134\13\0"+ + "\16\134\4\0\5\134\2\0\16\134\1\0\1\u04b7\10\134"+ + "\3\0\3\134\1\0\1\134\1\0\11\134\60\0\1\u04b8"+ + "\113\0\1\u04b9\52\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\6\10\1\u04ba\6\10\1\0\5\10\1\0\3\10"+ "\4\0\2\10\1\0\1\10\1\0\11\10\13\0\16\10"+ - "\1\0\1\106\1\0\6\10\1\u0478\2\0\15\10\1\0"+ - "\5\10\1\0\3\10\4\0\2\10\1\0\1\10\1\0"+ - "\11\10\13\0\16\10\1\0\1\106\1\0\6\10\1\u0479"+ - "\2\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\13\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\15\10\1\0\2\10\1\u047a\2\10"+ + "\1\0\1\106\1\0\6\10\3\0\11\10\1\u04bb\3\10"+ + "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ + "\1\0\11\10\13\0\16\10\1\0\1\106\1\0\6\10"+ + "\1\u04bc\2\0\15\10\1\0\5\10\1\0\3\10\4\0"+ + "\2\10\1\0\1\10\1\0\11\10\13\0\16\10\1\0"+ + "\1\106\1\0\6\10\1\u04bd\2\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\47\0\1\u047b\132\0\1\u047c\44\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\7\10\1\u047d\5\10\1\0\5\10"+ + "\13\0\16\10\1\0\1\106\1\0\6\10\3\0\15\10"+ + "\1\0\2\10\1\u04be\2\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\47\0\1\u04bf\132\0\1\u04c0"+ + "\44\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ + "\1\u04c1\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\13\0\6\10\1\u04c2\7\10"+ + "\1\0\1\106\1\0\6\10\3\0\15\10\1\0\5\10"+ "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\13\0\6\10\1\u047e\7\10\1\0\1\106\1\0\6\10"+ - "\3\0\15\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\54\0\1\u047f\115\0\1\u0480"+ - "\117\0\1\u0481\112\0\1\u0482\55\0\16\10\1\0\1\106"+ - "\1\0\6\10\3\0\6\10\1\u0483\6\10\1\0\5\10"+ - "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ - "\47\0\1\u0484\115\0\1\u0485\132\0\1\u0486\44\0\16\10"+ - "\1\0\1\106\1\0\6\10\3\0\7\10\1\u0487\5\10"+ - "\1\0\5\10\1\0\3\10\4\0\2\10\1\0\1\10"+ - "\1\0\11\10\56\0\1\u0488\115\0\1\u0489\112\0\1\u048a"+ - "\55\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ - "\1\u048b\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\64\0\1\u048c\115\0\1\u048d"+ - "\44\0\16\10\1\0\1\106\1\0\6\10\3\0\13\10"+ - "\1\u048e\1\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\53\0\1\u048f\115\0\1\u0490"+ - "\55\0\16\10\1\0\1\106\1\0\6\10\3\0\7\10"+ - "\1\u0491\5\10\1\0\5\10\1\0\3\10\4\0\2\10"+ - "\1\0\1\10\1\0\11\10\12\0"; + "\54\0\1\u04c3\115\0\1\u04c4\117\0\1\u04c5\112\0\1\u04c6"+ + "\55\0\16\10\1\0\1\106\1\0\6\10\3\0\6\10"+ + "\1\u04c7\6\10\1\0\5\10\1\0\3\10\4\0\2\10"+ + "\1\0\1\10\1\0\11\10\47\0\1\u04c8\115\0\1\u04c9"+ + "\132\0\1\u04ca\44\0\16\10\1\0\1\106\1\0\6\10"+ + "\3\0\7\10\1\u04cb\5\10\1\0\5\10\1\0\3\10"+ + "\4\0\2\10\1\0\1\10\1\0\11\10\56\0\1\u04cc"+ + "\115\0\1\u04cd\112\0\1\u04ce\55\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\7\10\1\u04cf\5\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\64\0\1\u04d0\115\0\1\u04d1\44\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\13\10\1\u04d2\1\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\53\0\1\u04d3\115\0\1\u04d4\55\0\16\10\1\0\1\106"+ + "\1\0\6\10\3\0\7\10\1\u04d5\5\10\1\0\5\10"+ + "\1\0\3\10\4\0\2\10\1\0\1\10\1\0\11\10"+ + "\12\0"; private static int [] zzUnpackTrans() { - int [] result = new int[81900]; + int [] result = new int[86814]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -2751,32 +2919,33 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { private static final String ZZ_ATTRIBUTE_PACKED_0 = "\5\0\1\11\35\1\2\11\5\1\12\11\3\1\2\11"+ - "\1\0\1\1\2\11\1\0\7\1\1\0\10\1\1\0"+ + "\1\0\1\1\2\11\1\0\7\1\1\0\11\1\1\0"+ "\1\11\15\1\1\11\12\1\1\0\1\1\1\0\1\1"+ - "\2\0\54\1\4\0\1\11\2\0\3\11\1\1\6\11"+ - "\2\1\1\0\2\1\1\0\2\11\44\1\1\0\1\1"+ - "\2\0\1\1\2\0\60\1\1\11\1\0\1\11\2\0"+ - "\2\1\1\0\1\1\1\0\47\1\4\0\123\1\1\0"+ - "\41\1\1\0\17\1\1\0\26\1\1\0\36\1\1\0"+ - "\42\1\2\0\17\1\2\0\3\1\1\11\13\1\1\0"+ - "\7\1\1\0\36\1\1\0\1\11\1\0\43\1\1\0"+ - "\1\11\12\1\1\0\3\1\2\11\1\0\12\1\1\0"+ - "\14\1\1\0\34\1\1\0\1\11\13\1\1\0\10\1"+ - "\1\0\14\1\1\0\6\1\2\0\3\1\1\0\12\1"+ - "\1\0\41\1\1\0\7\1\1\0\16\1\1\0\2\1"+ - "\1\0\10\1\1\0\7\1\2\0\2\1\1\0\52\1"+ - "\1\0\11\1\1\0\11\1\1\0\5\1\2\0\40\1"+ - "\2\0\5\1\1\0\10\1\1\11\5\1\1\0\1\11"+ - "\1\0\30\1\2\0\1\11\13\1\2\11\5\1\1\0"+ - "\17\1\2\0\1\11\11\1\1\0\15\1\2\0\6\1"+ - "\1\0\10\1\3\0\4\1\1\0\6\1\3\0\4\1"+ - "\1\0\2\1\1\0\3\1\1\0\1\11\1\0\3\1"+ - "\1\11\2\1\1\0\3\1\1\11\1\0\2\1\2\0"+ - "\1\1\2\0\2\1\3\0\1\11\1\1\3\0\1\1"+ - "\2\0\1\11\1\1\2\0\1\1\2\11\1\1"; + "\2\0\60\1\4\0\1\11\2\0\3\11\1\1\6\11"+ + "\2\1\1\0\2\1\1\0\2\11\45\1\1\0\1\1"+ + "\2\0\1\1\2\0\64\1\1\11\1\0\1\11\2\0"+ + "\2\1\1\0\1\1\1\0\50\1\4\0\130\1\1\0"+ + "\45\1\1\0\17\1\1\0\27\1\1\0\40\1\1\0"+ + "\44\1\2\0\17\1\2\0\3\1\1\11\14\1\1\0"+ + "\7\1\1\0\40\1\1\0\1\11\1\0\45\1\1\0"+ + "\1\11\12\1\1\0\3\1\2\11\1\0\13\1\1\0"+ + "\15\1\1\0\36\1\1\0\1\11\14\1\1\0\10\1"+ + "\1\0\15\1\1\0\6\1\2\0\3\1\1\0\13\1"+ + "\1\0\42\1\1\0\11\1\1\0\17\1\1\0\3\1"+ + "\1\0\10\1\1\0\7\1\2\0\2\1\1\0\56\1"+ + "\1\0\12\1\1\0\12\1\1\0\5\1\2\0\43\1"+ + "\2\0\6\1\1\0\11\1\1\11\5\1\1\0\1\11"+ + "\1\0\33\1\2\0\1\11\14\1\2\11\6\1\1\0"+ + "\21\1\2\0\1\11\12\1\1\0\16\1\2\0\7\1"+ + "\1\0\11\1\2\0\1\1\1\0\4\1\1\0\7\1"+ + "\2\0\1\1\1\0\4\1\1\0\2\1\1\0\3\1"+ + "\1\0\1\11\1\1\1\0\3\1\1\11\2\1\1\0"+ + "\3\1\1\11\1\0\2\1\2\0\1\1\2\0\2\1"+ + "\3\0\1\11\1\1\3\0\1\1\2\0\1\11\1\1"+ + "\2\0\1\1\2\11\1\1"; private static int [] zzUnpackAttribute() { - int [] result = new int[1169]; + int [] result = new int[1237]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -3353,378 +3522,393 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { case 104: { return newToken(INSTRUCTION_FORMAT22b); } - case 136: break; - case 98: + case 140: break; + case 99: { return newToken(VTABLE_INDEX); } - case 137: break; + case 141: break; case 87: { return newToken(PROLOGUE_DIRECTIVE); } - case 138: break; + case 142: break; case 41: { sb.append('\r'); } - case 139: break; - case 99: + case 143: break; + case 100: { return newToken(IMPLEMENTS_DIRECTIVE); } - case 140: break; - case 113: + case 144: break; + case 115: { return newToken(INSTRUCTION_FORMAT21c_FIELD_ODEX); } - case 141: break; - case 102: + case 145: break; + case 103: { return newToken(END_METHOD_DIRECTIVE); } - case 142: break; - case 121: + case 146: break; + case 123: { return newToken(INSTRUCTION_FORMAT35c_TYPE); } - case 143: break; + case 147: break; case 45: { sb.append('\''); } - case 144: break; + case 148: break; case 8: { beginStringOrChar(CHAR); sb.append('\''); } - case 145: break; + case 149: break; case 43: { sb.append('\t'); } - case 146: break; + case 150: break; case 59: { return newToken(BOOL_LITERAL); } - case 147: break; - case 123: + case 151: break; + case 127: { return newToken(INSTRUCTION_FORMAT35ms_METHOD); } - case 148: break; - case 96: + case 152: break; + case 97: { return newToken(INSTRUCTION_FORMAT51l); } - case 149: break; + case 153: break; case 61: { return newToken(ANNOTATION_VISIBILITY); } - case 150: break; + case 154: break; case 74: { sb.append((char)Integer.parseInt(yytext().substring(2,6), 16)); } - case 151: break; + case 155: break; case 36: { return newToken(REGISTER); } - case 152: break; + case 156: break; case 79: { return newToken(INSTRUCTION_FORMAT32x); } - case 153: break; - case 120: + case 157: break; + case 122: { return newToken(END_ANNOTATION_DIRECTIVE); } - case 154: break; + case 158: break; case 50: { return newToken(CLASS_DESCRIPTOR); } - case 155: break; + case 159: break; case 2: { return newToken(POSITIVE_INTEGER_LITERAL); } - case 156: break; + case 160: break; + case 124: + { // e.g. 'capture-variable vB, <string id>' + return newToken(INSTRUCTION_FORMAT21c_LAMBDA); + } + case 161: break; case 11: { return newToken(EQUAL); } - case 157: break; + case 162: break; case 28: { return newToken(LONG_LITERAL); } - case 158: break; + case 163: break; case 89: { return newToken(INSTRUCTION_FORMAT22c_TYPE); } - case 159: break; + case 164: break; case 1: { return invalidToken("Invalid text"); } - case 160: break; + case 165: break; case 81: { return newToken(INSTRUCTION_FORMAT30t); } - case 161: break; + case 166: break; case 19: { yypushback(1); yybegin(YYINITIAL); return newToken(PARAM_LIST_END); } - case 162: break; - case 112: + case 167: break; + case 114: { return newToken(INSTRUCTION_FORMAT31t); } - case 163: break; + case 168: break; case 27: { return newToken(DOUBLE_LITERAL); } - case 164: break; - case 92: + case 169: break; + case 93: { return newToken(END_FIELD_DIRECTIVE); } - case 165: break; + case 170: break; case 17: { return newToken(CLOSE_PAREN); } - case 166: break; + case 171: break; case 73: { return newToken(PARAMETER_DIRECTIVE); } - case 167: break; + case 172: break; case 29: { return newToken(SHORT_LITERAL); } - case 168: break; + case 173: break; case 12: { return newToken(COLON); } - case 169: break; + case 174: break; case 72: { return newToken(SUPER_DIRECTIVE); } - case 170: break; + case 175: break; case 86: { return newToken(CATCHALL_DIRECTIVE); } - case 171: break; + case 176: break; case 70: { return newToken(CATCH_DIRECTIVE); } - case 172: break; + case 177: break; case 31: { return newToken(NEGATIVE_INTEGER_LITERAL); } - case 173: break; - case 117: + case 178: break; + case 119: { return newToken(RESTART_LOCAL_DIRECTIVE); } - case 174: break; + case 179: break; case 37: { sb.append(yytext()); setStringOrCharError("Invalid escape sequence " + yytext()); } - case 175: break; - case 134: + case 180: break; + case 138: { return newToken(INSTRUCTION_FORMAT3rc_METHOD_ODEX); } - case 176: break; - case 103: + case 181: break; + case 112: + { // e.g. 'create-lambda vClosure, <method id>' + return newToken(INSTRUCTION_FORMAT21c_METHOD); + } + case 182: break; + case 90: { return newToken(INSTRUCTION_FORMAT22x); } - case 177: break; + case 183: break; case 40: { sb.append(yytext()); setStringOrCharError("Invalid \\u sequence. \\u must be followed by 4 hex digits"); } - case 178: break; - case 91: + case 184: break; + case 92: { return newToken(INLINE_INDEX); } - case 179: break; + case 185: break; case 21: { sb.append('"'); return endStringOrChar(STRING_LITERAL); } - case 180: break; - case 131: + case 186: break; + case 135: { return newToken(INSTRUCTION_FORMAT3rmi_METHOD); } - case 181: break; + case 187: break; case 54: { return newToken(INSTRUCTION_FORMAT23x); } - case 182: break; + case 188: break; case 85: { return newToken(FIELD_OFFSET); } - case 183: break; + case 189: break; + case 111: + { // e.g. invoke-lambda vClosure, {vD, vE, vF, vG} -- at most 4 params + return newToken(INSTRUCTION_FORMAT25x); + } + case 190: break; case 33: { return newToken(DOTDOT); } - case 184: break; + case 191: break; case 9: { return newToken(LINE_COMMENT, true); } - case 185: break; + case 192: break; case 18: { yypushback(1); yybegin(YYINITIAL); return newToken(PARAM_LIST_OR_ID_END); } - case 186: break; + case 193: break; case 80: { return newToken(INSTRUCTION_FORMAT20t); } - case 187: break; + case 194: break; case 30: { return newToken(DOUBLE_LITERAL_OR_ID); } - case 188: break; + case 195: break; case 84: { return newToken(VERIFICATION_ERROR_TYPE); } - case 189: break; + case 196: break; case 67: { return newToken(INSTRUCTION_FORMAT21t); } - case 190: break; + case 197: break; case 6: { return newToken(WHITE_SPACE, true); } - case 191: break; + case 198: break; case 34: { yypushback(yylength()); yybegin(PARAM_LIST_OR_ID); return newToken(PARAM_LIST_OR_ID_START); } - case 192: break; + case 199: break; case 13: { return newToken(COMMA); } - case 193: break; + case 200: break; case 69: { return newToken(CLASS_DIRECTIVE); } - case 194: break; + case 201: break; case 106: { return newToken(INSTRUCTION_FORMAT21c_STRING); } - case 195: break; + case 202: break; case 62: { return newToken(INSTRUCTION_FORMAT22t); } - case 196: break; + case 203: break; case 82: { return newToken(INSTRUCTION_FORMAT21s); } - case 197: break; + case 204: break; case 64: { return newToken(ENUM_DIRECTIVE); } - case 198: break; + case 205: break; case 46: { sb.append('\\'); } - case 199: break; + case 206: break; case 51: { return newToken(INSTRUCTION_FORMAT10x); } - case 200: break; + case 207: break; case 16: { return newToken(OPEN_PAREN); } - case 201: break; + case 208: break; case 76: { return newToken(SOURCE_DIRECTIVE); } - case 202: break; + case 209: break; case 108: { return newToken(INSTRUCTION_FORMAT22s); } - case 203: break; + case 210: break; case 66: { return newToken(INSTRUCTION_FORMAT11x); } - case 204: break; - case 129: + case 211: break; + case 133: { return newToken(INSTRUCTION_FORMAT35c_METHOD_ODEX); } - case 205: break; + case 212: break; case 5: { return newToken(PRIMITIVE_TYPE); } - case 206: break; + case 213: break; case 109: { return newToken(INSTRUCTION_FORMAT12x); } - case 207: break; + case 214: break; case 53: { return newToken(INSTRUCTION_FORMAT22c_FIELD); } - case 208: break; + case 215: break; case 44: { sb.append('"'); } - case 209: break; + case 216: break; case 10: { return newToken(VOID_TYPE); } - case 210: break; + case 217: break; case 110: { return newToken(INSTRUCTION_FORMAT22c_FIELD_ODEX); } - case 211: break; - case 125: + case 218: break; + case 129: { return newToken(END_SUBANNOTATION_DIRECTIVE); } - case 212: break; + case 219: break; case 68: { return newToken(FIELD_DIRECTIVE); } - case 213: break; + case 220: break; case 4: { return invalidToken("Invalid directive"); } - case 214: break; - case 111: + case 221: break; + case 113: { return newToken(INSTRUCTION_FORMAT31i); } - case 215: break; - case 114: + case 222: break; + case 116: { return newToken(SUBANNOTATION_DIRECTIVE); } - case 216: break; + case 223: break; case 60: { return newToken(INSTRUCTION_FORMAT10t); } - case 217: break; - case 93: + case 224: break; + case 94: { return newToken(END_LOCAL_DIRECTIVE); } - case 218: break; + case 225: break; case 38: { sb.append('\b'); } - case 219: break; + case 226: break; case 47: { sb.append(yytext()); setStringOrCharError("Invalid \\u sequence. \\u must be followed by exactly 4 hex digits"); } - case 220: break; + case 227: break; case 63: { return newToken(LINE_DIRECTIVE); } - case 221: break; + case 228: break; case 77: { return newToken(METHOD_DIRECTIVE); } - case 222: break; - case 133: + case 229: break; + case 137: { return newToken(INSTRUCTION_FORMAT3rms_METHOD); } - case 223: break; - case 115: + case 230: break; + case 117: { return newToken(SPARSE_SWITCH_DIRECTIVE); } - case 224: break; - case 95: + case 231: break; + case 96: { return newToken(REGISTERS_DIRECTIVE); } - case 225: break; + case 232: break; case 49: { yypushback(yylength()); yybegin(PARAM_LIST); return newToken(PARAM_LIST_START); } - case 226: break; + case 233: break; case 32: { return newToken(ARROW); } - case 227: break; + case 234: break; case 23: { sb.append('\''); if (sb.length() == 2) { @@ -3735,175 +3919,179 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { return endStringOrChar(CHAR_LITERAL); } - case 228: break; - case 94: + case 235: break; + case 95: { return newToken(END_PARAMETER_DIRECTIVE); } - case 229: break; - case 97: + case 236: break; + case 98: { return newToken(INSTRUCTION_FORMAT21c_TYPE); } - case 230: break; + case 237: break; case 39: { sb.append('\f'); } - case 231: break; - case 126: + case 238: break; + case 130: { return newToken(END_SPARSE_SWITCH_DIRECTIVE); } - case 232: break; - case 100: + case 239: break; + case 101: { return newToken(ARRAY_DATA_DIRECTIVE); } - case 233: break; - case 132: + case 240: break; + case 136: { return newToken(INSTRUCTION_FORMAT3rc_TYPE); } - case 234: break; - case 90: + case 241: break; + case 91: { return newToken(INSTRUCTION_FORMAT22cs_FIELD); } - case 235: break; + case 242: break; case 26: { return newToken(BYTE_LITERAL); } - case 236: break; + case 243: break; case 58: { return newToken(NULL_LITERAL); } - case 237: break; + case 244: break; case 107: { return newToken(INSTRUCTION_FORMAT21ih); } - case 238: break; - case 128: + case 245: break; + case 132: { return newToken(INSTRUCTION_FORMAT31c); } - case 239: break; + case 246: break; case 35: { return newToken(ARRAY_DESCRIPTOR); } - case 240: break; + case 247: break; case 57: { return newToken(INSTRUCTION_FORMAT12x_OR_ID); } - case 241: break; - case 118: + case 248: break; + case 120: { return newToken(INSTRUCTION_FORMAT35mi_METHOD); } - case 242: break; + case 249: break; case 78: { return newToken(INSTRUCTION_FORMAT11n); } - case 243: break; - case 130: + case 250: break; + case 134: { return newToken(INSTRUCTION_FORMAT10x_ODEX); } - case 244: break; + case 251: break; case 88: { return newToken(EPILOGUE_DIRECTIVE); } - case 245: break; - case 116: + case 252: break; + case 118: { return newToken(PACKED_SWITCH_DIRECTIVE); } - case 246: break; + case 253: break; case 22: { return invalidStringOrChar("Unterminated string literal"); } - case 247: break; - case 122: + case 254: break; + case 125: { return newToken(INSTRUCTION_FORMAT21lh); } - case 248: break; + case 255: break; case 48: { return newToken(FLOAT_LITERAL); } - case 249: break; + case 256: break; case 105: { return newToken(INSTRUCTION_FORMAT35c_METHOD); } - case 250: break; + case 257: break; case 20: { sb.append(yytext()); } - case 251: break; + case 258: break; case 75: { return newToken(LOCALS_DIRECTIVE); } - case 252: break; + case 259: break; + case 126: + { return newToken(INSTRUCTION_FORMAT22c_STRING); + } + case 260: break; case 83: { return newToken(INSTRUCTION_FORMAT22s_OR_ID); } - case 253: break; + case 261: break; case 24: { return invalidStringOrChar("Unterminated character literal"); } - case 254: break; - case 119: + case 262: break; + case 121: { return newToken(END_ARRAY_DATA_DIRECTIVE); } - case 255: break; - case 101: + case 263: break; + case 102: { return newToken(ANNOTATION_DIRECTIVE); } - case 256: break; + case 264: break; case 15: { return newToken(CLOSE_BRACE); } - case 257: break; - case 127: + case 265: break; + case 131: { return newToken(END_PACKED_SWITCH_DIRECTIVE); } - case 258: break; + case 266: break; case 71: { return newToken(LOCAL_DIRECTIVE); } - case 259: break; - case 135: + case 267: break; + case 139: { return newToken(INSTRUCTION_FORMAT20bc); } - case 260: break; - case 124: + case 268: break; + case 128: { return newToken(INSTRUCTION_FORMAT3rc_METHOD); } - case 261: break; + case 269: break; case 42: { sb.append('\n'); } - case 262: break; + case 270: break; case 56: { return newToken(ACCESS_SPEC); } - case 263: break; + case 271: break; case 52: { return newToken(MEMBER_NAME); } - case 264: break; + case 272: break; case 3: { return newToken(SIMPLE_NAME); } - case 265: break; + case 273: break; case 7: { beginStringOrChar(STRING); sb.append('"'); } - case 266: break; + case 274: break; case 14: { return newToken(OPEN_BRACE); } - case 267: break; + case 275: break; case 25: { return newToken(FLOAT_LITERAL_OR_ID); } - case 268: break; + case 276: break; case 55: { return newToken(INSTRUCTION_FORMAT21c_FIELD); } - case 269: break; + case 277: break; case 65: { return newToken(INSTRUCTION_FORMAT31i_OR_ID); } - case 270: break; + case 278: break; default: if (zzInput == YYEOF && zzStartRead == zzCurrentPos) { zzAtEOF = true; @@ -3911,23 +4099,23 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface { case STRING: { return invalidStringOrChar("Unterminated string literal"); } - case 1170: break; + case 1238: break; case PARAM_LIST_OR_ID: { yybegin(YYINITIAL); return newToken(PARAM_LIST_OR_ID_END); } - case 1171: break; + case 1239: break; case YYINITIAL: { return newToken(EOF); } - case 1172: break; + case 1240: break; case CHAR: { return invalidStringOrChar("Unterminated character literal"); } - case 1173: break; + case 1241: break; case PARAM_LIST: { yybegin(YYINITIAL); return newToken(PARAM_LIST_END); } - case 1174: break; + case 1242: break; default: return null; } diff --git a/smali/src/main/java/org/jf/smali/smaliParser.java b/smali/src/main/java/org/jf/smali/smaliParser.java index 7f132a91..f59f35ad 100644 --- a/smali/src/main/java/org/jf/smali/smaliParser.java +++ b/smali/src/main/java/org/jf/smali/smaliParser.java @@ -1,4 +1,4 @@ -// $ANTLR 3.5 /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g 2015-02-19 13:37:38 +// $ANTLR 3.5 /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g 2015-04-23 12:35:16 package org.jf.smali; @@ -31,48 +31,51 @@ public class smaliParser extends Parser { "INSTRUCTION_FORMAT10t", "INSTRUCTION_FORMAT10x", "INSTRUCTION_FORMAT10x_ODEX", "INSTRUCTION_FORMAT11n", "INSTRUCTION_FORMAT11x", "INSTRUCTION_FORMAT12x", "INSTRUCTION_FORMAT12x_OR_ID", "INSTRUCTION_FORMAT20bc", "INSTRUCTION_FORMAT20t", - "INSTRUCTION_FORMAT21c_FIELD", "INSTRUCTION_FORMAT21c_FIELD_ODEX", "INSTRUCTION_FORMAT21c_STRING", - "INSTRUCTION_FORMAT21c_TYPE", "INSTRUCTION_FORMAT21ih", "INSTRUCTION_FORMAT21lh", - "INSTRUCTION_FORMAT21s", "INSTRUCTION_FORMAT21t", "INSTRUCTION_FORMAT22b", - "INSTRUCTION_FORMAT22c_FIELD", "INSTRUCTION_FORMAT22c_FIELD_ODEX", "INSTRUCTION_FORMAT22c_TYPE", + "INSTRUCTION_FORMAT21c_FIELD", "INSTRUCTION_FORMAT21c_FIELD_ODEX", "INSTRUCTION_FORMAT21c_LAMBDA", + "INSTRUCTION_FORMAT21c_METHOD", "INSTRUCTION_FORMAT21c_STRING", "INSTRUCTION_FORMAT21c_TYPE", + "INSTRUCTION_FORMAT21ih", "INSTRUCTION_FORMAT21lh", "INSTRUCTION_FORMAT21s", + "INSTRUCTION_FORMAT21t", "INSTRUCTION_FORMAT22b", "INSTRUCTION_FORMAT22c_FIELD", + "INSTRUCTION_FORMAT22c_FIELD_ODEX", "INSTRUCTION_FORMAT22c_STRING", "INSTRUCTION_FORMAT22c_TYPE", "INSTRUCTION_FORMAT22cs_FIELD", "INSTRUCTION_FORMAT22s", "INSTRUCTION_FORMAT22s_OR_ID", "INSTRUCTION_FORMAT22t", "INSTRUCTION_FORMAT22x", "INSTRUCTION_FORMAT23x", - "INSTRUCTION_FORMAT30t", "INSTRUCTION_FORMAT31c", "INSTRUCTION_FORMAT31i", - "INSTRUCTION_FORMAT31i_OR_ID", "INSTRUCTION_FORMAT31t", "INSTRUCTION_FORMAT32x", - "INSTRUCTION_FORMAT35c_METHOD", "INSTRUCTION_FORMAT35c_METHOD_ODEX", "INSTRUCTION_FORMAT35c_TYPE", - "INSTRUCTION_FORMAT35mi_METHOD", "INSTRUCTION_FORMAT35ms_METHOD", "INSTRUCTION_FORMAT3rc_METHOD", - "INSTRUCTION_FORMAT3rc_METHOD_ODEX", "INSTRUCTION_FORMAT3rc_TYPE", "INSTRUCTION_FORMAT3rmi_METHOD", - "INSTRUCTION_FORMAT3rms_METHOD", "INSTRUCTION_FORMAT51l", "INTEGER_LITERAL", - "INVALID_TOKEN", "I_ACCESS_LIST", "I_ANNOTATION", "I_ANNOTATIONS", "I_ANNOTATION_ELEMENT", - "I_ARRAY_ELEMENTS", "I_ARRAY_ELEMENT_SIZE", "I_CATCH", "I_CATCHALL", "I_CATCHES", - "I_CLASS_DEF", "I_ENCODED_ARRAY", "I_ENCODED_ENUM", "I_ENCODED_FIELD", - "I_ENCODED_METHOD", "I_END_LOCAL", "I_EPILOGUE", "I_FIELD", "I_FIELDS", - "I_FIELD_INITIAL_VALUE", "I_FIELD_TYPE", "I_IMPLEMENTS", "I_LABEL", "I_LINE", - "I_LOCAL", "I_LOCALS", "I_METHOD", "I_METHODS", "I_METHOD_PROTOTYPE", + "INSTRUCTION_FORMAT25x", "INSTRUCTION_FORMAT30t", "INSTRUCTION_FORMAT31c", + "INSTRUCTION_FORMAT31i", "INSTRUCTION_FORMAT31i_OR_ID", "INSTRUCTION_FORMAT31t", + "INSTRUCTION_FORMAT32x", "INSTRUCTION_FORMAT35c_METHOD", "INSTRUCTION_FORMAT35c_METHOD_ODEX", + "INSTRUCTION_FORMAT35c_TYPE", "INSTRUCTION_FORMAT35mi_METHOD", "INSTRUCTION_FORMAT35ms_METHOD", + "INSTRUCTION_FORMAT3rc_METHOD", "INSTRUCTION_FORMAT3rc_METHOD_ODEX", "INSTRUCTION_FORMAT3rc_TYPE", + "INSTRUCTION_FORMAT3rmi_METHOD", "INSTRUCTION_FORMAT3rms_METHOD", "INSTRUCTION_FORMAT51l", + "INTEGER_LITERAL", "INVALID_TOKEN", "I_ACCESS_LIST", "I_ANNOTATION", "I_ANNOTATIONS", + "I_ANNOTATION_ELEMENT", "I_ARRAY_ELEMENTS", "I_ARRAY_ELEMENT_SIZE", "I_CATCH", + "I_CATCHALL", "I_CATCHES", "I_CLASS_DEF", "I_ENCODED_ARRAY", "I_ENCODED_ENUM", + "I_ENCODED_FIELD", "I_ENCODED_METHOD", "I_END_LOCAL", "I_EPILOGUE", "I_FIELD", + "I_FIELDS", "I_FIELD_INITIAL_VALUE", "I_FIELD_TYPE", "I_IMPLEMENTS", "I_LABEL", + "I_LINE", "I_LOCAL", "I_LOCALS", "I_METHOD", "I_METHODS", "I_METHOD_PROTOTYPE", "I_METHOD_RETURN_TYPE", "I_ORDERED_METHOD_ITEMS", "I_PACKED_SWITCH_ELEMENTS", "I_PACKED_SWITCH_START_KEY", "I_PARAMETER", "I_PARAMETERS", "I_PARAMETER_NOT_SPECIFIED", "I_PROLOGUE", "I_REGISTERS", "I_REGISTER_LIST", "I_REGISTER_RANGE", "I_RESTART_LOCAL", "I_SOURCE", "I_SPARSE_SWITCH_ELEMENTS", "I_STATEMENT_ARRAY_DATA", "I_STATEMENT_FORMAT10t", "I_STATEMENT_FORMAT10x", "I_STATEMENT_FORMAT11n", "I_STATEMENT_FORMAT11x", "I_STATEMENT_FORMAT12x", "I_STATEMENT_FORMAT20bc", "I_STATEMENT_FORMAT20t", - "I_STATEMENT_FORMAT21c_FIELD", "I_STATEMENT_FORMAT21c_STRING", "I_STATEMENT_FORMAT21c_TYPE", - "I_STATEMENT_FORMAT21ih", "I_STATEMENT_FORMAT21lh", "I_STATEMENT_FORMAT21s", - "I_STATEMENT_FORMAT21t", "I_STATEMENT_FORMAT22b", "I_STATEMENT_FORMAT22c_FIELD", + "I_STATEMENT_FORMAT21c_FIELD", "I_STATEMENT_FORMAT21c_LAMBDA", "I_STATEMENT_FORMAT21c_METHOD", + "I_STATEMENT_FORMAT21c_STRING", "I_STATEMENT_FORMAT21c_TYPE", "I_STATEMENT_FORMAT21ih", + "I_STATEMENT_FORMAT21lh", "I_STATEMENT_FORMAT21s", "I_STATEMENT_FORMAT21t", + "I_STATEMENT_FORMAT22b", "I_STATEMENT_FORMAT22c_FIELD", "I_STATEMENT_FORMAT22c_STRING", "I_STATEMENT_FORMAT22c_TYPE", "I_STATEMENT_FORMAT22s", "I_STATEMENT_FORMAT22t", - "I_STATEMENT_FORMAT22x", "I_STATEMENT_FORMAT23x", "I_STATEMENT_FORMAT30t", - "I_STATEMENT_FORMAT31c", "I_STATEMENT_FORMAT31i", "I_STATEMENT_FORMAT31t", - "I_STATEMENT_FORMAT32x", "I_STATEMENT_FORMAT35c_METHOD", "I_STATEMENT_FORMAT35c_TYPE", - "I_STATEMENT_FORMAT3rc_METHOD", "I_STATEMENT_FORMAT3rc_TYPE", "I_STATEMENT_FORMAT51l", - "I_STATEMENT_PACKED_SWITCH", "I_STATEMENT_SPARSE_SWITCH", "I_SUBANNOTATION", - "I_SUPER", "LINE_COMMENT", "LINE_DIRECTIVE", "LOCALS_DIRECTIVE", "LOCAL_DIRECTIVE", - "LONG_LITERAL", "MEMBER_NAME", "METHOD_DIRECTIVE", "NEGATIVE_INTEGER_LITERAL", - "NULL_LITERAL", "OPEN_BRACE", "OPEN_PAREN", "PACKED_SWITCH_DIRECTIVE", - "PARAMETER_DIRECTIVE", "PARAM_LIST_END", "PARAM_LIST_OR_ID_END", "PARAM_LIST_OR_ID_START", - "PARAM_LIST_START", "POSITIVE_INTEGER_LITERAL", "PRIMITIVE_TYPE", "PROLOGUE_DIRECTIVE", - "REGISTER", "REGISTERS_DIRECTIVE", "RESTART_LOCAL_DIRECTIVE", "SHORT_LITERAL", - "SIMPLE_NAME", "SOURCE_DIRECTIVE", "SPARSE_SWITCH_DIRECTIVE", "STRING_LITERAL", - "SUBANNOTATION_DIRECTIVE", "SUPER_DIRECTIVE", "VERIFICATION_ERROR_TYPE", - "VOID_TYPE", "VTABLE_INDEX", "WHITE_SPACE" + "I_STATEMENT_FORMAT22x", "I_STATEMENT_FORMAT23x", "I_STATEMENT_FORMAT25x", + "I_STATEMENT_FORMAT30t", "I_STATEMENT_FORMAT31c", "I_STATEMENT_FORMAT31i", + "I_STATEMENT_FORMAT31t", "I_STATEMENT_FORMAT32x", "I_STATEMENT_FORMAT35c_METHOD", + "I_STATEMENT_FORMAT35c_TYPE", "I_STATEMENT_FORMAT3rc_METHOD", "I_STATEMENT_FORMAT3rc_TYPE", + "I_STATEMENT_FORMAT51l", "I_STATEMENT_PACKED_SWITCH", "I_STATEMENT_SPARSE_SWITCH", + "I_SUBANNOTATION", "I_SUPER", "LINE_COMMENT", "LINE_DIRECTIVE", "LOCALS_DIRECTIVE", + "LOCAL_DIRECTIVE", "LONG_LITERAL", "MEMBER_NAME", "METHOD_DIRECTIVE", + "NEGATIVE_INTEGER_LITERAL", "NULL_LITERAL", "OPEN_BRACE", "OPEN_PAREN", + "PACKED_SWITCH_DIRECTIVE", "PARAMETER_DIRECTIVE", "PARAM_LIST_END", "PARAM_LIST_OR_ID_END", + "PARAM_LIST_OR_ID_START", "PARAM_LIST_START", "POSITIVE_INTEGER_LITERAL", + "PRIMITIVE_TYPE", "PROLOGUE_DIRECTIVE", "REGISTER", "REGISTERS_DIRECTIVE", + "RESTART_LOCAL_DIRECTIVE", "SHORT_LITERAL", "SIMPLE_NAME", "SOURCE_DIRECTIVE", + "SPARSE_SWITCH_DIRECTIVE", "STRING_LITERAL", "SUBANNOTATION_DIRECTIVE", + "SUPER_DIRECTIVE", "VERIFICATION_ERROR_TYPE", "VOID_TYPE", "VTABLE_INDEX", + "WHITE_SPACE" }; public static final int EOF=-1; public static final int ACCESS_SPEC=4; @@ -124,153 +127,161 @@ public class smaliParser extends Parser { public static final int INSTRUCTION_FORMAT20t=50; public static final int INSTRUCTION_FORMAT21c_FIELD=51; public static final int INSTRUCTION_FORMAT21c_FIELD_ODEX=52; - public static final int INSTRUCTION_FORMAT21c_STRING=53; - public static final int INSTRUCTION_FORMAT21c_TYPE=54; - public static final int INSTRUCTION_FORMAT21ih=55; - public static final int INSTRUCTION_FORMAT21lh=56; - public static final int INSTRUCTION_FORMAT21s=57; - public static final int INSTRUCTION_FORMAT21t=58; - public static final int INSTRUCTION_FORMAT22b=59; - public static final int INSTRUCTION_FORMAT22c_FIELD=60; - public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=61; - public static final int INSTRUCTION_FORMAT22c_TYPE=62; - public static final int INSTRUCTION_FORMAT22cs_FIELD=63; - public static final int INSTRUCTION_FORMAT22s=64; - public static final int INSTRUCTION_FORMAT22s_OR_ID=65; - public static final int INSTRUCTION_FORMAT22t=66; - public static final int INSTRUCTION_FORMAT22x=67; - public static final int INSTRUCTION_FORMAT23x=68; - public static final int INSTRUCTION_FORMAT30t=69; - public static final int INSTRUCTION_FORMAT31c=70; - public static final int INSTRUCTION_FORMAT31i=71; - public static final int INSTRUCTION_FORMAT31i_OR_ID=72; - public static final int INSTRUCTION_FORMAT31t=73; - public static final int INSTRUCTION_FORMAT32x=74; - public static final int INSTRUCTION_FORMAT35c_METHOD=75; - public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=76; - public static final int INSTRUCTION_FORMAT35c_TYPE=77; - public static final int INSTRUCTION_FORMAT35mi_METHOD=78; - public static final int INSTRUCTION_FORMAT35ms_METHOD=79; - public static final int INSTRUCTION_FORMAT3rc_METHOD=80; - public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=81; - public static final int INSTRUCTION_FORMAT3rc_TYPE=82; - public static final int INSTRUCTION_FORMAT3rmi_METHOD=83; - public static final int INSTRUCTION_FORMAT3rms_METHOD=84; - public static final int INSTRUCTION_FORMAT51l=85; - public static final int INTEGER_LITERAL=86; - public static final int INVALID_TOKEN=87; - public static final int I_ACCESS_LIST=88; - public static final int I_ANNOTATION=89; - public static final int I_ANNOTATIONS=90; - public static final int I_ANNOTATION_ELEMENT=91; - public static final int I_ARRAY_ELEMENTS=92; - public static final int I_ARRAY_ELEMENT_SIZE=93; - public static final int I_CATCH=94; - public static final int I_CATCHALL=95; - public static final int I_CATCHES=96; - public static final int I_CLASS_DEF=97; - public static final int I_ENCODED_ARRAY=98; - public static final int I_ENCODED_ENUM=99; - public static final int I_ENCODED_FIELD=100; - public static final int I_ENCODED_METHOD=101; - public static final int I_END_LOCAL=102; - public static final int I_EPILOGUE=103; - public static final int I_FIELD=104; - public static final int I_FIELDS=105; - public static final int I_FIELD_INITIAL_VALUE=106; - public static final int I_FIELD_TYPE=107; - public static final int I_IMPLEMENTS=108; - public static final int I_LABEL=109; - public static final int I_LINE=110; - public static final int I_LOCAL=111; - public static final int I_LOCALS=112; - public static final int I_METHOD=113; - public static final int I_METHODS=114; - public static final int I_METHOD_PROTOTYPE=115; - public static final int I_METHOD_RETURN_TYPE=116; - public static final int I_ORDERED_METHOD_ITEMS=117; - public static final int I_PACKED_SWITCH_ELEMENTS=118; - public static final int I_PACKED_SWITCH_START_KEY=119; - public static final int I_PARAMETER=120; - public static final int I_PARAMETERS=121; - public static final int I_PARAMETER_NOT_SPECIFIED=122; - public static final int I_PROLOGUE=123; - public static final int I_REGISTERS=124; - public static final int I_REGISTER_LIST=125; - public static final int I_REGISTER_RANGE=126; - public static final int I_RESTART_LOCAL=127; - public static final int I_SOURCE=128; - public static final int I_SPARSE_SWITCH_ELEMENTS=129; - public static final int I_STATEMENT_ARRAY_DATA=130; - public static final int I_STATEMENT_FORMAT10t=131; - public static final int I_STATEMENT_FORMAT10x=132; - public static final int I_STATEMENT_FORMAT11n=133; - public static final int I_STATEMENT_FORMAT11x=134; - public static final int I_STATEMENT_FORMAT12x=135; - public static final int I_STATEMENT_FORMAT20bc=136; - public static final int I_STATEMENT_FORMAT20t=137; - public static final int I_STATEMENT_FORMAT21c_FIELD=138; - public static final int I_STATEMENT_FORMAT21c_STRING=139; - public static final int I_STATEMENT_FORMAT21c_TYPE=140; - public static final int I_STATEMENT_FORMAT21ih=141; - public static final int I_STATEMENT_FORMAT21lh=142; - public static final int I_STATEMENT_FORMAT21s=143; - public static final int I_STATEMENT_FORMAT21t=144; - public static final int I_STATEMENT_FORMAT22b=145; - public static final int I_STATEMENT_FORMAT22c_FIELD=146; - public static final int I_STATEMENT_FORMAT22c_TYPE=147; - public static final int I_STATEMENT_FORMAT22s=148; - public static final int I_STATEMENT_FORMAT22t=149; - public static final int I_STATEMENT_FORMAT22x=150; - public static final int I_STATEMENT_FORMAT23x=151; - public static final int I_STATEMENT_FORMAT30t=152; - public static final int I_STATEMENT_FORMAT31c=153; - public static final int I_STATEMENT_FORMAT31i=154; - public static final int I_STATEMENT_FORMAT31t=155; - public static final int I_STATEMENT_FORMAT32x=156; - public static final int I_STATEMENT_FORMAT35c_METHOD=157; - public static final int I_STATEMENT_FORMAT35c_TYPE=158; - public static final int I_STATEMENT_FORMAT3rc_METHOD=159; - public static final int I_STATEMENT_FORMAT3rc_TYPE=160; - public static final int I_STATEMENT_FORMAT51l=161; - public static final int I_STATEMENT_PACKED_SWITCH=162; - public static final int I_STATEMENT_SPARSE_SWITCH=163; - public static final int I_SUBANNOTATION=164; - public static final int I_SUPER=165; - public static final int LINE_COMMENT=166; - public static final int LINE_DIRECTIVE=167; - public static final int LOCALS_DIRECTIVE=168; - public static final int LOCAL_DIRECTIVE=169; - public static final int LONG_LITERAL=170; - public static final int MEMBER_NAME=171; - public static final int METHOD_DIRECTIVE=172; - public static final int NEGATIVE_INTEGER_LITERAL=173; - public static final int NULL_LITERAL=174; - public static final int OPEN_BRACE=175; - public static final int OPEN_PAREN=176; - public static final int PACKED_SWITCH_DIRECTIVE=177; - public static final int PARAMETER_DIRECTIVE=178; - public static final int PARAM_LIST_END=179; - public static final int PARAM_LIST_OR_ID_END=180; - public static final int PARAM_LIST_OR_ID_START=181; - public static final int PARAM_LIST_START=182; - public static final int POSITIVE_INTEGER_LITERAL=183; - public static final int PRIMITIVE_TYPE=184; - public static final int PROLOGUE_DIRECTIVE=185; - public static final int REGISTER=186; - public static final int REGISTERS_DIRECTIVE=187; - public static final int RESTART_LOCAL_DIRECTIVE=188; - public static final int SHORT_LITERAL=189; - public static final int SIMPLE_NAME=190; - public static final int SOURCE_DIRECTIVE=191; - public static final int SPARSE_SWITCH_DIRECTIVE=192; - public static final int STRING_LITERAL=193; - public static final int SUBANNOTATION_DIRECTIVE=194; - public static final int SUPER_DIRECTIVE=195; - public static final int VERIFICATION_ERROR_TYPE=196; - public static final int VOID_TYPE=197; - public static final int VTABLE_INDEX=198; - public static final int WHITE_SPACE=199; + public static final int INSTRUCTION_FORMAT21c_LAMBDA=53; + public static final int INSTRUCTION_FORMAT21c_METHOD=54; + public static final int INSTRUCTION_FORMAT21c_STRING=55; + public static final int INSTRUCTION_FORMAT21c_TYPE=56; + public static final int INSTRUCTION_FORMAT21ih=57; + public static final int INSTRUCTION_FORMAT21lh=58; + public static final int INSTRUCTION_FORMAT21s=59; + public static final int INSTRUCTION_FORMAT21t=60; + public static final int INSTRUCTION_FORMAT22b=61; + public static final int INSTRUCTION_FORMAT22c_FIELD=62; + public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=63; + public static final int INSTRUCTION_FORMAT22c_STRING=64; + public static final int INSTRUCTION_FORMAT22c_TYPE=65; + public static final int INSTRUCTION_FORMAT22cs_FIELD=66; + public static final int INSTRUCTION_FORMAT22s=67; + public static final int INSTRUCTION_FORMAT22s_OR_ID=68; + public static final int INSTRUCTION_FORMAT22t=69; + public static final int INSTRUCTION_FORMAT22x=70; + public static final int INSTRUCTION_FORMAT23x=71; + public static final int INSTRUCTION_FORMAT25x=72; + public static final int INSTRUCTION_FORMAT30t=73; + public static final int INSTRUCTION_FORMAT31c=74; + public static final int INSTRUCTION_FORMAT31i=75; + public static final int INSTRUCTION_FORMAT31i_OR_ID=76; + public static final int INSTRUCTION_FORMAT31t=77; + public static final int INSTRUCTION_FORMAT32x=78; + public static final int INSTRUCTION_FORMAT35c_METHOD=79; + public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=80; + public static final int INSTRUCTION_FORMAT35c_TYPE=81; + public static final int INSTRUCTION_FORMAT35mi_METHOD=82; + public static final int INSTRUCTION_FORMAT35ms_METHOD=83; + public static final int INSTRUCTION_FORMAT3rc_METHOD=84; + public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=85; + public static final int INSTRUCTION_FORMAT3rc_TYPE=86; + public static final int INSTRUCTION_FORMAT3rmi_METHOD=87; + public static final int INSTRUCTION_FORMAT3rms_METHOD=88; + public static final int INSTRUCTION_FORMAT51l=89; + public static final int INTEGER_LITERAL=90; + public static final int INVALID_TOKEN=91; + public static final int I_ACCESS_LIST=92; + public static final int I_ANNOTATION=93; + public static final int I_ANNOTATIONS=94; + public static final int I_ANNOTATION_ELEMENT=95; + public static final int I_ARRAY_ELEMENTS=96; + public static final int I_ARRAY_ELEMENT_SIZE=97; + public static final int I_CATCH=98; + public static final int I_CATCHALL=99; + public static final int I_CATCHES=100; + public static final int I_CLASS_DEF=101; + public static final int I_ENCODED_ARRAY=102; + public static final int I_ENCODED_ENUM=103; + public static final int I_ENCODED_FIELD=104; + public static final int I_ENCODED_METHOD=105; + public static final int I_END_LOCAL=106; + public static final int I_EPILOGUE=107; + public static final int I_FIELD=108; + public static final int I_FIELDS=109; + public static final int I_FIELD_INITIAL_VALUE=110; + public static final int I_FIELD_TYPE=111; + public static final int I_IMPLEMENTS=112; + public static final int I_LABEL=113; + public static final int I_LINE=114; + public static final int I_LOCAL=115; + public static final int I_LOCALS=116; + public static final int I_METHOD=117; + public static final int I_METHODS=118; + public static final int I_METHOD_PROTOTYPE=119; + public static final int I_METHOD_RETURN_TYPE=120; + public static final int I_ORDERED_METHOD_ITEMS=121; + public static final int I_PACKED_SWITCH_ELEMENTS=122; + public static final int I_PACKED_SWITCH_START_KEY=123; + public static final int I_PARAMETER=124; + public static final int I_PARAMETERS=125; + public static final int I_PARAMETER_NOT_SPECIFIED=126; + public static final int I_PROLOGUE=127; + public static final int I_REGISTERS=128; + public static final int I_REGISTER_LIST=129; + public static final int I_REGISTER_RANGE=130; + public static final int I_RESTART_LOCAL=131; + public static final int I_SOURCE=132; + public static final int I_SPARSE_SWITCH_ELEMENTS=133; + public static final int I_STATEMENT_ARRAY_DATA=134; + public static final int I_STATEMENT_FORMAT10t=135; + public static final int I_STATEMENT_FORMAT10x=136; + public static final int I_STATEMENT_FORMAT11n=137; + public static final int I_STATEMENT_FORMAT11x=138; + public static final int I_STATEMENT_FORMAT12x=139; + public static final int I_STATEMENT_FORMAT20bc=140; + public static final int I_STATEMENT_FORMAT20t=141; + public static final int I_STATEMENT_FORMAT21c_FIELD=142; + public static final int I_STATEMENT_FORMAT21c_LAMBDA=143; + public static final int I_STATEMENT_FORMAT21c_METHOD=144; + public static final int I_STATEMENT_FORMAT21c_STRING=145; + public static final int I_STATEMENT_FORMAT21c_TYPE=146; + public static final int I_STATEMENT_FORMAT21ih=147; + public static final int I_STATEMENT_FORMAT21lh=148; + public static final int I_STATEMENT_FORMAT21s=149; + public static final int I_STATEMENT_FORMAT21t=150; + public static final int I_STATEMENT_FORMAT22b=151; + public static final int I_STATEMENT_FORMAT22c_FIELD=152; + public static final int I_STATEMENT_FORMAT22c_STRING=153; + public static final int I_STATEMENT_FORMAT22c_TYPE=154; + public static final int I_STATEMENT_FORMAT22s=155; + public static final int I_STATEMENT_FORMAT22t=156; + public static final int I_STATEMENT_FORMAT22x=157; + public static final int I_STATEMENT_FORMAT23x=158; + public static final int I_STATEMENT_FORMAT25x=159; + public static final int I_STATEMENT_FORMAT30t=160; + public static final int I_STATEMENT_FORMAT31c=161; + public static final int I_STATEMENT_FORMAT31i=162; + public static final int I_STATEMENT_FORMAT31t=163; + public static final int I_STATEMENT_FORMAT32x=164; + public static final int I_STATEMENT_FORMAT35c_METHOD=165; + public static final int I_STATEMENT_FORMAT35c_TYPE=166; + public static final int I_STATEMENT_FORMAT3rc_METHOD=167; + public static final int I_STATEMENT_FORMAT3rc_TYPE=168; + public static final int I_STATEMENT_FORMAT51l=169; + public static final int I_STATEMENT_PACKED_SWITCH=170; + public static final int I_STATEMENT_SPARSE_SWITCH=171; + public static final int I_SUBANNOTATION=172; + public static final int I_SUPER=173; + public static final int LINE_COMMENT=174; + public static final int LINE_DIRECTIVE=175; + public static final int LOCALS_DIRECTIVE=176; + public static final int LOCAL_DIRECTIVE=177; + public static final int LONG_LITERAL=178; + public static final int MEMBER_NAME=179; + public static final int METHOD_DIRECTIVE=180; + public static final int NEGATIVE_INTEGER_LITERAL=181; + public static final int NULL_LITERAL=182; + public static final int OPEN_BRACE=183; + public static final int OPEN_PAREN=184; + public static final int PACKED_SWITCH_DIRECTIVE=185; + public static final int PARAMETER_DIRECTIVE=186; + public static final int PARAM_LIST_END=187; + public static final int PARAM_LIST_OR_ID_END=188; + public static final int PARAM_LIST_OR_ID_START=189; + public static final int PARAM_LIST_START=190; + public static final int POSITIVE_INTEGER_LITERAL=191; + public static final int PRIMITIVE_TYPE=192; + public static final int PROLOGUE_DIRECTIVE=193; + public static final int REGISTER=194; + public static final int REGISTERS_DIRECTIVE=195; + public static final int RESTART_LOCAL_DIRECTIVE=196; + public static final int SHORT_LITERAL=197; + public static final int SIMPLE_NAME=198; + public static final int SOURCE_DIRECTIVE=199; + public static final int SPARSE_SWITCH_DIRECTIVE=200; + public static final int STRING_LITERAL=201; + public static final int SUBANNOTATION_DIRECTIVE=202; + public static final int SUPER_DIRECTIVE=203; + public static final int VERIFICATION_ERROR_TYPE=204; + public static final int VOID_TYPE=205; + public static final int VTABLE_INDEX=206; + public static final int WHITE_SPACE=207; // delegates public Parser[] getDelegates() { @@ -296,7 +307,7 @@ public class smaliParser extends Parser { return adaptor; } @Override public String[] getTokenNames() { return smaliParser.tokenNames; } - @Override public String getGrammarFileName() { return "/mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g"; } + @Override public String getGrammarFileName() { return "/mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g"; } public static final int ERROR_CHANNEL = 100; @@ -304,7 +315,7 @@ public class smaliParser extends Parser { private boolean verboseErrors = false; private boolean allowOdex = false; private int apiLevel = 15; - private Opcodes opcodes = new Opcodes(apiLevel); + private Opcodes opcodes = new Opcodes(apiLevel, false); public void setVerboseErrors(boolean verboseErrors) { this.verboseErrors = verboseErrors; @@ -314,8 +325,8 @@ public class smaliParser extends Parser { this.allowOdex = allowOdex; } - public void setApiLevel(int apiLevel) { - this.opcodes = new Opcodes(apiLevel); + public void setApiLevel(int apiLevel, boolean experimental) { + this.opcodes = new Opcodes(apiLevel, experimental); this.apiLevel = apiLevel; } @@ -482,7 +493,7 @@ public class smaliParser extends Parser { // $ANTLR start "smali_file" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:418:1: smali_file : ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:426:1: smali_file : ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ; public final smaliParser.smali_file_return smali_file() throws RecognitionException { smali_file_stack.push(new smali_file_scope()); smaliParser.smali_file_return retval = new smaliParser.smali_file_return(); @@ -513,10 +524,10 @@ public class smaliParser extends Parser { smali_file_stack.peek().classAnnotations = new ArrayList<CommonTree>(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:430:3: ( ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:431:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:438:3: ( ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:439:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:431:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:439:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ int cnt1=0; loop1: while (true) { @@ -546,12 +557,12 @@ public class smaliParser extends Parser { switch (alt1) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:431:5: {...}? => class_spec + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:439:5: {...}? => class_spec { if ( !((!smali_file_stack.peek().hasClassSpec)) ) { throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasClassSpec"); } - pushFollow(FOLLOW_class_spec_in_smali_file1070); + pushFollow(FOLLOW_class_spec_in_smali_file1110); class_spec1=class_spec(); state._fsp--; @@ -560,12 +571,12 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:432:5: {...}? => super_spec + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:440:5: {...}? => super_spec { if ( !((!smali_file_stack.peek().hasSuperSpec)) ) { throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSuperSpec"); } - pushFollow(FOLLOW_super_spec_in_smali_file1081); + pushFollow(FOLLOW_super_spec_in_smali_file1121); super_spec2=super_spec(); state._fsp--; @@ -574,9 +585,9 @@ public class smaliParser extends Parser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:433:5: implements_spec + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:441:5: implements_spec { - pushFollow(FOLLOW_implements_spec_in_smali_file1089); + pushFollow(FOLLOW_implements_spec_in_smali_file1129); implements_spec3=implements_spec(); state._fsp--; @@ -584,12 +595,12 @@ public class smaliParser extends Parser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:434:5: {...}? => source_spec + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:442:5: {...}? => source_spec { if ( !((!smali_file_stack.peek().hasSourceSpec)) ) { throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSourceSpec"); } - pushFollow(FOLLOW_source_spec_in_smali_file1098); + pushFollow(FOLLOW_source_spec_in_smali_file1138); source_spec4=source_spec(); state._fsp--; @@ -598,9 +609,9 @@ public class smaliParser extends Parser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:435:5: method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:443:5: method { - pushFollow(FOLLOW_method_in_smali_file1106); + pushFollow(FOLLOW_method_in_smali_file1146); method5=method(); state._fsp--; @@ -608,9 +619,9 @@ public class smaliParser extends Parser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:436:5: field + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:444:5: field { - pushFollow(FOLLOW_field_in_smali_file1112); + pushFollow(FOLLOW_field_in_smali_file1152); field6=field(); state._fsp--; @@ -618,9 +629,9 @@ public class smaliParser extends Parser { } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:437:5: annotation + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:445:5: annotation { - pushFollow(FOLLOW_annotation_in_smali_file1118); + pushFollow(FOLLOW_annotation_in_smali_file1158); annotation7=annotation(); state._fsp--; @@ -637,7 +648,7 @@ public class smaliParser extends Parser { cnt1++; } - EOF8=(Token)match(input,EOF,FOLLOW_EOF_in_smali_file1129); + EOF8=(Token)match(input,EOF,FOLLOW_EOF_in_smali_file1169); stream_EOF.add(EOF8); @@ -652,7 +663,7 @@ public class smaliParser extends Parser { } // AST REWRITE - // elements: method, field, source_spec, implements_spec, super_spec, class_spec + // elements: field, source_spec, method, implements_spec, class_spec, super_spec // token labels: // rule labels: retval // token list labels: @@ -662,36 +673,36 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 451:3: -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) + // 459:3: -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:451:6: ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:459:6: ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CLASS_DEF, "I_CLASS_DEF"), root_1); adaptor.addChild(root_1, stream_class_spec.nextTree()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:453:8: ( super_spec )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:461:8: ( super_spec )? if ( stream_super_spec.hasNext() ) { adaptor.addChild(root_1, stream_super_spec.nextTree()); } stream_super_spec.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:454:8: ( implements_spec )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:462:8: ( implements_spec )* while ( stream_implements_spec.hasNext() ) { adaptor.addChild(root_1, stream_implements_spec.nextTree()); } stream_implements_spec.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:455:8: ( source_spec )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:463:8: ( source_spec )? if ( stream_source_spec.hasNext() ) { adaptor.addChild(root_1, stream_source_spec.nextTree()); } stream_source_spec.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:8: ^( I_METHODS ( method )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:464:8: ^( I_METHODS ( method )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHODS, "I_METHODS"), root_2); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:20: ( method )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:464:20: ( method )* while ( stream_method.hasNext() ) { adaptor.addChild(root_2, stream_method.nextTree()); } @@ -700,11 +711,11 @@ public class smaliParser extends Parser { adaptor.addChild(root_1, root_2); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:29: ^( I_FIELDS ( field )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:464:29: ^( I_FIELDS ( field )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELDS, "I_FIELDS"), root_2); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:40: ( field )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:464:40: ( field )* while ( stream_field.hasNext() ) { adaptor.addChild(root_2, stream_field.nextTree()); } @@ -753,7 +764,7 @@ public class smaliParser extends Parser { // $ANTLR start "class_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:458:1: class_spec returns [String className] : CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:466:1: class_spec returns [String className] : CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ; public final smaliParser.class_spec_return class_spec() throws RecognitionException { smaliParser.class_spec_return retval = new smaliParser.class_spec_return(); retval.start = input.LT(1); @@ -771,18 +782,18 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:459:3: ( CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:459:5: CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:467:3: ( CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:467:5: CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR { - CLASS_DIRECTIVE9=(Token)match(input,CLASS_DIRECTIVE,FOLLOW_CLASS_DIRECTIVE_in_class_spec1216); + CLASS_DIRECTIVE9=(Token)match(input,CLASS_DIRECTIVE,FOLLOW_CLASS_DIRECTIVE_in_class_spec1256); stream_CLASS_DIRECTIVE.add(CLASS_DIRECTIVE9); - pushFollow(FOLLOW_access_list_in_class_spec1218); + pushFollow(FOLLOW_access_list_in_class_spec1258); access_list10=access_list(); state._fsp--; stream_access_list.add(access_list10.getTree()); - CLASS_DESCRIPTOR11=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec1220); + CLASS_DESCRIPTOR11=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec1260); stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR11); retval.className = (CLASS_DESCRIPTOR11!=null?CLASS_DESCRIPTOR11.getText():null); @@ -797,7 +808,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 459:89: -> CLASS_DESCRIPTOR access_list + // 467:89: -> CLASS_DESCRIPTOR access_list { adaptor.addChild(root_0, stream_CLASS_DESCRIPTOR.nextNode()); adaptor.addChild(root_0, stream_access_list.nextTree()); @@ -835,7 +846,7 @@ public class smaliParser extends Parser { // $ANTLR start "super_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:461:1: super_spec : SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:469:1: super_spec : SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ; public final smaliParser.super_spec_return super_spec() throws RecognitionException { smaliParser.super_spec_return retval = new smaliParser.super_spec_return(); retval.start = input.LT(1); @@ -851,13 +862,13 @@ public class smaliParser extends Parser { RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:462:3: ( SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:462:5: SUPER_DIRECTIVE CLASS_DESCRIPTOR + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:470:3: ( SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:470:5: SUPER_DIRECTIVE CLASS_DESCRIPTOR { - SUPER_DIRECTIVE12=(Token)match(input,SUPER_DIRECTIVE,FOLLOW_SUPER_DIRECTIVE_in_super_spec1238); + SUPER_DIRECTIVE12=(Token)match(input,SUPER_DIRECTIVE,FOLLOW_SUPER_DIRECTIVE_in_super_spec1278); stream_SUPER_DIRECTIVE.add(SUPER_DIRECTIVE12); - CLASS_DESCRIPTOR13=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec1240); + CLASS_DESCRIPTOR13=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec1280); stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR13); // AST REWRITE @@ -871,9 +882,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 462:38: -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) + // 470:38: -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:462:41: ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:470:41: ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SUPER, (retval.start), "I_SUPER"), root_1); @@ -915,7 +926,7 @@ public class smaliParser extends Parser { // $ANTLR start "implements_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:464:1: implements_spec : IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:472:1: implements_spec : IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ; public final smaliParser.implements_spec_return implements_spec() throws RecognitionException { smaliParser.implements_spec_return retval = new smaliParser.implements_spec_return(); retval.start = input.LT(1); @@ -931,13 +942,13 @@ public class smaliParser extends Parser { RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:465:3: ( IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:465:5: IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:473:3: ( IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:473:5: IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR { - IMPLEMENTS_DIRECTIVE14=(Token)match(input,IMPLEMENTS_DIRECTIVE,FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1259); + IMPLEMENTS_DIRECTIVE14=(Token)match(input,IMPLEMENTS_DIRECTIVE,FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1299); stream_IMPLEMENTS_DIRECTIVE.add(IMPLEMENTS_DIRECTIVE14); - CLASS_DESCRIPTOR15=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1261); + CLASS_DESCRIPTOR15=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1301); stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR15); // AST REWRITE @@ -951,9 +962,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 465:43: -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) + // 473:43: -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:465:46: ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:473:46: ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_IMPLEMENTS, (retval.start), "I_IMPLEMENTS"), root_1); @@ -995,7 +1006,7 @@ public class smaliParser extends Parser { // $ANTLR start "source_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:467:1: source_spec : SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:475:1: source_spec : SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ; public final smaliParser.source_spec_return source_spec() throws RecognitionException { smaliParser.source_spec_return retval = new smaliParser.source_spec_return(); retval.start = input.LT(1); @@ -1011,13 +1022,13 @@ public class smaliParser extends Parser { RewriteRuleTokenStream stream_SOURCE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SOURCE_DIRECTIVE"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:468:3: ( SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:468:5: SOURCE_DIRECTIVE STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:476:3: ( SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:476:5: SOURCE_DIRECTIVE STRING_LITERAL { - SOURCE_DIRECTIVE16=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_spec1280); + SOURCE_DIRECTIVE16=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_spec1320); stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE16); - STRING_LITERAL17=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_spec1282); + STRING_LITERAL17=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_spec1322); stream_STRING_LITERAL.add(STRING_LITERAL17); // AST REWRITE @@ -1031,9 +1042,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 468:37: -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) + // 476:37: -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:468:40: ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:476:40: ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SOURCE, (retval.start), "I_SOURCE"), root_1); @@ -1075,7 +1086,7 @@ public class smaliParser extends Parser { // $ANTLR start "access_list" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:470:1: access_list : ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:478:1: access_list : ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ; public final smaliParser.access_list_return access_list() throws RecognitionException { smaliParser.access_list_return retval = new smaliParser.access_list_return(); retval.start = input.LT(1); @@ -1088,17 +1099,17 @@ public class smaliParser extends Parser { RewriteRuleTokenStream stream_ACCESS_SPEC=new RewriteRuleTokenStream(adaptor,"token ACCESS_SPEC"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:3: ( ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:5: ( ACCESS_SPEC )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:479:3: ( ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:479:5: ( ACCESS_SPEC )* { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:5: ( ACCESS_SPEC )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:479:5: ( ACCESS_SPEC )* loop2: while (true) { int alt2=2; int LA2_0 = input.LA(1); if ( (LA2_0==ACCESS_SPEC) ) { int LA2_2 = input.LA(2); - if ( (LA2_2==ACCESS_SPEC||LA2_2==ANNOTATION_VISIBILITY||LA2_2==BOOL_LITERAL||LA2_2==CLASS_DESCRIPTOR||LA2_2==DOUBLE_LITERAL_OR_ID||LA2_2==FLOAT_LITERAL_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT10t && LA2_2 <= INSTRUCTION_FORMAT10x_ODEX)||LA2_2==INSTRUCTION_FORMAT11x||LA2_2==INSTRUCTION_FORMAT12x_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT21c_FIELD && LA2_2 <= INSTRUCTION_FORMAT21c_TYPE)||LA2_2==INSTRUCTION_FORMAT21t||(LA2_2 >= INSTRUCTION_FORMAT22c_FIELD && LA2_2 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA2_2 >= INSTRUCTION_FORMAT22s_OR_ID && LA2_2 <= INSTRUCTION_FORMAT22t)||LA2_2==INSTRUCTION_FORMAT23x||(LA2_2 >= INSTRUCTION_FORMAT31i_OR_ID && LA2_2 <= INSTRUCTION_FORMAT31t)||(LA2_2 >= INSTRUCTION_FORMAT35c_METHOD && LA2_2 <= INSTRUCTION_FORMAT35ms_METHOD)||LA2_2==INSTRUCTION_FORMAT51l||LA2_2==MEMBER_NAME||(LA2_2 >= NEGATIVE_INTEGER_LITERAL && LA2_2 <= NULL_LITERAL)||LA2_2==PARAM_LIST_OR_ID_START||(LA2_2 >= POSITIVE_INTEGER_LITERAL && LA2_2 <= PRIMITIVE_TYPE)||LA2_2==REGISTER||LA2_2==SIMPLE_NAME||(LA2_2 >= VERIFICATION_ERROR_TYPE && LA2_2 <= VOID_TYPE)) ) { + if ( (LA2_2==ACCESS_SPEC||LA2_2==ANNOTATION_VISIBILITY||LA2_2==BOOL_LITERAL||LA2_2==CLASS_DESCRIPTOR||LA2_2==DOUBLE_LITERAL_OR_ID||LA2_2==FLOAT_LITERAL_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT10t && LA2_2 <= INSTRUCTION_FORMAT10x_ODEX)||LA2_2==INSTRUCTION_FORMAT11x||LA2_2==INSTRUCTION_FORMAT12x_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT21c_FIELD && LA2_2 <= INSTRUCTION_FORMAT21c_TYPE)||LA2_2==INSTRUCTION_FORMAT21t||(LA2_2 >= INSTRUCTION_FORMAT22c_FIELD && LA2_2 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA2_2 >= INSTRUCTION_FORMAT22s_OR_ID && LA2_2 <= INSTRUCTION_FORMAT22t)||(LA2_2 >= INSTRUCTION_FORMAT23x && LA2_2 <= INSTRUCTION_FORMAT25x)||(LA2_2 >= INSTRUCTION_FORMAT31i_OR_ID && LA2_2 <= INSTRUCTION_FORMAT31t)||(LA2_2 >= INSTRUCTION_FORMAT35c_METHOD && LA2_2 <= INSTRUCTION_FORMAT35ms_METHOD)||LA2_2==INSTRUCTION_FORMAT51l||LA2_2==MEMBER_NAME||(LA2_2 >= NEGATIVE_INTEGER_LITERAL && LA2_2 <= NULL_LITERAL)||LA2_2==PARAM_LIST_OR_ID_START||(LA2_2 >= POSITIVE_INTEGER_LITERAL && LA2_2 <= PRIMITIVE_TYPE)||LA2_2==REGISTER||LA2_2==SIMPLE_NAME||(LA2_2 >= VERIFICATION_ERROR_TYPE && LA2_2 <= VOID_TYPE)) ) { alt2=1; } @@ -1106,9 +1117,9 @@ public class smaliParser extends Parser { switch (alt2) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:5: ACCESS_SPEC + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:479:5: ACCESS_SPEC { - ACCESS_SPEC18=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list1301); + ACCESS_SPEC18=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list1341); stream_ACCESS_SPEC.add(ACCESS_SPEC18); } @@ -1130,13 +1141,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 471:18: -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) + // 479:18: -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:21: ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:479:21: ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ACCESS_LIST, (retval.start), "I_ACCESS_LIST"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:61: ( ACCESS_SPEC )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:479:61: ( ACCESS_SPEC )* while ( stream_ACCESS_SPEC.hasNext() ) { adaptor.addChild(root_1, stream_ACCESS_SPEC.nextNode()); } @@ -1179,7 +1190,7 @@ public class smaliParser extends Parser { // $ANTLR start "field" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:478:1: field : FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:486:1: field : FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ; public final smaliParser.field_return field() throws RecognitionException { smaliParser.field_return retval = new smaliParser.field_return(); retval.start = input.LT(1); @@ -1212,31 +1223,31 @@ public class smaliParser extends Parser { List<CommonTree> annotations = new ArrayList<CommonTree>(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:480:3: ( FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:480:5: FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:488:3: ( FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:488:5: FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) { - FIELD_DIRECTIVE19=(Token)match(input,FIELD_DIRECTIVE,FOLLOW_FIELD_DIRECTIVE_in_field1332); + FIELD_DIRECTIVE19=(Token)match(input,FIELD_DIRECTIVE,FOLLOW_FIELD_DIRECTIVE_in_field1372); stream_FIELD_DIRECTIVE.add(FIELD_DIRECTIVE19); - pushFollow(FOLLOW_access_list_in_field1334); + pushFollow(FOLLOW_access_list_in_field1374); access_list20=access_list(); state._fsp--; stream_access_list.add(access_list20.getTree()); - pushFollow(FOLLOW_member_name_in_field1336); + pushFollow(FOLLOW_member_name_in_field1376); member_name21=member_name(); state._fsp--; stream_member_name.add(member_name21.getTree()); - COLON22=(Token)match(input,COLON,FOLLOW_COLON_in_field1338); + COLON22=(Token)match(input,COLON,FOLLOW_COLON_in_field1378); stream_COLON.add(COLON22); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_field1340); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_field1380); nonvoid_type_descriptor23=nonvoid_type_descriptor(); state._fsp--; stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor23.getTree()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:480:75: ( EQUAL literal )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:488:75: ( EQUAL literal )? int alt3=2; int LA3_0 = input.LA(1); if ( (LA3_0==EQUAL) ) { @@ -1244,12 +1255,12 @@ public class smaliParser extends Parser { } switch (alt3) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:480:76: EQUAL literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:488:76: EQUAL literal { - EQUAL24=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_field1343); + EQUAL24=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_field1383); stream_EQUAL.add(EQUAL24); - pushFollow(FOLLOW_literal_in_field1345); + pushFollow(FOLLOW_literal_in_field1385); literal25=literal(); state._fsp--; @@ -1259,10 +1270,10 @@ public class smaliParser extends Parser { } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:481:5: ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:481:7: ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:489:5: ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:489:7: ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:481:7: ({...}? annotation )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:489:7: ({...}? annotation )* loop4: while (true) { int alt4=2; @@ -1277,12 +1288,12 @@ public class smaliParser extends Parser { switch (alt4) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:481:8: {...}? annotation + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:489:8: {...}? annotation { if ( !((input.LA(1) == ANNOTATION_DIRECTIVE)) ) { throw new FailedPredicateException(input, "field", "input.LA(1) == ANNOTATION_DIRECTIVE"); } - pushFollow(FOLLOW_annotation_in_field1358); + pushFollow(FOLLOW_annotation_in_field1398); annotation26=annotation(); state._fsp--; @@ -1296,7 +1307,7 @@ public class smaliParser extends Parser { } } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:482:7: ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:490:7: ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) int alt5=2; int LA5_0 = input.LA(1); if ( (LA5_0==END_FIELD_DIRECTIVE) ) { @@ -1314,13 +1325,13 @@ public class smaliParser extends Parser { switch (alt5) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:482:9: END_FIELD_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:490:9: END_FIELD_DIRECTIVE { - END_FIELD_DIRECTIVE27=(Token)match(input,END_FIELD_DIRECTIVE,FOLLOW_END_FIELD_DIRECTIVE_in_field1372); + END_FIELD_DIRECTIVE27=(Token)match(input,END_FIELD_DIRECTIVE,FOLLOW_END_FIELD_DIRECTIVE_in_field1412); stream_END_FIELD_DIRECTIVE.add(END_FIELD_DIRECTIVE27); // AST REWRITE - // elements: literal, member_name, access_list, annotation, nonvoid_type_descriptor + // elements: nonvoid_type_descriptor, annotation, member_name, literal, access_list // token labels: // rule labels: retval // token list labels: @@ -1330,15 +1341,15 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 483:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) + // 491:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:491:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD, (retval.start), "I_FIELD"), root_1); adaptor.addChild(root_1, stream_member_name.nextTree()); adaptor.addChild(root_1, stream_access_list.nextTree()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:65: ^( I_FIELD_TYPE nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:491:65: ^( I_FIELD_TYPE nonvoid_type_descriptor ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_TYPE, "I_FIELD_TYPE"), root_2); @@ -1346,9 +1357,9 @@ public class smaliParser extends Parser { adaptor.addChild(root_1, root_2); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:491:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )? if ( stream_literal.hasNext() ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:105: ^( I_FIELD_INITIAL_VALUE literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:491:105: ^( I_FIELD_INITIAL_VALUE literal ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_INITIAL_VALUE, "I_FIELD_INITIAL_VALUE"), root_2); @@ -1359,11 +1370,11 @@ public class smaliParser extends Parser { } stream_literal.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:139: ^( I_ANNOTATIONS ( annotation )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:491:139: ^( I_ANNOTATIONS ( annotation )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:155: ( annotation )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:491:155: ( annotation )* while ( stream_annotation.hasNext() ) { adaptor.addChild(root_2, stream_annotation.nextTree()); } @@ -1383,11 +1394,11 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:484:21: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:492:21: { smali_file_stack.peek().classAnnotations.addAll(annotations); // AST REWRITE - // elements: nonvoid_type_descriptor, member_name, literal, access_list + // elements: access_list, nonvoid_type_descriptor, literal, member_name // token labels: // rule labels: retval // token list labels: @@ -1397,15 +1408,15 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 485:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) + // 493:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:493:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD, (retval.start), "I_FIELD"), root_1); adaptor.addChild(root_1, stream_member_name.nextTree()); adaptor.addChild(root_1, stream_access_list.nextTree()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485:65: ^( I_FIELD_TYPE nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:493:65: ^( I_FIELD_TYPE nonvoid_type_descriptor ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_TYPE, "I_FIELD_TYPE"), root_2); @@ -1413,9 +1424,9 @@ public class smaliParser extends Parser { adaptor.addChild(root_1, root_2); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:493:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )? if ( stream_literal.hasNext() ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485:105: ^( I_FIELD_INITIAL_VALUE literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:493:105: ^( I_FIELD_INITIAL_VALUE literal ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_INITIAL_VALUE, "I_FIELD_INITIAL_VALUE"), root_2); @@ -1426,7 +1437,7 @@ public class smaliParser extends Parser { } stream_literal.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485:139: ^( I_ANNOTATIONS ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:493:139: ^( I_ANNOTATIONS ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2); @@ -1477,7 +1488,7 @@ public class smaliParser extends Parser { // $ANTLR start "method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:489:1: method : METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:497:1: method : METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ; public final smaliParser.method_return method() throws RecognitionException { smaliParser.method_return retval = new smaliParser.method_return(); retval.start = input.LT(1); @@ -1501,37 +1512,37 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:490:3: ( METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:490:5: METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:498:3: ( METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:498:5: METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE { - METHOD_DIRECTIVE28=(Token)match(input,METHOD_DIRECTIVE,FOLLOW_METHOD_DIRECTIVE_in_method1483); + METHOD_DIRECTIVE28=(Token)match(input,METHOD_DIRECTIVE,FOLLOW_METHOD_DIRECTIVE_in_method1523); stream_METHOD_DIRECTIVE.add(METHOD_DIRECTIVE28); - pushFollow(FOLLOW_access_list_in_method1485); + pushFollow(FOLLOW_access_list_in_method1525); access_list29=access_list(); state._fsp--; stream_access_list.add(access_list29.getTree()); - pushFollow(FOLLOW_member_name_in_method1487); + pushFollow(FOLLOW_member_name_in_method1527); member_name30=member_name(); state._fsp--; stream_member_name.add(member_name30.getTree()); - pushFollow(FOLLOW_method_prototype_in_method1489); + pushFollow(FOLLOW_method_prototype_in_method1529); method_prototype31=method_prototype(); state._fsp--; stream_method_prototype.add(method_prototype31.getTree()); - pushFollow(FOLLOW_statements_and_directives_in_method1491); + pushFollow(FOLLOW_statements_and_directives_in_method1531); statements_and_directives32=statements_and_directives(); state._fsp--; stream_statements_and_directives.add(statements_and_directives32.getTree()); - END_METHOD_DIRECTIVE33=(Token)match(input,END_METHOD_DIRECTIVE,FOLLOW_END_METHOD_DIRECTIVE_in_method1497); + END_METHOD_DIRECTIVE33=(Token)match(input,END_METHOD_DIRECTIVE,FOLLOW_END_METHOD_DIRECTIVE_in_method1537); stream_END_METHOD_DIRECTIVE.add(END_METHOD_DIRECTIVE33); // AST REWRITE - // elements: member_name, statements_and_directives, access_list, method_prototype + // elements: access_list, method_prototype, statements_and_directives, member_name // token labels: // rule labels: retval // token list labels: @@ -1541,9 +1552,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 492:5: -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) + // 500:5: -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:492:8: ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:500:8: ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD, (retval.start), "I_METHOD"), root_1); @@ -1594,7 +1605,7 @@ public class smaliParser extends Parser { // $ANTLR start "statements_and_directives" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:494:1: statements_and_directives : ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:502:1: statements_and_directives : ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ; public final smaliParser.statements_and_directives_return statements_and_directives() throws RecognitionException { statements_and_directives_stack.push(new statements_and_directives_scope()); smaliParser.statements_and_directives_return retval = new smaliParser.statements_and_directives_return(); @@ -1617,14 +1628,14 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_parameter_directive=new RewriteRuleSubtreeStream(adaptor,"rule parameter_directive"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:500:3: ( ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:500:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:508:3: ( ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:508:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* { statements_and_directives_stack.peek().hasRegistersDirective = false; statements_and_directives_stack.peek().methodAnnotations = new ArrayList<CommonTree>(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:504:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:512:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* loop6: while (true) { int alt6=7; @@ -1644,6 +1655,8 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT20t: case INSTRUCTION_FORMAT21c_FIELD: case INSTRUCTION_FORMAT21c_FIELD_ODEX: + case INSTRUCTION_FORMAT21c_LAMBDA: + case INSTRUCTION_FORMAT21c_METHOD: case INSTRUCTION_FORMAT21c_STRING: case INSTRUCTION_FORMAT21c_TYPE: case INSTRUCTION_FORMAT21ih: @@ -1653,6 +1666,7 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT22b: case INSTRUCTION_FORMAT22c_FIELD: case INSTRUCTION_FORMAT22c_FIELD_ODEX: + case INSTRUCTION_FORMAT22c_STRING: case INSTRUCTION_FORMAT22c_TYPE: case INSTRUCTION_FORMAT22cs_FIELD: case INSTRUCTION_FORMAT22s: @@ -1660,6 +1674,7 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT22t: case INSTRUCTION_FORMAT22x: case INSTRUCTION_FORMAT23x: + case INSTRUCTION_FORMAT25x: case INSTRUCTION_FORMAT30t: case INSTRUCTION_FORMAT31c: case INSTRUCTION_FORMAT31i: @@ -1717,9 +1732,9 @@ public class smaliParser extends Parser { } switch (alt6) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:504:7: ordered_method_item + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:512:7: ordered_method_item { - pushFollow(FOLLOW_ordered_method_item_in_statements_and_directives1542); + pushFollow(FOLLOW_ordered_method_item_in_statements_and_directives1582); ordered_method_item34=ordered_method_item(); state._fsp--; @@ -1727,9 +1742,9 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:505:7: registers_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:513:7: registers_directive { - pushFollow(FOLLOW_registers_directive_in_statements_and_directives1550); + pushFollow(FOLLOW_registers_directive_in_statements_and_directives1590); registers_directive35=registers_directive(); state._fsp--; @@ -1737,9 +1752,9 @@ public class smaliParser extends Parser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:506:7: catch_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:514:7: catch_directive { - pushFollow(FOLLOW_catch_directive_in_statements_and_directives1558); + pushFollow(FOLLOW_catch_directive_in_statements_and_directives1598); catch_directive36=catch_directive(); state._fsp--; @@ -1747,9 +1762,9 @@ public class smaliParser extends Parser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:507:7: catchall_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:515:7: catchall_directive { - pushFollow(FOLLOW_catchall_directive_in_statements_and_directives1566); + pushFollow(FOLLOW_catchall_directive_in_statements_and_directives1606); catchall_directive37=catchall_directive(); state._fsp--; @@ -1757,9 +1772,9 @@ public class smaliParser extends Parser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:508:7: parameter_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:516:7: parameter_directive { - pushFollow(FOLLOW_parameter_directive_in_statements_and_directives1574); + pushFollow(FOLLOW_parameter_directive_in_statements_and_directives1614); parameter_directive38=parameter_directive(); state._fsp--; @@ -1767,9 +1782,9 @@ public class smaliParser extends Parser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:509:7: annotation + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:517:7: annotation { - pushFollow(FOLLOW_annotation_in_statements_and_directives1582); + pushFollow(FOLLOW_annotation_in_statements_and_directives1622); annotation39=annotation(); state._fsp--; @@ -1784,7 +1799,7 @@ public class smaliParser extends Parser { } // AST REWRITE - // elements: catchall_directive, registers_directive, parameter_directive, catch_directive, ordered_method_item + // elements: parameter_directive, catch_directive, catchall_directive, ordered_method_item, registers_directive // token labels: // rule labels: retval // token list labels: @@ -1794,19 +1809,19 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 511:5: -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) + // 519:5: -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:511:8: ( registers_directive )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:519:8: ( registers_directive )? if ( stream_registers_directive.hasNext() ) { adaptor.addChild(root_0, stream_registers_directive.nextTree()); } stream_registers_directive.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:512:8: ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:520:8: ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ORDERED_METHOD_ITEMS, "I_ORDERED_METHOD_ITEMS"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:512:33: ( ordered_method_item )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:520:33: ( ordered_method_item )* while ( stream_ordered_method_item.hasNext() ) { adaptor.addChild(root_1, stream_ordered_method_item.nextTree()); } @@ -1815,17 +1830,17 @@ public class smaliParser extends Parser { adaptor.addChild(root_0, root_1); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:513:8: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:521:8: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CATCHES, "I_CATCHES"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:513:20: ( catch_directive )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:521:20: ( catch_directive )* while ( stream_catch_directive.hasNext() ) { adaptor.addChild(root_1, stream_catch_directive.nextTree()); } stream_catch_directive.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:513:37: ( catchall_directive )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:521:37: ( catchall_directive )* while ( stream_catchall_directive.hasNext() ) { adaptor.addChild(root_1, stream_catchall_directive.nextTree()); } @@ -1834,11 +1849,11 @@ public class smaliParser extends Parser { adaptor.addChild(root_0, root_1); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:514:8: ^( I_PARAMETERS ( parameter_directive )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:522:8: ^( I_PARAMETERS ( parameter_directive )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PARAMETERS, "I_PARAMETERS"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:514:23: ( parameter_directive )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:522:23: ( parameter_directive )* while ( stream_parameter_directive.hasNext() ) { adaptor.addChild(root_1, stream_parameter_directive.nextTree()); } @@ -1883,7 +1898,7 @@ public class smaliParser extends Parser { // $ANTLR start "ordered_method_item" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:518:1: ordered_method_item : ( label | instruction | debug_directive ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:526:1: ordered_method_item : ( label | instruction | debug_directive ); public final smaliParser.ordered_method_item_return ordered_method_item() throws RecognitionException { smaliParser.ordered_method_item_return retval = new smaliParser.ordered_method_item_return(); retval.start = input.LT(1); @@ -1896,7 +1911,7 @@ public class smaliParser extends Parser { try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:519:3: ( label | instruction | debug_directive ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:527:3: ( label | instruction | debug_directive ) int alt7=3; switch ( input.LA(1) ) { case COLON: @@ -1916,6 +1931,8 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT20t: case INSTRUCTION_FORMAT21c_FIELD: case INSTRUCTION_FORMAT21c_FIELD_ODEX: + case INSTRUCTION_FORMAT21c_LAMBDA: + case INSTRUCTION_FORMAT21c_METHOD: case INSTRUCTION_FORMAT21c_STRING: case INSTRUCTION_FORMAT21c_TYPE: case INSTRUCTION_FORMAT21ih: @@ -1925,6 +1942,7 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT22b: case INSTRUCTION_FORMAT22c_FIELD: case INSTRUCTION_FORMAT22c_FIELD_ODEX: + case INSTRUCTION_FORMAT22c_STRING: case INSTRUCTION_FORMAT22c_TYPE: case INSTRUCTION_FORMAT22cs_FIELD: case INSTRUCTION_FORMAT22s: @@ -1932,6 +1950,7 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT22t: case INSTRUCTION_FORMAT22x: case INSTRUCTION_FORMAT23x: + case INSTRUCTION_FORMAT25x: case INSTRUCTION_FORMAT30t: case INSTRUCTION_FORMAT31c: case INSTRUCTION_FORMAT31i: @@ -1973,12 +1992,12 @@ public class smaliParser extends Parser { } switch (alt7) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:519:5: label + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:527:5: label { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_label_in_ordered_method_item1667); + pushFollow(FOLLOW_label_in_ordered_method_item1707); label40=label(); state._fsp--; @@ -1987,12 +2006,12 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:520:5: instruction + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:528:5: instruction { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_instruction_in_ordered_method_item1673); + pushFollow(FOLLOW_instruction_in_ordered_method_item1713); instruction41=instruction(); state._fsp--; @@ -2001,12 +2020,12 @@ public class smaliParser extends Parser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:521:5: debug_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:529:5: debug_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_debug_directive_in_ordered_method_item1679); + pushFollow(FOLLOW_debug_directive_in_ordered_method_item1719); debug_directive42=debug_directive(); state._fsp--; @@ -2043,7 +2062,7 @@ public class smaliParser extends Parser { // $ANTLR start "registers_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:523:1: registers_directive : (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:531:1: registers_directive : (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ; public final smaliParser.registers_directive_return registers_directive() throws RecognitionException { smaliParser.registers_directive_return retval = new smaliParser.registers_directive_return(); retval.start = input.LT(1); @@ -2060,10 +2079,10 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:524:3: ( (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:524:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:532:3: ( (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:532:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:524:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:532:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) int alt8=2; int LA8_0 = input.LA(1); if ( (LA8_0==REGISTERS_DIRECTIVE) ) { @@ -2081,12 +2100,12 @@ public class smaliParser extends Parser { switch (alt8) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:525:7: directive= REGISTERS_DIRECTIVE regCount= integral_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:533:7: directive= REGISTERS_DIRECTIVE regCount= integral_literal { - directive=(Token)match(input,REGISTERS_DIRECTIVE,FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1699); + directive=(Token)match(input,REGISTERS_DIRECTIVE,FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1739); stream_REGISTERS_DIRECTIVE.add(directive); - pushFollow(FOLLOW_integral_literal_in_registers_directive1703); + pushFollow(FOLLOW_integral_literal_in_registers_directive1743); regCount=integral_literal(); state._fsp--; @@ -2103,9 +2122,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_regCount=new RewriteRuleSubtreeStream(adaptor,"rule regCount",regCount!=null?regCount.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 525:63: -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) + // 533:63: -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:525:66: ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:533:66: ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTERS, directive, "I_REGISTERS"), root_1); @@ -2121,12 +2140,12 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:526:7: directive= LOCALS_DIRECTIVE regCount2= integral_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:534:7: directive= LOCALS_DIRECTIVE regCount2= integral_literal { - directive=(Token)match(input,LOCALS_DIRECTIVE,FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1723); + directive=(Token)match(input,LOCALS_DIRECTIVE,FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1763); stream_LOCALS_DIRECTIVE.add(directive); - pushFollow(FOLLOW_integral_literal_in_registers_directive1727); + pushFollow(FOLLOW_integral_literal_in_registers_directive1767); regCount2=integral_literal(); state._fsp--; @@ -2143,9 +2162,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_regCount2=new RewriteRuleSubtreeStream(adaptor,"rule regCount2",regCount2!=null?regCount2.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 526:61: -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) + // 534:61: -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:526:64: ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:534:64: ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LOCALS, directive, "I_LOCALS"), root_1); @@ -2198,7 +2217,7 @@ public class smaliParser extends Parser { // $ANTLR start "param_list_or_id" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:535:1: param_list_or_id : PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )+ PARAM_LIST_OR_ID_END ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:543:1: param_list_or_id : PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )+ PARAM_LIST_OR_ID_END ; public final smaliParser.param_list_or_id_return param_list_or_id() throws RecognitionException { smaliParser.param_list_or_id_return retval = new smaliParser.param_list_or_id_return(); retval.start = input.LT(1); @@ -2214,17 +2233,17 @@ public class smaliParser extends Parser { CommonTree PARAM_LIST_OR_ID_END45_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:536:3: ( PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )+ PARAM_LIST_OR_ID_END ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:536:5: PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )+ PARAM_LIST_OR_ID_END + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:544:3: ( PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )+ PARAM_LIST_OR_ID_END ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:544:5: PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )+ PARAM_LIST_OR_ID_END { root_0 = (CommonTree)adaptor.nil(); - PARAM_LIST_OR_ID_START43=(Token)match(input,PARAM_LIST_OR_ID_START,FOLLOW_PARAM_LIST_OR_ID_START_in_param_list_or_id1759); + PARAM_LIST_OR_ID_START43=(Token)match(input,PARAM_LIST_OR_ID_START,FOLLOW_PARAM_LIST_OR_ID_START_in_param_list_or_id1799); PARAM_LIST_OR_ID_START43_tree = (CommonTree)adaptor.create(PARAM_LIST_OR_ID_START43); adaptor.addChild(root_0, PARAM_LIST_OR_ID_START43_tree); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:536:28: ( PRIMITIVE_TYPE )+ + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:544:28: ( PRIMITIVE_TYPE )+ int cnt9=0; loop9: while (true) { @@ -2236,9 +2255,9 @@ public class smaliParser extends Parser { switch (alt9) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:536:28: PRIMITIVE_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:544:28: PRIMITIVE_TYPE { - PRIMITIVE_TYPE44=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_param_list_or_id1761); + PRIMITIVE_TYPE44=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_param_list_or_id1801); PRIMITIVE_TYPE44_tree = (CommonTree)adaptor.create(PRIMITIVE_TYPE44); adaptor.addChild(root_0, PRIMITIVE_TYPE44_tree); @@ -2253,7 +2272,7 @@ public class smaliParser extends Parser { cnt9++; } - PARAM_LIST_OR_ID_END45=(Token)match(input,PARAM_LIST_OR_ID_END,FOLLOW_PARAM_LIST_OR_ID_END_in_param_list_or_id1764); + PARAM_LIST_OR_ID_END45=(Token)match(input,PARAM_LIST_OR_ID_END,FOLLOW_PARAM_LIST_OR_ID_END_in_param_list_or_id1804); PARAM_LIST_OR_ID_END45_tree = (CommonTree)adaptor.create(PARAM_LIST_OR_ID_END45); adaptor.addChild(root_0, PARAM_LIST_OR_ID_END45_tree); @@ -2286,7 +2305,7 @@ public class smaliParser extends Parser { // $ANTLR start "simple_name" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:540:1: simple_name : ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | param_list_or_id ->| PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:548:1: simple_name : ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | param_list_or_id ->| PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21c_LAMBDA -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_LAMBDA] | INSTRUCTION_FORMAT21c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_METHOD] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_STRING] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT25x -> SIMPLE_NAME[$INSTRUCTION_FORMAT25x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] ); public final smaliParser.simple_name_return simple_name() throws RecognitionException { smaliParser.simple_name_return retval = new smaliParser.simple_name_return(); retval.start = input.LT(1); @@ -2315,22 +2334,26 @@ public class smaliParser extends Parser { Token INSTRUCTION_FORMAT21c_FIELD_ODEX66=null; Token INSTRUCTION_FORMAT21c_STRING67=null; Token INSTRUCTION_FORMAT21c_TYPE68=null; - Token INSTRUCTION_FORMAT21t69=null; - Token INSTRUCTION_FORMAT22c_FIELD70=null; - Token INSTRUCTION_FORMAT22c_FIELD_ODEX71=null; - Token INSTRUCTION_FORMAT22c_TYPE72=null; - Token INSTRUCTION_FORMAT22cs_FIELD73=null; - Token INSTRUCTION_FORMAT22s_OR_ID74=null; - Token INSTRUCTION_FORMAT22t75=null; - Token INSTRUCTION_FORMAT23x76=null; - Token INSTRUCTION_FORMAT31i_OR_ID77=null; - Token INSTRUCTION_FORMAT31t78=null; - Token INSTRUCTION_FORMAT35c_METHOD79=null; - Token INSTRUCTION_FORMAT35c_METHOD_ODEX80=null; - Token INSTRUCTION_FORMAT35c_TYPE81=null; - Token INSTRUCTION_FORMAT35mi_METHOD82=null; - Token INSTRUCTION_FORMAT35ms_METHOD83=null; - Token INSTRUCTION_FORMAT51l84=null; + Token INSTRUCTION_FORMAT21c_LAMBDA69=null; + Token INSTRUCTION_FORMAT21c_METHOD70=null; + Token INSTRUCTION_FORMAT21t71=null; + Token INSTRUCTION_FORMAT22c_FIELD72=null; + Token INSTRUCTION_FORMAT22c_FIELD_ODEX73=null; + Token INSTRUCTION_FORMAT22c_TYPE74=null; + Token INSTRUCTION_FORMAT22c_STRING75=null; + Token INSTRUCTION_FORMAT22cs_FIELD76=null; + Token INSTRUCTION_FORMAT22s_OR_ID77=null; + Token INSTRUCTION_FORMAT22t78=null; + Token INSTRUCTION_FORMAT23x79=null; + Token INSTRUCTION_FORMAT25x80=null; + Token INSTRUCTION_FORMAT31i_OR_ID81=null; + Token INSTRUCTION_FORMAT31t82=null; + Token INSTRUCTION_FORMAT35c_METHOD83=null; + Token INSTRUCTION_FORMAT35c_METHOD_ODEX84=null; + Token INSTRUCTION_FORMAT35c_TYPE85=null; + Token INSTRUCTION_FORMAT35mi_METHOD86=null; + Token INSTRUCTION_FORMAT35ms_METHOD87=null; + Token INSTRUCTION_FORMAT51l88=null; ParserRuleReturnScope param_list_or_id56 =null; CommonTree SIMPLE_NAME46_tree=null; @@ -2355,22 +2378,27 @@ public class smaliParser extends Parser { CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX66_tree=null; CommonTree INSTRUCTION_FORMAT21c_STRING67_tree=null; CommonTree INSTRUCTION_FORMAT21c_TYPE68_tree=null; - CommonTree INSTRUCTION_FORMAT21t69_tree=null; - CommonTree INSTRUCTION_FORMAT22c_FIELD70_tree=null; - CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX71_tree=null; - CommonTree INSTRUCTION_FORMAT22c_TYPE72_tree=null; - CommonTree INSTRUCTION_FORMAT22cs_FIELD73_tree=null; - CommonTree INSTRUCTION_FORMAT22s_OR_ID74_tree=null; - CommonTree INSTRUCTION_FORMAT22t75_tree=null; - CommonTree INSTRUCTION_FORMAT23x76_tree=null; - CommonTree INSTRUCTION_FORMAT31i_OR_ID77_tree=null; - CommonTree INSTRUCTION_FORMAT31t78_tree=null; - CommonTree INSTRUCTION_FORMAT35c_METHOD79_tree=null; - CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX80_tree=null; - CommonTree INSTRUCTION_FORMAT35c_TYPE81_tree=null; - CommonTree INSTRUCTION_FORMAT35mi_METHOD82_tree=null; - CommonTree INSTRUCTION_FORMAT35ms_METHOD83_tree=null; - CommonTree INSTRUCTION_FORMAT51l84_tree=null; + CommonTree INSTRUCTION_FORMAT21c_LAMBDA69_tree=null; + CommonTree INSTRUCTION_FORMAT21c_METHOD70_tree=null; + CommonTree INSTRUCTION_FORMAT21t71_tree=null; + CommonTree INSTRUCTION_FORMAT22c_FIELD72_tree=null; + CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX73_tree=null; + CommonTree INSTRUCTION_FORMAT22c_TYPE74_tree=null; + CommonTree INSTRUCTION_FORMAT22c_STRING75_tree=null; + CommonTree INSTRUCTION_FORMAT22cs_FIELD76_tree=null; + CommonTree INSTRUCTION_FORMAT22s_OR_ID77_tree=null; + CommonTree INSTRUCTION_FORMAT22t78_tree=null; + CommonTree INSTRUCTION_FORMAT23x79_tree=null; + CommonTree INSTRUCTION_FORMAT25x80_tree=null; + CommonTree INSTRUCTION_FORMAT31i_OR_ID81_tree=null; + CommonTree INSTRUCTION_FORMAT31t82_tree=null; + CommonTree INSTRUCTION_FORMAT35c_METHOD83_tree=null; + CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX84_tree=null; + CommonTree INSTRUCTION_FORMAT35c_TYPE85_tree=null; + CommonTree INSTRUCTION_FORMAT35mi_METHOD86_tree=null; + CommonTree INSTRUCTION_FORMAT35ms_METHOD87_tree=null; + CommonTree INSTRUCTION_FORMAT51l88_tree=null; + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT25x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT25x"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_TYPE"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_METHOD"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT11x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT11x"); @@ -2378,11 +2406,13 @@ public class smaliParser extends Parser { RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_TYPE"); RewriteRuleTokenStream stream_ANNOTATION_VISIBILITY=new RewriteRuleTokenStream(adaptor,"token ANNOTATION_VISIBILITY"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31i_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31i_OR_ID"); + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_METHOD"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22s_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22s_OR_ID"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT51l=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT51l"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT23x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT23x"); RewriteRuleTokenStream stream_NULL_LITERAL=new RewriteRuleTokenStream(adaptor,"token NULL_LITERAL"); RewriteRuleTokenStream stream_BOOL_LITERAL=new RewriteRuleTokenStream(adaptor,"token BOOL_LITERAL"); + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_LAMBDA=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_LAMBDA"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_METHOD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_METHOD_ODEX"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD"); @@ -2402,6 +2432,7 @@ public class smaliParser extends Parser { RewriteRuleTokenStream stream_DOUBLE_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token DOUBLE_LITERAL_OR_ID"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD_ODEX"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10t"); + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_STRING=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_STRING"); RewriteRuleTokenStream stream_NEGATIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token NEGATIVE_INTEGER_LITERAL"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_VERIFICATION_ERROR_TYPE=new RewriteRuleTokenStream(adaptor,"token VERIFICATION_ERROR_TYPE"); @@ -2411,8 +2442,8 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_param_list_or_id=new RewriteRuleSubtreeStream(adaptor,"rule param_list_or_id"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:541:3: ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | param_list_or_id ->| PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] ) - int alt10=39; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:549:3: ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | param_list_or_id ->| PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21c_LAMBDA -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_LAMBDA] | INSTRUCTION_FORMAT21c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_METHOD] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_STRING] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT25x -> SIMPLE_NAME[$INSTRUCTION_FORMAT25x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] ) + int alt10=43; switch ( input.LA(1) ) { case SIMPLE_NAME: { @@ -2529,86 +2560,106 @@ public class smaliParser extends Parser { alt10=23; } break; - case INSTRUCTION_FORMAT21t: + case INSTRUCTION_FORMAT21c_LAMBDA: { alt10=24; } break; - case INSTRUCTION_FORMAT22c_FIELD: + case INSTRUCTION_FORMAT21c_METHOD: { alt10=25; } break; - case INSTRUCTION_FORMAT22c_FIELD_ODEX: + case INSTRUCTION_FORMAT21t: { alt10=26; } break; - case INSTRUCTION_FORMAT22c_TYPE: + case INSTRUCTION_FORMAT22c_FIELD: { alt10=27; } break; - case INSTRUCTION_FORMAT22cs_FIELD: + case INSTRUCTION_FORMAT22c_FIELD_ODEX: { alt10=28; } break; - case INSTRUCTION_FORMAT22s_OR_ID: + case INSTRUCTION_FORMAT22c_TYPE: { alt10=29; } break; - case INSTRUCTION_FORMAT22t: + case INSTRUCTION_FORMAT22c_STRING: { alt10=30; } break; - case INSTRUCTION_FORMAT23x: + case INSTRUCTION_FORMAT22cs_FIELD: { alt10=31; } break; - case INSTRUCTION_FORMAT31i_OR_ID: + case INSTRUCTION_FORMAT22s_OR_ID: { alt10=32; } break; - case INSTRUCTION_FORMAT31t: + case INSTRUCTION_FORMAT22t: { alt10=33; } break; - case INSTRUCTION_FORMAT35c_METHOD: + case INSTRUCTION_FORMAT23x: { alt10=34; } break; - case INSTRUCTION_FORMAT35c_METHOD_ODEX: + case INSTRUCTION_FORMAT25x: { alt10=35; } break; - case INSTRUCTION_FORMAT35c_TYPE: + case INSTRUCTION_FORMAT31i_OR_ID: { alt10=36; } break; - case INSTRUCTION_FORMAT35mi_METHOD: + case INSTRUCTION_FORMAT31t: { alt10=37; } break; - case INSTRUCTION_FORMAT35ms_METHOD: + case INSTRUCTION_FORMAT35c_METHOD: { alt10=38; } break; - case INSTRUCTION_FORMAT51l: + case INSTRUCTION_FORMAT35c_METHOD_ODEX: { alt10=39; } break; + case INSTRUCTION_FORMAT35c_TYPE: + { + alt10=40; + } + break; + case INSTRUCTION_FORMAT35mi_METHOD: + { + alt10=41; + } + break; + case INSTRUCTION_FORMAT35ms_METHOD: + { + alt10=42; + } + break; + case INSTRUCTION_FORMAT51l: + { + alt10=43; + } + break; default: NoViableAltException nvae = new NoViableAltException("", 10, 0, input); @@ -2616,21 +2667,21 @@ public class smaliParser extends Parser { } switch (alt10) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:541:5: SIMPLE_NAME + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:549:5: SIMPLE_NAME { root_0 = (CommonTree)adaptor.nil(); - SIMPLE_NAME46=(Token)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_simple_name1776); + SIMPLE_NAME46=(Token)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_simple_name1816); SIMPLE_NAME46_tree = (CommonTree)adaptor.create(SIMPLE_NAME46); adaptor.addChild(root_0, SIMPLE_NAME46_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:542:5: ACCESS_SPEC + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:550:5: ACCESS_SPEC { - ACCESS_SPEC47=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_simple_name1782); + ACCESS_SPEC47=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_simple_name1822); stream_ACCESS_SPEC.add(ACCESS_SPEC47); // AST REWRITE @@ -2644,7 +2695,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 542:17: -> SIMPLE_NAME[$ACCESS_SPEC] + // 550:17: -> SIMPLE_NAME[$ACCESS_SPEC] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ACCESS_SPEC47)); } @@ -2655,9 +2706,9 @@ public class smaliParser extends Parser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:543:5: VERIFICATION_ERROR_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:551:5: VERIFICATION_ERROR_TYPE { - VERIFICATION_ERROR_TYPE48=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1793); + VERIFICATION_ERROR_TYPE48=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1833); stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE48); // AST REWRITE @@ -2671,7 +2722,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 543:29: -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] + // 551:29: -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VERIFICATION_ERROR_TYPE48)); } @@ -2682,9 +2733,9 @@ public class smaliParser extends Parser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:544:5: POSITIVE_INTEGER_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:552:5: POSITIVE_INTEGER_LITERAL { - POSITIVE_INTEGER_LITERAL49=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1804); + POSITIVE_INTEGER_LITERAL49=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1844); stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL49); // AST REWRITE @@ -2698,7 +2749,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 544:30: -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] + // 552:30: -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, POSITIVE_INTEGER_LITERAL49)); } @@ -2709,9 +2760,9 @@ public class smaliParser extends Parser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:545:5: NEGATIVE_INTEGER_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:553:5: NEGATIVE_INTEGER_LITERAL { - NEGATIVE_INTEGER_LITERAL50=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1815); + NEGATIVE_INTEGER_LITERAL50=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1855); stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL50); // AST REWRITE @@ -2725,7 +2776,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 545:30: -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] + // 553:30: -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NEGATIVE_INTEGER_LITERAL50)); } @@ -2736,9 +2787,9 @@ public class smaliParser extends Parser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:546:5: FLOAT_LITERAL_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:554:5: FLOAT_LITERAL_OR_ID { - FLOAT_LITERAL_OR_ID51=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1826); + FLOAT_LITERAL_OR_ID51=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1866); stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID51); // AST REWRITE @@ -2752,7 +2803,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 546:25: -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] + // 554:25: -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, FLOAT_LITERAL_OR_ID51)); } @@ -2763,9 +2814,9 @@ public class smaliParser extends Parser { } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:547:5: DOUBLE_LITERAL_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:555:5: DOUBLE_LITERAL_OR_ID { - DOUBLE_LITERAL_OR_ID52=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1837); + DOUBLE_LITERAL_OR_ID52=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1877); stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID52); // AST REWRITE @@ -2779,7 +2830,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 547:26: -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] + // 555:26: -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, DOUBLE_LITERAL_OR_ID52)); } @@ -2790,9 +2841,9 @@ public class smaliParser extends Parser { } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:548:5: BOOL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:556:5: BOOL_LITERAL { - BOOL_LITERAL53=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_simple_name1848); + BOOL_LITERAL53=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_simple_name1888); stream_BOOL_LITERAL.add(BOOL_LITERAL53); // AST REWRITE @@ -2806,7 +2857,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 548:18: -> SIMPLE_NAME[$BOOL_LITERAL] + // 556:18: -> SIMPLE_NAME[$BOOL_LITERAL] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, BOOL_LITERAL53)); } @@ -2817,9 +2868,9 @@ public class smaliParser extends Parser { } break; case 9 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:549:5: NULL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:557:5: NULL_LITERAL { - NULL_LITERAL54=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_simple_name1859); + NULL_LITERAL54=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_simple_name1899); stream_NULL_LITERAL.add(NULL_LITERAL54); // AST REWRITE @@ -2833,7 +2884,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 549:18: -> SIMPLE_NAME[$NULL_LITERAL] + // 557:18: -> SIMPLE_NAME[$NULL_LITERAL] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NULL_LITERAL54)); } @@ -2844,9 +2895,9 @@ public class smaliParser extends Parser { } break; case 10 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:550:5: REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:558:5: REGISTER { - REGISTER55=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_simple_name1870); + REGISTER55=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_simple_name1910); stream_REGISTER.add(REGISTER55); // AST REWRITE @@ -2860,7 +2911,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 550:14: -> SIMPLE_NAME[$REGISTER] + // 558:14: -> SIMPLE_NAME[$REGISTER] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, REGISTER55)); } @@ -2871,9 +2922,9 @@ public class smaliParser extends Parser { } break; case 11 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:551:5: param_list_or_id + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:559:5: param_list_or_id { - pushFollow(FOLLOW_param_list_or_id_in_simple_name1881); + pushFollow(FOLLOW_param_list_or_id_in_simple_name1921); param_list_or_id56=param_list_or_id(); state._fsp--; @@ -2889,7 +2940,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 551:22: -> + // 559:22: -> { adaptor.addChild(root_0, adaptor.create(SIMPLE_NAME, (param_list_or_id56!=null?input.toString(param_list_or_id56.start,param_list_or_id56.stop):null)) ); } @@ -2900,9 +2951,9 @@ public class smaliParser extends Parser { } break; case 12 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:552:5: PRIMITIVE_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:560:5: PRIMITIVE_TYPE { - PRIMITIVE_TYPE57=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_simple_name1891); + PRIMITIVE_TYPE57=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_simple_name1931); stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE57); // AST REWRITE @@ -2916,7 +2967,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 552:20: -> SIMPLE_NAME[$PRIMITIVE_TYPE] + // 560:20: -> SIMPLE_NAME[$PRIMITIVE_TYPE] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PRIMITIVE_TYPE57)); } @@ -2927,9 +2978,9 @@ public class smaliParser extends Parser { } break; case 13 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:553:5: VOID_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:561:5: VOID_TYPE { - VOID_TYPE58=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_simple_name1902); + VOID_TYPE58=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_simple_name1942); stream_VOID_TYPE.add(VOID_TYPE58); // AST REWRITE @@ -2943,7 +2994,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 553:15: -> SIMPLE_NAME[$VOID_TYPE] + // 561:15: -> SIMPLE_NAME[$VOID_TYPE] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VOID_TYPE58)); } @@ -2954,9 +3005,9 @@ public class smaliParser extends Parser { } break; case 14 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:554:5: ANNOTATION_VISIBILITY + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:562:5: ANNOTATION_VISIBILITY { - ANNOTATION_VISIBILITY59=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1913); + ANNOTATION_VISIBILITY59=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1953); stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY59); // AST REWRITE @@ -2970,7 +3021,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 554:27: -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] + // 562:27: -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ANNOTATION_VISIBILITY59)); } @@ -2981,9 +3032,9 @@ public class smaliParser extends Parser { } break; case 15 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:555:5: INSTRUCTION_FORMAT10t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:563:5: INSTRUCTION_FORMAT10t { - INSTRUCTION_FORMAT10t60=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1924); + INSTRUCTION_FORMAT10t60=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1964); stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t60); // AST REWRITE @@ -2997,7 +3048,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 555:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] + // 563:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10t60)); } @@ -3008,9 +3059,9 @@ public class smaliParser extends Parser { } break; case 16 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:556:5: INSTRUCTION_FORMAT10x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:564:5: INSTRUCTION_FORMAT10x { - INSTRUCTION_FORMAT10x61=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1935); + INSTRUCTION_FORMAT10x61=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1975); stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x61); // AST REWRITE @@ -3024,7 +3075,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 556:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] + // 564:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x61)); } @@ -3035,9 +3086,9 @@ public class smaliParser extends Parser { } break; case 17 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:557:5: INSTRUCTION_FORMAT10x_ODEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:565:5: INSTRUCTION_FORMAT10x_ODEX { - INSTRUCTION_FORMAT10x_ODEX62=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name1946); + INSTRUCTION_FORMAT10x_ODEX62=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name1986); stream_INSTRUCTION_FORMAT10x_ODEX.add(INSTRUCTION_FORMAT10x_ODEX62); // AST REWRITE @@ -3051,7 +3102,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 557:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] + // 565:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x_ODEX62)); } @@ -3062,9 +3113,9 @@ public class smaliParser extends Parser { } break; case 18 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:558:5: INSTRUCTION_FORMAT11x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:566:5: INSTRUCTION_FORMAT11x { - INSTRUCTION_FORMAT11x63=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name1957); + INSTRUCTION_FORMAT11x63=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name1997); stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x63); // AST REWRITE @@ -3078,7 +3129,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 558:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] + // 566:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT11x63)); } @@ -3089,9 +3140,9 @@ public class smaliParser extends Parser { } break; case 19 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:559:5: INSTRUCTION_FORMAT12x_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:567:5: INSTRUCTION_FORMAT12x_OR_ID { - INSTRUCTION_FORMAT12x_OR_ID64=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name1968); + INSTRUCTION_FORMAT12x_OR_ID64=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name2008); stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID64); // AST REWRITE @@ -3105,7 +3156,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 559:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] + // 567:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT12x_OR_ID64)); } @@ -3116,9 +3167,9 @@ public class smaliParser extends Parser { } break; case 20 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:560:5: INSTRUCTION_FORMAT21c_FIELD + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:568:5: INSTRUCTION_FORMAT21c_FIELD { - INSTRUCTION_FORMAT21c_FIELD65=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name1979); + INSTRUCTION_FORMAT21c_FIELD65=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name2019); stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD65); // AST REWRITE @@ -3132,7 +3183,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 560:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] + // 568:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD65)); } @@ -3143,9 +3194,9 @@ public class smaliParser extends Parser { } break; case 21 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:561:5: INSTRUCTION_FORMAT21c_FIELD_ODEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:569:5: INSTRUCTION_FORMAT21c_FIELD_ODEX { - INSTRUCTION_FORMAT21c_FIELD_ODEX66=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name1990); + INSTRUCTION_FORMAT21c_FIELD_ODEX66=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name2030); stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX66); // AST REWRITE @@ -3159,7 +3210,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 561:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] + // 569:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD_ODEX66)); } @@ -3170,9 +3221,9 @@ public class smaliParser extends Parser { } break; case 22 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:562:5: INSTRUCTION_FORMAT21c_STRING + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:570:5: INSTRUCTION_FORMAT21c_STRING { - INSTRUCTION_FORMAT21c_STRING67=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2001); + INSTRUCTION_FORMAT21c_STRING67=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2041); stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING67); // AST REWRITE @@ -3186,7 +3237,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 562:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] + // 570:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_STRING67)); } @@ -3197,9 +3248,9 @@ public class smaliParser extends Parser { } break; case 23 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:563:5: INSTRUCTION_FORMAT21c_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:571:5: INSTRUCTION_FORMAT21c_TYPE { - INSTRUCTION_FORMAT21c_TYPE68=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2012); + INSTRUCTION_FORMAT21c_TYPE68=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2052); stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE68); // AST REWRITE @@ -3213,7 +3264,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 563:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] + // 571:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] { adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_TYPE68)); } @@ -3224,10 +3275,10 @@ public class smaliParser extends Parser { } break; case 24 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:564:5: INSTRUCTION_FORMAT21t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:572:5: INSTRUCTION_FORMAT21c_LAMBDA { - INSTRUCTION_FORMAT21t69=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2023); - stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t69); + INSTRUCTION_FORMAT21c_LAMBDA69=(Token)match(input,INSTRUCTION_FORMAT21c_LAMBDA,FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_simple_name2063); + stream_INSTRUCTION_FORMAT21c_LAMBDA.add(INSTRUCTION_FORMAT21c_LAMBDA69); // AST REWRITE // elements: @@ -3240,9 +3291,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 564:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] + // 572:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_LAMBDA] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21t69)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_LAMBDA69)); } @@ -3251,10 +3302,10 @@ public class smaliParser extends Parser { } break; case 25 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:565:5: INSTRUCTION_FORMAT22c_FIELD + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:573:5: INSTRUCTION_FORMAT21c_METHOD { - INSTRUCTION_FORMAT22c_FIELD70=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2034); - stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD70); + INSTRUCTION_FORMAT21c_METHOD70=(Token)match(input,INSTRUCTION_FORMAT21c_METHOD,FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_simple_name2074); + stream_INSTRUCTION_FORMAT21c_METHOD.add(INSTRUCTION_FORMAT21c_METHOD70); // AST REWRITE // elements: @@ -3267,9 +3318,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 565:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] + // 573:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_METHOD] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD70)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_METHOD70)); } @@ -3278,10 +3329,10 @@ public class smaliParser extends Parser { } break; case 26 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:566:5: INSTRUCTION_FORMAT22c_FIELD_ODEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:574:5: INSTRUCTION_FORMAT21t { - INSTRUCTION_FORMAT22c_FIELD_ODEX71=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2045); - stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX71); + INSTRUCTION_FORMAT21t71=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2085); + stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t71); // AST REWRITE // elements: @@ -3294,9 +3345,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 566:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] + // 574:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD_ODEX71)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21t71)); } @@ -3305,10 +3356,10 @@ public class smaliParser extends Parser { } break; case 27 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:567:5: INSTRUCTION_FORMAT22c_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:575:5: INSTRUCTION_FORMAT22c_FIELD { - INSTRUCTION_FORMAT22c_TYPE72=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2056); - stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE72); + INSTRUCTION_FORMAT22c_FIELD72=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2096); + stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD72); // AST REWRITE // elements: @@ -3321,9 +3372,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 567:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] + // 575:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_TYPE72)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD72)); } @@ -3332,10 +3383,10 @@ public class smaliParser extends Parser { } break; case 28 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:568:5: INSTRUCTION_FORMAT22cs_FIELD + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:576:5: INSTRUCTION_FORMAT22c_FIELD_ODEX { - INSTRUCTION_FORMAT22cs_FIELD73=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2067); - stream_INSTRUCTION_FORMAT22cs_FIELD.add(INSTRUCTION_FORMAT22cs_FIELD73); + INSTRUCTION_FORMAT22c_FIELD_ODEX73=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2107); + stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX73); // AST REWRITE // elements: @@ -3348,9 +3399,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 568:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] + // 576:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22cs_FIELD73)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD_ODEX73)); } @@ -3359,10 +3410,10 @@ public class smaliParser extends Parser { } break; case 29 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:569:5: INSTRUCTION_FORMAT22s_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:577:5: INSTRUCTION_FORMAT22c_TYPE { - INSTRUCTION_FORMAT22s_OR_ID74=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2078); - stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID74); + INSTRUCTION_FORMAT22c_TYPE74=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2118); + stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE74); // AST REWRITE // elements: @@ -3375,9 +3426,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 569:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] + // 577:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22s_OR_ID74)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_TYPE74)); } @@ -3386,10 +3437,10 @@ public class smaliParser extends Parser { } break; case 30 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:570:5: INSTRUCTION_FORMAT22t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:578:5: INSTRUCTION_FORMAT22c_STRING { - INSTRUCTION_FORMAT22t75=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2089); - stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t75); + INSTRUCTION_FORMAT22c_STRING75=(Token)match(input,INSTRUCTION_FORMAT22c_STRING,FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_simple_name2129); + stream_INSTRUCTION_FORMAT22c_STRING.add(INSTRUCTION_FORMAT22c_STRING75); // AST REWRITE // elements: @@ -3402,9 +3453,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 570:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] + // 578:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_STRING] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22t75)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_STRING75)); } @@ -3413,10 +3464,10 @@ public class smaliParser extends Parser { } break; case 31 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:571:5: INSTRUCTION_FORMAT23x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:579:5: INSTRUCTION_FORMAT22cs_FIELD { - INSTRUCTION_FORMAT23x76=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2100); - stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x76); + INSTRUCTION_FORMAT22cs_FIELD76=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2140); + stream_INSTRUCTION_FORMAT22cs_FIELD.add(INSTRUCTION_FORMAT22cs_FIELD76); // AST REWRITE // elements: @@ -3429,9 +3480,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 571:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] + // 579:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT23x76)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22cs_FIELD76)); } @@ -3440,10 +3491,10 @@ public class smaliParser extends Parser { } break; case 32 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:572:5: INSTRUCTION_FORMAT31i_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:580:5: INSTRUCTION_FORMAT22s_OR_ID { - INSTRUCTION_FORMAT31i_OR_ID77=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2111); - stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID77); + INSTRUCTION_FORMAT22s_OR_ID77=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2151); + stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID77); // AST REWRITE // elements: @@ -3456,9 +3507,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 572:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] + // 580:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31i_OR_ID77)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22s_OR_ID77)); } @@ -3467,10 +3518,10 @@ public class smaliParser extends Parser { } break; case 33 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:573:5: INSTRUCTION_FORMAT31t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:581:5: INSTRUCTION_FORMAT22t { - INSTRUCTION_FORMAT31t78=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2122); - stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t78); + INSTRUCTION_FORMAT22t78=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2162); + stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t78); // AST REWRITE // elements: @@ -3483,9 +3534,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 573:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] + // 581:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31t78)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22t78)); } @@ -3494,10 +3545,10 @@ public class smaliParser extends Parser { } break; case 34 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:574:5: INSTRUCTION_FORMAT35c_METHOD + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:582:5: INSTRUCTION_FORMAT23x { - INSTRUCTION_FORMAT35c_METHOD79=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2133); - stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD79); + INSTRUCTION_FORMAT23x79=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2173); + stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x79); // AST REWRITE // elements: @@ -3510,9 +3561,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 574:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] + // 582:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD79)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT23x79)); } @@ -3521,10 +3572,10 @@ public class smaliParser extends Parser { } break; case 35 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:575:5: INSTRUCTION_FORMAT35c_METHOD_ODEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:583:5: INSTRUCTION_FORMAT25x { - INSTRUCTION_FORMAT35c_METHOD_ODEX80=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2144); - stream_INSTRUCTION_FORMAT35c_METHOD_ODEX.add(INSTRUCTION_FORMAT35c_METHOD_ODEX80); + INSTRUCTION_FORMAT25x80=(Token)match(input,INSTRUCTION_FORMAT25x,FOLLOW_INSTRUCTION_FORMAT25x_in_simple_name2184); + stream_INSTRUCTION_FORMAT25x.add(INSTRUCTION_FORMAT25x80); // AST REWRITE // elements: @@ -3537,9 +3588,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 575:39: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] + // 583:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT25x] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD_ODEX80)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT25x80)); } @@ -3548,10 +3599,10 @@ public class smaliParser extends Parser { } break; case 36 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:576:5: INSTRUCTION_FORMAT35c_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:584:5: INSTRUCTION_FORMAT31i_OR_ID { - INSTRUCTION_FORMAT35c_TYPE81=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2155); - stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE81); + INSTRUCTION_FORMAT31i_OR_ID81=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2195); + stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID81); // AST REWRITE // elements: @@ -3564,9 +3615,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 576:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] + // 584:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_TYPE81)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31i_OR_ID81)); } @@ -3575,10 +3626,10 @@ public class smaliParser extends Parser { } break; case 37 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:577:5: INSTRUCTION_FORMAT35mi_METHOD + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:585:5: INSTRUCTION_FORMAT31t { - INSTRUCTION_FORMAT35mi_METHOD82=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2166); - stream_INSTRUCTION_FORMAT35mi_METHOD.add(INSTRUCTION_FORMAT35mi_METHOD82); + INSTRUCTION_FORMAT31t82=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2206); + stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t82); // AST REWRITE // elements: @@ -3591,9 +3642,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 577:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] + // 585:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35mi_METHOD82)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31t82)); } @@ -3602,10 +3653,10 @@ public class smaliParser extends Parser { } break; case 38 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:578:5: INSTRUCTION_FORMAT35ms_METHOD + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:586:5: INSTRUCTION_FORMAT35c_METHOD { - INSTRUCTION_FORMAT35ms_METHOD83=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2177); - stream_INSTRUCTION_FORMAT35ms_METHOD.add(INSTRUCTION_FORMAT35ms_METHOD83); + INSTRUCTION_FORMAT35c_METHOD83=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2217); + stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD83); // AST REWRITE // elements: @@ -3618,9 +3669,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 578:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] + // 586:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35ms_METHOD83)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD83)); } @@ -3629,10 +3680,64 @@ public class smaliParser extends Parser { } break; case 39 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:579:5: INSTRUCTION_FORMAT51l + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:587:5: INSTRUCTION_FORMAT35c_METHOD_ODEX + { + INSTRUCTION_FORMAT35c_METHOD_ODEX84=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2228); + stream_INSTRUCTION_FORMAT35c_METHOD_ODEX.add(INSTRUCTION_FORMAT35c_METHOD_ODEX84); + + // AST REWRITE + // elements: + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 587:39: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] + { + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD_ODEX84)); + } + + + retval.tree = root_0; + + } + break; + case 40 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:588:5: INSTRUCTION_FORMAT35c_TYPE + { + INSTRUCTION_FORMAT35c_TYPE85=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2239); + stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE85); + + // AST REWRITE + // elements: + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 588:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] + { + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_TYPE85)); + } + + + retval.tree = root_0; + + } + break; + case 41 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:589:5: INSTRUCTION_FORMAT35mi_METHOD { - INSTRUCTION_FORMAT51l84=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2188); - stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l84); + INSTRUCTION_FORMAT35mi_METHOD86=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2250); + stream_INSTRUCTION_FORMAT35mi_METHOD.add(INSTRUCTION_FORMAT35mi_METHOD86); // AST REWRITE // elements: @@ -3645,9 +3750,63 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 579:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] + // 589:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT51l84)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35mi_METHOD86)); + } + + + retval.tree = root_0; + + } + break; + case 42 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:590:5: INSTRUCTION_FORMAT35ms_METHOD + { + INSTRUCTION_FORMAT35ms_METHOD87=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2261); + stream_INSTRUCTION_FORMAT35ms_METHOD.add(INSTRUCTION_FORMAT35ms_METHOD87); + + // AST REWRITE + // elements: + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 590:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] + { + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35ms_METHOD87)); + } + + + retval.tree = root_0; + + } + break; + case 43 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:591:5: INSTRUCTION_FORMAT51l + { + INSTRUCTION_FORMAT51l88=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2272); + stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l88); + + // AST REWRITE + // elements: + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 591:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] + { + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT51l88)); } @@ -3684,24 +3843,24 @@ public class smaliParser extends Parser { // $ANTLR start "member_name" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:581:1: member_name : ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:593:1: member_name : ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] ); public final smaliParser.member_name_return member_name() throws RecognitionException { smaliParser.member_name_return retval = new smaliParser.member_name_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token MEMBER_NAME86=null; - ParserRuleReturnScope simple_name85 =null; + Token MEMBER_NAME90=null; + ParserRuleReturnScope simple_name89 =null; - CommonTree MEMBER_NAME86_tree=null; + CommonTree MEMBER_NAME90_tree=null; RewriteRuleTokenStream stream_MEMBER_NAME=new RewriteRuleTokenStream(adaptor,"token MEMBER_NAME"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:582:3: ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:594:3: ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] ) int alt11=2; int LA11_0 = input.LA(1); - if ( (LA11_0==ACCESS_SPEC||LA11_0==ANNOTATION_VISIBILITY||LA11_0==BOOL_LITERAL||LA11_0==DOUBLE_LITERAL_OR_ID||LA11_0==FLOAT_LITERAL_OR_ID||(LA11_0 >= INSTRUCTION_FORMAT10t && LA11_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA11_0==INSTRUCTION_FORMAT11x||LA11_0==INSTRUCTION_FORMAT12x_OR_ID||(LA11_0 >= INSTRUCTION_FORMAT21c_FIELD && LA11_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA11_0==INSTRUCTION_FORMAT21t||(LA11_0 >= INSTRUCTION_FORMAT22c_FIELD && LA11_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA11_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA11_0 <= INSTRUCTION_FORMAT22t)||LA11_0==INSTRUCTION_FORMAT23x||(LA11_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA11_0 <= INSTRUCTION_FORMAT31t)||(LA11_0 >= INSTRUCTION_FORMAT35c_METHOD && LA11_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA11_0==INSTRUCTION_FORMAT51l||(LA11_0 >= NEGATIVE_INTEGER_LITERAL && LA11_0 <= NULL_LITERAL)||LA11_0==PARAM_LIST_OR_ID_START||(LA11_0 >= POSITIVE_INTEGER_LITERAL && LA11_0 <= PRIMITIVE_TYPE)||LA11_0==REGISTER||LA11_0==SIMPLE_NAME||(LA11_0 >= VERIFICATION_ERROR_TYPE && LA11_0 <= VOID_TYPE)) ) { + if ( (LA11_0==ACCESS_SPEC||LA11_0==ANNOTATION_VISIBILITY||LA11_0==BOOL_LITERAL||LA11_0==DOUBLE_LITERAL_OR_ID||LA11_0==FLOAT_LITERAL_OR_ID||(LA11_0 >= INSTRUCTION_FORMAT10t && LA11_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA11_0==INSTRUCTION_FORMAT11x||LA11_0==INSTRUCTION_FORMAT12x_OR_ID||(LA11_0 >= INSTRUCTION_FORMAT21c_FIELD && LA11_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA11_0==INSTRUCTION_FORMAT21t||(LA11_0 >= INSTRUCTION_FORMAT22c_FIELD && LA11_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA11_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA11_0 <= INSTRUCTION_FORMAT22t)||(LA11_0 >= INSTRUCTION_FORMAT23x && LA11_0 <= INSTRUCTION_FORMAT25x)||(LA11_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA11_0 <= INSTRUCTION_FORMAT31t)||(LA11_0 >= INSTRUCTION_FORMAT35c_METHOD && LA11_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA11_0==INSTRUCTION_FORMAT51l||(LA11_0 >= NEGATIVE_INTEGER_LITERAL && LA11_0 <= NULL_LITERAL)||LA11_0==PARAM_LIST_OR_ID_START||(LA11_0 >= POSITIVE_INTEGER_LITERAL && LA11_0 <= PRIMITIVE_TYPE)||LA11_0==REGISTER||LA11_0==SIMPLE_NAME||(LA11_0 >= VERIFICATION_ERROR_TYPE && LA11_0 <= VOID_TYPE)) ) { alt11=1; } else if ( (LA11_0==MEMBER_NAME) ) { @@ -3716,24 +3875,24 @@ public class smaliParser extends Parser { switch (alt11) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:582:5: simple_name + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:594:5: simple_name { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_simple_name_in_member_name2203); - simple_name85=simple_name(); + pushFollow(FOLLOW_simple_name_in_member_name2287); + simple_name89=simple_name(); state._fsp--; - adaptor.addChild(root_0, simple_name85.getTree()); + adaptor.addChild(root_0, simple_name89.getTree()); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:583:5: MEMBER_NAME + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:595:5: MEMBER_NAME { - MEMBER_NAME86=(Token)match(input,MEMBER_NAME,FOLLOW_MEMBER_NAME_in_member_name2209); - stream_MEMBER_NAME.add(MEMBER_NAME86); + MEMBER_NAME90=(Token)match(input,MEMBER_NAME,FOLLOW_MEMBER_NAME_in_member_name2293); + stream_MEMBER_NAME.add(MEMBER_NAME90); // AST REWRITE // elements: @@ -3746,9 +3905,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 583:17: -> SIMPLE_NAME[$MEMBER_NAME] + // 595:17: -> SIMPLE_NAME[$MEMBER_NAME] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, MEMBER_NAME86)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, MEMBER_NAME90)); } @@ -3785,47 +3944,47 @@ public class smaliParser extends Parser { // $ANTLR start "method_prototype" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:585:1: method_prototype : OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:597:1: method_prototype : OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ; public final smaliParser.method_prototype_return method_prototype() throws RecognitionException { smaliParser.method_prototype_return retval = new smaliParser.method_prototype_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token OPEN_PAREN87=null; - Token CLOSE_PAREN89=null; - ParserRuleReturnScope param_list88 =null; - ParserRuleReturnScope type_descriptor90 =null; + Token OPEN_PAREN91=null; + Token CLOSE_PAREN93=null; + ParserRuleReturnScope param_list92 =null; + ParserRuleReturnScope type_descriptor94 =null; - CommonTree OPEN_PAREN87_tree=null; - CommonTree CLOSE_PAREN89_tree=null; + CommonTree OPEN_PAREN91_tree=null; + CommonTree CLOSE_PAREN93_tree=null; RewriteRuleTokenStream stream_OPEN_PAREN=new RewriteRuleTokenStream(adaptor,"token OPEN_PAREN"); RewriteRuleTokenStream stream_CLOSE_PAREN=new RewriteRuleTokenStream(adaptor,"token CLOSE_PAREN"); RewriteRuleSubtreeStream stream_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule type_descriptor"); RewriteRuleSubtreeStream stream_param_list=new RewriteRuleSubtreeStream(adaptor,"rule param_list"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:586:3: ( OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:586:5: OPEN_PAREN param_list CLOSE_PAREN type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:598:3: ( OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:598:5: OPEN_PAREN param_list CLOSE_PAREN type_descriptor { - OPEN_PAREN87=(Token)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_method_prototype2224); - stream_OPEN_PAREN.add(OPEN_PAREN87); + OPEN_PAREN91=(Token)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_method_prototype2308); + stream_OPEN_PAREN.add(OPEN_PAREN91); - pushFollow(FOLLOW_param_list_in_method_prototype2226); - param_list88=param_list(); + pushFollow(FOLLOW_param_list_in_method_prototype2310); + param_list92=param_list(); state._fsp--; - stream_param_list.add(param_list88.getTree()); - CLOSE_PAREN89=(Token)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_method_prototype2228); - stream_CLOSE_PAREN.add(CLOSE_PAREN89); + stream_param_list.add(param_list92.getTree()); + CLOSE_PAREN93=(Token)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_method_prototype2312); + stream_CLOSE_PAREN.add(CLOSE_PAREN93); - pushFollow(FOLLOW_type_descriptor_in_method_prototype2230); - type_descriptor90=type_descriptor(); + pushFollow(FOLLOW_type_descriptor_in_method_prototype2314); + type_descriptor94=type_descriptor(); state._fsp--; - stream_type_descriptor.add(type_descriptor90.getTree()); + stream_type_descriptor.add(type_descriptor94.getTree()); // AST REWRITE - // elements: param_list, type_descriptor + // elements: type_descriptor, param_list // token labels: // rule labels: retval // token list labels: @@ -3835,13 +3994,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 587:5: -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) + // 599:5: -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:587:8: ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:599:8: ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD_PROTOTYPE, (retval.start), "I_METHOD_PROTOTYPE"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:587:59: ^( I_METHOD_RETURN_TYPE type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:599:59: ^( I_METHOD_RETURN_TYPE type_descriptor ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD_RETURN_TYPE, "I_METHOD_RETURN_TYPE"), root_2); @@ -3849,7 +4008,7 @@ public class smaliParser extends Parser { adaptor.addChild(root_1, root_2); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:587:99: ( param_list )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:599:99: ( param_list )? if ( stream_param_list.hasNext() ) { adaptor.addChild(root_1, stream_param_list.nextTree()); } @@ -3892,26 +4051,26 @@ public class smaliParser extends Parser { // $ANTLR start "param_list" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:589:1: param_list : ( PARAM_LIST_START ( nonvoid_type_descriptor )* PARAM_LIST_END -> ( nonvoid_type_descriptor )* | PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )* PARAM_LIST_OR_ID_END -> ( PRIMITIVE_TYPE )* | ( nonvoid_type_descriptor )* ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:601:1: param_list : ( PARAM_LIST_START ( nonvoid_type_descriptor )* PARAM_LIST_END -> ( nonvoid_type_descriptor )* | PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )* PARAM_LIST_OR_ID_END -> ( PRIMITIVE_TYPE )* | ( nonvoid_type_descriptor )* ); public final smaliParser.param_list_return param_list() throws RecognitionException { smaliParser.param_list_return retval = new smaliParser.param_list_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token PARAM_LIST_START91=null; - Token PARAM_LIST_END93=null; - Token PARAM_LIST_OR_ID_START94=null; - Token PRIMITIVE_TYPE95=null; - Token PARAM_LIST_OR_ID_END96=null; - ParserRuleReturnScope nonvoid_type_descriptor92 =null; - ParserRuleReturnScope nonvoid_type_descriptor97 =null; - - CommonTree PARAM_LIST_START91_tree=null; - CommonTree PARAM_LIST_END93_tree=null; - CommonTree PARAM_LIST_OR_ID_START94_tree=null; - CommonTree PRIMITIVE_TYPE95_tree=null; - CommonTree PARAM_LIST_OR_ID_END96_tree=null; + Token PARAM_LIST_START95=null; + Token PARAM_LIST_END97=null; + Token PARAM_LIST_OR_ID_START98=null; + Token PRIMITIVE_TYPE99=null; + Token PARAM_LIST_OR_ID_END100=null; + ParserRuleReturnScope nonvoid_type_descriptor96 =null; + ParserRuleReturnScope nonvoid_type_descriptor101 =null; + + CommonTree PARAM_LIST_START95_tree=null; + CommonTree PARAM_LIST_END97_tree=null; + CommonTree PARAM_LIST_OR_ID_START98_tree=null; + CommonTree PRIMITIVE_TYPE99_tree=null; + CommonTree PARAM_LIST_OR_ID_END100_tree=null; RewriteRuleTokenStream stream_PARAM_LIST_OR_ID_START=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID_START"); RewriteRuleTokenStream stream_PARAM_LIST_OR_ID_END=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID_END"); RewriteRuleTokenStream stream_PARAM_LIST_START=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_START"); @@ -3920,7 +4079,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:3: ( PARAM_LIST_START ( nonvoid_type_descriptor )* PARAM_LIST_END -> ( nonvoid_type_descriptor )* | PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )* PARAM_LIST_OR_ID_END -> ( PRIMITIVE_TYPE )* | ( nonvoid_type_descriptor )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:602:3: ( PARAM_LIST_START ( nonvoid_type_descriptor )* PARAM_LIST_END -> ( nonvoid_type_descriptor )* | PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )* PARAM_LIST_OR_ID_END -> ( PRIMITIVE_TYPE )* | ( nonvoid_type_descriptor )* ) int alt15=3; switch ( input.LA(1) ) { case PARAM_LIST_START: @@ -3948,12 +4107,12 @@ public class smaliParser extends Parser { } switch (alt15) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:5: PARAM_LIST_START ( nonvoid_type_descriptor )* PARAM_LIST_END + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:602:5: PARAM_LIST_START ( nonvoid_type_descriptor )* PARAM_LIST_END { - PARAM_LIST_START91=(Token)match(input,PARAM_LIST_START,FOLLOW_PARAM_LIST_START_in_param_list2260); - stream_PARAM_LIST_START.add(PARAM_LIST_START91); + PARAM_LIST_START95=(Token)match(input,PARAM_LIST_START,FOLLOW_PARAM_LIST_START_in_param_list2344); + stream_PARAM_LIST_START.add(PARAM_LIST_START95); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:22: ( nonvoid_type_descriptor )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:602:22: ( nonvoid_type_descriptor )* loop12: while (true) { int alt12=2; @@ -3964,13 +4123,13 @@ public class smaliParser extends Parser { switch (alt12) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:22: nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:602:22: nonvoid_type_descriptor { - pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2262); - nonvoid_type_descriptor92=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2346); + nonvoid_type_descriptor96=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor92.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor96.getTree()); } break; @@ -3979,8 +4138,8 @@ public class smaliParser extends Parser { } } - PARAM_LIST_END93=(Token)match(input,PARAM_LIST_END,FOLLOW_PARAM_LIST_END_in_param_list2265); - stream_PARAM_LIST_END.add(PARAM_LIST_END93); + PARAM_LIST_END97=(Token)match(input,PARAM_LIST_END,FOLLOW_PARAM_LIST_END_in_param_list2349); + stream_PARAM_LIST_END.add(PARAM_LIST_END97); // AST REWRITE // elements: nonvoid_type_descriptor @@ -3993,9 +4152,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 590:62: -> ( nonvoid_type_descriptor )* + // 602:62: -> ( nonvoid_type_descriptor )* { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:65: ( nonvoid_type_descriptor )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:602:65: ( nonvoid_type_descriptor )* while ( stream_nonvoid_type_descriptor.hasNext() ) { adaptor.addChild(root_0, stream_nonvoid_type_descriptor.nextTree()); } @@ -4009,12 +4168,12 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:591:5: PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )* PARAM_LIST_OR_ID_END + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:603:5: PARAM_LIST_OR_ID_START ( PRIMITIVE_TYPE )* PARAM_LIST_OR_ID_END { - PARAM_LIST_OR_ID_START94=(Token)match(input,PARAM_LIST_OR_ID_START,FOLLOW_PARAM_LIST_OR_ID_START_in_param_list2276); - stream_PARAM_LIST_OR_ID_START.add(PARAM_LIST_OR_ID_START94); + PARAM_LIST_OR_ID_START98=(Token)match(input,PARAM_LIST_OR_ID_START,FOLLOW_PARAM_LIST_OR_ID_START_in_param_list2360); + stream_PARAM_LIST_OR_ID_START.add(PARAM_LIST_OR_ID_START98); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:591:28: ( PRIMITIVE_TYPE )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:603:28: ( PRIMITIVE_TYPE )* loop13: while (true) { int alt13=2; @@ -4025,10 +4184,10 @@ public class smaliParser extends Parser { switch (alt13) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:591:28: PRIMITIVE_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:603:28: PRIMITIVE_TYPE { - PRIMITIVE_TYPE95=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_param_list2278); - stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE95); + PRIMITIVE_TYPE99=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_param_list2362); + stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE99); } break; @@ -4038,8 +4197,8 @@ public class smaliParser extends Parser { } } - PARAM_LIST_OR_ID_END96=(Token)match(input,PARAM_LIST_OR_ID_END,FOLLOW_PARAM_LIST_OR_ID_END_in_param_list2281); - stream_PARAM_LIST_OR_ID_END.add(PARAM_LIST_OR_ID_END96); + PARAM_LIST_OR_ID_END100=(Token)match(input,PARAM_LIST_OR_ID_END,FOLLOW_PARAM_LIST_OR_ID_END_in_param_list2365); + stream_PARAM_LIST_OR_ID_END.add(PARAM_LIST_OR_ID_END100); // AST REWRITE // elements: PRIMITIVE_TYPE @@ -4052,9 +4211,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 591:65: -> ( PRIMITIVE_TYPE )* + // 603:65: -> ( PRIMITIVE_TYPE )* { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:591:68: ( PRIMITIVE_TYPE )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:603:68: ( PRIMITIVE_TYPE )* while ( stream_PRIMITIVE_TYPE.hasNext() ) { adaptor.addChild(root_0, stream_PRIMITIVE_TYPE.nextNode()); } @@ -4068,12 +4227,12 @@ public class smaliParser extends Parser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:592:5: ( nonvoid_type_descriptor )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:604:5: ( nonvoid_type_descriptor )* { root_0 = (CommonTree)adaptor.nil(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:592:5: ( nonvoid_type_descriptor )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:604:5: ( nonvoid_type_descriptor )* loop14: while (true) { int alt14=2; @@ -4084,13 +4243,13 @@ public class smaliParser extends Parser { switch (alt14) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:592:5: nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:604:5: nonvoid_type_descriptor { - pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2292); - nonvoid_type_descriptor97=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2376); + nonvoid_type_descriptor101=nonvoid_type_descriptor(); state._fsp--; - adaptor.addChild(root_0, nonvoid_type_descriptor97.getTree()); + adaptor.addChild(root_0, nonvoid_type_descriptor101.getTree()); } break; @@ -4131,28 +4290,28 @@ public class smaliParser extends Parser { // $ANTLR start "type_descriptor" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:594:1: type_descriptor : ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:606:1: type_descriptor : ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); public final smaliParser.type_descriptor_return type_descriptor() throws RecognitionException { smaliParser.type_descriptor_return retval = new smaliParser.type_descriptor_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token set98=null; + Token set102=null; - CommonTree set98_tree=null; + CommonTree set102_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:595:3: ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:607:3: ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g: { root_0 = (CommonTree)adaptor.nil(); - set98=input.LT(1); + set102=input.LT(1); if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE||input.LA(1)==VOID_TYPE ) { input.consume(); - adaptor.addChild(root_0, (CommonTree)adaptor.create(set98)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(set102)); state.errorRecovery=false; } else { @@ -4188,28 +4347,28 @@ public class smaliParser extends Parser { // $ANTLR start "nonvoid_type_descriptor" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:600:1: nonvoid_type_descriptor : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:612:1: nonvoid_type_descriptor : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); public final smaliParser.nonvoid_type_descriptor_return nonvoid_type_descriptor() throws RecognitionException { smaliParser.nonvoid_type_descriptor_return retval = new smaliParser.nonvoid_type_descriptor_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token set99=null; + Token set103=null; - CommonTree set99_tree=null; + CommonTree set103_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:601:3: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:613:3: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g: { root_0 = (CommonTree)adaptor.nil(); - set99=input.LT(1); + set103=input.LT(1); if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE ) { input.consume(); - adaptor.addChild(root_0, (CommonTree)adaptor.create(set99)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(set103)); state.errorRecovery=false; } else { @@ -4245,28 +4404,28 @@ public class smaliParser extends Parser { // $ANTLR start "reference_type_descriptor" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:605:1: reference_type_descriptor : ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:617:1: reference_type_descriptor : ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); public final smaliParser.reference_type_descriptor_return reference_type_descriptor() throws RecognitionException { smaliParser.reference_type_descriptor_return retval = new smaliParser.reference_type_descriptor_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token set100=null; + Token set104=null; - CommonTree set100_tree=null; + CommonTree set104_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:606:3: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:618:3: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g: { root_0 = (CommonTree)adaptor.nil(); - set100=input.LT(1); + set104=input.LT(1); if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR ) { input.consume(); - adaptor.addChild(root_0, (CommonTree)adaptor.create(set100)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(set104)); state.errorRecovery=false; } else { @@ -4302,23 +4461,23 @@ public class smaliParser extends Parser { // $ANTLR start "integer_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:609:1: integer_literal : ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:621:1: integer_literal : ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] ); public final smaliParser.integer_literal_return integer_literal() throws RecognitionException { smaliParser.integer_literal_return retval = new smaliParser.integer_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token POSITIVE_INTEGER_LITERAL101=null; - Token NEGATIVE_INTEGER_LITERAL102=null; + Token POSITIVE_INTEGER_LITERAL105=null; + Token NEGATIVE_INTEGER_LITERAL106=null; - CommonTree POSITIVE_INTEGER_LITERAL101_tree=null; - CommonTree NEGATIVE_INTEGER_LITERAL102_tree=null; + CommonTree POSITIVE_INTEGER_LITERAL105_tree=null; + CommonTree NEGATIVE_INTEGER_LITERAL106_tree=null; RewriteRuleTokenStream stream_NEGATIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token NEGATIVE_INTEGER_LITERAL"); RewriteRuleTokenStream stream_POSITIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token POSITIVE_INTEGER_LITERAL"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:610:3: ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:622:3: ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] ) int alt16=2; int LA16_0 = input.LA(1); if ( (LA16_0==POSITIVE_INTEGER_LITERAL) ) { @@ -4336,10 +4495,10 @@ public class smaliParser extends Parser { switch (alt16) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:610:5: POSITIVE_INTEGER_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:622:5: POSITIVE_INTEGER_LITERAL { - POSITIVE_INTEGER_LITERAL101=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2369); - stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL101); + POSITIVE_INTEGER_LITERAL105=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2453); + stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL105); // AST REWRITE // elements: @@ -4352,9 +4511,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 610:30: -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] + // 622:30: -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, POSITIVE_INTEGER_LITERAL101)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, POSITIVE_INTEGER_LITERAL105)); } @@ -4363,10 +4522,10 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:611:5: NEGATIVE_INTEGER_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:623:5: NEGATIVE_INTEGER_LITERAL { - NEGATIVE_INTEGER_LITERAL102=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2380); - stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL102); + NEGATIVE_INTEGER_LITERAL106=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2464); + stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL106); // AST REWRITE // elements: @@ -4379,9 +4538,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 611:30: -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] + // 623:30: -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, NEGATIVE_INTEGER_LITERAL102)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, NEGATIVE_INTEGER_LITERAL106)); } @@ -4418,22 +4577,22 @@ public class smaliParser extends Parser { // $ANTLR start "float_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:613:1: float_literal : ( FLOAT_LITERAL_OR_ID -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] | FLOAT_LITERAL ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:625:1: float_literal : ( FLOAT_LITERAL_OR_ID -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] | FLOAT_LITERAL ); public final smaliParser.float_literal_return float_literal() throws RecognitionException { smaliParser.float_literal_return retval = new smaliParser.float_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token FLOAT_LITERAL_OR_ID103=null; - Token FLOAT_LITERAL104=null; + Token FLOAT_LITERAL_OR_ID107=null; + Token FLOAT_LITERAL108=null; - CommonTree FLOAT_LITERAL_OR_ID103_tree=null; - CommonTree FLOAT_LITERAL104_tree=null; + CommonTree FLOAT_LITERAL_OR_ID107_tree=null; + CommonTree FLOAT_LITERAL108_tree=null; RewriteRuleTokenStream stream_FLOAT_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token FLOAT_LITERAL_OR_ID"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:614:3: ( FLOAT_LITERAL_OR_ID -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] | FLOAT_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:626:3: ( FLOAT_LITERAL_OR_ID -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] | FLOAT_LITERAL ) int alt17=2; int LA17_0 = input.LA(1); if ( (LA17_0==FLOAT_LITERAL_OR_ID) ) { @@ -4451,10 +4610,10 @@ public class smaliParser extends Parser { switch (alt17) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:614:5: FLOAT_LITERAL_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:626:5: FLOAT_LITERAL_OR_ID { - FLOAT_LITERAL_OR_ID103=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_float_literal2395); - stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID103); + FLOAT_LITERAL_OR_ID107=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_float_literal2479); + stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID107); // AST REWRITE // elements: @@ -4467,9 +4626,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 614:25: -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] + // 626:25: -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(FLOAT_LITERAL, FLOAT_LITERAL_OR_ID103)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(FLOAT_LITERAL, FLOAT_LITERAL_OR_ID107)); } @@ -4478,14 +4637,14 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:615:5: FLOAT_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:627:5: FLOAT_LITERAL { root_0 = (CommonTree)adaptor.nil(); - FLOAT_LITERAL104=(Token)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal2406); - FLOAT_LITERAL104_tree = (CommonTree)adaptor.create(FLOAT_LITERAL104); - adaptor.addChild(root_0, FLOAT_LITERAL104_tree); + FLOAT_LITERAL108=(Token)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal2490); + FLOAT_LITERAL108_tree = (CommonTree)adaptor.create(FLOAT_LITERAL108); + adaptor.addChild(root_0, FLOAT_LITERAL108_tree); } break; @@ -4518,22 +4677,22 @@ public class smaliParser extends Parser { // $ANTLR start "double_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:617:1: double_literal : ( DOUBLE_LITERAL_OR_ID -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] | DOUBLE_LITERAL ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:629:1: double_literal : ( DOUBLE_LITERAL_OR_ID -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] | DOUBLE_LITERAL ); public final smaliParser.double_literal_return double_literal() throws RecognitionException { smaliParser.double_literal_return retval = new smaliParser.double_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token DOUBLE_LITERAL_OR_ID105=null; - Token DOUBLE_LITERAL106=null; + Token DOUBLE_LITERAL_OR_ID109=null; + Token DOUBLE_LITERAL110=null; - CommonTree DOUBLE_LITERAL_OR_ID105_tree=null; - CommonTree DOUBLE_LITERAL106_tree=null; + CommonTree DOUBLE_LITERAL_OR_ID109_tree=null; + CommonTree DOUBLE_LITERAL110_tree=null; RewriteRuleTokenStream stream_DOUBLE_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token DOUBLE_LITERAL_OR_ID"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:618:3: ( DOUBLE_LITERAL_OR_ID -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] | DOUBLE_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:630:3: ( DOUBLE_LITERAL_OR_ID -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] | DOUBLE_LITERAL ) int alt18=2; int LA18_0 = input.LA(1); if ( (LA18_0==DOUBLE_LITERAL_OR_ID) ) { @@ -4551,10 +4710,10 @@ public class smaliParser extends Parser { switch (alt18) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:618:5: DOUBLE_LITERAL_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:630:5: DOUBLE_LITERAL_OR_ID { - DOUBLE_LITERAL_OR_ID105=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_double_literal2416); - stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID105); + DOUBLE_LITERAL_OR_ID109=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_double_literal2500); + stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID109); // AST REWRITE // elements: @@ -4567,9 +4726,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 618:26: -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] + // 630:26: -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(DOUBLE_LITERAL, DOUBLE_LITERAL_OR_ID105)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(DOUBLE_LITERAL, DOUBLE_LITERAL_OR_ID109)); } @@ -4578,14 +4737,14 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:619:5: DOUBLE_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:631:5: DOUBLE_LITERAL { root_0 = (CommonTree)adaptor.nil(); - DOUBLE_LITERAL106=(Token)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal2427); - DOUBLE_LITERAL106_tree = (CommonTree)adaptor.create(DOUBLE_LITERAL106); - adaptor.addChild(root_0, DOUBLE_LITERAL106_tree); + DOUBLE_LITERAL110=(Token)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal2511); + DOUBLE_LITERAL110_tree = (CommonTree)adaptor.create(DOUBLE_LITERAL110); + adaptor.addChild(root_0, DOUBLE_LITERAL110_tree); } break; @@ -4618,38 +4777,38 @@ public class smaliParser extends Parser { // $ANTLR start "literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:621:1: literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | STRING_LITERAL | BOOL_LITERAL | NULL_LITERAL | array_literal | subannotation | type_field_method_literal | enum_literal ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:633:1: literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | STRING_LITERAL | BOOL_LITERAL | NULL_LITERAL | array_literal | subannotation | type_field_method_literal | enum_literal ); public final smaliParser.literal_return literal() throws RecognitionException { smaliParser.literal_return retval = new smaliParser.literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token LONG_LITERAL107=null; - Token SHORT_LITERAL109=null; - Token BYTE_LITERAL110=null; - Token CHAR_LITERAL113=null; - Token STRING_LITERAL114=null; - Token BOOL_LITERAL115=null; - Token NULL_LITERAL116=null; - ParserRuleReturnScope integer_literal108 =null; - ParserRuleReturnScope float_literal111 =null; - ParserRuleReturnScope double_literal112 =null; - ParserRuleReturnScope array_literal117 =null; - ParserRuleReturnScope subannotation118 =null; - ParserRuleReturnScope type_field_method_literal119 =null; - ParserRuleReturnScope enum_literal120 =null; - - CommonTree LONG_LITERAL107_tree=null; - CommonTree SHORT_LITERAL109_tree=null; - CommonTree BYTE_LITERAL110_tree=null; - CommonTree CHAR_LITERAL113_tree=null; - CommonTree STRING_LITERAL114_tree=null; - CommonTree BOOL_LITERAL115_tree=null; - CommonTree NULL_LITERAL116_tree=null; + Token LONG_LITERAL111=null; + Token SHORT_LITERAL113=null; + Token BYTE_LITERAL114=null; + Token CHAR_LITERAL117=null; + Token STRING_LITERAL118=null; + Token BOOL_LITERAL119=null; + Token NULL_LITERAL120=null; + ParserRuleReturnScope integer_literal112 =null; + ParserRuleReturnScope float_literal115 =null; + ParserRuleReturnScope double_literal116 =null; + ParserRuleReturnScope array_literal121 =null; + ParserRuleReturnScope subannotation122 =null; + ParserRuleReturnScope type_field_method_literal123 =null; + ParserRuleReturnScope enum_literal124 =null; + + CommonTree LONG_LITERAL111_tree=null; + CommonTree SHORT_LITERAL113_tree=null; + CommonTree BYTE_LITERAL114_tree=null; + CommonTree CHAR_LITERAL117_tree=null; + CommonTree STRING_LITERAL118_tree=null; + CommonTree BOOL_LITERAL119_tree=null; + CommonTree NULL_LITERAL120_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:622:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | STRING_LITERAL | BOOL_LITERAL | NULL_LITERAL | array_literal | subannotation | type_field_method_literal | enum_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:634:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | STRING_LITERAL | BOOL_LITERAL | NULL_LITERAL | array_literal | subannotation | type_field_method_literal | enum_literal ) int alt19=14; switch ( input.LA(1) ) { case LONG_LITERAL: @@ -4660,7 +4819,7 @@ public class smaliParser extends Parser { case POSITIVE_INTEGER_LITERAL: { int LA19_2 = input.LA(2); - if ( (LA19_2==EOF||(LA19_2 >= ACCESS_SPEC && LA19_2 <= ANNOTATION_VISIBILITY)||LA19_2==BOOL_LITERAL||(LA19_2 >= CLASS_DIRECTIVE && LA19_2 <= CLOSE_BRACE)||LA19_2==COMMA||(LA19_2 >= DOUBLE_LITERAL_OR_ID && LA19_2 <= END_ANNOTATION_DIRECTIVE)||LA19_2==END_FIELD_DIRECTIVE||LA19_2==END_SUBANNOTATION_DIRECTIVE||LA19_2==FIELD_DIRECTIVE||(LA19_2 >= FLOAT_LITERAL_OR_ID && LA19_2 <= IMPLEMENTS_DIRECTIVE)||(LA19_2 >= INSTRUCTION_FORMAT10t && LA19_2 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_2==INSTRUCTION_FORMAT11x||LA19_2==INSTRUCTION_FORMAT12x_OR_ID||(LA19_2 >= INSTRUCTION_FORMAT21c_FIELD && LA19_2 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_2==INSTRUCTION_FORMAT21t||(LA19_2 >= INSTRUCTION_FORMAT22c_FIELD && LA19_2 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_2 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_2 <= INSTRUCTION_FORMAT22t)||LA19_2==INSTRUCTION_FORMAT23x||(LA19_2 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_2 <= INSTRUCTION_FORMAT31t)||(LA19_2 >= INSTRUCTION_FORMAT35c_METHOD && LA19_2 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_2==INSTRUCTION_FORMAT51l||(LA19_2 >= METHOD_DIRECTIVE && LA19_2 <= NULL_LITERAL)||LA19_2==PARAM_LIST_OR_ID_START||(LA19_2 >= POSITIVE_INTEGER_LITERAL && LA19_2 <= PRIMITIVE_TYPE)||LA19_2==REGISTER||(LA19_2 >= SIMPLE_NAME && LA19_2 <= SOURCE_DIRECTIVE)||(LA19_2 >= SUPER_DIRECTIVE && LA19_2 <= VOID_TYPE)) ) { + if ( (LA19_2==EOF||(LA19_2 >= ACCESS_SPEC && LA19_2 <= ANNOTATION_VISIBILITY)||LA19_2==BOOL_LITERAL||(LA19_2 >= CLASS_DIRECTIVE && LA19_2 <= CLOSE_BRACE)||LA19_2==COMMA||(LA19_2 >= DOUBLE_LITERAL_OR_ID && LA19_2 <= END_ANNOTATION_DIRECTIVE)||LA19_2==END_FIELD_DIRECTIVE||LA19_2==END_SUBANNOTATION_DIRECTIVE||LA19_2==FIELD_DIRECTIVE||(LA19_2 >= FLOAT_LITERAL_OR_ID && LA19_2 <= IMPLEMENTS_DIRECTIVE)||(LA19_2 >= INSTRUCTION_FORMAT10t && LA19_2 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_2==INSTRUCTION_FORMAT11x||LA19_2==INSTRUCTION_FORMAT12x_OR_ID||(LA19_2 >= INSTRUCTION_FORMAT21c_FIELD && LA19_2 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_2==INSTRUCTION_FORMAT21t||(LA19_2 >= INSTRUCTION_FORMAT22c_FIELD && LA19_2 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_2 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_2 <= INSTRUCTION_FORMAT22t)||(LA19_2 >= INSTRUCTION_FORMAT23x && LA19_2 <= INSTRUCTION_FORMAT25x)||(LA19_2 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_2 <= INSTRUCTION_FORMAT31t)||(LA19_2 >= INSTRUCTION_FORMAT35c_METHOD && LA19_2 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_2==INSTRUCTION_FORMAT51l||(LA19_2 >= METHOD_DIRECTIVE && LA19_2 <= NULL_LITERAL)||LA19_2==PARAM_LIST_OR_ID_START||(LA19_2 >= POSITIVE_INTEGER_LITERAL && LA19_2 <= PRIMITIVE_TYPE)||LA19_2==REGISTER||(LA19_2 >= SIMPLE_NAME && LA19_2 <= SOURCE_DIRECTIVE)||(LA19_2 >= SUPER_DIRECTIVE && LA19_2 <= VOID_TYPE)) ) { alt19=2; } else if ( (LA19_2==COLON||LA19_2==OPEN_PAREN) ) { @@ -4684,7 +4843,7 @@ public class smaliParser extends Parser { case NEGATIVE_INTEGER_LITERAL: { int LA19_3 = input.LA(2); - if ( (LA19_3==EOF||(LA19_3 >= ACCESS_SPEC && LA19_3 <= ANNOTATION_VISIBILITY)||LA19_3==BOOL_LITERAL||(LA19_3 >= CLASS_DIRECTIVE && LA19_3 <= CLOSE_BRACE)||LA19_3==COMMA||(LA19_3 >= DOUBLE_LITERAL_OR_ID && LA19_3 <= END_ANNOTATION_DIRECTIVE)||LA19_3==END_FIELD_DIRECTIVE||LA19_3==END_SUBANNOTATION_DIRECTIVE||LA19_3==FIELD_DIRECTIVE||(LA19_3 >= FLOAT_LITERAL_OR_ID && LA19_3 <= IMPLEMENTS_DIRECTIVE)||(LA19_3 >= INSTRUCTION_FORMAT10t && LA19_3 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_3==INSTRUCTION_FORMAT11x||LA19_3==INSTRUCTION_FORMAT12x_OR_ID||(LA19_3 >= INSTRUCTION_FORMAT21c_FIELD && LA19_3 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_3==INSTRUCTION_FORMAT21t||(LA19_3 >= INSTRUCTION_FORMAT22c_FIELD && LA19_3 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_3 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_3 <= INSTRUCTION_FORMAT22t)||LA19_3==INSTRUCTION_FORMAT23x||(LA19_3 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_3 <= INSTRUCTION_FORMAT31t)||(LA19_3 >= INSTRUCTION_FORMAT35c_METHOD && LA19_3 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_3==INSTRUCTION_FORMAT51l||(LA19_3 >= METHOD_DIRECTIVE && LA19_3 <= NULL_LITERAL)||LA19_3==PARAM_LIST_OR_ID_START||(LA19_3 >= POSITIVE_INTEGER_LITERAL && LA19_3 <= PRIMITIVE_TYPE)||LA19_3==REGISTER||(LA19_3 >= SIMPLE_NAME && LA19_3 <= SOURCE_DIRECTIVE)||(LA19_3 >= SUPER_DIRECTIVE && LA19_3 <= VOID_TYPE)) ) { + if ( (LA19_3==EOF||(LA19_3 >= ACCESS_SPEC && LA19_3 <= ANNOTATION_VISIBILITY)||LA19_3==BOOL_LITERAL||(LA19_3 >= CLASS_DIRECTIVE && LA19_3 <= CLOSE_BRACE)||LA19_3==COMMA||(LA19_3 >= DOUBLE_LITERAL_OR_ID && LA19_3 <= END_ANNOTATION_DIRECTIVE)||LA19_3==END_FIELD_DIRECTIVE||LA19_3==END_SUBANNOTATION_DIRECTIVE||LA19_3==FIELD_DIRECTIVE||(LA19_3 >= FLOAT_LITERAL_OR_ID && LA19_3 <= IMPLEMENTS_DIRECTIVE)||(LA19_3 >= INSTRUCTION_FORMAT10t && LA19_3 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_3==INSTRUCTION_FORMAT11x||LA19_3==INSTRUCTION_FORMAT12x_OR_ID||(LA19_3 >= INSTRUCTION_FORMAT21c_FIELD && LA19_3 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_3==INSTRUCTION_FORMAT21t||(LA19_3 >= INSTRUCTION_FORMAT22c_FIELD && LA19_3 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_3 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_3 <= INSTRUCTION_FORMAT22t)||(LA19_3 >= INSTRUCTION_FORMAT23x && LA19_3 <= INSTRUCTION_FORMAT25x)||(LA19_3 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_3 <= INSTRUCTION_FORMAT31t)||(LA19_3 >= INSTRUCTION_FORMAT35c_METHOD && LA19_3 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_3==INSTRUCTION_FORMAT51l||(LA19_3 >= METHOD_DIRECTIVE && LA19_3 <= NULL_LITERAL)||LA19_3==PARAM_LIST_OR_ID_START||(LA19_3 >= POSITIVE_INTEGER_LITERAL && LA19_3 <= PRIMITIVE_TYPE)||LA19_3==REGISTER||(LA19_3 >= SIMPLE_NAME && LA19_3 <= SOURCE_DIRECTIVE)||(LA19_3 >= SUPER_DIRECTIVE && LA19_3 <= VOID_TYPE)) ) { alt19=2; } else if ( (LA19_3==COLON||LA19_3==OPEN_PAREN) ) { @@ -4718,7 +4877,7 @@ public class smaliParser extends Parser { case FLOAT_LITERAL_OR_ID: { int LA19_6 = input.LA(2); - if ( (LA19_6==EOF||(LA19_6 >= ACCESS_SPEC && LA19_6 <= ANNOTATION_VISIBILITY)||LA19_6==BOOL_LITERAL||(LA19_6 >= CLASS_DIRECTIVE && LA19_6 <= CLOSE_BRACE)||LA19_6==COMMA||(LA19_6 >= DOUBLE_LITERAL_OR_ID && LA19_6 <= END_ANNOTATION_DIRECTIVE)||LA19_6==END_FIELD_DIRECTIVE||LA19_6==END_SUBANNOTATION_DIRECTIVE||LA19_6==FIELD_DIRECTIVE||(LA19_6 >= FLOAT_LITERAL_OR_ID && LA19_6 <= IMPLEMENTS_DIRECTIVE)||(LA19_6 >= INSTRUCTION_FORMAT10t && LA19_6 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_6==INSTRUCTION_FORMAT11x||LA19_6==INSTRUCTION_FORMAT12x_OR_ID||(LA19_6 >= INSTRUCTION_FORMAT21c_FIELD && LA19_6 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_6==INSTRUCTION_FORMAT21t||(LA19_6 >= INSTRUCTION_FORMAT22c_FIELD && LA19_6 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_6 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_6 <= INSTRUCTION_FORMAT22t)||LA19_6==INSTRUCTION_FORMAT23x||(LA19_6 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_6 <= INSTRUCTION_FORMAT31t)||(LA19_6 >= INSTRUCTION_FORMAT35c_METHOD && LA19_6 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_6==INSTRUCTION_FORMAT51l||(LA19_6 >= METHOD_DIRECTIVE && LA19_6 <= NULL_LITERAL)||LA19_6==PARAM_LIST_OR_ID_START||(LA19_6 >= POSITIVE_INTEGER_LITERAL && LA19_6 <= PRIMITIVE_TYPE)||LA19_6==REGISTER||(LA19_6 >= SIMPLE_NAME && LA19_6 <= SOURCE_DIRECTIVE)||(LA19_6 >= SUPER_DIRECTIVE && LA19_6 <= VOID_TYPE)) ) { + if ( (LA19_6==EOF||(LA19_6 >= ACCESS_SPEC && LA19_6 <= ANNOTATION_VISIBILITY)||LA19_6==BOOL_LITERAL||(LA19_6 >= CLASS_DIRECTIVE && LA19_6 <= CLOSE_BRACE)||LA19_6==COMMA||(LA19_6 >= DOUBLE_LITERAL_OR_ID && LA19_6 <= END_ANNOTATION_DIRECTIVE)||LA19_6==END_FIELD_DIRECTIVE||LA19_6==END_SUBANNOTATION_DIRECTIVE||LA19_6==FIELD_DIRECTIVE||(LA19_6 >= FLOAT_LITERAL_OR_ID && LA19_6 <= IMPLEMENTS_DIRECTIVE)||(LA19_6 >= INSTRUCTION_FORMAT10t && LA19_6 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_6==INSTRUCTION_FORMAT11x||LA19_6==INSTRUCTION_FORMAT12x_OR_ID||(LA19_6 >= INSTRUCTION_FORMAT21c_FIELD && LA19_6 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_6==INSTRUCTION_FORMAT21t||(LA19_6 >= INSTRUCTION_FORMAT22c_FIELD && LA19_6 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_6 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_6 <= INSTRUCTION_FORMAT22t)||(LA19_6 >= INSTRUCTION_FORMAT23x && LA19_6 <= INSTRUCTION_FORMAT25x)||(LA19_6 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_6 <= INSTRUCTION_FORMAT31t)||(LA19_6 >= INSTRUCTION_FORMAT35c_METHOD && LA19_6 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_6==INSTRUCTION_FORMAT51l||(LA19_6 >= METHOD_DIRECTIVE && LA19_6 <= NULL_LITERAL)||LA19_6==PARAM_LIST_OR_ID_START||(LA19_6 >= POSITIVE_INTEGER_LITERAL && LA19_6 <= PRIMITIVE_TYPE)||LA19_6==REGISTER||(LA19_6 >= SIMPLE_NAME && LA19_6 <= SOURCE_DIRECTIVE)||(LA19_6 >= SUPER_DIRECTIVE && LA19_6 <= VOID_TYPE)) ) { alt19=5; } else if ( (LA19_6==COLON||LA19_6==OPEN_PAREN) ) { @@ -4747,7 +4906,7 @@ public class smaliParser extends Parser { case DOUBLE_LITERAL_OR_ID: { int LA19_8 = input.LA(2); - if ( (LA19_8==EOF||(LA19_8 >= ACCESS_SPEC && LA19_8 <= ANNOTATION_VISIBILITY)||LA19_8==BOOL_LITERAL||(LA19_8 >= CLASS_DIRECTIVE && LA19_8 <= CLOSE_BRACE)||LA19_8==COMMA||(LA19_8 >= DOUBLE_LITERAL_OR_ID && LA19_8 <= END_ANNOTATION_DIRECTIVE)||LA19_8==END_FIELD_DIRECTIVE||LA19_8==END_SUBANNOTATION_DIRECTIVE||LA19_8==FIELD_DIRECTIVE||(LA19_8 >= FLOAT_LITERAL_OR_ID && LA19_8 <= IMPLEMENTS_DIRECTIVE)||(LA19_8 >= INSTRUCTION_FORMAT10t && LA19_8 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_8==INSTRUCTION_FORMAT11x||LA19_8==INSTRUCTION_FORMAT12x_OR_ID||(LA19_8 >= INSTRUCTION_FORMAT21c_FIELD && LA19_8 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_8==INSTRUCTION_FORMAT21t||(LA19_8 >= INSTRUCTION_FORMAT22c_FIELD && LA19_8 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_8 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_8 <= INSTRUCTION_FORMAT22t)||LA19_8==INSTRUCTION_FORMAT23x||(LA19_8 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_8 <= INSTRUCTION_FORMAT31t)||(LA19_8 >= INSTRUCTION_FORMAT35c_METHOD && LA19_8 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_8==INSTRUCTION_FORMAT51l||(LA19_8 >= METHOD_DIRECTIVE && LA19_8 <= NULL_LITERAL)||LA19_8==PARAM_LIST_OR_ID_START||(LA19_8 >= POSITIVE_INTEGER_LITERAL && LA19_8 <= PRIMITIVE_TYPE)||LA19_8==REGISTER||(LA19_8 >= SIMPLE_NAME && LA19_8 <= SOURCE_DIRECTIVE)||(LA19_8 >= SUPER_DIRECTIVE && LA19_8 <= VOID_TYPE)) ) { + if ( (LA19_8==EOF||(LA19_8 >= ACCESS_SPEC && LA19_8 <= ANNOTATION_VISIBILITY)||LA19_8==BOOL_LITERAL||(LA19_8 >= CLASS_DIRECTIVE && LA19_8 <= CLOSE_BRACE)||LA19_8==COMMA||(LA19_8 >= DOUBLE_LITERAL_OR_ID && LA19_8 <= END_ANNOTATION_DIRECTIVE)||LA19_8==END_FIELD_DIRECTIVE||LA19_8==END_SUBANNOTATION_DIRECTIVE||LA19_8==FIELD_DIRECTIVE||(LA19_8 >= FLOAT_LITERAL_OR_ID && LA19_8 <= IMPLEMENTS_DIRECTIVE)||(LA19_8 >= INSTRUCTION_FORMAT10t && LA19_8 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_8==INSTRUCTION_FORMAT11x||LA19_8==INSTRUCTION_FORMAT12x_OR_ID||(LA19_8 >= INSTRUCTION_FORMAT21c_FIELD && LA19_8 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_8==INSTRUCTION_FORMAT21t||(LA19_8 >= INSTRUCTION_FORMAT22c_FIELD && LA19_8 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_8 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_8 <= INSTRUCTION_FORMAT22t)||(LA19_8 >= INSTRUCTION_FORMAT23x && LA19_8 <= INSTRUCTION_FORMAT25x)||(LA19_8 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_8 <= INSTRUCTION_FORMAT31t)||(LA19_8 >= INSTRUCTION_FORMAT35c_METHOD && LA19_8 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_8==INSTRUCTION_FORMAT51l||(LA19_8 >= METHOD_DIRECTIVE && LA19_8 <= NULL_LITERAL)||LA19_8==PARAM_LIST_OR_ID_START||(LA19_8 >= POSITIVE_INTEGER_LITERAL && LA19_8 <= PRIMITIVE_TYPE)||LA19_8==REGISTER||(LA19_8 >= SIMPLE_NAME && LA19_8 <= SOURCE_DIRECTIVE)||(LA19_8 >= SUPER_DIRECTIVE && LA19_8 <= VOID_TYPE)) ) { alt19=6; } else if ( (LA19_8==COLON||LA19_8==OPEN_PAREN) ) { @@ -4786,7 +4945,7 @@ public class smaliParser extends Parser { case BOOL_LITERAL: { int LA19_12 = input.LA(2); - if ( (LA19_12==EOF||(LA19_12 >= ACCESS_SPEC && LA19_12 <= ANNOTATION_VISIBILITY)||LA19_12==BOOL_LITERAL||(LA19_12 >= CLASS_DIRECTIVE && LA19_12 <= CLOSE_BRACE)||LA19_12==COMMA||(LA19_12 >= DOUBLE_LITERAL_OR_ID && LA19_12 <= END_ANNOTATION_DIRECTIVE)||LA19_12==END_FIELD_DIRECTIVE||LA19_12==END_SUBANNOTATION_DIRECTIVE||LA19_12==FIELD_DIRECTIVE||(LA19_12 >= FLOAT_LITERAL_OR_ID && LA19_12 <= IMPLEMENTS_DIRECTIVE)||(LA19_12 >= INSTRUCTION_FORMAT10t && LA19_12 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_12==INSTRUCTION_FORMAT11x||LA19_12==INSTRUCTION_FORMAT12x_OR_ID||(LA19_12 >= INSTRUCTION_FORMAT21c_FIELD && LA19_12 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_12==INSTRUCTION_FORMAT21t||(LA19_12 >= INSTRUCTION_FORMAT22c_FIELD && LA19_12 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_12 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_12 <= INSTRUCTION_FORMAT22t)||LA19_12==INSTRUCTION_FORMAT23x||(LA19_12 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_12 <= INSTRUCTION_FORMAT31t)||(LA19_12 >= INSTRUCTION_FORMAT35c_METHOD && LA19_12 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_12==INSTRUCTION_FORMAT51l||(LA19_12 >= METHOD_DIRECTIVE && LA19_12 <= NULL_LITERAL)||LA19_12==PARAM_LIST_OR_ID_START||(LA19_12 >= POSITIVE_INTEGER_LITERAL && LA19_12 <= PRIMITIVE_TYPE)||LA19_12==REGISTER||(LA19_12 >= SIMPLE_NAME && LA19_12 <= SOURCE_DIRECTIVE)||(LA19_12 >= SUPER_DIRECTIVE && LA19_12 <= VOID_TYPE)) ) { + if ( (LA19_12==EOF||(LA19_12 >= ACCESS_SPEC && LA19_12 <= ANNOTATION_VISIBILITY)||LA19_12==BOOL_LITERAL||(LA19_12 >= CLASS_DIRECTIVE && LA19_12 <= CLOSE_BRACE)||LA19_12==COMMA||(LA19_12 >= DOUBLE_LITERAL_OR_ID && LA19_12 <= END_ANNOTATION_DIRECTIVE)||LA19_12==END_FIELD_DIRECTIVE||LA19_12==END_SUBANNOTATION_DIRECTIVE||LA19_12==FIELD_DIRECTIVE||(LA19_12 >= FLOAT_LITERAL_OR_ID && LA19_12 <= IMPLEMENTS_DIRECTIVE)||(LA19_12 >= INSTRUCTION_FORMAT10t && LA19_12 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_12==INSTRUCTION_FORMAT11x||LA19_12==INSTRUCTION_FORMAT12x_OR_ID||(LA19_12 >= INSTRUCTION_FORMAT21c_FIELD && LA19_12 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_12==INSTRUCTION_FORMAT21t||(LA19_12 >= INSTRUCTION_FORMAT22c_FIELD && LA19_12 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_12 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_12 <= INSTRUCTION_FORMAT22t)||(LA19_12 >= INSTRUCTION_FORMAT23x && LA19_12 <= INSTRUCTION_FORMAT25x)||(LA19_12 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_12 <= INSTRUCTION_FORMAT31t)||(LA19_12 >= INSTRUCTION_FORMAT35c_METHOD && LA19_12 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_12==INSTRUCTION_FORMAT51l||(LA19_12 >= METHOD_DIRECTIVE && LA19_12 <= NULL_LITERAL)||LA19_12==PARAM_LIST_OR_ID_START||(LA19_12 >= POSITIVE_INTEGER_LITERAL && LA19_12 <= PRIMITIVE_TYPE)||LA19_12==REGISTER||(LA19_12 >= SIMPLE_NAME && LA19_12 <= SOURCE_DIRECTIVE)||(LA19_12 >= SUPER_DIRECTIVE && LA19_12 <= VOID_TYPE)) ) { alt19=9; } else if ( (LA19_12==COLON||LA19_12==OPEN_PAREN) ) { @@ -4810,7 +4969,7 @@ public class smaliParser extends Parser { case NULL_LITERAL: { int LA19_13 = input.LA(2); - if ( (LA19_13==EOF||(LA19_13 >= ACCESS_SPEC && LA19_13 <= ANNOTATION_VISIBILITY)||LA19_13==BOOL_LITERAL||(LA19_13 >= CLASS_DIRECTIVE && LA19_13 <= CLOSE_BRACE)||LA19_13==COMMA||(LA19_13 >= DOUBLE_LITERAL_OR_ID && LA19_13 <= END_ANNOTATION_DIRECTIVE)||LA19_13==END_FIELD_DIRECTIVE||LA19_13==END_SUBANNOTATION_DIRECTIVE||LA19_13==FIELD_DIRECTIVE||(LA19_13 >= FLOAT_LITERAL_OR_ID && LA19_13 <= IMPLEMENTS_DIRECTIVE)||(LA19_13 >= INSTRUCTION_FORMAT10t && LA19_13 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_13==INSTRUCTION_FORMAT11x||LA19_13==INSTRUCTION_FORMAT12x_OR_ID||(LA19_13 >= INSTRUCTION_FORMAT21c_FIELD && LA19_13 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_13==INSTRUCTION_FORMAT21t||(LA19_13 >= INSTRUCTION_FORMAT22c_FIELD && LA19_13 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_13 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_13 <= INSTRUCTION_FORMAT22t)||LA19_13==INSTRUCTION_FORMAT23x||(LA19_13 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_13 <= INSTRUCTION_FORMAT31t)||(LA19_13 >= INSTRUCTION_FORMAT35c_METHOD && LA19_13 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_13==INSTRUCTION_FORMAT51l||(LA19_13 >= METHOD_DIRECTIVE && LA19_13 <= NULL_LITERAL)||LA19_13==PARAM_LIST_OR_ID_START||(LA19_13 >= POSITIVE_INTEGER_LITERAL && LA19_13 <= PRIMITIVE_TYPE)||LA19_13==REGISTER||(LA19_13 >= SIMPLE_NAME && LA19_13 <= SOURCE_DIRECTIVE)||(LA19_13 >= SUPER_DIRECTIVE && LA19_13 <= VOID_TYPE)) ) { + if ( (LA19_13==EOF||(LA19_13 >= ACCESS_SPEC && LA19_13 <= ANNOTATION_VISIBILITY)||LA19_13==BOOL_LITERAL||(LA19_13 >= CLASS_DIRECTIVE && LA19_13 <= CLOSE_BRACE)||LA19_13==COMMA||(LA19_13 >= DOUBLE_LITERAL_OR_ID && LA19_13 <= END_ANNOTATION_DIRECTIVE)||LA19_13==END_FIELD_DIRECTIVE||LA19_13==END_SUBANNOTATION_DIRECTIVE||LA19_13==FIELD_DIRECTIVE||(LA19_13 >= FLOAT_LITERAL_OR_ID && LA19_13 <= IMPLEMENTS_DIRECTIVE)||(LA19_13 >= INSTRUCTION_FORMAT10t && LA19_13 <= INSTRUCTION_FORMAT10x_ODEX)||LA19_13==INSTRUCTION_FORMAT11x||LA19_13==INSTRUCTION_FORMAT12x_OR_ID||(LA19_13 >= INSTRUCTION_FORMAT21c_FIELD && LA19_13 <= INSTRUCTION_FORMAT21c_TYPE)||LA19_13==INSTRUCTION_FORMAT21t||(LA19_13 >= INSTRUCTION_FORMAT22c_FIELD && LA19_13 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA19_13 >= INSTRUCTION_FORMAT22s_OR_ID && LA19_13 <= INSTRUCTION_FORMAT22t)||(LA19_13 >= INSTRUCTION_FORMAT23x && LA19_13 <= INSTRUCTION_FORMAT25x)||(LA19_13 >= INSTRUCTION_FORMAT31i_OR_ID && LA19_13 <= INSTRUCTION_FORMAT31t)||(LA19_13 >= INSTRUCTION_FORMAT35c_METHOD && LA19_13 <= INSTRUCTION_FORMAT35ms_METHOD)||LA19_13==INSTRUCTION_FORMAT51l||(LA19_13 >= METHOD_DIRECTIVE && LA19_13 <= NULL_LITERAL)||LA19_13==PARAM_LIST_OR_ID_START||(LA19_13 >= POSITIVE_INTEGER_LITERAL && LA19_13 <= PRIMITIVE_TYPE)||LA19_13==REGISTER||(LA19_13 >= SIMPLE_NAME && LA19_13 <= SOURCE_DIRECTIVE)||(LA19_13 >= SUPER_DIRECTIVE && LA19_13 <= VOID_TYPE)) ) { alt19=10; } else if ( (LA19_13==COLON||LA19_13==OPEN_PAREN) ) { @@ -4852,16 +5011,20 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT12x_OR_ID: case INSTRUCTION_FORMAT21c_FIELD: case INSTRUCTION_FORMAT21c_FIELD_ODEX: + case INSTRUCTION_FORMAT21c_LAMBDA: + case INSTRUCTION_FORMAT21c_METHOD: case INSTRUCTION_FORMAT21c_STRING: case INSTRUCTION_FORMAT21c_TYPE: case INSTRUCTION_FORMAT21t: case INSTRUCTION_FORMAT22c_FIELD: case INSTRUCTION_FORMAT22c_FIELD_ODEX: + case INSTRUCTION_FORMAT22c_STRING: case INSTRUCTION_FORMAT22c_TYPE: case INSTRUCTION_FORMAT22cs_FIELD: case INSTRUCTION_FORMAT22s_OR_ID: case INSTRUCTION_FORMAT22t: case INSTRUCTION_FORMAT23x: + case INSTRUCTION_FORMAT25x: case INSTRUCTION_FORMAT31i_OR_ID: case INSTRUCTION_FORMAT31t: case INSTRUCTION_FORMAT35c_METHOD: @@ -4893,184 +5056,184 @@ public class smaliParser extends Parser { } switch (alt19) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:622:5: LONG_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:634:5: LONG_LITERAL { root_0 = (CommonTree)adaptor.nil(); - LONG_LITERAL107=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_literal2437); - LONG_LITERAL107_tree = (CommonTree)adaptor.create(LONG_LITERAL107); - adaptor.addChild(root_0, LONG_LITERAL107_tree); + LONG_LITERAL111=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_literal2521); + LONG_LITERAL111_tree = (CommonTree)adaptor.create(LONG_LITERAL111); + adaptor.addChild(root_0, LONG_LITERAL111_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:623:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:635:5: integer_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_integer_literal_in_literal2443); - integer_literal108=integer_literal(); + pushFollow(FOLLOW_integer_literal_in_literal2527); + integer_literal112=integer_literal(); state._fsp--; - adaptor.addChild(root_0, integer_literal108.getTree()); + adaptor.addChild(root_0, integer_literal112.getTree()); } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:624:5: SHORT_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:636:5: SHORT_LITERAL { root_0 = (CommonTree)adaptor.nil(); - SHORT_LITERAL109=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_literal2449); - SHORT_LITERAL109_tree = (CommonTree)adaptor.create(SHORT_LITERAL109); - adaptor.addChild(root_0, SHORT_LITERAL109_tree); + SHORT_LITERAL113=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_literal2533); + SHORT_LITERAL113_tree = (CommonTree)adaptor.create(SHORT_LITERAL113); + adaptor.addChild(root_0, SHORT_LITERAL113_tree); } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:625:5: BYTE_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:637:5: BYTE_LITERAL { root_0 = (CommonTree)adaptor.nil(); - BYTE_LITERAL110=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_literal2455); - BYTE_LITERAL110_tree = (CommonTree)adaptor.create(BYTE_LITERAL110); - adaptor.addChild(root_0, BYTE_LITERAL110_tree); + BYTE_LITERAL114=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_literal2539); + BYTE_LITERAL114_tree = (CommonTree)adaptor.create(BYTE_LITERAL114); + adaptor.addChild(root_0, BYTE_LITERAL114_tree); } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:626:5: float_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:638:5: float_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_float_literal_in_literal2461); - float_literal111=float_literal(); + pushFollow(FOLLOW_float_literal_in_literal2545); + float_literal115=float_literal(); state._fsp--; - adaptor.addChild(root_0, float_literal111.getTree()); + adaptor.addChild(root_0, float_literal115.getTree()); } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:627:5: double_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:639:5: double_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_double_literal_in_literal2467); - double_literal112=double_literal(); + pushFollow(FOLLOW_double_literal_in_literal2551); + double_literal116=double_literal(); state._fsp--; - adaptor.addChild(root_0, double_literal112.getTree()); + adaptor.addChild(root_0, double_literal116.getTree()); } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:628:5: CHAR_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:640:5: CHAR_LITERAL { root_0 = (CommonTree)adaptor.nil(); - CHAR_LITERAL113=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_literal2473); - CHAR_LITERAL113_tree = (CommonTree)adaptor.create(CHAR_LITERAL113); - adaptor.addChild(root_0, CHAR_LITERAL113_tree); + CHAR_LITERAL117=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_literal2557); + CHAR_LITERAL117_tree = (CommonTree)adaptor.create(CHAR_LITERAL117); + adaptor.addChild(root_0, CHAR_LITERAL117_tree); } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:629:5: STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:641:5: STRING_LITERAL { root_0 = (CommonTree)adaptor.nil(); - STRING_LITERAL114=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_literal2479); - STRING_LITERAL114_tree = (CommonTree)adaptor.create(STRING_LITERAL114); - adaptor.addChild(root_0, STRING_LITERAL114_tree); + STRING_LITERAL118=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_literal2563); + STRING_LITERAL118_tree = (CommonTree)adaptor.create(STRING_LITERAL118); + adaptor.addChild(root_0, STRING_LITERAL118_tree); } break; case 9 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:630:5: BOOL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:642:5: BOOL_LITERAL { root_0 = (CommonTree)adaptor.nil(); - BOOL_LITERAL115=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_literal2485); - BOOL_LITERAL115_tree = (CommonTree)adaptor.create(BOOL_LITERAL115); - adaptor.addChild(root_0, BOOL_LITERAL115_tree); + BOOL_LITERAL119=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_literal2569); + BOOL_LITERAL119_tree = (CommonTree)adaptor.create(BOOL_LITERAL119); + adaptor.addChild(root_0, BOOL_LITERAL119_tree); } break; case 10 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:631:5: NULL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:643:5: NULL_LITERAL { root_0 = (CommonTree)adaptor.nil(); - NULL_LITERAL116=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal2491); - NULL_LITERAL116_tree = (CommonTree)adaptor.create(NULL_LITERAL116); - adaptor.addChild(root_0, NULL_LITERAL116_tree); + NULL_LITERAL120=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal2575); + NULL_LITERAL120_tree = (CommonTree)adaptor.create(NULL_LITERAL120); + adaptor.addChild(root_0, NULL_LITERAL120_tree); } break; case 11 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:632:5: array_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:644:5: array_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_array_literal_in_literal2497); - array_literal117=array_literal(); + pushFollow(FOLLOW_array_literal_in_literal2581); + array_literal121=array_literal(); state._fsp--; - adaptor.addChild(root_0, array_literal117.getTree()); + adaptor.addChild(root_0, array_literal121.getTree()); } break; case 12 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:633:5: subannotation + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:645:5: subannotation { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_subannotation_in_literal2503); - subannotation118=subannotation(); + pushFollow(FOLLOW_subannotation_in_literal2587); + subannotation122=subannotation(); state._fsp--; - adaptor.addChild(root_0, subannotation118.getTree()); + adaptor.addChild(root_0, subannotation122.getTree()); } break; case 13 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:634:5: type_field_method_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:646:5: type_field_method_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_type_field_method_literal_in_literal2509); - type_field_method_literal119=type_field_method_literal(); + pushFollow(FOLLOW_type_field_method_literal_in_literal2593); + type_field_method_literal123=type_field_method_literal(); state._fsp--; - adaptor.addChild(root_0, type_field_method_literal119.getTree()); + adaptor.addChild(root_0, type_field_method_literal123.getTree()); } break; case 14 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:635:5: enum_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:647:5: enum_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_enum_literal_in_literal2515); - enum_literal120=enum_literal(); + pushFollow(FOLLOW_enum_literal_in_literal2599); + enum_literal124=enum_literal(); state._fsp--; - adaptor.addChild(root_0, enum_literal120.getTree()); + adaptor.addChild(root_0, enum_literal124.getTree()); } break; @@ -5104,30 +5267,30 @@ public class smaliParser extends Parser { // $ANTLR start "parsed_integer_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:637:1: parsed_integer_literal returns [int value] : integer_literal ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:649:1: parsed_integer_literal returns [int value] : integer_literal ; public final smaliParser.parsed_integer_literal_return parsed_integer_literal() throws RecognitionException { smaliParser.parsed_integer_literal_return retval = new smaliParser.parsed_integer_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - ParserRuleReturnScope integer_literal121 =null; + ParserRuleReturnScope integer_literal125 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:638:3: ( integer_literal ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:638:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:650:3: ( integer_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:650:5: integer_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_integer_literal_in_parsed_integer_literal2528); - integer_literal121=integer_literal(); + pushFollow(FOLLOW_integer_literal_in_parsed_integer_literal2612); + integer_literal125=integer_literal(); state._fsp--; - adaptor.addChild(root_0, integer_literal121.getTree()); + adaptor.addChild(root_0, integer_literal125.getTree()); - retval.value = LiteralTools.parseInt((integer_literal121!=null?input.toString(integer_literal121.start,integer_literal121.stop):null)); + retval.value = LiteralTools.parseInt((integer_literal125!=null?input.toString(integer_literal125.start,integer_literal125.stop):null)); } retval.stop = input.LT(-1); @@ -5157,26 +5320,26 @@ public class smaliParser extends Parser { // $ANTLR start "integral_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:640:1: integral_literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_LITERAL ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:652:1: integral_literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_LITERAL ); public final smaliParser.integral_literal_return integral_literal() throws RecognitionException { smaliParser.integral_literal_return retval = new smaliParser.integral_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token LONG_LITERAL122=null; - Token SHORT_LITERAL124=null; - Token CHAR_LITERAL125=null; - Token BYTE_LITERAL126=null; - ParserRuleReturnScope integer_literal123 =null; + Token LONG_LITERAL126=null; + Token SHORT_LITERAL128=null; + Token CHAR_LITERAL129=null; + Token BYTE_LITERAL130=null; + ParserRuleReturnScope integer_literal127 =null; - CommonTree LONG_LITERAL122_tree=null; - CommonTree SHORT_LITERAL124_tree=null; - CommonTree CHAR_LITERAL125_tree=null; - CommonTree BYTE_LITERAL126_tree=null; + CommonTree LONG_LITERAL126_tree=null; + CommonTree SHORT_LITERAL128_tree=null; + CommonTree CHAR_LITERAL129_tree=null; + CommonTree BYTE_LITERAL130_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:641:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:653:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_LITERAL ) int alt20=5; switch ( input.LA(1) ) { case LONG_LITERAL: @@ -5212,64 +5375,64 @@ public class smaliParser extends Parser { } switch (alt20) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:641:5: LONG_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:653:5: LONG_LITERAL { root_0 = (CommonTree)adaptor.nil(); - LONG_LITERAL122=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_integral_literal2540); - LONG_LITERAL122_tree = (CommonTree)adaptor.create(LONG_LITERAL122); - adaptor.addChild(root_0, LONG_LITERAL122_tree); + LONG_LITERAL126=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_integral_literal2624); + LONG_LITERAL126_tree = (CommonTree)adaptor.create(LONG_LITERAL126); + adaptor.addChild(root_0, LONG_LITERAL126_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:642:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:654:5: integer_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_integer_literal_in_integral_literal2546); - integer_literal123=integer_literal(); + pushFollow(FOLLOW_integer_literal_in_integral_literal2630); + integer_literal127=integer_literal(); state._fsp--; - adaptor.addChild(root_0, integer_literal123.getTree()); + adaptor.addChild(root_0, integer_literal127.getTree()); } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:643:5: SHORT_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:655:5: SHORT_LITERAL { root_0 = (CommonTree)adaptor.nil(); - SHORT_LITERAL124=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_integral_literal2552); - SHORT_LITERAL124_tree = (CommonTree)adaptor.create(SHORT_LITERAL124); - adaptor.addChild(root_0, SHORT_LITERAL124_tree); + SHORT_LITERAL128=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_integral_literal2636); + SHORT_LITERAL128_tree = (CommonTree)adaptor.create(SHORT_LITERAL128); + adaptor.addChild(root_0, SHORT_LITERAL128_tree); } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:644:5: CHAR_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:656:5: CHAR_LITERAL { root_0 = (CommonTree)adaptor.nil(); - CHAR_LITERAL125=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_integral_literal2558); - CHAR_LITERAL125_tree = (CommonTree)adaptor.create(CHAR_LITERAL125); - adaptor.addChild(root_0, CHAR_LITERAL125_tree); + CHAR_LITERAL129=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_integral_literal2642); + CHAR_LITERAL129_tree = (CommonTree)adaptor.create(CHAR_LITERAL129); + adaptor.addChild(root_0, CHAR_LITERAL129_tree); } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:645:5: BYTE_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:657:5: BYTE_LITERAL { root_0 = (CommonTree)adaptor.nil(); - BYTE_LITERAL126=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_integral_literal2564); - BYTE_LITERAL126_tree = (CommonTree)adaptor.create(BYTE_LITERAL126); - adaptor.addChild(root_0, BYTE_LITERAL126_tree); + BYTE_LITERAL130=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_integral_literal2648); + BYTE_LITERAL130_tree = (CommonTree)adaptor.create(BYTE_LITERAL130); + adaptor.addChild(root_0, BYTE_LITERAL130_tree); } break; @@ -5302,29 +5465,29 @@ public class smaliParser extends Parser { // $ANTLR start "fixed_32bit_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:647:1: fixed_32bit_literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | CHAR_LITERAL | BOOL_LITERAL ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:659:1: fixed_32bit_literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | CHAR_LITERAL | BOOL_LITERAL ); public final smaliParser.fixed_32bit_literal_return fixed_32bit_literal() throws RecognitionException { smaliParser.fixed_32bit_literal_return retval = new smaliParser.fixed_32bit_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token LONG_LITERAL127=null; - Token SHORT_LITERAL129=null; - Token BYTE_LITERAL130=null; - Token CHAR_LITERAL132=null; - Token BOOL_LITERAL133=null; - ParserRuleReturnScope integer_literal128 =null; - ParserRuleReturnScope float_literal131 =null; + Token LONG_LITERAL131=null; + Token SHORT_LITERAL133=null; + Token BYTE_LITERAL134=null; + Token CHAR_LITERAL136=null; + Token BOOL_LITERAL137=null; + ParserRuleReturnScope integer_literal132 =null; + ParserRuleReturnScope float_literal135 =null; - CommonTree LONG_LITERAL127_tree=null; - CommonTree SHORT_LITERAL129_tree=null; - CommonTree BYTE_LITERAL130_tree=null; - CommonTree CHAR_LITERAL132_tree=null; - CommonTree BOOL_LITERAL133_tree=null; + CommonTree LONG_LITERAL131_tree=null; + CommonTree SHORT_LITERAL133_tree=null; + CommonTree BYTE_LITERAL134_tree=null; + CommonTree CHAR_LITERAL136_tree=null; + CommonTree BOOL_LITERAL137_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:648:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | CHAR_LITERAL | BOOL_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:660:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | CHAR_LITERAL | BOOL_LITERAL ) int alt21=7; switch ( input.LA(1) ) { case LONG_LITERAL: @@ -5371,90 +5534,90 @@ public class smaliParser extends Parser { } switch (alt21) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:648:5: LONG_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:660:5: LONG_LITERAL { root_0 = (CommonTree)adaptor.nil(); - LONG_LITERAL127=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_32bit_literal2574); - LONG_LITERAL127_tree = (CommonTree)adaptor.create(LONG_LITERAL127); - adaptor.addChild(root_0, LONG_LITERAL127_tree); + LONG_LITERAL131=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_32bit_literal2658); + LONG_LITERAL131_tree = (CommonTree)adaptor.create(LONG_LITERAL131); + adaptor.addChild(root_0, LONG_LITERAL131_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:649:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:661:5: integer_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal2580); - integer_literal128=integer_literal(); + pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal2664); + integer_literal132=integer_literal(); state._fsp--; - adaptor.addChild(root_0, integer_literal128.getTree()); + adaptor.addChild(root_0, integer_literal132.getTree()); } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:650:5: SHORT_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:662:5: SHORT_LITERAL { root_0 = (CommonTree)adaptor.nil(); - SHORT_LITERAL129=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_32bit_literal2586); - SHORT_LITERAL129_tree = (CommonTree)adaptor.create(SHORT_LITERAL129); - adaptor.addChild(root_0, SHORT_LITERAL129_tree); + SHORT_LITERAL133=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_32bit_literal2670); + SHORT_LITERAL133_tree = (CommonTree)adaptor.create(SHORT_LITERAL133); + adaptor.addChild(root_0, SHORT_LITERAL133_tree); } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:651:5: BYTE_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:663:5: BYTE_LITERAL { root_0 = (CommonTree)adaptor.nil(); - BYTE_LITERAL130=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_32bit_literal2592); - BYTE_LITERAL130_tree = (CommonTree)adaptor.create(BYTE_LITERAL130); - adaptor.addChild(root_0, BYTE_LITERAL130_tree); + BYTE_LITERAL134=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_32bit_literal2676); + BYTE_LITERAL134_tree = (CommonTree)adaptor.create(BYTE_LITERAL134); + adaptor.addChild(root_0, BYTE_LITERAL134_tree); } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:652:5: float_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:664:5: float_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal2598); - float_literal131=float_literal(); + pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal2682); + float_literal135=float_literal(); state._fsp--; - adaptor.addChild(root_0, float_literal131.getTree()); + adaptor.addChild(root_0, float_literal135.getTree()); } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:653:5: CHAR_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:665:5: CHAR_LITERAL { root_0 = (CommonTree)adaptor.nil(); - CHAR_LITERAL132=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_32bit_literal2604); - CHAR_LITERAL132_tree = (CommonTree)adaptor.create(CHAR_LITERAL132); - adaptor.addChild(root_0, CHAR_LITERAL132_tree); + CHAR_LITERAL136=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_32bit_literal2688); + CHAR_LITERAL136_tree = (CommonTree)adaptor.create(CHAR_LITERAL136); + adaptor.addChild(root_0, CHAR_LITERAL136_tree); } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:654:5: BOOL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:666:5: BOOL_LITERAL { root_0 = (CommonTree)adaptor.nil(); - BOOL_LITERAL133=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_32bit_literal2610); - BOOL_LITERAL133_tree = (CommonTree)adaptor.create(BOOL_LITERAL133); - adaptor.addChild(root_0, BOOL_LITERAL133_tree); + BOOL_LITERAL137=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_32bit_literal2694); + BOOL_LITERAL137_tree = (CommonTree)adaptor.create(BOOL_LITERAL137); + adaptor.addChild(root_0, BOOL_LITERAL137_tree); } break; @@ -5487,30 +5650,30 @@ public class smaliParser extends Parser { // $ANTLR start "fixed_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:656:1: fixed_literal : ( integer_literal | LONG_LITERAL | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | BOOL_LITERAL ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:668:1: fixed_literal : ( integer_literal | LONG_LITERAL | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | BOOL_LITERAL ); public final smaliParser.fixed_literal_return fixed_literal() throws RecognitionException { smaliParser.fixed_literal_return retval = new smaliParser.fixed_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token LONG_LITERAL135=null; - Token SHORT_LITERAL136=null; - Token BYTE_LITERAL137=null; - Token CHAR_LITERAL140=null; - Token BOOL_LITERAL141=null; - ParserRuleReturnScope integer_literal134 =null; - ParserRuleReturnScope float_literal138 =null; - ParserRuleReturnScope double_literal139 =null; - - CommonTree LONG_LITERAL135_tree=null; - CommonTree SHORT_LITERAL136_tree=null; - CommonTree BYTE_LITERAL137_tree=null; - CommonTree CHAR_LITERAL140_tree=null; - CommonTree BOOL_LITERAL141_tree=null; + Token LONG_LITERAL139=null; + Token SHORT_LITERAL140=null; + Token BYTE_LITERAL141=null; + Token CHAR_LITERAL144=null; + Token BOOL_LITERAL145=null; + ParserRuleReturnScope integer_literal138 =null; + ParserRuleReturnScope float_literal142 =null; + ParserRuleReturnScope double_literal143 =null; + + CommonTree LONG_LITERAL139_tree=null; + CommonTree SHORT_LITERAL140_tree=null; + CommonTree BYTE_LITERAL141_tree=null; + CommonTree CHAR_LITERAL144_tree=null; + CommonTree BOOL_LITERAL145_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:657:3: ( integer_literal | LONG_LITERAL | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | BOOL_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:669:3: ( integer_literal | LONG_LITERAL | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | BOOL_LITERAL ) int alt22=8; switch ( input.LA(1) ) { case NEGATIVE_INTEGER_LITERAL: @@ -5563,104 +5726,104 @@ public class smaliParser extends Parser { } switch (alt22) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:657:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:669:5: integer_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_integer_literal_in_fixed_literal2620); - integer_literal134=integer_literal(); + pushFollow(FOLLOW_integer_literal_in_fixed_literal2704); + integer_literal138=integer_literal(); state._fsp--; - adaptor.addChild(root_0, integer_literal134.getTree()); + adaptor.addChild(root_0, integer_literal138.getTree()); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:658:5: LONG_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:670:5: LONG_LITERAL { root_0 = (CommonTree)adaptor.nil(); - LONG_LITERAL135=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_literal2626); - LONG_LITERAL135_tree = (CommonTree)adaptor.create(LONG_LITERAL135); - adaptor.addChild(root_0, LONG_LITERAL135_tree); + LONG_LITERAL139=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_literal2710); + LONG_LITERAL139_tree = (CommonTree)adaptor.create(LONG_LITERAL139); + adaptor.addChild(root_0, LONG_LITERAL139_tree); } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:659:5: SHORT_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:671:5: SHORT_LITERAL { root_0 = (CommonTree)adaptor.nil(); - SHORT_LITERAL136=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_literal2632); - SHORT_LITERAL136_tree = (CommonTree)adaptor.create(SHORT_LITERAL136); - adaptor.addChild(root_0, SHORT_LITERAL136_tree); + SHORT_LITERAL140=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_literal2716); + SHORT_LITERAL140_tree = (CommonTree)adaptor.create(SHORT_LITERAL140); + adaptor.addChild(root_0, SHORT_LITERAL140_tree); } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:660:5: BYTE_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:672:5: BYTE_LITERAL { root_0 = (CommonTree)adaptor.nil(); - BYTE_LITERAL137=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_literal2638); - BYTE_LITERAL137_tree = (CommonTree)adaptor.create(BYTE_LITERAL137); - adaptor.addChild(root_0, BYTE_LITERAL137_tree); + BYTE_LITERAL141=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_literal2722); + BYTE_LITERAL141_tree = (CommonTree)adaptor.create(BYTE_LITERAL141); + adaptor.addChild(root_0, BYTE_LITERAL141_tree); } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:661:5: float_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:673:5: float_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_float_literal_in_fixed_literal2644); - float_literal138=float_literal(); + pushFollow(FOLLOW_float_literal_in_fixed_literal2728); + float_literal142=float_literal(); state._fsp--; - adaptor.addChild(root_0, float_literal138.getTree()); + adaptor.addChild(root_0, float_literal142.getTree()); } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:662:5: double_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:674:5: double_literal { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_double_literal_in_fixed_literal2650); - double_literal139=double_literal(); + pushFollow(FOLLOW_double_literal_in_fixed_literal2734); + double_literal143=double_literal(); state._fsp--; - adaptor.addChild(root_0, double_literal139.getTree()); + adaptor.addChild(root_0, double_literal143.getTree()); } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:663:5: CHAR_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:675:5: CHAR_LITERAL { root_0 = (CommonTree)adaptor.nil(); - CHAR_LITERAL140=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_literal2656); - CHAR_LITERAL140_tree = (CommonTree)adaptor.create(CHAR_LITERAL140); - adaptor.addChild(root_0, CHAR_LITERAL140_tree); + CHAR_LITERAL144=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_literal2740); + CHAR_LITERAL144_tree = (CommonTree)adaptor.create(CHAR_LITERAL144); + adaptor.addChild(root_0, CHAR_LITERAL144_tree); } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:664:5: BOOL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:676:5: BOOL_LITERAL { root_0 = (CommonTree)adaptor.nil(); - BOOL_LITERAL141=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_literal2662); - BOOL_LITERAL141_tree = (CommonTree)adaptor.create(BOOL_LITERAL141); - adaptor.addChild(root_0, BOOL_LITERAL141_tree); + BOOL_LITERAL145=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_literal2746); + BOOL_LITERAL145_tree = (CommonTree)adaptor.create(BOOL_LITERAL145); + adaptor.addChild(root_0, BOOL_LITERAL145_tree); } break; @@ -5693,38 +5856,38 @@ public class smaliParser extends Parser { // $ANTLR start "array_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:666:1: array_literal : OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:678:1: array_literal : OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) ; public final smaliParser.array_literal_return array_literal() throws RecognitionException { smaliParser.array_literal_return retval = new smaliParser.array_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token OPEN_BRACE142=null; - Token COMMA144=null; - Token CLOSE_BRACE146=null; - ParserRuleReturnScope literal143 =null; - ParserRuleReturnScope literal145 =null; + Token OPEN_BRACE146=null; + Token COMMA148=null; + Token CLOSE_BRACE150=null; + ParserRuleReturnScope literal147 =null; + ParserRuleReturnScope literal149 =null; - CommonTree OPEN_BRACE142_tree=null; - CommonTree COMMA144_tree=null; - CommonTree CLOSE_BRACE146_tree=null; + CommonTree OPEN_BRACE146_tree=null; + CommonTree COMMA148_tree=null; + CommonTree CLOSE_BRACE150_tree=null; RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE"); RewriteRuleSubtreeStream stream_literal=new RewriteRuleSubtreeStream(adaptor,"rule literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:3: ( OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:5: OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:679:3: ( OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:679:5: OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE { - OPEN_BRACE142=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_array_literal2672); - stream_OPEN_BRACE.add(OPEN_BRACE142); + OPEN_BRACE146=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_array_literal2756); + stream_OPEN_BRACE.add(OPEN_BRACE146); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:16: ( literal ( COMMA literal )* |) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:679:16: ( literal ( COMMA literal )* |) int alt24=2; int LA24_0 = input.LA(1); - if ( (LA24_0==ACCESS_SPEC||LA24_0==ANNOTATION_VISIBILITY||LA24_0==ARRAY_DESCRIPTOR||(LA24_0 >= BOOL_LITERAL && LA24_0 <= BYTE_LITERAL)||(LA24_0 >= CHAR_LITERAL && LA24_0 <= CLASS_DESCRIPTOR)||(LA24_0 >= DOUBLE_LITERAL && LA24_0 <= DOUBLE_LITERAL_OR_ID)||LA24_0==ENUM_DIRECTIVE||(LA24_0 >= FLOAT_LITERAL && LA24_0 <= FLOAT_LITERAL_OR_ID)||(LA24_0 >= INSTRUCTION_FORMAT10t && LA24_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA24_0==INSTRUCTION_FORMAT11x||LA24_0==INSTRUCTION_FORMAT12x_OR_ID||(LA24_0 >= INSTRUCTION_FORMAT21c_FIELD && LA24_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA24_0==INSTRUCTION_FORMAT21t||(LA24_0 >= INSTRUCTION_FORMAT22c_FIELD && LA24_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA24_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA24_0 <= INSTRUCTION_FORMAT22t)||LA24_0==INSTRUCTION_FORMAT23x||(LA24_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA24_0 <= INSTRUCTION_FORMAT31t)||(LA24_0 >= INSTRUCTION_FORMAT35c_METHOD && LA24_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA24_0==INSTRUCTION_FORMAT51l||(LA24_0 >= LONG_LITERAL && LA24_0 <= MEMBER_NAME)||(LA24_0 >= NEGATIVE_INTEGER_LITERAL && LA24_0 <= OPEN_BRACE)||LA24_0==PARAM_LIST_OR_ID_START||(LA24_0 >= POSITIVE_INTEGER_LITERAL && LA24_0 <= PRIMITIVE_TYPE)||LA24_0==REGISTER||(LA24_0 >= SHORT_LITERAL && LA24_0 <= SIMPLE_NAME)||(LA24_0 >= STRING_LITERAL && LA24_0 <= SUBANNOTATION_DIRECTIVE)||(LA24_0 >= VERIFICATION_ERROR_TYPE && LA24_0 <= VOID_TYPE)) ) { + if ( (LA24_0==ACCESS_SPEC||LA24_0==ANNOTATION_VISIBILITY||LA24_0==ARRAY_DESCRIPTOR||(LA24_0 >= BOOL_LITERAL && LA24_0 <= BYTE_LITERAL)||(LA24_0 >= CHAR_LITERAL && LA24_0 <= CLASS_DESCRIPTOR)||(LA24_0 >= DOUBLE_LITERAL && LA24_0 <= DOUBLE_LITERAL_OR_ID)||LA24_0==ENUM_DIRECTIVE||(LA24_0 >= FLOAT_LITERAL && LA24_0 <= FLOAT_LITERAL_OR_ID)||(LA24_0 >= INSTRUCTION_FORMAT10t && LA24_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA24_0==INSTRUCTION_FORMAT11x||LA24_0==INSTRUCTION_FORMAT12x_OR_ID||(LA24_0 >= INSTRUCTION_FORMAT21c_FIELD && LA24_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA24_0==INSTRUCTION_FORMAT21t||(LA24_0 >= INSTRUCTION_FORMAT22c_FIELD && LA24_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA24_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA24_0 <= INSTRUCTION_FORMAT22t)||(LA24_0 >= INSTRUCTION_FORMAT23x && LA24_0 <= INSTRUCTION_FORMAT25x)||(LA24_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA24_0 <= INSTRUCTION_FORMAT31t)||(LA24_0 >= INSTRUCTION_FORMAT35c_METHOD && LA24_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA24_0==INSTRUCTION_FORMAT51l||(LA24_0 >= LONG_LITERAL && LA24_0 <= MEMBER_NAME)||(LA24_0 >= NEGATIVE_INTEGER_LITERAL && LA24_0 <= OPEN_BRACE)||LA24_0==PARAM_LIST_OR_ID_START||(LA24_0 >= POSITIVE_INTEGER_LITERAL && LA24_0 <= PRIMITIVE_TYPE)||LA24_0==REGISTER||(LA24_0 >= SHORT_LITERAL && LA24_0 <= SIMPLE_NAME)||(LA24_0 >= STRING_LITERAL && LA24_0 <= SUBANNOTATION_DIRECTIVE)||(LA24_0 >= VERIFICATION_ERROR_TYPE && LA24_0 <= VOID_TYPE)) ) { alt24=1; } else if ( (LA24_0==CLOSE_BRACE) ) { @@ -5739,14 +5902,14 @@ public class smaliParser extends Parser { switch (alt24) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:17: literal ( COMMA literal )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:679:17: literal ( COMMA literal )* { - pushFollow(FOLLOW_literal_in_array_literal2675); - literal143=literal(); + pushFollow(FOLLOW_literal_in_array_literal2759); + literal147=literal(); state._fsp--; - stream_literal.add(literal143.getTree()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:25: ( COMMA literal )* + stream_literal.add(literal147.getTree()); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:679:25: ( COMMA literal )* loop23: while (true) { int alt23=2; @@ -5757,16 +5920,16 @@ public class smaliParser extends Parser { switch (alt23) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:26: COMMA literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:679:26: COMMA literal { - COMMA144=(Token)match(input,COMMA,FOLLOW_COMMA_in_array_literal2678); - stream_COMMA.add(COMMA144); + COMMA148=(Token)match(input,COMMA,FOLLOW_COMMA_in_array_literal2762); + stream_COMMA.add(COMMA148); - pushFollow(FOLLOW_literal_in_array_literal2680); - literal145=literal(); + pushFollow(FOLLOW_literal_in_array_literal2764); + literal149=literal(); state._fsp--; - stream_literal.add(literal145.getTree()); + stream_literal.add(literal149.getTree()); } break; @@ -5778,15 +5941,15 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:44: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:679:44: { } break; } - CLOSE_BRACE146=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_array_literal2688); - stream_CLOSE_BRACE.add(CLOSE_BRACE146); + CLOSE_BRACE150=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_array_literal2772); + stream_CLOSE_BRACE.add(CLOSE_BRACE150); // AST REWRITE // elements: literal @@ -5799,13 +5962,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 668:5: -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) + // 680:5: -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:668:8: ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:680:8: ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_ARRAY, (retval.start), "I_ENCODED_ARRAY"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:668:53: ( literal )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:680:53: ( literal )* while ( stream_literal.hasNext() ) { adaptor.addChild(root_1, stream_literal.nextTree()); } @@ -5848,41 +6011,41 @@ public class smaliParser extends Parser { // $ANTLR start "annotation_element" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:670:1: annotation_element : simple_name EQUAL literal -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:682:1: annotation_element : simple_name EQUAL literal -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) ; public final smaliParser.annotation_element_return annotation_element() throws RecognitionException { smaliParser.annotation_element_return retval = new smaliParser.annotation_element_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token EQUAL148=null; - ParserRuleReturnScope simple_name147 =null; - ParserRuleReturnScope literal149 =null; + Token EQUAL152=null; + ParserRuleReturnScope simple_name151 =null; + ParserRuleReturnScope literal153 =null; - CommonTree EQUAL148_tree=null; + CommonTree EQUAL152_tree=null; RewriteRuleTokenStream stream_EQUAL=new RewriteRuleTokenStream(adaptor,"token EQUAL"); RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); RewriteRuleSubtreeStream stream_literal=new RewriteRuleSubtreeStream(adaptor,"rule literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:671:3: ( simple_name EQUAL literal -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:671:5: simple_name EQUAL literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:683:3: ( simple_name EQUAL literal -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:683:5: simple_name EQUAL literal { - pushFollow(FOLLOW_simple_name_in_annotation_element2712); - simple_name147=simple_name(); + pushFollow(FOLLOW_simple_name_in_annotation_element2796); + simple_name151=simple_name(); state._fsp--; - stream_simple_name.add(simple_name147.getTree()); - EQUAL148=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_annotation_element2714); - stream_EQUAL.add(EQUAL148); + stream_simple_name.add(simple_name151.getTree()); + EQUAL152=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_annotation_element2798); + stream_EQUAL.add(EQUAL152); - pushFollow(FOLLOW_literal_in_annotation_element2716); - literal149=literal(); + pushFollow(FOLLOW_literal_in_annotation_element2800); + literal153=literal(); state._fsp--; - stream_literal.add(literal149.getTree()); + stream_literal.add(literal153.getTree()); // AST REWRITE - // elements: literal, simple_name + // elements: simple_name, literal // token labels: // rule labels: retval // token list labels: @@ -5892,9 +6055,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 672:5: -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) + // 684:5: -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:672:8: ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:684:8: ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATION_ELEMENT, (retval.start), "I_ANNOTATION_ELEMENT"), root_1); @@ -5937,23 +6100,23 @@ public class smaliParser extends Parser { // $ANTLR start "annotation" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:674:1: annotation : ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:686:1: annotation : ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) ; public final smaliParser.annotation_return annotation() throws RecognitionException { smaliParser.annotation_return retval = new smaliParser.annotation_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token ANNOTATION_DIRECTIVE150=null; - Token ANNOTATION_VISIBILITY151=null; - Token CLASS_DESCRIPTOR152=null; - Token END_ANNOTATION_DIRECTIVE154=null; - ParserRuleReturnScope annotation_element153 =null; + Token ANNOTATION_DIRECTIVE154=null; + Token ANNOTATION_VISIBILITY155=null; + Token CLASS_DESCRIPTOR156=null; + Token END_ANNOTATION_DIRECTIVE158=null; + ParserRuleReturnScope annotation_element157 =null; - CommonTree ANNOTATION_DIRECTIVE150_tree=null; - CommonTree ANNOTATION_VISIBILITY151_tree=null; - CommonTree CLASS_DESCRIPTOR152_tree=null; - CommonTree END_ANNOTATION_DIRECTIVE154_tree=null; + CommonTree ANNOTATION_DIRECTIVE154_tree=null; + CommonTree ANNOTATION_VISIBILITY155_tree=null; + CommonTree CLASS_DESCRIPTOR156_tree=null; + CommonTree END_ANNOTATION_DIRECTIVE158_tree=null; RewriteRuleTokenStream stream_ANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token ANNOTATION_DIRECTIVE"); RewriteRuleTokenStream stream_END_ANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_ANNOTATION_DIRECTIVE"); RewriteRuleTokenStream stream_ANNOTATION_VISIBILITY=new RewriteRuleTokenStream(adaptor,"token ANNOTATION_VISIBILITY"); @@ -5961,36 +6124,36 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_annotation_element=new RewriteRuleSubtreeStream(adaptor,"rule annotation_element"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:675:3: ( ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:675:5: ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:687:3: ( ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:687:5: ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE { - ANNOTATION_DIRECTIVE150=(Token)match(input,ANNOTATION_DIRECTIVE,FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2741); - stream_ANNOTATION_DIRECTIVE.add(ANNOTATION_DIRECTIVE150); + ANNOTATION_DIRECTIVE154=(Token)match(input,ANNOTATION_DIRECTIVE,FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2825); + stream_ANNOTATION_DIRECTIVE.add(ANNOTATION_DIRECTIVE154); - ANNOTATION_VISIBILITY151=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation2743); - stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY151); + ANNOTATION_VISIBILITY155=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation2827); + stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY155); - CLASS_DESCRIPTOR152=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_annotation2745); - stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR152); + CLASS_DESCRIPTOR156=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_annotation2829); + stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR156); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:676:5: ( annotation_element )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:688:5: ( annotation_element )* loop25: while (true) { int alt25=2; int LA25_0 = input.LA(1); - if ( (LA25_0==ACCESS_SPEC||LA25_0==ANNOTATION_VISIBILITY||LA25_0==BOOL_LITERAL||LA25_0==DOUBLE_LITERAL_OR_ID||LA25_0==FLOAT_LITERAL_OR_ID||(LA25_0 >= INSTRUCTION_FORMAT10t && LA25_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA25_0==INSTRUCTION_FORMAT11x||LA25_0==INSTRUCTION_FORMAT12x_OR_ID||(LA25_0 >= INSTRUCTION_FORMAT21c_FIELD && LA25_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA25_0==INSTRUCTION_FORMAT21t||(LA25_0 >= INSTRUCTION_FORMAT22c_FIELD && LA25_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA25_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA25_0 <= INSTRUCTION_FORMAT22t)||LA25_0==INSTRUCTION_FORMAT23x||(LA25_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA25_0 <= INSTRUCTION_FORMAT31t)||(LA25_0 >= INSTRUCTION_FORMAT35c_METHOD && LA25_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA25_0==INSTRUCTION_FORMAT51l||(LA25_0 >= NEGATIVE_INTEGER_LITERAL && LA25_0 <= NULL_LITERAL)||LA25_0==PARAM_LIST_OR_ID_START||(LA25_0 >= POSITIVE_INTEGER_LITERAL && LA25_0 <= PRIMITIVE_TYPE)||LA25_0==REGISTER||LA25_0==SIMPLE_NAME||(LA25_0 >= VERIFICATION_ERROR_TYPE && LA25_0 <= VOID_TYPE)) ) { + if ( (LA25_0==ACCESS_SPEC||LA25_0==ANNOTATION_VISIBILITY||LA25_0==BOOL_LITERAL||LA25_0==DOUBLE_LITERAL_OR_ID||LA25_0==FLOAT_LITERAL_OR_ID||(LA25_0 >= INSTRUCTION_FORMAT10t && LA25_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA25_0==INSTRUCTION_FORMAT11x||LA25_0==INSTRUCTION_FORMAT12x_OR_ID||(LA25_0 >= INSTRUCTION_FORMAT21c_FIELD && LA25_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA25_0==INSTRUCTION_FORMAT21t||(LA25_0 >= INSTRUCTION_FORMAT22c_FIELD && LA25_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA25_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA25_0 <= INSTRUCTION_FORMAT22t)||(LA25_0 >= INSTRUCTION_FORMAT23x && LA25_0 <= INSTRUCTION_FORMAT25x)||(LA25_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA25_0 <= INSTRUCTION_FORMAT31t)||(LA25_0 >= INSTRUCTION_FORMAT35c_METHOD && LA25_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA25_0==INSTRUCTION_FORMAT51l||(LA25_0 >= NEGATIVE_INTEGER_LITERAL && LA25_0 <= NULL_LITERAL)||LA25_0==PARAM_LIST_OR_ID_START||(LA25_0 >= POSITIVE_INTEGER_LITERAL && LA25_0 <= PRIMITIVE_TYPE)||LA25_0==REGISTER||LA25_0==SIMPLE_NAME||(LA25_0 >= VERIFICATION_ERROR_TYPE && LA25_0 <= VOID_TYPE)) ) { alt25=1; } switch (alt25) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:676:5: annotation_element + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:688:5: annotation_element { - pushFollow(FOLLOW_annotation_element_in_annotation2751); - annotation_element153=annotation_element(); + pushFollow(FOLLOW_annotation_element_in_annotation2835); + annotation_element157=annotation_element(); state._fsp--; - stream_annotation_element.add(annotation_element153.getTree()); + stream_annotation_element.add(annotation_element157.getTree()); } break; @@ -5999,8 +6162,8 @@ public class smaliParser extends Parser { } } - END_ANNOTATION_DIRECTIVE154=(Token)match(input,END_ANNOTATION_DIRECTIVE,FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2754); - stream_END_ANNOTATION_DIRECTIVE.add(END_ANNOTATION_DIRECTIVE154); + END_ANNOTATION_DIRECTIVE158=(Token)match(input,END_ANNOTATION_DIRECTIVE,FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2838); + stream_END_ANNOTATION_DIRECTIVE.add(END_ANNOTATION_DIRECTIVE158); // AST REWRITE // elements: CLASS_DESCRIPTOR, ANNOTATION_VISIBILITY, annotation_element @@ -6013,19 +6176,19 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 677:5: -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) + // 689:5: -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:677:8: ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:689:8: ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATION, (retval.start), "I_ANNOTATION"), root_1); adaptor.addChild(root_1, stream_ANNOTATION_VISIBILITY.nextNode()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:677:69: ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:689:69: ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SUBANNOTATION, (retval.start), "I_SUBANNOTATION"), root_2); adaptor.addChild(root_2, stream_CLASS_DESCRIPTOR.nextNode()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:677:131: ( annotation_element )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:689:131: ( annotation_element )* while ( stream_annotation_element.hasNext() ) { adaptor.addChild(root_2, stream_annotation_element.nextTree()); } @@ -6071,54 +6234,54 @@ public class smaliParser extends Parser { // $ANTLR start "subannotation" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:679:1: subannotation : SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:691:1: subannotation : SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ; public final smaliParser.subannotation_return subannotation() throws RecognitionException { smaliParser.subannotation_return retval = new smaliParser.subannotation_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token SUBANNOTATION_DIRECTIVE155=null; - Token CLASS_DESCRIPTOR156=null; - Token END_SUBANNOTATION_DIRECTIVE158=null; - ParserRuleReturnScope annotation_element157 =null; + Token SUBANNOTATION_DIRECTIVE159=null; + Token CLASS_DESCRIPTOR160=null; + Token END_SUBANNOTATION_DIRECTIVE162=null; + ParserRuleReturnScope annotation_element161 =null; - CommonTree SUBANNOTATION_DIRECTIVE155_tree=null; - CommonTree CLASS_DESCRIPTOR156_tree=null; - CommonTree END_SUBANNOTATION_DIRECTIVE158_tree=null; + CommonTree SUBANNOTATION_DIRECTIVE159_tree=null; + CommonTree CLASS_DESCRIPTOR160_tree=null; + CommonTree END_SUBANNOTATION_DIRECTIVE162_tree=null; RewriteRuleTokenStream stream_SUBANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SUBANNOTATION_DIRECTIVE"); RewriteRuleTokenStream stream_END_SUBANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_SUBANNOTATION_DIRECTIVE"); RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); RewriteRuleSubtreeStream stream_annotation_element=new RewriteRuleSubtreeStream(adaptor,"rule annotation_element"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:680:3: ( SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:680:5: SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:692:3: ( SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:692:5: SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE { - SUBANNOTATION_DIRECTIVE155=(Token)match(input,SUBANNOTATION_DIRECTIVE,FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2787); - stream_SUBANNOTATION_DIRECTIVE.add(SUBANNOTATION_DIRECTIVE155); + SUBANNOTATION_DIRECTIVE159=(Token)match(input,SUBANNOTATION_DIRECTIVE,FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2871); + stream_SUBANNOTATION_DIRECTIVE.add(SUBANNOTATION_DIRECTIVE159); - CLASS_DESCRIPTOR156=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation2789); - stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR156); + CLASS_DESCRIPTOR160=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation2873); + stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR160); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:680:46: ( annotation_element )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:692:46: ( annotation_element )* loop26: while (true) { int alt26=2; int LA26_0 = input.LA(1); - if ( (LA26_0==ACCESS_SPEC||LA26_0==ANNOTATION_VISIBILITY||LA26_0==BOOL_LITERAL||LA26_0==DOUBLE_LITERAL_OR_ID||LA26_0==FLOAT_LITERAL_OR_ID||(LA26_0 >= INSTRUCTION_FORMAT10t && LA26_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA26_0==INSTRUCTION_FORMAT11x||LA26_0==INSTRUCTION_FORMAT12x_OR_ID||(LA26_0 >= INSTRUCTION_FORMAT21c_FIELD && LA26_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA26_0==INSTRUCTION_FORMAT21t||(LA26_0 >= INSTRUCTION_FORMAT22c_FIELD && LA26_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA26_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA26_0 <= INSTRUCTION_FORMAT22t)||LA26_0==INSTRUCTION_FORMAT23x||(LA26_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA26_0 <= INSTRUCTION_FORMAT31t)||(LA26_0 >= INSTRUCTION_FORMAT35c_METHOD && LA26_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA26_0==INSTRUCTION_FORMAT51l||(LA26_0 >= NEGATIVE_INTEGER_LITERAL && LA26_0 <= NULL_LITERAL)||LA26_0==PARAM_LIST_OR_ID_START||(LA26_0 >= POSITIVE_INTEGER_LITERAL && LA26_0 <= PRIMITIVE_TYPE)||LA26_0==REGISTER||LA26_0==SIMPLE_NAME||(LA26_0 >= VERIFICATION_ERROR_TYPE && LA26_0 <= VOID_TYPE)) ) { + if ( (LA26_0==ACCESS_SPEC||LA26_0==ANNOTATION_VISIBILITY||LA26_0==BOOL_LITERAL||LA26_0==DOUBLE_LITERAL_OR_ID||LA26_0==FLOAT_LITERAL_OR_ID||(LA26_0 >= INSTRUCTION_FORMAT10t && LA26_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA26_0==INSTRUCTION_FORMAT11x||LA26_0==INSTRUCTION_FORMAT12x_OR_ID||(LA26_0 >= INSTRUCTION_FORMAT21c_FIELD && LA26_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA26_0==INSTRUCTION_FORMAT21t||(LA26_0 >= INSTRUCTION_FORMAT22c_FIELD && LA26_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA26_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA26_0 <= INSTRUCTION_FORMAT22t)||(LA26_0 >= INSTRUCTION_FORMAT23x && LA26_0 <= INSTRUCTION_FORMAT25x)||(LA26_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA26_0 <= INSTRUCTION_FORMAT31t)||(LA26_0 >= INSTRUCTION_FORMAT35c_METHOD && LA26_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA26_0==INSTRUCTION_FORMAT51l||(LA26_0 >= NEGATIVE_INTEGER_LITERAL && LA26_0 <= NULL_LITERAL)||LA26_0==PARAM_LIST_OR_ID_START||(LA26_0 >= POSITIVE_INTEGER_LITERAL && LA26_0 <= PRIMITIVE_TYPE)||LA26_0==REGISTER||LA26_0==SIMPLE_NAME||(LA26_0 >= VERIFICATION_ERROR_TYPE && LA26_0 <= VOID_TYPE)) ) { alt26=1; } switch (alt26) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:680:46: annotation_element + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:692:46: annotation_element { - pushFollow(FOLLOW_annotation_element_in_subannotation2791); - annotation_element157=annotation_element(); + pushFollow(FOLLOW_annotation_element_in_subannotation2875); + annotation_element161=annotation_element(); state._fsp--; - stream_annotation_element.add(annotation_element157.getTree()); + stream_annotation_element.add(annotation_element161.getTree()); } break; @@ -6127,8 +6290,8 @@ public class smaliParser extends Parser { } } - END_SUBANNOTATION_DIRECTIVE158=(Token)match(input,END_SUBANNOTATION_DIRECTIVE,FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2794); - stream_END_SUBANNOTATION_DIRECTIVE.add(END_SUBANNOTATION_DIRECTIVE158); + END_SUBANNOTATION_DIRECTIVE162=(Token)match(input,END_SUBANNOTATION_DIRECTIVE,FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2878); + stream_END_SUBANNOTATION_DIRECTIVE.add(END_SUBANNOTATION_DIRECTIVE162); // AST REWRITE // elements: annotation_element, CLASS_DESCRIPTOR @@ -6141,14 +6304,14 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 681:5: -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) + // 693:5: -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:681:8: ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:693:8: ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SUBANNOTATION, (retval.start), "I_SUBANNOTATION"), root_1); adaptor.addChild(root_1, stream_CLASS_DESCRIPTOR.nextNode()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:681:70: ( annotation_element )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:693:70: ( annotation_element )* while ( stream_annotation_element.hasNext() ) { adaptor.addChild(root_1, stream_annotation_element.nextTree()); } @@ -6191,23 +6354,23 @@ public class smaliParser extends Parser { // $ANTLR start "enum_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:683:1: enum_literal : ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:695:1: enum_literal : ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) ; public final smaliParser.enum_literal_return enum_literal() throws RecognitionException { smaliParser.enum_literal_return retval = new smaliParser.enum_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token ENUM_DIRECTIVE159=null; - Token ARROW161=null; - Token COLON163=null; - ParserRuleReturnScope reference_type_descriptor160 =null; - ParserRuleReturnScope simple_name162 =null; + Token ENUM_DIRECTIVE163=null; + Token ARROW165=null; + Token COLON167=null; ParserRuleReturnScope reference_type_descriptor164 =null; + ParserRuleReturnScope simple_name166 =null; + ParserRuleReturnScope reference_type_descriptor168 =null; - CommonTree ENUM_DIRECTIVE159_tree=null; - CommonTree ARROW161_tree=null; - CommonTree COLON163_tree=null; + CommonTree ENUM_DIRECTIVE163_tree=null; + CommonTree ARROW165_tree=null; + CommonTree COLON167_tree=null; RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); RewriteRuleTokenStream stream_ENUM_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token ENUM_DIRECTIVE"); RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); @@ -6215,35 +6378,35 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:684:3: ( ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:684:5: ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:696:3: ( ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:696:5: ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor { - ENUM_DIRECTIVE159=(Token)match(input,ENUM_DIRECTIVE,FOLLOW_ENUM_DIRECTIVE_in_enum_literal2820); - stream_ENUM_DIRECTIVE.add(ENUM_DIRECTIVE159); + ENUM_DIRECTIVE163=(Token)match(input,ENUM_DIRECTIVE,FOLLOW_ENUM_DIRECTIVE_in_enum_literal2904); + stream_ENUM_DIRECTIVE.add(ENUM_DIRECTIVE163); - pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2822); - reference_type_descriptor160=reference_type_descriptor(); + pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2906); + reference_type_descriptor164=reference_type_descriptor(); state._fsp--; - stream_reference_type_descriptor.add(reference_type_descriptor160.getTree()); - ARROW161=(Token)match(input,ARROW,FOLLOW_ARROW_in_enum_literal2824); - stream_ARROW.add(ARROW161); + stream_reference_type_descriptor.add(reference_type_descriptor164.getTree()); + ARROW165=(Token)match(input,ARROW,FOLLOW_ARROW_in_enum_literal2908); + stream_ARROW.add(ARROW165); - pushFollow(FOLLOW_simple_name_in_enum_literal2826); - simple_name162=simple_name(); + pushFollow(FOLLOW_simple_name_in_enum_literal2910); + simple_name166=simple_name(); state._fsp--; - stream_simple_name.add(simple_name162.getTree()); - COLON163=(Token)match(input,COLON,FOLLOW_COLON_in_enum_literal2828); - stream_COLON.add(COLON163); + stream_simple_name.add(simple_name166.getTree()); + COLON167=(Token)match(input,COLON,FOLLOW_COLON_in_enum_literal2912); + stream_COLON.add(COLON167); - pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2830); - reference_type_descriptor164=reference_type_descriptor(); + pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2914); + reference_type_descriptor168=reference_type_descriptor(); state._fsp--; - stream_reference_type_descriptor.add(reference_type_descriptor164.getTree()); + stream_reference_type_descriptor.add(reference_type_descriptor168.getTree()); // AST REWRITE - // elements: simple_name, reference_type_descriptor, reference_type_descriptor + // elements: reference_type_descriptor, simple_name, reference_type_descriptor // token labels: // rule labels: retval // token list labels: @@ -6253,9 +6416,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 685:3: -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) + // 697:3: -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:685:6: ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:697:6: ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_ENUM, "I_ENCODED_ENUM"), root_1); @@ -6299,28 +6462,28 @@ public class smaliParser extends Parser { // $ANTLR start "type_field_method_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:687:1: type_field_method_literal : ( reference_type_descriptor | ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) | PRIMITIVE_TYPE | VOID_TYPE ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:699:1: type_field_method_literal : ( reference_type_descriptor | ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) | PRIMITIVE_TYPE | VOID_TYPE ); public final smaliParser.type_field_method_literal_return type_field_method_literal() throws RecognitionException { smaliParser.type_field_method_literal_return retval = new smaliParser.type_field_method_literal_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token ARROW167=null; - Token COLON169=null; - Token PRIMITIVE_TYPE173=null; - Token VOID_TYPE174=null; - ParserRuleReturnScope reference_type_descriptor165 =null; - ParserRuleReturnScope reference_type_descriptor166 =null; - ParserRuleReturnScope member_name168 =null; - ParserRuleReturnScope nonvoid_type_descriptor170 =null; - ParserRuleReturnScope member_name171 =null; - ParserRuleReturnScope method_prototype172 =null; - - CommonTree ARROW167_tree=null; - CommonTree COLON169_tree=null; - CommonTree PRIMITIVE_TYPE173_tree=null; - CommonTree VOID_TYPE174_tree=null; + Token ARROW171=null; + Token COLON173=null; + Token PRIMITIVE_TYPE177=null; + Token VOID_TYPE178=null; + ParserRuleReturnScope reference_type_descriptor169 =null; + ParserRuleReturnScope reference_type_descriptor170 =null; + ParserRuleReturnScope member_name172 =null; + ParserRuleReturnScope nonvoid_type_descriptor174 =null; + ParserRuleReturnScope member_name175 =null; + ParserRuleReturnScope method_prototype176 =null; + + CommonTree ARROW171_tree=null; + CommonTree COLON173_tree=null; + CommonTree PRIMITIVE_TYPE177_tree=null; + CommonTree VOID_TYPE178_tree=null; RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); @@ -6329,14 +6492,14 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:688:3: ( reference_type_descriptor | ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) | PRIMITIVE_TYPE | VOID_TYPE ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:700:3: ( reference_type_descriptor | ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) | PRIMITIVE_TYPE | VOID_TYPE ) int alt29=4; switch ( input.LA(1) ) { case ARRAY_DESCRIPTOR: case CLASS_DESCRIPTOR: { int LA29_1 = input.LA(2); - if ( (LA29_1==EOF||(LA29_1 >= ACCESS_SPEC && LA29_1 <= ANNOTATION_VISIBILITY)||LA29_1==BOOL_LITERAL||(LA29_1 >= CLASS_DIRECTIVE && LA29_1 <= CLOSE_BRACE)||LA29_1==COMMA||(LA29_1 >= DOUBLE_LITERAL_OR_ID && LA29_1 <= END_ANNOTATION_DIRECTIVE)||LA29_1==END_FIELD_DIRECTIVE||LA29_1==END_SUBANNOTATION_DIRECTIVE||LA29_1==FIELD_DIRECTIVE||(LA29_1 >= FLOAT_LITERAL_OR_ID && LA29_1 <= IMPLEMENTS_DIRECTIVE)||(LA29_1 >= INSTRUCTION_FORMAT10t && LA29_1 <= INSTRUCTION_FORMAT10x_ODEX)||LA29_1==INSTRUCTION_FORMAT11x||LA29_1==INSTRUCTION_FORMAT12x_OR_ID||(LA29_1 >= INSTRUCTION_FORMAT21c_FIELD && LA29_1 <= INSTRUCTION_FORMAT21c_TYPE)||LA29_1==INSTRUCTION_FORMAT21t||(LA29_1 >= INSTRUCTION_FORMAT22c_FIELD && LA29_1 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA29_1 >= INSTRUCTION_FORMAT22s_OR_ID && LA29_1 <= INSTRUCTION_FORMAT22t)||LA29_1==INSTRUCTION_FORMAT23x||(LA29_1 >= INSTRUCTION_FORMAT31i_OR_ID && LA29_1 <= INSTRUCTION_FORMAT31t)||(LA29_1 >= INSTRUCTION_FORMAT35c_METHOD && LA29_1 <= INSTRUCTION_FORMAT35ms_METHOD)||LA29_1==INSTRUCTION_FORMAT51l||(LA29_1 >= METHOD_DIRECTIVE && LA29_1 <= NULL_LITERAL)||LA29_1==PARAM_LIST_OR_ID_START||(LA29_1 >= POSITIVE_INTEGER_LITERAL && LA29_1 <= PRIMITIVE_TYPE)||LA29_1==REGISTER||(LA29_1 >= SIMPLE_NAME && LA29_1 <= SOURCE_DIRECTIVE)||(LA29_1 >= SUPER_DIRECTIVE && LA29_1 <= VOID_TYPE)) ) { + if ( (LA29_1==EOF||(LA29_1 >= ACCESS_SPEC && LA29_1 <= ANNOTATION_VISIBILITY)||LA29_1==BOOL_LITERAL||(LA29_1 >= CLASS_DIRECTIVE && LA29_1 <= CLOSE_BRACE)||LA29_1==COMMA||(LA29_1 >= DOUBLE_LITERAL_OR_ID && LA29_1 <= END_ANNOTATION_DIRECTIVE)||LA29_1==END_FIELD_DIRECTIVE||LA29_1==END_SUBANNOTATION_DIRECTIVE||LA29_1==FIELD_DIRECTIVE||(LA29_1 >= FLOAT_LITERAL_OR_ID && LA29_1 <= IMPLEMENTS_DIRECTIVE)||(LA29_1 >= INSTRUCTION_FORMAT10t && LA29_1 <= INSTRUCTION_FORMAT10x_ODEX)||LA29_1==INSTRUCTION_FORMAT11x||LA29_1==INSTRUCTION_FORMAT12x_OR_ID||(LA29_1 >= INSTRUCTION_FORMAT21c_FIELD && LA29_1 <= INSTRUCTION_FORMAT21c_TYPE)||LA29_1==INSTRUCTION_FORMAT21t||(LA29_1 >= INSTRUCTION_FORMAT22c_FIELD && LA29_1 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA29_1 >= INSTRUCTION_FORMAT22s_OR_ID && LA29_1 <= INSTRUCTION_FORMAT22t)||(LA29_1 >= INSTRUCTION_FORMAT23x && LA29_1 <= INSTRUCTION_FORMAT25x)||(LA29_1 >= INSTRUCTION_FORMAT31i_OR_ID && LA29_1 <= INSTRUCTION_FORMAT31t)||(LA29_1 >= INSTRUCTION_FORMAT35c_METHOD && LA29_1 <= INSTRUCTION_FORMAT35ms_METHOD)||LA29_1==INSTRUCTION_FORMAT51l||(LA29_1 >= METHOD_DIRECTIVE && LA29_1 <= NULL_LITERAL)||LA29_1==PARAM_LIST_OR_ID_START||(LA29_1 >= POSITIVE_INTEGER_LITERAL && LA29_1 <= PRIMITIVE_TYPE)||LA29_1==REGISTER||(LA29_1 >= SIMPLE_NAME && LA29_1 <= SOURCE_DIRECTIVE)||(LA29_1 >= SUPER_DIRECTIVE && LA29_1 <= VOID_TYPE)) ) { alt29=1; } else if ( (LA29_1==ARROW) ) { @@ -6369,16 +6532,20 @@ public class smaliParser extends Parser { case INSTRUCTION_FORMAT12x_OR_ID: case INSTRUCTION_FORMAT21c_FIELD: case INSTRUCTION_FORMAT21c_FIELD_ODEX: + case INSTRUCTION_FORMAT21c_LAMBDA: + case INSTRUCTION_FORMAT21c_METHOD: case INSTRUCTION_FORMAT21c_STRING: case INSTRUCTION_FORMAT21c_TYPE: case INSTRUCTION_FORMAT21t: case INSTRUCTION_FORMAT22c_FIELD: case INSTRUCTION_FORMAT22c_FIELD_ODEX: + case INSTRUCTION_FORMAT22c_STRING: case INSTRUCTION_FORMAT22c_TYPE: case INSTRUCTION_FORMAT22cs_FIELD: case INSTRUCTION_FORMAT22s_OR_ID: case INSTRUCTION_FORMAT22t: case INSTRUCTION_FORMAT23x: + case INSTRUCTION_FORMAT25x: case INSTRUCTION_FORMAT31i_OR_ID: case INSTRUCTION_FORMAT31t: case INSTRUCTION_FORMAT35c_METHOD: @@ -6405,7 +6572,7 @@ public class smaliParser extends Parser { if ( (LA29_3==COLON||LA29_3==OPEN_PAREN) ) { alt29=2; } - else if ( (LA29_3==EOF||(LA29_3 >= ACCESS_SPEC && LA29_3 <= ANNOTATION_VISIBILITY)||LA29_3==BOOL_LITERAL||(LA29_3 >= CLASS_DIRECTIVE && LA29_3 <= CLOSE_BRACE)||LA29_3==COMMA||(LA29_3 >= DOUBLE_LITERAL_OR_ID && LA29_3 <= END_ANNOTATION_DIRECTIVE)||LA29_3==END_FIELD_DIRECTIVE||LA29_3==END_SUBANNOTATION_DIRECTIVE||LA29_3==FIELD_DIRECTIVE||(LA29_3 >= FLOAT_LITERAL_OR_ID && LA29_3 <= IMPLEMENTS_DIRECTIVE)||(LA29_3 >= INSTRUCTION_FORMAT10t && LA29_3 <= INSTRUCTION_FORMAT10x_ODEX)||LA29_3==INSTRUCTION_FORMAT11x||LA29_3==INSTRUCTION_FORMAT12x_OR_ID||(LA29_3 >= INSTRUCTION_FORMAT21c_FIELD && LA29_3 <= INSTRUCTION_FORMAT21c_TYPE)||LA29_3==INSTRUCTION_FORMAT21t||(LA29_3 >= INSTRUCTION_FORMAT22c_FIELD && LA29_3 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA29_3 >= INSTRUCTION_FORMAT22s_OR_ID && LA29_3 <= INSTRUCTION_FORMAT22t)||LA29_3==INSTRUCTION_FORMAT23x||(LA29_3 >= INSTRUCTION_FORMAT31i_OR_ID && LA29_3 <= INSTRUCTION_FORMAT31t)||(LA29_3 >= INSTRUCTION_FORMAT35c_METHOD && LA29_3 <= INSTRUCTION_FORMAT35ms_METHOD)||LA29_3==INSTRUCTION_FORMAT51l||(LA29_3 >= METHOD_DIRECTIVE && LA29_3 <= NULL_LITERAL)||LA29_3==PARAM_LIST_OR_ID_START||(LA29_3 >= POSITIVE_INTEGER_LITERAL && LA29_3 <= PRIMITIVE_TYPE)||LA29_3==REGISTER||(LA29_3 >= SIMPLE_NAME && LA29_3 <= SOURCE_DIRECTIVE)||(LA29_3 >= SUPER_DIRECTIVE && LA29_3 <= VOID_TYPE)) ) { + else if ( (LA29_3==EOF||(LA29_3 >= ACCESS_SPEC && LA29_3 <= ANNOTATION_VISIBILITY)||LA29_3==BOOL_LITERAL||(LA29_3 >= CLASS_DIRECTIVE && LA29_3 <= CLOSE_BRACE)||LA29_3==COMMA||(LA29_3 >= DOUBLE_LITERAL_OR_ID && LA29_3 <= END_ANNOTATION_DIRECTIVE)||LA29_3==END_FIELD_DIRECTIVE||LA29_3==END_SUBANNOTATION_DIRECTIVE||LA29_3==FIELD_DIRECTIVE||(LA29_3 >= FLOAT_LITERAL_OR_ID && LA29_3 <= IMPLEMENTS_DIRECTIVE)||(LA29_3 >= INSTRUCTION_FORMAT10t && LA29_3 <= INSTRUCTION_FORMAT10x_ODEX)||LA29_3==INSTRUCTION_FORMAT11x||LA29_3==INSTRUCTION_FORMAT12x_OR_ID||(LA29_3 >= INSTRUCTION_FORMAT21c_FIELD && LA29_3 <= INSTRUCTION_FORMAT21c_TYPE)||LA29_3==INSTRUCTION_FORMAT21t||(LA29_3 >= INSTRUCTION_FORMAT22c_FIELD && LA29_3 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA29_3 >= INSTRUCTION_FORMAT22s_OR_ID && LA29_3 <= INSTRUCTION_FORMAT22t)||(LA29_3 >= INSTRUCTION_FORMAT23x && LA29_3 <= INSTRUCTION_FORMAT25x)||(LA29_3 >= INSTRUCTION_FORMAT31i_OR_ID && LA29_3 <= INSTRUCTION_FORMAT31t)||(LA29_3 >= INSTRUCTION_FORMAT35c_METHOD && LA29_3 <= INSTRUCTION_FORMAT35ms_METHOD)||LA29_3==INSTRUCTION_FORMAT51l||(LA29_3 >= METHOD_DIRECTIVE && LA29_3 <= NULL_LITERAL)||LA29_3==PARAM_LIST_OR_ID_START||(LA29_3 >= POSITIVE_INTEGER_LITERAL && LA29_3 <= PRIMITIVE_TYPE)||LA29_3==REGISTER||(LA29_3 >= SIMPLE_NAME && LA29_3 <= SOURCE_DIRECTIVE)||(LA29_3 >= SUPER_DIRECTIVE && LA29_3 <= VOID_TYPE)) ) { alt29=3; } @@ -6429,7 +6596,7 @@ public class smaliParser extends Parser { if ( (LA29_4==COLON||LA29_4==OPEN_PAREN) ) { alt29=2; } - else if ( (LA29_4==EOF||(LA29_4 >= ACCESS_SPEC && LA29_4 <= ANNOTATION_VISIBILITY)||LA29_4==BOOL_LITERAL||(LA29_4 >= CLASS_DIRECTIVE && LA29_4 <= CLOSE_BRACE)||LA29_4==COMMA||(LA29_4 >= DOUBLE_LITERAL_OR_ID && LA29_4 <= END_ANNOTATION_DIRECTIVE)||LA29_4==END_FIELD_DIRECTIVE||LA29_4==END_SUBANNOTATION_DIRECTIVE||LA29_4==FIELD_DIRECTIVE||(LA29_4 >= FLOAT_LITERAL_OR_ID && LA29_4 <= IMPLEMENTS_DIRECTIVE)||(LA29_4 >= INSTRUCTION_FORMAT10t && LA29_4 <= INSTRUCTION_FORMAT10x_ODEX)||LA29_4==INSTRUCTION_FORMAT11x||LA29_4==INSTRUCTION_FORMAT12x_OR_ID||(LA29_4 >= INSTRUCTION_FORMAT21c_FIELD && LA29_4 <= INSTRUCTION_FORMAT21c_TYPE)||LA29_4==INSTRUCTION_FORMAT21t||(LA29_4 >= INSTRUCTION_FORMAT22c_FIELD && LA29_4 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA29_4 >= INSTRUCTION_FORMAT22s_OR_ID && LA29_4 <= INSTRUCTION_FORMAT22t)||LA29_4==INSTRUCTION_FORMAT23x||(LA29_4 >= INSTRUCTION_FORMAT31i_OR_ID && LA29_4 <= INSTRUCTION_FORMAT31t)||(LA29_4 >= INSTRUCTION_FORMAT35c_METHOD && LA29_4 <= INSTRUCTION_FORMAT35ms_METHOD)||LA29_4==INSTRUCTION_FORMAT51l||(LA29_4 >= METHOD_DIRECTIVE && LA29_4 <= NULL_LITERAL)||LA29_4==PARAM_LIST_OR_ID_START||(LA29_4 >= POSITIVE_INTEGER_LITERAL && LA29_4 <= PRIMITIVE_TYPE)||LA29_4==REGISTER||(LA29_4 >= SIMPLE_NAME && LA29_4 <= SOURCE_DIRECTIVE)||(LA29_4 >= SUPER_DIRECTIVE && LA29_4 <= VOID_TYPE)) ) { + else if ( (LA29_4==EOF||(LA29_4 >= ACCESS_SPEC && LA29_4 <= ANNOTATION_VISIBILITY)||LA29_4==BOOL_LITERAL||(LA29_4 >= CLASS_DIRECTIVE && LA29_4 <= CLOSE_BRACE)||LA29_4==COMMA||(LA29_4 >= DOUBLE_LITERAL_OR_ID && LA29_4 <= END_ANNOTATION_DIRECTIVE)||LA29_4==END_FIELD_DIRECTIVE||LA29_4==END_SUBANNOTATION_DIRECTIVE||LA29_4==FIELD_DIRECTIVE||(LA29_4 >= FLOAT_LITERAL_OR_ID && LA29_4 <= IMPLEMENTS_DIRECTIVE)||(LA29_4 >= INSTRUCTION_FORMAT10t && LA29_4 <= INSTRUCTION_FORMAT10x_ODEX)||LA29_4==INSTRUCTION_FORMAT11x||LA29_4==INSTRUCTION_FORMAT12x_OR_ID||(LA29_4 >= INSTRUCTION_FORMAT21c_FIELD && LA29_4 <= INSTRUCTION_FORMAT21c_TYPE)||LA29_4==INSTRUCTION_FORMAT21t||(LA29_4 >= INSTRUCTION_FORMAT22c_FIELD && LA29_4 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA29_4 >= INSTRUCTION_FORMAT22s_OR_ID && LA29_4 <= INSTRUCTION_FORMAT22t)||(LA29_4 >= INSTRUCTION_FORMAT23x && LA29_4 <= INSTRUCTION_FORMAT25x)||(LA29_4 >= INSTRUCTION_FORMAT31i_OR_ID && LA29_4 <= INSTRUCTION_FORMAT31t)||(LA29_4 >= INSTRUCTION_FORMAT35c_METHOD && LA29_4 <= INSTRUCTION_FORMAT35ms_METHOD)||LA29_4==INSTRUCTION_FORMAT51l||(LA29_4 >= METHOD_DIRECTIVE && LA29_4 <= NULL_LITERAL)||LA29_4==PARAM_LIST_OR_ID_START||(LA29_4 >= POSITIVE_INTEGER_LITERAL && LA29_4 <= PRIMITIVE_TYPE)||LA29_4==REGISTER||(LA29_4 >= SIMPLE_NAME && LA29_4 <= SOURCE_DIRECTIVE)||(LA29_4 >= SUPER_DIRECTIVE && LA29_4 <= VOID_TYPE)) ) { alt29=4; } @@ -6454,26 +6621,26 @@ public class smaliParser extends Parser { } switch (alt29) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:688:5: reference_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:700:5: reference_type_descriptor { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2854); - reference_type_descriptor165=reference_type_descriptor(); + pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2938); + reference_type_descriptor169=reference_type_descriptor(); state._fsp--; - adaptor.addChild(root_0, reference_type_descriptor165.getTree()); + adaptor.addChild(root_0, reference_type_descriptor169.getTree()); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:689:5: ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:701:5: ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:689:5: ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:689:7: ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:701:5: ( ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:701:7: ( reference_type_descriptor ARROW )? ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:689:7: ( reference_type_descriptor ARROW )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:701:7: ( reference_type_descriptor ARROW )? int alt27=2; int LA27_0 = input.LA(1); if ( (LA27_0==ARRAY_DESCRIPTOR||LA27_0==CLASS_DESCRIPTOR) ) { @@ -6481,41 +6648,41 @@ public class smaliParser extends Parser { } switch (alt27) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:689:8: reference_type_descriptor ARROW + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:701:8: reference_type_descriptor ARROW { - pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2863); - reference_type_descriptor166=reference_type_descriptor(); + pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2947); + reference_type_descriptor170=reference_type_descriptor(); state._fsp--; - stream_reference_type_descriptor.add(reference_type_descriptor166.getTree()); - ARROW167=(Token)match(input,ARROW,FOLLOW_ARROW_in_type_field_method_literal2865); - stream_ARROW.add(ARROW167); + stream_reference_type_descriptor.add(reference_type_descriptor170.getTree()); + ARROW171=(Token)match(input,ARROW,FOLLOW_ARROW_in_type_field_method_literal2949); + stream_ARROW.add(ARROW171); } break; } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:690:7: ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:702:7: ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) ) int alt28=2; alt28 = dfa28.predict(input); switch (alt28) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:690:9: member_name COLON nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:702:9: member_name COLON nonvoid_type_descriptor { - pushFollow(FOLLOW_member_name_in_type_field_method_literal2877); - member_name168=member_name(); + pushFollow(FOLLOW_member_name_in_type_field_method_literal2961); + member_name172=member_name(); state._fsp--; - stream_member_name.add(member_name168.getTree()); - COLON169=(Token)match(input,COLON,FOLLOW_COLON_in_type_field_method_literal2879); - stream_COLON.add(COLON169); + stream_member_name.add(member_name172.getTree()); + COLON173=(Token)match(input,COLON,FOLLOW_COLON_in_type_field_method_literal2963); + stream_COLON.add(COLON173); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2881); - nonvoid_type_descriptor170=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2965); + nonvoid_type_descriptor174=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor170.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor174.getTree()); // AST REWRITE // elements: member_name, nonvoid_type_descriptor, reference_type_descriptor // token labels: @@ -6527,13 +6694,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 690:51: -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) + // 702:51: -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:690:54: ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:702:54: ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_FIELD, "I_ENCODED_FIELD"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:690:72: ( reference_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:702:72: ( reference_type_descriptor )? if ( stream_reference_type_descriptor.hasNext() ) { adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree()); } @@ -6552,20 +6719,20 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:691:9: member_name method_prototype + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:703:9: member_name method_prototype { - pushFollow(FOLLOW_member_name_in_type_field_method_literal2904); - member_name171=member_name(); + pushFollow(FOLLOW_member_name_in_type_field_method_literal2988); + member_name175=member_name(); state._fsp--; - stream_member_name.add(member_name171.getTree()); - pushFollow(FOLLOW_method_prototype_in_type_field_method_literal2906); - method_prototype172=method_prototype(); + stream_member_name.add(member_name175.getTree()); + pushFollow(FOLLOW_method_prototype_in_type_field_method_literal2990); + method_prototype176=method_prototype(); state._fsp--; - stream_method_prototype.add(method_prototype172.getTree()); + stream_method_prototype.add(method_prototype176.getTree()); // AST REWRITE - // elements: member_name, method_prototype, reference_type_descriptor + // elements: reference_type_descriptor, method_prototype, member_name // token labels: // rule labels: retval // token list labels: @@ -6575,13 +6742,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 691:38: -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) + // 703:38: -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:691:41: ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:703:41: ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_METHOD, "I_ENCODED_METHOD"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:691:60: ( reference_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:703:60: ( reference_type_descriptor )? if ( stream_reference_type_descriptor.hasNext() ) { adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree()); } @@ -6607,26 +6774,26 @@ public class smaliParser extends Parser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:694:5: PRIMITIVE_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:706:5: PRIMITIVE_TYPE { root_0 = (CommonTree)adaptor.nil(); - PRIMITIVE_TYPE173=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_type_field_method_literal2939); - PRIMITIVE_TYPE173_tree = (CommonTree)adaptor.create(PRIMITIVE_TYPE173); - adaptor.addChild(root_0, PRIMITIVE_TYPE173_tree); + PRIMITIVE_TYPE177=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_type_field_method_literal3023); + PRIMITIVE_TYPE177_tree = (CommonTree)adaptor.create(PRIMITIVE_TYPE177); + adaptor.addChild(root_0, PRIMITIVE_TYPE177_tree); } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:695:5: VOID_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:707:5: VOID_TYPE { root_0 = (CommonTree)adaptor.nil(); - VOID_TYPE174=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_field_method_literal2945); - VOID_TYPE174_tree = (CommonTree)adaptor.create(VOID_TYPE174); - adaptor.addChild(root_0, VOID_TYPE174_tree); + VOID_TYPE178=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_field_method_literal3029); + VOID_TYPE178_tree = (CommonTree)adaptor.create(VOID_TYPE178); + adaptor.addChild(root_0, VOID_TYPE178_tree); } break; @@ -6659,29 +6826,29 @@ public class smaliParser extends Parser { // $ANTLR start "method_reference" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:697:1: method_reference : ( reference_type_descriptor ARROW )? member_name method_prototype -> ( reference_type_descriptor )? member_name method_prototype ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:709:1: method_reference : ( reference_type_descriptor ARROW )? member_name method_prototype -> ( reference_type_descriptor )? member_name method_prototype ; public final smaliParser.method_reference_return method_reference() throws RecognitionException { smaliParser.method_reference_return retval = new smaliParser.method_reference_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token ARROW176=null; - ParserRuleReturnScope reference_type_descriptor175 =null; - ParserRuleReturnScope member_name177 =null; - ParserRuleReturnScope method_prototype178 =null; + Token ARROW180=null; + ParserRuleReturnScope reference_type_descriptor179 =null; + ParserRuleReturnScope member_name181 =null; + ParserRuleReturnScope method_prototype182 =null; - CommonTree ARROW176_tree=null; + CommonTree ARROW180_tree=null; RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); RewriteRuleSubtreeStream stream_method_prototype=new RewriteRuleSubtreeStream(adaptor,"rule method_prototype"); RewriteRuleSubtreeStream stream_reference_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule reference_type_descriptor"); RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:698:3: ( ( reference_type_descriptor ARROW )? member_name method_prototype -> ( reference_type_descriptor )? member_name method_prototype ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:698:5: ( reference_type_descriptor ARROW )? member_name method_prototype + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:710:3: ( ( reference_type_descriptor ARROW )? member_name method_prototype -> ( reference_type_descriptor )? member_name method_prototype ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:710:5: ( reference_type_descriptor ARROW )? member_name method_prototype { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:698:5: ( reference_type_descriptor ARROW )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:710:5: ( reference_type_descriptor ARROW )? int alt30=2; int LA30_0 = input.LA(1); if ( (LA30_0==ARRAY_DESCRIPTOR||LA30_0==CLASS_DESCRIPTOR) ) { @@ -6689,33 +6856,33 @@ public class smaliParser extends Parser { } switch (alt30) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:698:6: reference_type_descriptor ARROW + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:710:6: reference_type_descriptor ARROW { - pushFollow(FOLLOW_reference_type_descriptor_in_method_reference2956); - reference_type_descriptor175=reference_type_descriptor(); + pushFollow(FOLLOW_reference_type_descriptor_in_method_reference3040); + reference_type_descriptor179=reference_type_descriptor(); state._fsp--; - stream_reference_type_descriptor.add(reference_type_descriptor175.getTree()); - ARROW176=(Token)match(input,ARROW,FOLLOW_ARROW_in_method_reference2958); - stream_ARROW.add(ARROW176); + stream_reference_type_descriptor.add(reference_type_descriptor179.getTree()); + ARROW180=(Token)match(input,ARROW,FOLLOW_ARROW_in_method_reference3042); + stream_ARROW.add(ARROW180); } break; } - pushFollow(FOLLOW_member_name_in_method_reference2962); - member_name177=member_name(); + pushFollow(FOLLOW_member_name_in_method_reference3046); + member_name181=member_name(); state._fsp--; - stream_member_name.add(member_name177.getTree()); - pushFollow(FOLLOW_method_prototype_in_method_reference2964); - method_prototype178=method_prototype(); + stream_member_name.add(member_name181.getTree()); + pushFollow(FOLLOW_method_prototype_in_method_reference3048); + method_prototype182=method_prototype(); state._fsp--; - stream_method_prototype.add(method_prototype178.getTree()); + stream_method_prototype.add(method_prototype182.getTree()); // AST REWRITE - // elements: member_name, method_prototype, reference_type_descriptor + // elements: method_prototype, reference_type_descriptor, member_name // token labels: // rule labels: retval // token list labels: @@ -6725,9 +6892,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 699:3: -> ( reference_type_descriptor )? member_name method_prototype + // 711:3: -> ( reference_type_descriptor )? member_name method_prototype { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:699:6: ( reference_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:711:6: ( reference_type_descriptor )? if ( stream_reference_type_descriptor.hasNext() ) { adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree()); } @@ -6769,21 +6936,21 @@ public class smaliParser extends Parser { // $ANTLR start "field_reference" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:701:1: field_reference : ( reference_type_descriptor ARROW )? member_name COLON nonvoid_type_descriptor -> ( reference_type_descriptor )? member_name nonvoid_type_descriptor ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:713:1: field_reference : ( reference_type_descriptor ARROW )? member_name COLON nonvoid_type_descriptor -> ( reference_type_descriptor )? member_name nonvoid_type_descriptor ; public final smaliParser.field_reference_return field_reference() throws RecognitionException { smaliParser.field_reference_return retval = new smaliParser.field_reference_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token ARROW180=null; - Token COLON182=null; - ParserRuleReturnScope reference_type_descriptor179 =null; - ParserRuleReturnScope member_name181 =null; - ParserRuleReturnScope nonvoid_type_descriptor183 =null; + Token ARROW184=null; + Token COLON186=null; + ParserRuleReturnScope reference_type_descriptor183 =null; + ParserRuleReturnScope member_name185 =null; + ParserRuleReturnScope nonvoid_type_descriptor187 =null; - CommonTree ARROW180_tree=null; - CommonTree COLON182_tree=null; + CommonTree ARROW184_tree=null; + CommonTree COLON186_tree=null; RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); @@ -6791,10 +6958,10 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:702:3: ( ( reference_type_descriptor ARROW )? member_name COLON nonvoid_type_descriptor -> ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:702:5: ( reference_type_descriptor ARROW )? member_name COLON nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:714:3: ( ( reference_type_descriptor ARROW )? member_name COLON nonvoid_type_descriptor -> ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:714:5: ( reference_type_descriptor ARROW )? member_name COLON nonvoid_type_descriptor { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:702:5: ( reference_type_descriptor ARROW )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:714:5: ( reference_type_descriptor ARROW )? int alt31=2; int LA31_0 = input.LA(1); if ( (LA31_0==ARRAY_DESCRIPTOR||LA31_0==CLASS_DESCRIPTOR) ) { @@ -6802,36 +6969,36 @@ public class smaliParser extends Parser { } switch (alt31) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:702:6: reference_type_descriptor ARROW + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:714:6: reference_type_descriptor ARROW { - pushFollow(FOLLOW_reference_type_descriptor_in_field_reference2986); - reference_type_descriptor179=reference_type_descriptor(); + pushFollow(FOLLOW_reference_type_descriptor_in_field_reference3070); + reference_type_descriptor183=reference_type_descriptor(); state._fsp--; - stream_reference_type_descriptor.add(reference_type_descriptor179.getTree()); - ARROW180=(Token)match(input,ARROW,FOLLOW_ARROW_in_field_reference2988); - stream_ARROW.add(ARROW180); + stream_reference_type_descriptor.add(reference_type_descriptor183.getTree()); + ARROW184=(Token)match(input,ARROW,FOLLOW_ARROW_in_field_reference3072); + stream_ARROW.add(ARROW184); } break; } - pushFollow(FOLLOW_member_name_in_field_reference2992); - member_name181=member_name(); + pushFollow(FOLLOW_member_name_in_field_reference3076); + member_name185=member_name(); state._fsp--; - stream_member_name.add(member_name181.getTree()); - COLON182=(Token)match(input,COLON,FOLLOW_COLON_in_field_reference2994); - stream_COLON.add(COLON182); + stream_member_name.add(member_name185.getTree()); + COLON186=(Token)match(input,COLON,FOLLOW_COLON_in_field_reference3078); + stream_COLON.add(COLON186); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_reference2996); - nonvoid_type_descriptor183=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_reference3080); + nonvoid_type_descriptor187=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor183.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor187.getTree()); // AST REWRITE - // elements: nonvoid_type_descriptor, member_name, reference_type_descriptor + // elements: member_name, reference_type_descriptor, nonvoid_type_descriptor // token labels: // rule labels: retval // token list labels: @@ -6841,9 +7008,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 703:3: -> ( reference_type_descriptor )? member_name nonvoid_type_descriptor + // 715:3: -> ( reference_type_descriptor )? member_name nonvoid_type_descriptor { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:703:6: ( reference_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:715:6: ( reference_type_descriptor )? if ( stream_reference_type_descriptor.hasNext() ) { adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree()); } @@ -6885,32 +7052,32 @@ public class smaliParser extends Parser { // $ANTLR start "label" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:705:1: label : COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:717:1: label : COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) ; public final smaliParser.label_return label() throws RecognitionException { smaliParser.label_return retval = new smaliParser.label_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token COLON184=null; - ParserRuleReturnScope simple_name185 =null; + Token COLON188=null; + ParserRuleReturnScope simple_name189 =null; - CommonTree COLON184_tree=null; + CommonTree COLON188_tree=null; RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:706:3: ( COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:706:5: COLON simple_name + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:718:3: ( COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:718:5: COLON simple_name { - COLON184=(Token)match(input,COLON,FOLLOW_COLON_in_label3017); - stream_COLON.add(COLON184); + COLON188=(Token)match(input,COLON,FOLLOW_COLON_in_label3101); + stream_COLON.add(COLON188); - pushFollow(FOLLOW_simple_name_in_label3019); - simple_name185=simple_name(); + pushFollow(FOLLOW_simple_name_in_label3103); + simple_name189=simple_name(); state._fsp--; - stream_simple_name.add(simple_name185.getTree()); + stream_simple_name.add(simple_name189.getTree()); // AST REWRITE // elements: simple_name // token labels: @@ -6922,12 +7089,12 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 706:23: -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) + // 718:23: -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:706:26: ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:718:26: ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) { CommonTree root_1 = (CommonTree)adaptor.nil(); - root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LABEL, COLON184, "I_LABEL"), root_1); + root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LABEL, COLON188, "I_LABEL"), root_1); adaptor.addChild(root_1, stream_simple_name.nextTree()); adaptor.addChild(root_0, root_1); } @@ -6966,32 +7133,32 @@ public class smaliParser extends Parser { // $ANTLR start "label_ref" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:708:1: label_ref : COLON simple_name -> simple_name ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:720:1: label_ref : COLON simple_name -> simple_name ; public final smaliParser.label_ref_return label_ref() throws RecognitionException { smaliParser.label_ref_return retval = new smaliParser.label_ref_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token COLON186=null; - ParserRuleReturnScope simple_name187 =null; + Token COLON190=null; + ParserRuleReturnScope simple_name191 =null; - CommonTree COLON186_tree=null; + CommonTree COLON190_tree=null; RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:709:3: ( COLON simple_name -> simple_name ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:709:5: COLON simple_name + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:721:3: ( COLON simple_name -> simple_name ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:721:5: COLON simple_name { - COLON186=(Token)match(input,COLON,FOLLOW_COLON_in_label_ref3038); - stream_COLON.add(COLON186); + COLON190=(Token)match(input,COLON,FOLLOW_COLON_in_label_ref3122); + stream_COLON.add(COLON190); - pushFollow(FOLLOW_simple_name_in_label_ref3040); - simple_name187=simple_name(); + pushFollow(FOLLOW_simple_name_in_label_ref3124); + simple_name191=simple_name(); state._fsp--; - stream_simple_name.add(simple_name187.getTree()); + stream_simple_name.add(simple_name191.getTree()); // AST REWRITE // elements: simple_name // token labels: @@ -7003,7 +7170,7 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 709:23: -> simple_name + // 721:23: -> simple_name { adaptor.addChild(root_0, stream_simple_name.nextTree()); } @@ -7040,25 +7207,25 @@ public class smaliParser extends Parser { // $ANTLR start "register_list" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:711:1: register_list : ( REGISTER ( COMMA REGISTER )* -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) | -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:723:1: register_list : ( REGISTER ( COMMA REGISTER )* -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) | -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) ); public final smaliParser.register_list_return register_list() throws RecognitionException { smaliParser.register_list_return retval = new smaliParser.register_list_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token REGISTER188=null; - Token COMMA189=null; - Token REGISTER190=null; + Token REGISTER192=null; + Token COMMA193=null; + Token REGISTER194=null; - CommonTree REGISTER188_tree=null; - CommonTree COMMA189_tree=null; - CommonTree REGISTER190_tree=null; + CommonTree REGISTER192_tree=null; + CommonTree COMMA193_tree=null; + CommonTree REGISTER194_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:3: ( REGISTER ( COMMA REGISTER )* -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) | -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:724:3: ( REGISTER ( COMMA REGISTER )* -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) | -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) ) int alt33=2; int LA33_0 = input.LA(1); if ( (LA33_0==REGISTER) ) { @@ -7076,12 +7243,12 @@ public class smaliParser extends Parser { switch (alt33) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:5: REGISTER ( COMMA REGISTER )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:724:5: REGISTER ( COMMA REGISTER )* { - REGISTER188=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3054); - stream_REGISTER.add(REGISTER188); + REGISTER192=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3138); + stream_REGISTER.add(REGISTER192); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:14: ( COMMA REGISTER )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:724:14: ( COMMA REGISTER )* loop32: while (true) { int alt32=2; @@ -7092,13 +7259,13 @@ public class smaliParser extends Parser { switch (alt32) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:15: COMMA REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:724:15: COMMA REGISTER { - COMMA189=(Token)match(input,COMMA,FOLLOW_COMMA_in_register_list3057); - stream_COMMA.add(COMMA189); + COMMA193=(Token)match(input,COMMA,FOLLOW_COMMA_in_register_list3141); + stream_COMMA.add(COMMA193); - REGISTER190=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3059); - stream_REGISTER.add(REGISTER190); + REGISTER194=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3143); + stream_REGISTER.add(REGISTER194); } break; @@ -7119,13 +7286,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 712:32: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) + // 724:32: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:35: ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:724:35: ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_LIST, (retval.start), "I_REGISTER_LIST"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:80: ( REGISTER )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:724:80: ( REGISTER )* while ( stream_REGISTER.hasNext() ) { adaptor.addChild(root_1, stream_REGISTER.nextNode()); } @@ -7142,7 +7309,7 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:713:5: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:725:5: { // AST REWRITE // elements: @@ -7155,9 +7322,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 713:5: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) + // 725:5: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:713:7: ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:725:7: ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_LIST, (retval.start), "I_REGISTER_LIST"), root_1); @@ -7200,7 +7367,7 @@ public class smaliParser extends Parser { // $ANTLR start "register_range" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:715:1: register_range : (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:727:1: register_range : (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) ; public final smaliParser.register_range_return register_range() throws RecognitionException { smaliParser.register_range_return retval = new smaliParser.register_range_return(); retval.start = input.LT(1); @@ -7209,19 +7376,19 @@ public class smaliParser extends Parser { Token startreg=null; Token endreg=null; - Token DOTDOT191=null; + Token DOTDOT195=null; CommonTree startreg_tree=null; CommonTree endreg_tree=null; - CommonTree DOTDOT191_tree=null; + CommonTree DOTDOT195_tree=null; RewriteRuleTokenStream stream_DOTDOT=new RewriteRuleTokenStream(adaptor,"token DOTDOT"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:3: ( (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:3: ( (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? int alt35=2; int LA35_0 = input.LA(1); if ( (LA35_0==REGISTER) ) { @@ -7229,12 +7396,12 @@ public class smaliParser extends Parser { } switch (alt35) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:6: startreg= REGISTER ( DOTDOT endreg= REGISTER )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:6: startreg= REGISTER ( DOTDOT endreg= REGISTER )? { - startreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3094); + startreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3178); stream_REGISTER.add(startreg); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:24: ( DOTDOT endreg= REGISTER )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:24: ( DOTDOT endreg= REGISTER )? int alt34=2; int LA34_0 = input.LA(1); if ( (LA34_0==DOTDOT) ) { @@ -7242,12 +7409,12 @@ public class smaliParser extends Parser { } switch (alt34) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:25: DOTDOT endreg= REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:25: DOTDOT endreg= REGISTER { - DOTDOT191=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_register_range3097); - stream_DOTDOT.add(DOTDOT191); + DOTDOT195=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_register_range3181); + stream_DOTDOT.add(DOTDOT195); - endreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3101); + endreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3185); stream_REGISTER.add(endreg); } @@ -7273,19 +7440,19 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 716:52: -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) + // 728:52: -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:55: ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:55: ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_RANGE, (retval.start), "I_REGISTER_RANGE"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:103: ( $startreg)? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:103: ( $startreg)? if ( stream_startreg.hasNext() ) { adaptor.addChild(root_1, stream_startreg.nextNode()); } stream_startreg.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:114: ( $endreg)? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:728:114: ( $endreg)? if ( stream_endreg.hasNext() ) { adaptor.addChild(root_1, stream_endreg.nextNode()); } @@ -7328,61 +7495,61 @@ public class smaliParser extends Parser { // $ANTLR start "verification_error_reference" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:718:1: verification_error_reference : ( CLASS_DESCRIPTOR | field_reference | method_reference ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:730:1: verification_error_reference : ( CLASS_DESCRIPTOR | field_reference | method_reference ); public final smaliParser.verification_error_reference_return verification_error_reference() throws RecognitionException { smaliParser.verification_error_reference_return retval = new smaliParser.verification_error_reference_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token CLASS_DESCRIPTOR192=null; - ParserRuleReturnScope field_reference193 =null; - ParserRuleReturnScope method_reference194 =null; + Token CLASS_DESCRIPTOR196=null; + ParserRuleReturnScope field_reference197 =null; + ParserRuleReturnScope method_reference198 =null; - CommonTree CLASS_DESCRIPTOR192_tree=null; + CommonTree CLASS_DESCRIPTOR196_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:3: ( CLASS_DESCRIPTOR | field_reference | method_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:731:3: ( CLASS_DESCRIPTOR | field_reference | method_reference ) int alt36=3; alt36 = dfa36.predict(input); switch (alt36) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:5: CLASS_DESCRIPTOR + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:731:5: CLASS_DESCRIPTOR { root_0 = (CommonTree)adaptor.nil(); - CLASS_DESCRIPTOR192=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference3130); - CLASS_DESCRIPTOR192_tree = (CommonTree)adaptor.create(CLASS_DESCRIPTOR192); - adaptor.addChild(root_0, CLASS_DESCRIPTOR192_tree); + CLASS_DESCRIPTOR196=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference3214); + CLASS_DESCRIPTOR196_tree = (CommonTree)adaptor.create(CLASS_DESCRIPTOR196); + adaptor.addChild(root_0, CLASS_DESCRIPTOR196_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:24: field_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:731:24: field_reference { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_field_reference_in_verification_error_reference3134); - field_reference193=field_reference(); + pushFollow(FOLLOW_field_reference_in_verification_error_reference3218); + field_reference197=field_reference(); state._fsp--; - adaptor.addChild(root_0, field_reference193.getTree()); + adaptor.addChild(root_0, field_reference197.getTree()); } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:42: method_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:731:42: method_reference { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_method_reference_in_verification_error_reference3138); - method_reference194=method_reference(); + pushFollow(FOLLOW_method_reference_in_verification_error_reference3222); + method_reference198=method_reference(); state._fsp--; - adaptor.addChild(root_0, method_reference194.getTree()); + adaptor.addChild(root_0, method_reference198.getTree()); } break; @@ -7415,26 +7582,26 @@ public class smaliParser extends Parser { // $ANTLR start "catch_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:721:1: catch_directive : CATCH_DIRECTIVE nonvoid_type_descriptor OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:733:1: catch_directive : CATCH_DIRECTIVE nonvoid_type_descriptor OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) ; public final smaliParser.catch_directive_return catch_directive() throws RecognitionException { smaliParser.catch_directive_return retval = new smaliParser.catch_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token CATCH_DIRECTIVE195=null; - Token OPEN_BRACE197=null; - Token DOTDOT198=null; - Token CLOSE_BRACE199=null; + Token CATCH_DIRECTIVE199=null; + Token OPEN_BRACE201=null; + Token DOTDOT202=null; + Token CLOSE_BRACE203=null; ParserRuleReturnScope from =null; ParserRuleReturnScope to =null; ParserRuleReturnScope using =null; - ParserRuleReturnScope nonvoid_type_descriptor196 =null; + ParserRuleReturnScope nonvoid_type_descriptor200 =null; - CommonTree CATCH_DIRECTIVE195_tree=null; - CommonTree OPEN_BRACE197_tree=null; - CommonTree DOTDOT198_tree=null; - CommonTree CLOSE_BRACE199_tree=null; + CommonTree CATCH_DIRECTIVE199_tree=null; + CommonTree OPEN_BRACE201_tree=null; + CommonTree DOTDOT202_tree=null; + CommonTree CLOSE_BRACE203_tree=null; RewriteRuleTokenStream stream_DOTDOT=new RewriteRuleTokenStream(adaptor,"token DOTDOT"); RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE"); @@ -7443,43 +7610,43 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:722:3: ( CATCH_DIRECTIVE nonvoid_type_descriptor OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:722:5: CATCH_DIRECTIVE nonvoid_type_descriptor OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:734:3: ( CATCH_DIRECTIVE nonvoid_type_descriptor OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:734:5: CATCH_DIRECTIVE nonvoid_type_descriptor OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref { - CATCH_DIRECTIVE195=(Token)match(input,CATCH_DIRECTIVE,FOLLOW_CATCH_DIRECTIVE_in_catch_directive3148); - stream_CATCH_DIRECTIVE.add(CATCH_DIRECTIVE195); + CATCH_DIRECTIVE199=(Token)match(input,CATCH_DIRECTIVE,FOLLOW_CATCH_DIRECTIVE_in_catch_directive3232); + stream_CATCH_DIRECTIVE.add(CATCH_DIRECTIVE199); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive3150); - nonvoid_type_descriptor196=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive3234); + nonvoid_type_descriptor200=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor196.getTree()); - OPEN_BRACE197=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_catch_directive3152); - stream_OPEN_BRACE.add(OPEN_BRACE197); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor200.getTree()); + OPEN_BRACE201=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_catch_directive3236); + stream_OPEN_BRACE.add(OPEN_BRACE201); - pushFollow(FOLLOW_label_ref_in_catch_directive3156); + pushFollow(FOLLOW_label_ref_in_catch_directive3240); from=label_ref(); state._fsp--; stream_label_ref.add(from.getTree()); - DOTDOT198=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catch_directive3158); - stream_DOTDOT.add(DOTDOT198); + DOTDOT202=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catch_directive3242); + stream_DOTDOT.add(DOTDOT202); - pushFollow(FOLLOW_label_ref_in_catch_directive3162); + pushFollow(FOLLOW_label_ref_in_catch_directive3246); to=label_ref(); state._fsp--; stream_label_ref.add(to.getTree()); - CLOSE_BRACE199=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catch_directive3164); - stream_CLOSE_BRACE.add(CLOSE_BRACE199); + CLOSE_BRACE203=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catch_directive3248); + stream_CLOSE_BRACE.add(CLOSE_BRACE203); - pushFollow(FOLLOW_label_ref_in_catch_directive3168); + pushFollow(FOLLOW_label_ref_in_catch_directive3252); using=label_ref(); state._fsp--; stream_label_ref.add(using.getTree()); // AST REWRITE - // elements: using, from, to, nonvoid_type_descriptor + // elements: from, using, nonvoid_type_descriptor, to // token labels: // rule labels: to, retval, using, from // token list labels: @@ -7492,9 +7659,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_from=new RewriteRuleSubtreeStream(adaptor,"rule from",from!=null?from.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 723:5: -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) + // 735:5: -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:723:8: ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:735:8: ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CATCH, (retval.start), "I_CATCH"), root_1); @@ -7539,25 +7706,25 @@ public class smaliParser extends Parser { // $ANTLR start "catchall_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:725:1: catchall_directive : CATCHALL_DIRECTIVE OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:737:1: catchall_directive : CATCHALL_DIRECTIVE OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) ; public final smaliParser.catchall_directive_return catchall_directive() throws RecognitionException { smaliParser.catchall_directive_return retval = new smaliParser.catchall_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token CATCHALL_DIRECTIVE200=null; - Token OPEN_BRACE201=null; - Token DOTDOT202=null; - Token CLOSE_BRACE203=null; + Token CATCHALL_DIRECTIVE204=null; + Token OPEN_BRACE205=null; + Token DOTDOT206=null; + Token CLOSE_BRACE207=null; ParserRuleReturnScope from =null; ParserRuleReturnScope to =null; ParserRuleReturnScope using =null; - CommonTree CATCHALL_DIRECTIVE200_tree=null; - CommonTree OPEN_BRACE201_tree=null; - CommonTree DOTDOT202_tree=null; - CommonTree CLOSE_BRACE203_tree=null; + CommonTree CATCHALL_DIRECTIVE204_tree=null; + CommonTree OPEN_BRACE205_tree=null; + CommonTree DOTDOT206_tree=null; + CommonTree CLOSE_BRACE207_tree=null; RewriteRuleTokenStream stream_DOTDOT=new RewriteRuleTokenStream(adaptor,"token DOTDOT"); RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE"); @@ -7565,38 +7732,38 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:726:3: ( CATCHALL_DIRECTIVE OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:726:5: CATCHALL_DIRECTIVE OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:738:3: ( CATCHALL_DIRECTIVE OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:738:5: CATCHALL_DIRECTIVE OPEN_BRACE from= label_ref DOTDOT to= label_ref CLOSE_BRACE using= label_ref { - CATCHALL_DIRECTIVE200=(Token)match(input,CATCHALL_DIRECTIVE,FOLLOW_CATCHALL_DIRECTIVE_in_catchall_directive3200); - stream_CATCHALL_DIRECTIVE.add(CATCHALL_DIRECTIVE200); + CATCHALL_DIRECTIVE204=(Token)match(input,CATCHALL_DIRECTIVE,FOLLOW_CATCHALL_DIRECTIVE_in_catchall_directive3284); + stream_CATCHALL_DIRECTIVE.add(CATCHALL_DIRECTIVE204); - OPEN_BRACE201=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_catchall_directive3202); - stream_OPEN_BRACE.add(OPEN_BRACE201); + OPEN_BRACE205=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_catchall_directive3286); + stream_OPEN_BRACE.add(OPEN_BRACE205); - pushFollow(FOLLOW_label_ref_in_catchall_directive3206); + pushFollow(FOLLOW_label_ref_in_catchall_directive3290); from=label_ref(); state._fsp--; stream_label_ref.add(from.getTree()); - DOTDOT202=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catchall_directive3208); - stream_DOTDOT.add(DOTDOT202); + DOTDOT206=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catchall_directive3292); + stream_DOTDOT.add(DOTDOT206); - pushFollow(FOLLOW_label_ref_in_catchall_directive3212); + pushFollow(FOLLOW_label_ref_in_catchall_directive3296); to=label_ref(); state._fsp--; stream_label_ref.add(to.getTree()); - CLOSE_BRACE203=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catchall_directive3214); - stream_CLOSE_BRACE.add(CLOSE_BRACE203); + CLOSE_BRACE207=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catchall_directive3298); + stream_CLOSE_BRACE.add(CLOSE_BRACE207); - pushFollow(FOLLOW_label_ref_in_catchall_directive3218); + pushFollow(FOLLOW_label_ref_in_catchall_directive3302); using=label_ref(); state._fsp--; stream_label_ref.add(using.getTree()); // AST REWRITE - // elements: from, to, using + // elements: using, to, from // token labels: // rule labels: to, retval, using, from // token list labels: @@ -7609,9 +7776,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_from=new RewriteRuleSubtreeStream(adaptor,"rule from",from!=null?from.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 727:5: -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) + // 739:5: -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:727:8: ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:739:8: ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CATCHALL, (retval.start), "I_CATCHALL"), root_1); @@ -7655,25 +7822,25 @@ public class smaliParser extends Parser { // $ANTLR start "parameter_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:733:1: parameter_directive : PARAMETER_DIRECTIVE REGISTER ( COMMA STRING_LITERAL )? ({...}? annotation )* ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:745:1: parameter_directive : PARAMETER_DIRECTIVE REGISTER ( COMMA STRING_LITERAL )? ({...}? annotation )* ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) ; public final smaliParser.parameter_directive_return parameter_directive() throws RecognitionException { smaliParser.parameter_directive_return retval = new smaliParser.parameter_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token PARAMETER_DIRECTIVE204=null; - Token REGISTER205=null; - Token COMMA206=null; - Token STRING_LITERAL207=null; - Token END_PARAMETER_DIRECTIVE209=null; - ParserRuleReturnScope annotation208 =null; - - CommonTree PARAMETER_DIRECTIVE204_tree=null; - CommonTree REGISTER205_tree=null; - CommonTree COMMA206_tree=null; - CommonTree STRING_LITERAL207_tree=null; - CommonTree END_PARAMETER_DIRECTIVE209_tree=null; + Token PARAMETER_DIRECTIVE208=null; + Token REGISTER209=null; + Token COMMA210=null; + Token STRING_LITERAL211=null; + Token END_PARAMETER_DIRECTIVE213=null; + ParserRuleReturnScope annotation212 =null; + + CommonTree PARAMETER_DIRECTIVE208_tree=null; + CommonTree REGISTER209_tree=null; + CommonTree COMMA210_tree=null; + CommonTree STRING_LITERAL211_tree=null; + CommonTree END_PARAMETER_DIRECTIVE213_tree=null; RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); RewriteRuleTokenStream stream_END_PARAMETER_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_PARAMETER_DIRECTIVE"); RewriteRuleTokenStream stream_PARAMETER_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token PARAMETER_DIRECTIVE"); @@ -7683,16 +7850,16 @@ public class smaliParser extends Parser { List<CommonTree> annotations = new ArrayList<CommonTree>(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:735:3: ( PARAMETER_DIRECTIVE REGISTER ( COMMA STRING_LITERAL )? ({...}? annotation )* ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:735:5: PARAMETER_DIRECTIVE REGISTER ( COMMA STRING_LITERAL )? ({...}? annotation )* ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:747:3: ( PARAMETER_DIRECTIVE REGISTER ( COMMA STRING_LITERAL )? ({...}? annotation )* ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:747:5: PARAMETER_DIRECTIVE REGISTER ( COMMA STRING_LITERAL )? ({...}? annotation )* ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) { - PARAMETER_DIRECTIVE204=(Token)match(input,PARAMETER_DIRECTIVE,FOLLOW_PARAMETER_DIRECTIVE_in_parameter_directive3257); - stream_PARAMETER_DIRECTIVE.add(PARAMETER_DIRECTIVE204); + PARAMETER_DIRECTIVE208=(Token)match(input,PARAMETER_DIRECTIVE,FOLLOW_PARAMETER_DIRECTIVE_in_parameter_directive3341); + stream_PARAMETER_DIRECTIVE.add(PARAMETER_DIRECTIVE208); - REGISTER205=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_parameter_directive3259); - stream_REGISTER.add(REGISTER205); + REGISTER209=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_parameter_directive3343); + stream_REGISTER.add(REGISTER209); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:735:34: ( COMMA STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:747:34: ( COMMA STRING_LITERAL )? int alt37=2; int LA37_0 = input.LA(1); if ( (LA37_0==COMMA) ) { @@ -7700,37 +7867,37 @@ public class smaliParser extends Parser { } switch (alt37) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:735:35: COMMA STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:747:35: COMMA STRING_LITERAL { - COMMA206=(Token)match(input,COMMA,FOLLOW_COMMA_in_parameter_directive3262); - stream_COMMA.add(COMMA206); + COMMA210=(Token)match(input,COMMA,FOLLOW_COMMA_in_parameter_directive3346); + stream_COMMA.add(COMMA210); - STRING_LITERAL207=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_parameter_directive3264); - stream_STRING_LITERAL.add(STRING_LITERAL207); + STRING_LITERAL211=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_parameter_directive3348); + stream_STRING_LITERAL.add(STRING_LITERAL211); } break; } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:736:5: ({...}? annotation )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:748:5: ({...}? annotation )* loop38: while (true) { int alt38=2; alt38 = dfa38.predict(input); switch (alt38) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:736:6: {...}? annotation + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:748:6: {...}? annotation { if ( !((input.LA(1) == ANNOTATION_DIRECTIVE)) ) { throw new FailedPredicateException(input, "parameter_directive", "input.LA(1) == ANNOTATION_DIRECTIVE"); } - pushFollow(FOLLOW_annotation_in_parameter_directive3275); - annotation208=annotation(); + pushFollow(FOLLOW_annotation_in_parameter_directive3359); + annotation212=annotation(); state._fsp--; - stream_annotation.add(annotation208.getTree()); - annotations.add((annotation208!=null?((CommonTree)annotation208.getTree()):null)); + stream_annotation.add(annotation212.getTree()); + annotations.add((annotation212!=null?((CommonTree)annotation212.getTree()):null)); } break; @@ -7739,7 +7906,7 @@ public class smaliParser extends Parser { } } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:738:5: ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:750:5: ( END_PARAMETER_DIRECTIVE -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) ) int alt39=2; int LA39_0 = input.LA(1); if ( (LA39_0==END_PARAMETER_DIRECTIVE) ) { @@ -7757,13 +7924,13 @@ public class smaliParser extends Parser { switch (alt39) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:738:7: END_PARAMETER_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:750:7: END_PARAMETER_DIRECTIVE { - END_PARAMETER_DIRECTIVE209=(Token)match(input,END_PARAMETER_DIRECTIVE,FOLLOW_END_PARAMETER_DIRECTIVE_in_parameter_directive3288); - stream_END_PARAMETER_DIRECTIVE.add(END_PARAMETER_DIRECTIVE209); + END_PARAMETER_DIRECTIVE213=(Token)match(input,END_PARAMETER_DIRECTIVE,FOLLOW_END_PARAMETER_DIRECTIVE_in_parameter_directive3372); + stream_END_PARAMETER_DIRECTIVE.add(END_PARAMETER_DIRECTIVE213); // AST REWRITE - // elements: STRING_LITERAL, annotation, REGISTER + // elements: STRING_LITERAL, REGISTER, annotation // token labels: // rule labels: retval // token list labels: @@ -7773,24 +7940,24 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 739:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) + // 751:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:739:10: ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:751:10: ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PARAMETER, (retval.start), "I_PARAMETER"), root_1); adaptor.addChild(root_1, stream_REGISTER.nextNode()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:739:56: ( STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:751:56: ( STRING_LITERAL )? if ( stream_STRING_LITERAL.hasNext() ) { adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode()); } stream_STRING_LITERAL.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:739:72: ^( I_ANNOTATIONS ( annotation )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:751:72: ^( I_ANNOTATIONS ( annotation )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:739:88: ( annotation )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:751:88: ( annotation )* while ( stream_annotation.hasNext() ) { adaptor.addChild(root_2, stream_annotation.nextTree()); } @@ -7810,7 +7977,7 @@ public class smaliParser extends Parser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:740:19: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:752:19: { statements_and_directives_stack.peek().methodAnnotations.addAll(annotations); // AST REWRITE @@ -7824,20 +7991,20 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 741:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) + // 753:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:741:10: ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:753:10: ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PARAMETER, (retval.start), "I_PARAMETER"), root_1); adaptor.addChild(root_1, stream_REGISTER.nextNode()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:741:56: ( STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:753:56: ( STRING_LITERAL )? if ( stream_STRING_LITERAL.hasNext() ) { adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode()); } stream_STRING_LITERAL.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:741:72: ^( I_ANNOTATIONS ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:753:72: ^( I_ANNOTATIONS ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2); @@ -7886,24 +8053,24 @@ public class smaliParser extends Parser { // $ANTLR start "debug_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:744:1: debug_directive : ( line_directive | local_directive | end_local_directive | restart_local_directive | prologue_directive | epilogue_directive | source_directive ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:756:1: debug_directive : ( line_directive | local_directive | end_local_directive | restart_local_directive | prologue_directive | epilogue_directive | source_directive ); public final smaliParser.debug_directive_return debug_directive() throws RecognitionException { smaliParser.debug_directive_return retval = new smaliParser.debug_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - ParserRuleReturnScope line_directive210 =null; - ParserRuleReturnScope local_directive211 =null; - ParserRuleReturnScope end_local_directive212 =null; - ParserRuleReturnScope restart_local_directive213 =null; - ParserRuleReturnScope prologue_directive214 =null; - ParserRuleReturnScope epilogue_directive215 =null; - ParserRuleReturnScope source_directive216 =null; + ParserRuleReturnScope line_directive214 =null; + ParserRuleReturnScope local_directive215 =null; + ParserRuleReturnScope end_local_directive216 =null; + ParserRuleReturnScope restart_local_directive217 =null; + ParserRuleReturnScope prologue_directive218 =null; + ParserRuleReturnScope epilogue_directive219 =null; + ParserRuleReturnScope source_directive220 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:745:3: ( line_directive | local_directive | end_local_directive | restart_local_directive | prologue_directive | epilogue_directive | source_directive ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:757:3: ( line_directive | local_directive | end_local_directive | restart_local_directive | prologue_directive | epilogue_directive | source_directive ) int alt40=7; switch ( input.LA(1) ) { case LINE_DIRECTIVE: @@ -7948,100 +8115,100 @@ public class smaliParser extends Parser { } switch (alt40) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:745:5: line_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:757:5: line_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_line_directive_in_debug_directive3361); - line_directive210=line_directive(); + pushFollow(FOLLOW_line_directive_in_debug_directive3445); + line_directive214=line_directive(); state._fsp--; - adaptor.addChild(root_0, line_directive210.getTree()); + adaptor.addChild(root_0, line_directive214.getTree()); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:746:5: local_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:758:5: local_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_local_directive_in_debug_directive3367); - local_directive211=local_directive(); + pushFollow(FOLLOW_local_directive_in_debug_directive3451); + local_directive215=local_directive(); state._fsp--; - adaptor.addChild(root_0, local_directive211.getTree()); + adaptor.addChild(root_0, local_directive215.getTree()); } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:747:5: end_local_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:759:5: end_local_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_end_local_directive_in_debug_directive3373); - end_local_directive212=end_local_directive(); + pushFollow(FOLLOW_end_local_directive_in_debug_directive3457); + end_local_directive216=end_local_directive(); state._fsp--; - adaptor.addChild(root_0, end_local_directive212.getTree()); + adaptor.addChild(root_0, end_local_directive216.getTree()); } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:748:5: restart_local_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:760:5: restart_local_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_restart_local_directive_in_debug_directive3379); - restart_local_directive213=restart_local_directive(); + pushFollow(FOLLOW_restart_local_directive_in_debug_directive3463); + restart_local_directive217=restart_local_directive(); state._fsp--; - adaptor.addChild(root_0, restart_local_directive213.getTree()); + adaptor.addChild(root_0, restart_local_directive217.getTree()); } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:749:5: prologue_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:761:5: prologue_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_prologue_directive_in_debug_directive3385); - prologue_directive214=prologue_directive(); + pushFollow(FOLLOW_prologue_directive_in_debug_directive3469); + prologue_directive218=prologue_directive(); state._fsp--; - adaptor.addChild(root_0, prologue_directive214.getTree()); + adaptor.addChild(root_0, prologue_directive218.getTree()); } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:750:5: epilogue_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:762:5: epilogue_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_epilogue_directive_in_debug_directive3391); - epilogue_directive215=epilogue_directive(); + pushFollow(FOLLOW_epilogue_directive_in_debug_directive3475); + epilogue_directive219=epilogue_directive(); state._fsp--; - adaptor.addChild(root_0, epilogue_directive215.getTree()); + adaptor.addChild(root_0, epilogue_directive219.getTree()); } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:751:5: source_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:763:5: source_directive { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_source_directive_in_debug_directive3397); - source_directive216=source_directive(); + pushFollow(FOLLOW_source_directive_in_debug_directive3481); + source_directive220=source_directive(); state._fsp--; - adaptor.addChild(root_0, source_directive216.getTree()); + adaptor.addChild(root_0, source_directive220.getTree()); } break; @@ -8074,32 +8241,32 @@ public class smaliParser extends Parser { // $ANTLR start "line_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:753:1: line_directive : LINE_DIRECTIVE integral_literal -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:765:1: line_directive : LINE_DIRECTIVE integral_literal -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) ; public final smaliParser.line_directive_return line_directive() throws RecognitionException { smaliParser.line_directive_return retval = new smaliParser.line_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token LINE_DIRECTIVE217=null; - ParserRuleReturnScope integral_literal218 =null; + Token LINE_DIRECTIVE221=null; + ParserRuleReturnScope integral_literal222 =null; - CommonTree LINE_DIRECTIVE217_tree=null; + CommonTree LINE_DIRECTIVE221_tree=null; RewriteRuleTokenStream stream_LINE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token LINE_DIRECTIVE"); RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:754:3: ( LINE_DIRECTIVE integral_literal -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:754:5: LINE_DIRECTIVE integral_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:766:3: ( LINE_DIRECTIVE integral_literal -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:766:5: LINE_DIRECTIVE integral_literal { - LINE_DIRECTIVE217=(Token)match(input,LINE_DIRECTIVE,FOLLOW_LINE_DIRECTIVE_in_line_directive3407); - stream_LINE_DIRECTIVE.add(LINE_DIRECTIVE217); + LINE_DIRECTIVE221=(Token)match(input,LINE_DIRECTIVE,FOLLOW_LINE_DIRECTIVE_in_line_directive3491); + stream_LINE_DIRECTIVE.add(LINE_DIRECTIVE221); - pushFollow(FOLLOW_integral_literal_in_line_directive3409); - integral_literal218=integral_literal(); + pushFollow(FOLLOW_integral_literal_in_line_directive3493); + integral_literal222=integral_literal(); state._fsp--; - stream_integral_literal.add(integral_literal218.getTree()); + stream_integral_literal.add(integral_literal222.getTree()); // AST REWRITE // elements: integral_literal // token labels: @@ -8111,9 +8278,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 755:5: -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) + // 767:5: -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:755:8: ^( I_LINE[$start, \"I_LINE\"] integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:767:8: ^( I_LINE[$start, \"I_LINE\"] integral_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LINE, (retval.start), "I_LINE"), root_1); @@ -8155,7 +8322,7 @@ public class smaliParser extends Parser { // $ANTLR start "local_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:757:1: local_directive : LOCAL_DIRECTIVE REGISTER ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:769:1: local_directive : LOCAL_DIRECTIVE REGISTER ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) ; public final smaliParser.local_directive_return local_directive() throws RecognitionException { smaliParser.local_directive_return retval = new smaliParser.local_directive_return(); retval.start = input.LT(1); @@ -8164,24 +8331,24 @@ public class smaliParser extends Parser { Token name=null; Token signature=null; - Token LOCAL_DIRECTIVE219=null; - Token REGISTER220=null; - Token COMMA221=null; - Token NULL_LITERAL222=null; - Token COLON223=null; - Token VOID_TYPE224=null; - Token COMMA226=null; - ParserRuleReturnScope nonvoid_type_descriptor225 =null; + Token LOCAL_DIRECTIVE223=null; + Token REGISTER224=null; + Token COMMA225=null; + Token NULL_LITERAL226=null; + Token COLON227=null; + Token VOID_TYPE228=null; + Token COMMA230=null; + ParserRuleReturnScope nonvoid_type_descriptor229 =null; CommonTree name_tree=null; CommonTree signature_tree=null; - CommonTree LOCAL_DIRECTIVE219_tree=null; - CommonTree REGISTER220_tree=null; - CommonTree COMMA221_tree=null; - CommonTree NULL_LITERAL222_tree=null; - CommonTree COLON223_tree=null; - CommonTree VOID_TYPE224_tree=null; - CommonTree COMMA226_tree=null; + CommonTree LOCAL_DIRECTIVE223_tree=null; + CommonTree REGISTER224_tree=null; + CommonTree COMMA225_tree=null; + CommonTree NULL_LITERAL226_tree=null; + CommonTree COLON227_tree=null; + CommonTree VOID_TYPE228_tree=null; + CommonTree COMMA230_tree=null; RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); RewriteRuleTokenStream stream_NULL_LITERAL=new RewriteRuleTokenStream(adaptor,"token NULL_LITERAL"); RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); @@ -8192,16 +8359,16 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:3: ( LOCAL_DIRECTIVE REGISTER ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:5: LOCAL_DIRECTIVE REGISTER ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:3: ( LOCAL_DIRECTIVE REGISTER ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:5: LOCAL_DIRECTIVE REGISTER ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? { - LOCAL_DIRECTIVE219=(Token)match(input,LOCAL_DIRECTIVE,FOLLOW_LOCAL_DIRECTIVE_in_local_directive3432); - stream_LOCAL_DIRECTIVE.add(LOCAL_DIRECTIVE219); + LOCAL_DIRECTIVE223=(Token)match(input,LOCAL_DIRECTIVE,FOLLOW_LOCAL_DIRECTIVE_in_local_directive3516); + stream_LOCAL_DIRECTIVE.add(LOCAL_DIRECTIVE223); - REGISTER220=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_local_directive3434); - stream_REGISTER.add(REGISTER220); + REGISTER224=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_local_directive3518); + stream_REGISTER.add(REGISTER224); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:30: ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:30: ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )? int alt44=2; int LA44_0 = input.LA(1); if ( (LA44_0==COMMA) ) { @@ -8209,12 +8376,12 @@ public class smaliParser extends Parser { } switch (alt44) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:31: COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:31: COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? { - COMMA221=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3437); - stream_COMMA.add(COMMA221); + COMMA225=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3521); + stream_COMMA.add(COMMA225); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:37: ( NULL_LITERAL |name= STRING_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:37: ( NULL_LITERAL |name= STRING_LITERAL ) int alt41=2; int LA41_0 = input.LA(1); if ( (LA41_0==NULL_LITERAL) ) { @@ -8232,17 +8399,17 @@ public class smaliParser extends Parser { switch (alt41) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:38: NULL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:38: NULL_LITERAL { - NULL_LITERAL222=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local_directive3440); - stream_NULL_LITERAL.add(NULL_LITERAL222); + NULL_LITERAL226=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local_directive3524); + stream_NULL_LITERAL.add(NULL_LITERAL226); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:53: name= STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:53: name= STRING_LITERAL { - name=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3446); + name=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3530); stream_STRING_LITERAL.add(name); } @@ -8250,10 +8417,10 @@ public class smaliParser extends Parser { } - COLON223=(Token)match(input,COLON,FOLLOW_COLON_in_local_directive3449); - stream_COLON.add(COLON223); + COLON227=(Token)match(input,COLON,FOLLOW_COLON_in_local_directive3533); + stream_COLON.add(COLON227); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:80: ( VOID_TYPE | nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:80: ( VOID_TYPE | nonvoid_type_descriptor ) int alt42=2; int LA42_0 = input.LA(1); if ( (LA42_0==VOID_TYPE) ) { @@ -8271,27 +8438,27 @@ public class smaliParser extends Parser { switch (alt42) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:81: VOID_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:81: VOID_TYPE { - VOID_TYPE224=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_local_directive3452); - stream_VOID_TYPE.add(VOID_TYPE224); + VOID_TYPE228=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_local_directive3536); + stream_VOID_TYPE.add(VOID_TYPE228); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:93: nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:770:93: nonvoid_type_descriptor { - pushFollow(FOLLOW_nonvoid_type_descriptor_in_local_directive3456); - nonvoid_type_descriptor225=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_local_directive3540); + nonvoid_type_descriptor229=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor225.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor229.getTree()); } break; } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:759:31: ( COMMA signature= STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:771:31: ( COMMA signature= STRING_LITERAL )? int alt43=2; int LA43_0 = input.LA(1); if ( (LA43_0==COMMA) ) { @@ -8299,12 +8466,12 @@ public class smaliParser extends Parser { } switch (alt43) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:759:32: COMMA signature= STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:771:32: COMMA signature= STRING_LITERAL { - COMMA226=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3490); - stream_COMMA.add(COMMA226); + COMMA230=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3574); + stream_COMMA.add(COMMA230); - signature=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3494); + signature=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3578); stream_STRING_LITERAL.add(signature); } @@ -8318,7 +8485,7 @@ public class smaliParser extends Parser { } // AST REWRITE - // elements: nonvoid_type_descriptor, name, NULL_LITERAL, signature, REGISTER + // elements: nonvoid_type_descriptor, name, signature, REGISTER, NULL_LITERAL // token labels: name, signature // rule labels: retval // token list labels: @@ -8330,32 +8497,32 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 760:5: -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) + // 772:5: -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:8: ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:772:8: ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LOCAL, (retval.start), "I_LOCAL"), root_1); adaptor.addChild(root_1, stream_REGISTER.nextNode()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:46: ( NULL_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:772:46: ( NULL_LITERAL )? if ( stream_NULL_LITERAL.hasNext() ) { adaptor.addChild(root_1, stream_NULL_LITERAL.nextNode()); } stream_NULL_LITERAL.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:61: ( $name)? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:772:61: ( $name)? if ( stream_name.hasNext() ) { adaptor.addChild(root_1, stream_name.nextNode()); } stream_name.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:67: ( nonvoid_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:772:67: ( nonvoid_type_descriptor )? if ( stream_nonvoid_type_descriptor.hasNext() ) { adaptor.addChild(root_1, stream_nonvoid_type_descriptor.nextTree()); } stream_nonvoid_type_descriptor.reset(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:93: ( $signature)? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:772:93: ( $signature)? if ( stream_signature.hasNext() ) { adaptor.addChild(root_1, stream_signature.nextNode()); } @@ -8398,30 +8565,30 @@ public class smaliParser extends Parser { // $ANTLR start "end_local_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:762:1: end_local_directive : END_LOCAL_DIRECTIVE REGISTER -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:774:1: end_local_directive : END_LOCAL_DIRECTIVE REGISTER -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) ; public final smaliParser.end_local_directive_return end_local_directive() throws RecognitionException { smaliParser.end_local_directive_return retval = new smaliParser.end_local_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token END_LOCAL_DIRECTIVE227=null; - Token REGISTER228=null; + Token END_LOCAL_DIRECTIVE231=null; + Token REGISTER232=null; - CommonTree END_LOCAL_DIRECTIVE227_tree=null; - CommonTree REGISTER228_tree=null; + CommonTree END_LOCAL_DIRECTIVE231_tree=null; + CommonTree REGISTER232_tree=null; RewriteRuleTokenStream stream_END_LOCAL_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_LOCAL_DIRECTIVE"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:763:3: ( END_LOCAL_DIRECTIVE REGISTER -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:763:5: END_LOCAL_DIRECTIVE REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:775:3: ( END_LOCAL_DIRECTIVE REGISTER -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:775:5: END_LOCAL_DIRECTIVE REGISTER { - END_LOCAL_DIRECTIVE227=(Token)match(input,END_LOCAL_DIRECTIVE,FOLLOW_END_LOCAL_DIRECTIVE_in_end_local_directive3536); - stream_END_LOCAL_DIRECTIVE.add(END_LOCAL_DIRECTIVE227); + END_LOCAL_DIRECTIVE231=(Token)match(input,END_LOCAL_DIRECTIVE,FOLLOW_END_LOCAL_DIRECTIVE_in_end_local_directive3620); + stream_END_LOCAL_DIRECTIVE.add(END_LOCAL_DIRECTIVE231); - REGISTER228=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_end_local_directive3538); - stream_REGISTER.add(REGISTER228); + REGISTER232=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_end_local_directive3622); + stream_REGISTER.add(REGISTER232); // AST REWRITE // elements: REGISTER @@ -8434,9 +8601,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 764:5: -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) + // 776:5: -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:764:8: ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:776:8: ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_END_LOCAL, (retval.start), "I_END_LOCAL"), root_1); @@ -8478,30 +8645,30 @@ public class smaliParser extends Parser { // $ANTLR start "restart_local_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:766:1: restart_local_directive : RESTART_LOCAL_DIRECTIVE REGISTER -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:778:1: restart_local_directive : RESTART_LOCAL_DIRECTIVE REGISTER -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) ; public final smaliParser.restart_local_directive_return restart_local_directive() throws RecognitionException { smaliParser.restart_local_directive_return retval = new smaliParser.restart_local_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token RESTART_LOCAL_DIRECTIVE229=null; - Token REGISTER230=null; + Token RESTART_LOCAL_DIRECTIVE233=null; + Token REGISTER234=null; - CommonTree RESTART_LOCAL_DIRECTIVE229_tree=null; - CommonTree REGISTER230_tree=null; + CommonTree RESTART_LOCAL_DIRECTIVE233_tree=null; + CommonTree REGISTER234_tree=null; RewriteRuleTokenStream stream_RESTART_LOCAL_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token RESTART_LOCAL_DIRECTIVE"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:767:3: ( RESTART_LOCAL_DIRECTIVE REGISTER -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:767:5: RESTART_LOCAL_DIRECTIVE REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:779:3: ( RESTART_LOCAL_DIRECTIVE REGISTER -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:779:5: RESTART_LOCAL_DIRECTIVE REGISTER { - RESTART_LOCAL_DIRECTIVE229=(Token)match(input,RESTART_LOCAL_DIRECTIVE,FOLLOW_RESTART_LOCAL_DIRECTIVE_in_restart_local_directive3561); - stream_RESTART_LOCAL_DIRECTIVE.add(RESTART_LOCAL_DIRECTIVE229); + RESTART_LOCAL_DIRECTIVE233=(Token)match(input,RESTART_LOCAL_DIRECTIVE,FOLLOW_RESTART_LOCAL_DIRECTIVE_in_restart_local_directive3645); + stream_RESTART_LOCAL_DIRECTIVE.add(RESTART_LOCAL_DIRECTIVE233); - REGISTER230=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_restart_local_directive3563); - stream_REGISTER.add(REGISTER230); + REGISTER234=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_restart_local_directive3647); + stream_REGISTER.add(REGISTER234); // AST REWRITE // elements: REGISTER @@ -8514,9 +8681,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 768:5: -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) + // 780:5: -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:768:8: ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:780:8: ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_RESTART_LOCAL, (retval.start), "I_RESTART_LOCAL"), root_1); @@ -8558,24 +8725,24 @@ public class smaliParser extends Parser { // $ANTLR start "prologue_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:770:1: prologue_directive : PROLOGUE_DIRECTIVE -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:782:1: prologue_directive : PROLOGUE_DIRECTIVE -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) ; public final smaliParser.prologue_directive_return prologue_directive() throws RecognitionException { smaliParser.prologue_directive_return retval = new smaliParser.prologue_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token PROLOGUE_DIRECTIVE231=null; + Token PROLOGUE_DIRECTIVE235=null; - CommonTree PROLOGUE_DIRECTIVE231_tree=null; + CommonTree PROLOGUE_DIRECTIVE235_tree=null; RewriteRuleTokenStream stream_PROLOGUE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token PROLOGUE_DIRECTIVE"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:771:3: ( PROLOGUE_DIRECTIVE -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:771:5: PROLOGUE_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:783:3: ( PROLOGUE_DIRECTIVE -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:783:5: PROLOGUE_DIRECTIVE { - PROLOGUE_DIRECTIVE231=(Token)match(input,PROLOGUE_DIRECTIVE,FOLLOW_PROLOGUE_DIRECTIVE_in_prologue_directive3586); - stream_PROLOGUE_DIRECTIVE.add(PROLOGUE_DIRECTIVE231); + PROLOGUE_DIRECTIVE235=(Token)match(input,PROLOGUE_DIRECTIVE,FOLLOW_PROLOGUE_DIRECTIVE_in_prologue_directive3670); + stream_PROLOGUE_DIRECTIVE.add(PROLOGUE_DIRECTIVE235); // AST REWRITE // elements: @@ -8588,9 +8755,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 772:5: -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) + // 784:5: -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:772:8: ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:784:8: ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PROLOGUE, (retval.start), "I_PROLOGUE"), root_1); @@ -8631,24 +8798,24 @@ public class smaliParser extends Parser { // $ANTLR start "epilogue_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:774:1: epilogue_directive : EPILOGUE_DIRECTIVE -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:786:1: epilogue_directive : EPILOGUE_DIRECTIVE -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) ; public final smaliParser.epilogue_directive_return epilogue_directive() throws RecognitionException { smaliParser.epilogue_directive_return retval = new smaliParser.epilogue_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token EPILOGUE_DIRECTIVE232=null; + Token EPILOGUE_DIRECTIVE236=null; - CommonTree EPILOGUE_DIRECTIVE232_tree=null; + CommonTree EPILOGUE_DIRECTIVE236_tree=null; RewriteRuleTokenStream stream_EPILOGUE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token EPILOGUE_DIRECTIVE"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:775:3: ( EPILOGUE_DIRECTIVE -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:775:5: EPILOGUE_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:787:3: ( EPILOGUE_DIRECTIVE -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:787:5: EPILOGUE_DIRECTIVE { - EPILOGUE_DIRECTIVE232=(Token)match(input,EPILOGUE_DIRECTIVE,FOLLOW_EPILOGUE_DIRECTIVE_in_epilogue_directive3607); - stream_EPILOGUE_DIRECTIVE.add(EPILOGUE_DIRECTIVE232); + EPILOGUE_DIRECTIVE236=(Token)match(input,EPILOGUE_DIRECTIVE,FOLLOW_EPILOGUE_DIRECTIVE_in_epilogue_directive3691); + stream_EPILOGUE_DIRECTIVE.add(EPILOGUE_DIRECTIVE236); // AST REWRITE // elements: @@ -8661,9 +8828,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 776:5: -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) + // 788:5: -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:776:8: ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:788:8: ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_EPILOGUE, (retval.start), "I_EPILOGUE"), root_1); @@ -8704,29 +8871,29 @@ public class smaliParser extends Parser { // $ANTLR start "source_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:778:1: source_directive : SOURCE_DIRECTIVE ( STRING_LITERAL )? -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:790:1: source_directive : SOURCE_DIRECTIVE ( STRING_LITERAL )? -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) ; public final smaliParser.source_directive_return source_directive() throws RecognitionException { smaliParser.source_directive_return retval = new smaliParser.source_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token SOURCE_DIRECTIVE233=null; - Token STRING_LITERAL234=null; + Token SOURCE_DIRECTIVE237=null; + Token STRING_LITERAL238=null; - CommonTree SOURCE_DIRECTIVE233_tree=null; - CommonTree STRING_LITERAL234_tree=null; + CommonTree SOURCE_DIRECTIVE237_tree=null; + CommonTree STRING_LITERAL238_tree=null; RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); RewriteRuleTokenStream stream_SOURCE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SOURCE_DIRECTIVE"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:779:3: ( SOURCE_DIRECTIVE ( STRING_LITERAL )? -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:779:5: SOURCE_DIRECTIVE ( STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:791:3: ( SOURCE_DIRECTIVE ( STRING_LITERAL )? -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:791:5: SOURCE_DIRECTIVE ( STRING_LITERAL )? { - SOURCE_DIRECTIVE233=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_directive3628); - stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE233); + SOURCE_DIRECTIVE237=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_directive3712); + stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE237); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:779:22: ( STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:791:22: ( STRING_LITERAL )? int alt45=2; int LA45_0 = input.LA(1); if ( (LA45_0==STRING_LITERAL) ) { @@ -8734,10 +8901,10 @@ public class smaliParser extends Parser { } switch (alt45) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:779:22: STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:791:22: STRING_LITERAL { - STRING_LITERAL234=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_directive3630); - stream_STRING_LITERAL.add(STRING_LITERAL234); + STRING_LITERAL238=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_directive3714); + stream_STRING_LITERAL.add(STRING_LITERAL238); } break; @@ -8755,13 +8922,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 780:5: -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) + // 792:5: -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:780:8: ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:792:8: ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SOURCE, (retval.start), "I_SOURCE"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:780:39: ( STRING_LITERAL )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:792:39: ( STRING_LITERAL )? if ( stream_STRING_LITERAL.hasNext() ) { adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode()); } @@ -8804,22 +8971,22 @@ public class smaliParser extends Parser { // $ANTLR start "instruction_format12x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:782:1: instruction_format12x : ( INSTRUCTION_FORMAT12x | INSTRUCTION_FORMAT12x_OR_ID -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID] ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:794:1: instruction_format12x : ( INSTRUCTION_FORMAT12x | INSTRUCTION_FORMAT12x_OR_ID -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID] ); public final smaliParser.instruction_format12x_return instruction_format12x() throws RecognitionException { smaliParser.instruction_format12x_return retval = new smaliParser.instruction_format12x_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT12x235=null; - Token INSTRUCTION_FORMAT12x_OR_ID236=null; + Token INSTRUCTION_FORMAT12x239=null; + Token INSTRUCTION_FORMAT12x_OR_ID240=null; - CommonTree INSTRUCTION_FORMAT12x235_tree=null; - CommonTree INSTRUCTION_FORMAT12x_OR_ID236_tree=null; + CommonTree INSTRUCTION_FORMAT12x239_tree=null; + CommonTree INSTRUCTION_FORMAT12x_OR_ID240_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT12x_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT12x_OR_ID"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:783:3: ( INSTRUCTION_FORMAT12x | INSTRUCTION_FORMAT12x_OR_ID -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:795:3: ( INSTRUCTION_FORMAT12x | INSTRUCTION_FORMAT12x_OR_ID -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID] ) int alt46=2; int LA46_0 = input.LA(1); if ( (LA46_0==INSTRUCTION_FORMAT12x) ) { @@ -8837,22 +9004,22 @@ public class smaliParser extends Parser { switch (alt46) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:783:5: INSTRUCTION_FORMAT12x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:795:5: INSTRUCTION_FORMAT12x { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT12x235=(Token)match(input,INSTRUCTION_FORMAT12x,FOLLOW_INSTRUCTION_FORMAT12x_in_instruction_format12x3655); - INSTRUCTION_FORMAT12x235_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT12x235); - adaptor.addChild(root_0, INSTRUCTION_FORMAT12x235_tree); + INSTRUCTION_FORMAT12x239=(Token)match(input,INSTRUCTION_FORMAT12x,FOLLOW_INSTRUCTION_FORMAT12x_in_instruction_format12x3739); + INSTRUCTION_FORMAT12x239_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT12x239); + adaptor.addChild(root_0, INSTRUCTION_FORMAT12x239_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:784:5: INSTRUCTION_FORMAT12x_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:796:5: INSTRUCTION_FORMAT12x_OR_ID { - INSTRUCTION_FORMAT12x_OR_ID236=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_instruction_format12x3661); - stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID236); + INSTRUCTION_FORMAT12x_OR_ID240=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_instruction_format12x3745); + stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID240); // AST REWRITE // elements: @@ -8865,9 +9032,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 784:33: -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID] + // 796:33: -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT12x, INSTRUCTION_FORMAT12x_OR_ID236)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT12x, INSTRUCTION_FORMAT12x_OR_ID240)); } @@ -8904,22 +9071,22 @@ public class smaliParser extends Parser { // $ANTLR start "instruction_format22s" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:786:1: instruction_format22s : ( INSTRUCTION_FORMAT22s | INSTRUCTION_FORMAT22s_OR_ID -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID] ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:798:1: instruction_format22s : ( INSTRUCTION_FORMAT22s | INSTRUCTION_FORMAT22s_OR_ID -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID] ); public final smaliParser.instruction_format22s_return instruction_format22s() throws RecognitionException { smaliParser.instruction_format22s_return retval = new smaliParser.instruction_format22s_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22s237=null; - Token INSTRUCTION_FORMAT22s_OR_ID238=null; + Token INSTRUCTION_FORMAT22s241=null; + Token INSTRUCTION_FORMAT22s_OR_ID242=null; - CommonTree INSTRUCTION_FORMAT22s237_tree=null; - CommonTree INSTRUCTION_FORMAT22s_OR_ID238_tree=null; + CommonTree INSTRUCTION_FORMAT22s241_tree=null; + CommonTree INSTRUCTION_FORMAT22s_OR_ID242_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22s_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22s_OR_ID"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:787:3: ( INSTRUCTION_FORMAT22s | INSTRUCTION_FORMAT22s_OR_ID -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:799:3: ( INSTRUCTION_FORMAT22s | INSTRUCTION_FORMAT22s_OR_ID -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID] ) int alt47=2; int LA47_0 = input.LA(1); if ( (LA47_0==INSTRUCTION_FORMAT22s) ) { @@ -8937,22 +9104,22 @@ public class smaliParser extends Parser { switch (alt47) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:787:5: INSTRUCTION_FORMAT22s + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:799:5: INSTRUCTION_FORMAT22s { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT22s237=(Token)match(input,INSTRUCTION_FORMAT22s,FOLLOW_INSTRUCTION_FORMAT22s_in_instruction_format22s3676); - INSTRUCTION_FORMAT22s237_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT22s237); - adaptor.addChild(root_0, INSTRUCTION_FORMAT22s237_tree); + INSTRUCTION_FORMAT22s241=(Token)match(input,INSTRUCTION_FORMAT22s,FOLLOW_INSTRUCTION_FORMAT22s_in_instruction_format22s3760); + INSTRUCTION_FORMAT22s241_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT22s241); + adaptor.addChild(root_0, INSTRUCTION_FORMAT22s241_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:788:5: INSTRUCTION_FORMAT22s_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:800:5: INSTRUCTION_FORMAT22s_OR_ID { - INSTRUCTION_FORMAT22s_OR_ID238=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_instruction_format22s3682); - stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID238); + INSTRUCTION_FORMAT22s_OR_ID242=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_instruction_format22s3766); + stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID242); // AST REWRITE // elements: @@ -8965,9 +9132,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 788:33: -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID] + // 800:33: -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT22s, INSTRUCTION_FORMAT22s_OR_ID238)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT22s, INSTRUCTION_FORMAT22s_OR_ID242)); } @@ -9004,22 +9171,22 @@ public class smaliParser extends Parser { // $ANTLR start "instruction_format31i" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:790:1: instruction_format31i : ( INSTRUCTION_FORMAT31i | INSTRUCTION_FORMAT31i_OR_ID -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID] ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:802:1: instruction_format31i : ( INSTRUCTION_FORMAT31i | INSTRUCTION_FORMAT31i_OR_ID -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID] ); public final smaliParser.instruction_format31i_return instruction_format31i() throws RecognitionException { smaliParser.instruction_format31i_return retval = new smaliParser.instruction_format31i_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT31i239=null; - Token INSTRUCTION_FORMAT31i_OR_ID240=null; + Token INSTRUCTION_FORMAT31i243=null; + Token INSTRUCTION_FORMAT31i_OR_ID244=null; - CommonTree INSTRUCTION_FORMAT31i239_tree=null; - CommonTree INSTRUCTION_FORMAT31i_OR_ID240_tree=null; + CommonTree INSTRUCTION_FORMAT31i243_tree=null; + CommonTree INSTRUCTION_FORMAT31i_OR_ID244_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31i_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31i_OR_ID"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:791:3: ( INSTRUCTION_FORMAT31i | INSTRUCTION_FORMAT31i_OR_ID -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID] ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:803:3: ( INSTRUCTION_FORMAT31i | INSTRUCTION_FORMAT31i_OR_ID -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID] ) int alt48=2; int LA48_0 = input.LA(1); if ( (LA48_0==INSTRUCTION_FORMAT31i) ) { @@ -9037,22 +9204,22 @@ public class smaliParser extends Parser { switch (alt48) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:791:5: INSTRUCTION_FORMAT31i + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:803:5: INSTRUCTION_FORMAT31i { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT31i239=(Token)match(input,INSTRUCTION_FORMAT31i,FOLLOW_INSTRUCTION_FORMAT31i_in_instruction_format31i3697); - INSTRUCTION_FORMAT31i239_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT31i239); - adaptor.addChild(root_0, INSTRUCTION_FORMAT31i239_tree); + INSTRUCTION_FORMAT31i243=(Token)match(input,INSTRUCTION_FORMAT31i,FOLLOW_INSTRUCTION_FORMAT31i_in_instruction_format31i3781); + INSTRUCTION_FORMAT31i243_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT31i243); + adaptor.addChild(root_0, INSTRUCTION_FORMAT31i243_tree); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:792:5: INSTRUCTION_FORMAT31i_OR_ID + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:804:5: INSTRUCTION_FORMAT31i_OR_ID { - INSTRUCTION_FORMAT31i_OR_ID240=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_instruction_format31i3703); - stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID240); + INSTRUCTION_FORMAT31i_OR_ID244=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_instruction_format31i3787); + stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID244); // AST REWRITE // elements: @@ -9065,9 +9232,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 792:33: -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID] + // 804:33: -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID] { - adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT31i, INSTRUCTION_FORMAT31i_OR_ID240)); + adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT31i, INSTRUCTION_FORMAT31i_OR_ID244)); } @@ -9104,62 +9271,66 @@ public class smaliParser extends Parser { // $ANTLR start "instruction" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:796:1: instruction : ( insn_format10t | insn_format10x | insn_format10x_odex | insn_format11n | insn_format11x | insn_format12x | insn_format20bc | insn_format20t | insn_format21c_field | insn_format21c_field_odex | insn_format21c_string | insn_format21c_type | insn_format21ih | insn_format21lh | insn_format21s | insn_format21t | insn_format22b | insn_format22c_field | insn_format22c_field_odex | insn_format22c_type | insn_format22cs_field | insn_format22s | insn_format22t | insn_format22x | insn_format23x | insn_format30t | insn_format31c | insn_format31i | insn_format31t | insn_format32x | insn_format35c_method | insn_format35c_type | insn_format35c_method_odex | insn_format35mi_method | insn_format35ms_method | insn_format3rc_method | insn_format3rc_method_odex | insn_format3rc_type | insn_format3rmi_method | insn_format3rms_method | insn_format51l | insn_array_data_directive | insn_packed_switch_directive | insn_sparse_switch_directive ); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:808:1: instruction : ( insn_format10t | insn_format10x | insn_format10x_odex | insn_format11n | insn_format11x | insn_format12x | insn_format20bc | insn_format20t | insn_format21c_field | insn_format21c_field_odex | 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_field_odex | insn_format22c_type | insn_format22c_string | insn_format22cs_field | 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_format35c_method_odex | insn_format35mi_method | insn_format35ms_method | insn_format3rc_method | insn_format3rc_method_odex | insn_format3rc_type | insn_format3rmi_method | insn_format3rms_method | insn_format51l | insn_array_data_directive | insn_packed_switch_directive | insn_sparse_switch_directive ); public final smaliParser.instruction_return instruction() throws RecognitionException { smaliParser.instruction_return retval = new smaliParser.instruction_return(); retval.start = input.LT(1); CommonTree root_0 = null; - ParserRuleReturnScope insn_format10t241 =null; - ParserRuleReturnScope insn_format10x242 =null; - ParserRuleReturnScope insn_format10x_odex243 =null; - ParserRuleReturnScope insn_format11n244 =null; - ParserRuleReturnScope insn_format11x245 =null; - ParserRuleReturnScope insn_format12x246 =null; - ParserRuleReturnScope insn_format20bc247 =null; - ParserRuleReturnScope insn_format20t248 =null; - ParserRuleReturnScope insn_format21c_field249 =null; - ParserRuleReturnScope insn_format21c_field_odex250 =null; - ParserRuleReturnScope insn_format21c_string251 =null; - ParserRuleReturnScope insn_format21c_type252 =null; - ParserRuleReturnScope insn_format21ih253 =null; - ParserRuleReturnScope insn_format21lh254 =null; - ParserRuleReturnScope insn_format21s255 =null; - ParserRuleReturnScope insn_format21t256 =null; - ParserRuleReturnScope insn_format22b257 =null; - ParserRuleReturnScope insn_format22c_field258 =null; - ParserRuleReturnScope insn_format22c_field_odex259 =null; - ParserRuleReturnScope insn_format22c_type260 =null; - ParserRuleReturnScope insn_format22cs_field261 =null; - ParserRuleReturnScope insn_format22s262 =null; - ParserRuleReturnScope insn_format22t263 =null; - ParserRuleReturnScope insn_format22x264 =null; - ParserRuleReturnScope insn_format23x265 =null; - ParserRuleReturnScope insn_format30t266 =null; - ParserRuleReturnScope insn_format31c267 =null; - ParserRuleReturnScope insn_format31i268 =null; - ParserRuleReturnScope insn_format31t269 =null; - ParserRuleReturnScope insn_format32x270 =null; - ParserRuleReturnScope insn_format35c_method271 =null; - ParserRuleReturnScope insn_format35c_type272 =null; - ParserRuleReturnScope insn_format35c_method_odex273 =null; - ParserRuleReturnScope insn_format35mi_method274 =null; - ParserRuleReturnScope insn_format35ms_method275 =null; - ParserRuleReturnScope insn_format3rc_method276 =null; - ParserRuleReturnScope insn_format3rc_method_odex277 =null; - ParserRuleReturnScope insn_format3rc_type278 =null; - ParserRuleReturnScope insn_format3rmi_method279 =null; - ParserRuleReturnScope insn_format3rms_method280 =null; - ParserRuleReturnScope insn_format51l281 =null; - ParserRuleReturnScope insn_array_data_directive282 =null; - ParserRuleReturnScope insn_packed_switch_directive283 =null; - ParserRuleReturnScope insn_sparse_switch_directive284 =null; + ParserRuleReturnScope insn_format10t245 =null; + ParserRuleReturnScope insn_format10x246 =null; + ParserRuleReturnScope insn_format10x_odex247 =null; + ParserRuleReturnScope insn_format11n248 =null; + ParserRuleReturnScope insn_format11x249 =null; + ParserRuleReturnScope insn_format12x250 =null; + ParserRuleReturnScope insn_format20bc251 =null; + ParserRuleReturnScope insn_format20t252 =null; + ParserRuleReturnScope insn_format21c_field253 =null; + ParserRuleReturnScope insn_format21c_field_odex254 =null; + ParserRuleReturnScope insn_format21c_string255 =null; + ParserRuleReturnScope insn_format21c_type256 =null; + ParserRuleReturnScope insn_format21c_lambda257 =null; + ParserRuleReturnScope insn_format21c_method258 =null; + ParserRuleReturnScope insn_format21ih259 =null; + ParserRuleReturnScope insn_format21lh260 =null; + ParserRuleReturnScope insn_format21s261 =null; + ParserRuleReturnScope insn_format21t262 =null; + ParserRuleReturnScope insn_format22b263 =null; + ParserRuleReturnScope insn_format22c_field264 =null; + ParserRuleReturnScope insn_format22c_field_odex265 =null; + ParserRuleReturnScope insn_format22c_type266 =null; + ParserRuleReturnScope insn_format22c_string267 =null; + ParserRuleReturnScope insn_format22cs_field268 =null; + ParserRuleReturnScope insn_format22s269 =null; + ParserRuleReturnScope insn_format22t270 =null; + ParserRuleReturnScope insn_format22x271 =null; + ParserRuleReturnScope insn_format23x272 =null; + ParserRuleReturnScope insn_format25x273 =null; + ParserRuleReturnScope insn_format30t274 =null; + ParserRuleReturnScope insn_format31c275 =null; + ParserRuleReturnScope insn_format31i276 =null; + ParserRuleReturnScope insn_format31t277 =null; + ParserRuleReturnScope insn_format32x278 =null; + ParserRuleReturnScope insn_format35c_method279 =null; + ParserRuleReturnScope insn_format35c_type280 =null; + ParserRuleReturnScope insn_format35c_method_odex281 =null; + ParserRuleReturnScope insn_format35mi_method282 =null; + ParserRuleReturnScope insn_format35ms_method283 =null; + ParserRuleReturnScope insn_format3rc_method284 =null; + ParserRuleReturnScope insn_format3rc_method_odex285 =null; + ParserRuleReturnScope insn_format3rc_type286 =null; + ParserRuleReturnScope insn_format3rmi_method287 =null; + ParserRuleReturnScope insn_format3rms_method288 =null; + ParserRuleReturnScope insn_format51l289 =null; + ParserRuleReturnScope insn_array_data_directive290 =null; + ParserRuleReturnScope insn_packed_switch_directive291 =null; + ParserRuleReturnScope insn_sparse_switch_directive292 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:797:3: ( insn_format10t | insn_format10x | insn_format10x_odex | insn_format11n | insn_format11x | insn_format12x | insn_format20bc | insn_format20t | insn_format21c_field | insn_format21c_field_odex | insn_format21c_string | insn_format21c_type | insn_format21ih | insn_format21lh | insn_format21s | insn_format21t | insn_format22b | insn_format22c_field | insn_format22c_field_odex | insn_format22c_type | insn_format22cs_field | insn_format22s | insn_format22t | insn_format22x | insn_format23x | insn_format30t | insn_format31c | insn_format31i | insn_format31t | insn_format32x | insn_format35c_method | insn_format35c_type | insn_format35c_method_odex | insn_format35mi_method | insn_format35ms_method | insn_format3rc_method | insn_format3rc_method_odex | insn_format3rc_type | insn_format3rmi_method | insn_format3rms_method | insn_format51l | insn_array_data_directive | insn_packed_switch_directive | insn_sparse_switch_directive ) - int alt49=44; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:809:3: ( insn_format10t | insn_format10x | insn_format10x_odex | insn_format11n | insn_format11x | insn_format12x | insn_format20bc | insn_format20t | insn_format21c_field | insn_format21c_field_odex | 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_field_odex | insn_format22c_type | insn_format22c_string | insn_format22cs_field | 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_format35c_method_odex | insn_format35mi_method | insn_format35ms_method | insn_format3rc_method | insn_format3rc_method_odex | insn_format3rc_type | insn_format3rmi_method | insn_format3rms_method | insn_format51l | insn_array_data_directive | insn_packed_switch_directive | insn_sparse_switch_directive ) + int alt49=48; switch ( input.LA(1) ) { case INSTRUCTION_FORMAT10t: { @@ -9222,166 +9393,186 @@ public class smaliParser extends Parser { alt49=12; } break; - case INSTRUCTION_FORMAT21ih: + case INSTRUCTION_FORMAT21c_LAMBDA: { alt49=13; } break; - case INSTRUCTION_FORMAT21lh: + case INSTRUCTION_FORMAT21c_METHOD: { alt49=14; } break; - case INSTRUCTION_FORMAT21s: + case INSTRUCTION_FORMAT21ih: { alt49=15; } break; - case INSTRUCTION_FORMAT21t: + case INSTRUCTION_FORMAT21lh: { alt49=16; } break; - case INSTRUCTION_FORMAT22b: + case INSTRUCTION_FORMAT21s: { alt49=17; } break; - case INSTRUCTION_FORMAT22c_FIELD: + case INSTRUCTION_FORMAT21t: { alt49=18; } break; - case INSTRUCTION_FORMAT22c_FIELD_ODEX: + case INSTRUCTION_FORMAT22b: { alt49=19; } break; - case INSTRUCTION_FORMAT22c_TYPE: + case INSTRUCTION_FORMAT22c_FIELD: { alt49=20; } break; - case INSTRUCTION_FORMAT22cs_FIELD: + case INSTRUCTION_FORMAT22c_FIELD_ODEX: { alt49=21; } break; + case INSTRUCTION_FORMAT22c_TYPE: + { + alt49=22; + } + break; + case INSTRUCTION_FORMAT22c_STRING: + { + alt49=23; + } + break; + case INSTRUCTION_FORMAT22cs_FIELD: + { + alt49=24; + } + break; case INSTRUCTION_FORMAT22s: case INSTRUCTION_FORMAT22s_OR_ID: { - alt49=22; + alt49=25; } break; case INSTRUCTION_FORMAT22t: { - alt49=23; + alt49=26; } break; case INSTRUCTION_FORMAT22x: { - alt49=24; + alt49=27; } break; case INSTRUCTION_FORMAT23x: { - alt49=25; + alt49=28; + } + break; + case INSTRUCTION_FORMAT25x: + { + alt49=29; } break; case INSTRUCTION_FORMAT30t: { - alt49=26; + alt49=30; } break; case INSTRUCTION_FORMAT31c: { - alt49=27; + alt49=31; } break; case INSTRUCTION_FORMAT31i: case INSTRUCTION_FORMAT31i_OR_ID: { - alt49=28; + alt49=32; } break; case INSTRUCTION_FORMAT31t: { - alt49=29; + alt49=33; } break; case INSTRUCTION_FORMAT32x: { - alt49=30; + alt49=34; } break; case INSTRUCTION_FORMAT35c_METHOD: { - alt49=31; + alt49=35; } break; case INSTRUCTION_FORMAT35c_TYPE: { - alt49=32; + alt49=36; } break; case INSTRUCTION_FORMAT35c_METHOD_ODEX: { - alt49=33; + alt49=37; } break; case INSTRUCTION_FORMAT35mi_METHOD: { - alt49=34; + alt49=38; } break; case INSTRUCTION_FORMAT35ms_METHOD: { - alt49=35; + alt49=39; } break; case INSTRUCTION_FORMAT3rc_METHOD: { - alt49=36; + alt49=40; } break; case INSTRUCTION_FORMAT3rc_METHOD_ODEX: { - alt49=37; + alt49=41; } break; case INSTRUCTION_FORMAT3rc_TYPE: { - alt49=38; + alt49=42; } break; case INSTRUCTION_FORMAT3rmi_METHOD: { - alt49=39; + alt49=43; } break; case INSTRUCTION_FORMAT3rms_METHOD: { - alt49=40; + alt49=44; } break; case INSTRUCTION_FORMAT51l: { - alt49=41; + alt49=45; } break; case ARRAY_DATA_DIRECTIVE: { - alt49=42; + alt49=46; } break; case PACKED_SWITCH_DIRECTIVE: { - alt49=43; + alt49=47; } break; case SPARSE_SWITCH_DIRECTIVE: { - alt49=44; + alt49=48; } break; default: @@ -9391,618 +9582,674 @@ public class smaliParser extends Parser { } switch (alt49) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:797:5: insn_format10t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:809:5: insn_format10t { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format10t_in_instruction3720); - insn_format10t241=insn_format10t(); + pushFollow(FOLLOW_insn_format10t_in_instruction3804); + insn_format10t245=insn_format10t(); state._fsp--; - adaptor.addChild(root_0, insn_format10t241.getTree()); + adaptor.addChild(root_0, insn_format10t245.getTree()); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:798:5: insn_format10x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:810:5: insn_format10x { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format10x_in_instruction3726); - insn_format10x242=insn_format10x(); + pushFollow(FOLLOW_insn_format10x_in_instruction3810); + insn_format10x246=insn_format10x(); state._fsp--; - adaptor.addChild(root_0, insn_format10x242.getTree()); + adaptor.addChild(root_0, insn_format10x246.getTree()); } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:799:5: insn_format10x_odex + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:811:5: insn_format10x_odex { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format10x_odex_in_instruction3732); - insn_format10x_odex243=insn_format10x_odex(); + pushFollow(FOLLOW_insn_format10x_odex_in_instruction3816); + insn_format10x_odex247=insn_format10x_odex(); state._fsp--; - adaptor.addChild(root_0, insn_format10x_odex243.getTree()); + adaptor.addChild(root_0, insn_format10x_odex247.getTree()); } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:800:5: insn_format11n + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:812:5: insn_format11n { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format11n_in_instruction3738); - insn_format11n244=insn_format11n(); + pushFollow(FOLLOW_insn_format11n_in_instruction3822); + insn_format11n248=insn_format11n(); state._fsp--; - adaptor.addChild(root_0, insn_format11n244.getTree()); + adaptor.addChild(root_0, insn_format11n248.getTree()); } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:801:5: insn_format11x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:813:5: insn_format11x { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format11x_in_instruction3744); - insn_format11x245=insn_format11x(); + pushFollow(FOLLOW_insn_format11x_in_instruction3828); + insn_format11x249=insn_format11x(); state._fsp--; - adaptor.addChild(root_0, insn_format11x245.getTree()); + adaptor.addChild(root_0, insn_format11x249.getTree()); } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:802:5: insn_format12x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:814:5: insn_format12x { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format12x_in_instruction3750); - insn_format12x246=insn_format12x(); + pushFollow(FOLLOW_insn_format12x_in_instruction3834); + insn_format12x250=insn_format12x(); state._fsp--; - adaptor.addChild(root_0, insn_format12x246.getTree()); + adaptor.addChild(root_0, insn_format12x250.getTree()); } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:803:5: insn_format20bc + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:815:5: insn_format20bc { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format20bc_in_instruction3756); - insn_format20bc247=insn_format20bc(); + pushFollow(FOLLOW_insn_format20bc_in_instruction3840); + insn_format20bc251=insn_format20bc(); state._fsp--; - adaptor.addChild(root_0, insn_format20bc247.getTree()); + adaptor.addChild(root_0, insn_format20bc251.getTree()); } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:804:5: insn_format20t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:816:5: insn_format20t { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format20t_in_instruction3762); - insn_format20t248=insn_format20t(); + pushFollow(FOLLOW_insn_format20t_in_instruction3846); + insn_format20t252=insn_format20t(); state._fsp--; - adaptor.addChild(root_0, insn_format20t248.getTree()); + adaptor.addChild(root_0, insn_format20t252.getTree()); } break; case 9 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:805:5: insn_format21c_field + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:817:5: insn_format21c_field { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21c_field_in_instruction3768); - insn_format21c_field249=insn_format21c_field(); + pushFollow(FOLLOW_insn_format21c_field_in_instruction3852); + insn_format21c_field253=insn_format21c_field(); state._fsp--; - adaptor.addChild(root_0, insn_format21c_field249.getTree()); + adaptor.addChild(root_0, insn_format21c_field253.getTree()); } break; case 10 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:806:5: insn_format21c_field_odex + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:818:5: insn_format21c_field_odex { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21c_field_odex_in_instruction3774); - insn_format21c_field_odex250=insn_format21c_field_odex(); + pushFollow(FOLLOW_insn_format21c_field_odex_in_instruction3858); + insn_format21c_field_odex254=insn_format21c_field_odex(); state._fsp--; - adaptor.addChild(root_0, insn_format21c_field_odex250.getTree()); + adaptor.addChild(root_0, insn_format21c_field_odex254.getTree()); } break; case 11 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:807:5: insn_format21c_string + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:819:5: insn_format21c_string { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21c_string_in_instruction3780); - insn_format21c_string251=insn_format21c_string(); + pushFollow(FOLLOW_insn_format21c_string_in_instruction3864); + insn_format21c_string255=insn_format21c_string(); state._fsp--; - adaptor.addChild(root_0, insn_format21c_string251.getTree()); + adaptor.addChild(root_0, insn_format21c_string255.getTree()); } break; case 12 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:808:5: insn_format21c_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:820:5: insn_format21c_type { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21c_type_in_instruction3786); - insn_format21c_type252=insn_format21c_type(); + pushFollow(FOLLOW_insn_format21c_type_in_instruction3870); + insn_format21c_type256=insn_format21c_type(); state._fsp--; - adaptor.addChild(root_0, insn_format21c_type252.getTree()); + adaptor.addChild(root_0, insn_format21c_type256.getTree()); } break; case 13 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:809:5: insn_format21ih + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:821:5: insn_format21c_lambda { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21ih_in_instruction3792); - insn_format21ih253=insn_format21ih(); + pushFollow(FOLLOW_insn_format21c_lambda_in_instruction3876); + insn_format21c_lambda257=insn_format21c_lambda(); state._fsp--; - adaptor.addChild(root_0, insn_format21ih253.getTree()); + adaptor.addChild(root_0, insn_format21c_lambda257.getTree()); } break; case 14 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:810:5: insn_format21lh + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:822:5: insn_format21c_method { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21lh_in_instruction3798); - insn_format21lh254=insn_format21lh(); + pushFollow(FOLLOW_insn_format21c_method_in_instruction3882); + insn_format21c_method258=insn_format21c_method(); state._fsp--; - adaptor.addChild(root_0, insn_format21lh254.getTree()); + adaptor.addChild(root_0, insn_format21c_method258.getTree()); } break; case 15 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:811:5: insn_format21s + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:823:5: insn_format21ih { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21s_in_instruction3804); - insn_format21s255=insn_format21s(); + pushFollow(FOLLOW_insn_format21ih_in_instruction3888); + insn_format21ih259=insn_format21ih(); state._fsp--; - adaptor.addChild(root_0, insn_format21s255.getTree()); + adaptor.addChild(root_0, insn_format21ih259.getTree()); } break; case 16 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:812:5: insn_format21t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:824:5: insn_format21lh { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format21t_in_instruction3810); - insn_format21t256=insn_format21t(); + pushFollow(FOLLOW_insn_format21lh_in_instruction3894); + insn_format21lh260=insn_format21lh(); state._fsp--; - adaptor.addChild(root_0, insn_format21t256.getTree()); + adaptor.addChild(root_0, insn_format21lh260.getTree()); } break; case 17 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:813:5: insn_format22b + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:825:5: insn_format21s { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22b_in_instruction3816); - insn_format22b257=insn_format22b(); + pushFollow(FOLLOW_insn_format21s_in_instruction3900); + insn_format21s261=insn_format21s(); state._fsp--; - adaptor.addChild(root_0, insn_format22b257.getTree()); + adaptor.addChild(root_0, insn_format21s261.getTree()); } break; case 18 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:814:5: insn_format22c_field + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:826:5: insn_format21t { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22c_field_in_instruction3822); - insn_format22c_field258=insn_format22c_field(); + pushFollow(FOLLOW_insn_format21t_in_instruction3906); + insn_format21t262=insn_format21t(); state._fsp--; - adaptor.addChild(root_0, insn_format22c_field258.getTree()); + adaptor.addChild(root_0, insn_format21t262.getTree()); } break; case 19 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:815:5: insn_format22c_field_odex + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:827:5: insn_format22b { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22c_field_odex_in_instruction3828); - insn_format22c_field_odex259=insn_format22c_field_odex(); + pushFollow(FOLLOW_insn_format22b_in_instruction3912); + insn_format22b263=insn_format22b(); state._fsp--; - adaptor.addChild(root_0, insn_format22c_field_odex259.getTree()); + adaptor.addChild(root_0, insn_format22b263.getTree()); } break; case 20 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:816:5: insn_format22c_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:828:5: insn_format22c_field { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22c_type_in_instruction3834); - insn_format22c_type260=insn_format22c_type(); + pushFollow(FOLLOW_insn_format22c_field_in_instruction3918); + insn_format22c_field264=insn_format22c_field(); state._fsp--; - adaptor.addChild(root_0, insn_format22c_type260.getTree()); + adaptor.addChild(root_0, insn_format22c_field264.getTree()); } break; case 21 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:817:5: insn_format22cs_field + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:829:5: insn_format22c_field_odex { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22cs_field_in_instruction3840); - insn_format22cs_field261=insn_format22cs_field(); + pushFollow(FOLLOW_insn_format22c_field_odex_in_instruction3924); + insn_format22c_field_odex265=insn_format22c_field_odex(); state._fsp--; - adaptor.addChild(root_0, insn_format22cs_field261.getTree()); + adaptor.addChild(root_0, insn_format22c_field_odex265.getTree()); } break; case 22 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:818:5: insn_format22s + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:830:5: insn_format22c_type { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22s_in_instruction3846); - insn_format22s262=insn_format22s(); + pushFollow(FOLLOW_insn_format22c_type_in_instruction3930); + insn_format22c_type266=insn_format22c_type(); state._fsp--; - adaptor.addChild(root_0, insn_format22s262.getTree()); + adaptor.addChild(root_0, insn_format22c_type266.getTree()); } break; case 23 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:819:5: insn_format22t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:831:5: insn_format22c_string { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22t_in_instruction3852); - insn_format22t263=insn_format22t(); + pushFollow(FOLLOW_insn_format22c_string_in_instruction3936); + insn_format22c_string267=insn_format22c_string(); state._fsp--; - adaptor.addChild(root_0, insn_format22t263.getTree()); + adaptor.addChild(root_0, insn_format22c_string267.getTree()); } break; case 24 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:820:5: insn_format22x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:832:5: insn_format22cs_field { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format22x_in_instruction3858); - insn_format22x264=insn_format22x(); + pushFollow(FOLLOW_insn_format22cs_field_in_instruction3942); + insn_format22cs_field268=insn_format22cs_field(); state._fsp--; - adaptor.addChild(root_0, insn_format22x264.getTree()); + adaptor.addChild(root_0, insn_format22cs_field268.getTree()); } break; case 25 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:821:5: insn_format23x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:833:5: insn_format22s { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format23x_in_instruction3864); - insn_format23x265=insn_format23x(); + pushFollow(FOLLOW_insn_format22s_in_instruction3948); + insn_format22s269=insn_format22s(); state._fsp--; - adaptor.addChild(root_0, insn_format23x265.getTree()); + adaptor.addChild(root_0, insn_format22s269.getTree()); } break; case 26 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:822:5: insn_format30t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:834:5: insn_format22t { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format30t_in_instruction3870); - insn_format30t266=insn_format30t(); + pushFollow(FOLLOW_insn_format22t_in_instruction3954); + insn_format22t270=insn_format22t(); state._fsp--; - adaptor.addChild(root_0, insn_format30t266.getTree()); + adaptor.addChild(root_0, insn_format22t270.getTree()); } break; case 27 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:823:5: insn_format31c + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:835:5: insn_format22x { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format31c_in_instruction3876); - insn_format31c267=insn_format31c(); + pushFollow(FOLLOW_insn_format22x_in_instruction3960); + insn_format22x271=insn_format22x(); state._fsp--; - adaptor.addChild(root_0, insn_format31c267.getTree()); + adaptor.addChild(root_0, insn_format22x271.getTree()); } break; case 28 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:824:5: insn_format31i + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:836:5: insn_format23x { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format31i_in_instruction3882); - insn_format31i268=insn_format31i(); + pushFollow(FOLLOW_insn_format23x_in_instruction3966); + insn_format23x272=insn_format23x(); state._fsp--; - adaptor.addChild(root_0, insn_format31i268.getTree()); + adaptor.addChild(root_0, insn_format23x272.getTree()); } break; case 29 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:825:5: insn_format31t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:837:5: insn_format25x { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format31t_in_instruction3888); - insn_format31t269=insn_format31t(); + pushFollow(FOLLOW_insn_format25x_in_instruction3972); + insn_format25x273=insn_format25x(); state._fsp--; - adaptor.addChild(root_0, insn_format31t269.getTree()); + adaptor.addChild(root_0, insn_format25x273.getTree()); } break; case 30 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:826:5: insn_format32x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:838:5: insn_format30t { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format32x_in_instruction3894); - insn_format32x270=insn_format32x(); + pushFollow(FOLLOW_insn_format30t_in_instruction3978); + insn_format30t274=insn_format30t(); state._fsp--; - adaptor.addChild(root_0, insn_format32x270.getTree()); + adaptor.addChild(root_0, insn_format30t274.getTree()); } break; case 31 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:827:5: insn_format35c_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:839:5: insn_format31c { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format35c_method_in_instruction3900); - insn_format35c_method271=insn_format35c_method(); + pushFollow(FOLLOW_insn_format31c_in_instruction3984); + insn_format31c275=insn_format31c(); state._fsp--; - adaptor.addChild(root_0, insn_format35c_method271.getTree()); + adaptor.addChild(root_0, insn_format31c275.getTree()); } break; case 32 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:828:5: insn_format35c_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:840:5: insn_format31i { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format35c_type_in_instruction3906); - insn_format35c_type272=insn_format35c_type(); + pushFollow(FOLLOW_insn_format31i_in_instruction3990); + insn_format31i276=insn_format31i(); state._fsp--; - adaptor.addChild(root_0, insn_format35c_type272.getTree()); + adaptor.addChild(root_0, insn_format31i276.getTree()); } break; case 33 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:829:5: insn_format35c_method_odex + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:841:5: insn_format31t { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format35c_method_odex_in_instruction3912); - insn_format35c_method_odex273=insn_format35c_method_odex(); + pushFollow(FOLLOW_insn_format31t_in_instruction3996); + insn_format31t277=insn_format31t(); state._fsp--; - adaptor.addChild(root_0, insn_format35c_method_odex273.getTree()); + adaptor.addChild(root_0, insn_format31t277.getTree()); } break; case 34 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:830:5: insn_format35mi_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:842:5: insn_format32x { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format35mi_method_in_instruction3918); - insn_format35mi_method274=insn_format35mi_method(); + pushFollow(FOLLOW_insn_format32x_in_instruction4002); + insn_format32x278=insn_format32x(); state._fsp--; - adaptor.addChild(root_0, insn_format35mi_method274.getTree()); + adaptor.addChild(root_0, insn_format32x278.getTree()); } break; case 35 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:831:5: insn_format35ms_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:843:5: insn_format35c_method { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format35ms_method_in_instruction3924); - insn_format35ms_method275=insn_format35ms_method(); + pushFollow(FOLLOW_insn_format35c_method_in_instruction4008); + insn_format35c_method279=insn_format35c_method(); state._fsp--; - adaptor.addChild(root_0, insn_format35ms_method275.getTree()); + adaptor.addChild(root_0, insn_format35c_method279.getTree()); } break; case 36 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:832:5: insn_format3rc_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:844:5: insn_format35c_type { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format3rc_method_in_instruction3930); - insn_format3rc_method276=insn_format3rc_method(); + pushFollow(FOLLOW_insn_format35c_type_in_instruction4014); + insn_format35c_type280=insn_format35c_type(); state._fsp--; - adaptor.addChild(root_0, insn_format3rc_method276.getTree()); + adaptor.addChild(root_0, insn_format35c_type280.getTree()); } break; case 37 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:833:5: insn_format3rc_method_odex + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:845:5: insn_format35c_method_odex { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format3rc_method_odex_in_instruction3936); - insn_format3rc_method_odex277=insn_format3rc_method_odex(); + pushFollow(FOLLOW_insn_format35c_method_odex_in_instruction4020); + insn_format35c_method_odex281=insn_format35c_method_odex(); state._fsp--; - adaptor.addChild(root_0, insn_format3rc_method_odex277.getTree()); + adaptor.addChild(root_0, insn_format35c_method_odex281.getTree()); } break; case 38 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:834:5: insn_format3rc_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:846:5: insn_format35mi_method { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format3rc_type_in_instruction3942); - insn_format3rc_type278=insn_format3rc_type(); + pushFollow(FOLLOW_insn_format35mi_method_in_instruction4026); + insn_format35mi_method282=insn_format35mi_method(); state._fsp--; - adaptor.addChild(root_0, insn_format3rc_type278.getTree()); + adaptor.addChild(root_0, insn_format35mi_method282.getTree()); } break; case 39 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:835:5: insn_format3rmi_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:847:5: insn_format35ms_method { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format3rmi_method_in_instruction3948); - insn_format3rmi_method279=insn_format3rmi_method(); + pushFollow(FOLLOW_insn_format35ms_method_in_instruction4032); + insn_format35ms_method283=insn_format35ms_method(); state._fsp--; - adaptor.addChild(root_0, insn_format3rmi_method279.getTree()); + adaptor.addChild(root_0, insn_format35ms_method283.getTree()); } break; case 40 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:836:5: insn_format3rms_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:848:5: insn_format3rc_method { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format3rms_method_in_instruction3954); - insn_format3rms_method280=insn_format3rms_method(); + pushFollow(FOLLOW_insn_format3rc_method_in_instruction4038); + insn_format3rc_method284=insn_format3rc_method(); state._fsp--; - adaptor.addChild(root_0, insn_format3rms_method280.getTree()); + adaptor.addChild(root_0, insn_format3rc_method284.getTree()); } break; case 41 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:837:5: insn_format51l + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:849:5: insn_format3rc_method_odex { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_format51l_in_instruction3960); - insn_format51l281=insn_format51l(); + pushFollow(FOLLOW_insn_format3rc_method_odex_in_instruction4044); + insn_format3rc_method_odex285=insn_format3rc_method_odex(); state._fsp--; - adaptor.addChild(root_0, insn_format51l281.getTree()); + adaptor.addChild(root_0, insn_format3rc_method_odex285.getTree()); } break; case 42 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:838:5: insn_array_data_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:850:5: insn_format3rc_type { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_array_data_directive_in_instruction3966); - insn_array_data_directive282=insn_array_data_directive(); + pushFollow(FOLLOW_insn_format3rc_type_in_instruction4050); + insn_format3rc_type286=insn_format3rc_type(); state._fsp--; - adaptor.addChild(root_0, insn_array_data_directive282.getTree()); + adaptor.addChild(root_0, insn_format3rc_type286.getTree()); } break; case 43 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:839:5: insn_packed_switch_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:851:5: insn_format3rmi_method { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction3972); - insn_packed_switch_directive283=insn_packed_switch_directive(); + pushFollow(FOLLOW_insn_format3rmi_method_in_instruction4056); + insn_format3rmi_method287=insn_format3rmi_method(); state._fsp--; - adaptor.addChild(root_0, insn_packed_switch_directive283.getTree()); + adaptor.addChild(root_0, insn_format3rmi_method287.getTree()); } break; case 44 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:840:5: insn_sparse_switch_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:852:5: insn_format3rms_method { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction3978); - insn_sparse_switch_directive284=insn_sparse_switch_directive(); + pushFollow(FOLLOW_insn_format3rms_method_in_instruction4062); + insn_format3rms_method288=insn_format3rms_method(); state._fsp--; - adaptor.addChild(root_0, insn_sparse_switch_directive284.getTree()); + adaptor.addChild(root_0, insn_format3rms_method288.getTree()); + + } + break; + case 45 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:853:5: insn_format51l + { + root_0 = (CommonTree)adaptor.nil(); + + + pushFollow(FOLLOW_insn_format51l_in_instruction4068); + insn_format51l289=insn_format51l(); + state._fsp--; + + adaptor.addChild(root_0, insn_format51l289.getTree()); + + } + break; + case 46 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:854:5: insn_array_data_directive + { + root_0 = (CommonTree)adaptor.nil(); + + + pushFollow(FOLLOW_insn_array_data_directive_in_instruction4074); + insn_array_data_directive290=insn_array_data_directive(); + state._fsp--; + + adaptor.addChild(root_0, insn_array_data_directive290.getTree()); + + } + break; + case 47 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:855:5: insn_packed_switch_directive + { + root_0 = (CommonTree)adaptor.nil(); + + + pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction4080); + insn_packed_switch_directive291=insn_packed_switch_directive(); + state._fsp--; + + adaptor.addChild(root_0, insn_packed_switch_directive291.getTree()); + + } + break; + case 48 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:856:5: insn_sparse_switch_directive + { + root_0 = (CommonTree)adaptor.nil(); + + + pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction4086); + insn_sparse_switch_directive292=insn_sparse_switch_directive(); + state._fsp--; + + adaptor.addChild(root_0, insn_sparse_switch_directive292.getTree()); } break; @@ -10035,32 +10282,32 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format10t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:842:1: insn_format10t : INSTRUCTION_FORMAT10t label_ref -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:858:1: insn_format10t : INSTRUCTION_FORMAT10t label_ref -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) ; public final smaliParser.insn_format10t_return insn_format10t() throws RecognitionException { smaliParser.insn_format10t_return retval = new smaliParser.insn_format10t_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT10t285=null; - ParserRuleReturnScope label_ref286 =null; + Token INSTRUCTION_FORMAT10t293=null; + ParserRuleReturnScope label_ref294 =null; - CommonTree INSTRUCTION_FORMAT10t285_tree=null; + CommonTree INSTRUCTION_FORMAT10t293_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10t"); RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:843:3: ( INSTRUCTION_FORMAT10t label_ref -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:845:5: INSTRUCTION_FORMAT10t label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:859:3: ( INSTRUCTION_FORMAT10t label_ref -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:861:5: INSTRUCTION_FORMAT10t label_ref { - INSTRUCTION_FORMAT10t285=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t3998); - stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t285); + INSTRUCTION_FORMAT10t293=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t4106); + stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t293); - pushFollow(FOLLOW_label_ref_in_insn_format10t4000); - label_ref286=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_format10t4108); + label_ref294=label_ref(); state._fsp--; - stream_label_ref.add(label_ref286.getTree()); + stream_label_ref.add(label_ref294.getTree()); // AST REWRITE // elements: label_ref, INSTRUCTION_FORMAT10t // token labels: @@ -10072,9 +10319,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 846:5: -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) + // 862:5: -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:846:8: ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:862:8: ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT10t, (retval.start), "I_STATEMENT_FORMAT10t"), root_1); @@ -10117,24 +10364,24 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format10x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:848:1: insn_format10x : INSTRUCTION_FORMAT10x -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:864:1: insn_format10x : INSTRUCTION_FORMAT10x -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) ; public final smaliParser.insn_format10x_return insn_format10x() throws RecognitionException { smaliParser.insn_format10x_return retval = new smaliParser.insn_format10x_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT10x287=null; + Token INSTRUCTION_FORMAT10x295=null; - CommonTree INSTRUCTION_FORMAT10x287_tree=null; + CommonTree INSTRUCTION_FORMAT10x295_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10x"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:849:3: ( INSTRUCTION_FORMAT10x -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:850:5: INSTRUCTION_FORMAT10x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:865:3: ( INSTRUCTION_FORMAT10x -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:866:5: INSTRUCTION_FORMAT10x { - INSTRUCTION_FORMAT10x287=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x4030); - stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x287); + INSTRUCTION_FORMAT10x295=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x4138); + stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x295); // AST REWRITE // elements: INSTRUCTION_FORMAT10x @@ -10147,9 +10394,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 851:5: -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) + // 867:5: -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:851:8: ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:867:8: ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT10x, (retval.start), "I_STATEMENT_FORMAT10x"), root_1); @@ -10191,30 +10438,30 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format10x_odex" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:853:1: insn_format10x_odex : INSTRUCTION_FORMAT10x_ODEX ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:869:1: insn_format10x_odex : INSTRUCTION_FORMAT10x_ODEX ; public final smaliParser.insn_format10x_odex_return insn_format10x_odex() throws RecognitionException { smaliParser.insn_format10x_odex_return retval = new smaliParser.insn_format10x_odex_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT10x_ODEX288=null; + Token INSTRUCTION_FORMAT10x_ODEX296=null; - CommonTree INSTRUCTION_FORMAT10x_ODEX288_tree=null; + CommonTree INSTRUCTION_FORMAT10x_ODEX296_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:854:3: ( INSTRUCTION_FORMAT10x_ODEX ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:855:5: INSTRUCTION_FORMAT10x_ODEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:870:3: ( INSTRUCTION_FORMAT10x_ODEX ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:871:5: INSTRUCTION_FORMAT10x_ODEX { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT10x_ODEX288=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_insn_format10x_odex4058); - INSTRUCTION_FORMAT10x_ODEX288_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT10x_ODEX288); - adaptor.addChild(root_0, INSTRUCTION_FORMAT10x_ODEX288_tree); + INSTRUCTION_FORMAT10x_ODEX296=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_insn_format10x_odex4166); + INSTRUCTION_FORMAT10x_ODEX296_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT10x_ODEX296); + adaptor.addChild(root_0, INSTRUCTION_FORMAT10x_ODEX296_tree); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT10x_ODEX288!=null?INSTRUCTION_FORMAT10x_ODEX288.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT10x_ODEX296!=null?INSTRUCTION_FORMAT10x_ODEX296.getText():null)); } @@ -10245,46 +10492,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format11n" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:860:1: insn_format11n : INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:876:1: insn_format11n : INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) ; public final smaliParser.insn_format11n_return insn_format11n() throws RecognitionException { smaliParser.insn_format11n_return retval = new smaliParser.insn_format11n_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT11n289=null; - Token REGISTER290=null; - Token COMMA291=null; - ParserRuleReturnScope integral_literal292 =null; + Token INSTRUCTION_FORMAT11n297=null; + Token REGISTER298=null; + Token COMMA299=null; + ParserRuleReturnScope integral_literal300 =null; - CommonTree INSTRUCTION_FORMAT11n289_tree=null; - CommonTree REGISTER290_tree=null; - CommonTree COMMA291_tree=null; + CommonTree INSTRUCTION_FORMAT11n297_tree=null; + CommonTree REGISTER298_tree=null; + CommonTree COMMA299_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT11n=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT11n"); RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:861:3: ( INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:862:5: INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:877:3: ( INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:878:5: INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal { - INSTRUCTION_FORMAT11n289=(Token)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n4079); - stream_INSTRUCTION_FORMAT11n.add(INSTRUCTION_FORMAT11n289); + INSTRUCTION_FORMAT11n297=(Token)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n4187); + stream_INSTRUCTION_FORMAT11n.add(INSTRUCTION_FORMAT11n297); - REGISTER290=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n4081); - stream_REGISTER.add(REGISTER290); + REGISTER298=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n4189); + stream_REGISTER.add(REGISTER298); - COMMA291=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format11n4083); - stream_COMMA.add(COMMA291); + COMMA299=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format11n4191); + stream_COMMA.add(COMMA299); - pushFollow(FOLLOW_integral_literal_in_insn_format11n4085); - integral_literal292=integral_literal(); + pushFollow(FOLLOW_integral_literal_in_insn_format11n4193); + integral_literal300=integral_literal(); state._fsp--; - stream_integral_literal.add(integral_literal292.getTree()); + stream_integral_literal.add(integral_literal300.getTree()); // AST REWRITE - // elements: REGISTER, integral_literal, INSTRUCTION_FORMAT11n + // elements: integral_literal, REGISTER, INSTRUCTION_FORMAT11n // token labels: // rule labels: retval // token list labels: @@ -10294,9 +10541,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 863:5: -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) + // 879:5: -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:863:8: ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:879:8: ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT11n, (retval.start), "I_STATEMENT_FORMAT11n"), root_1); @@ -10340,30 +10587,30 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format11x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:865:1: insn_format11x : INSTRUCTION_FORMAT11x REGISTER -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:881:1: insn_format11x : INSTRUCTION_FORMAT11x REGISTER -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) ; public final smaliParser.insn_format11x_return insn_format11x() throws RecognitionException { smaliParser.insn_format11x_return retval = new smaliParser.insn_format11x_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT11x293=null; - Token REGISTER294=null; + Token INSTRUCTION_FORMAT11x301=null; + Token REGISTER302=null; - CommonTree INSTRUCTION_FORMAT11x293_tree=null; - CommonTree REGISTER294_tree=null; + CommonTree INSTRUCTION_FORMAT11x301_tree=null; + CommonTree REGISTER302_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT11x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT11x"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:866:3: ( INSTRUCTION_FORMAT11x REGISTER -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:867:5: INSTRUCTION_FORMAT11x REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:882:3: ( INSTRUCTION_FORMAT11x REGISTER -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:883:5: INSTRUCTION_FORMAT11x REGISTER { - INSTRUCTION_FORMAT11x293=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x4117); - stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x293); + INSTRUCTION_FORMAT11x301=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x4225); + stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x301); - REGISTER294=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x4119); - stream_REGISTER.add(REGISTER294); + REGISTER302=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x4227); + stream_REGISTER.add(REGISTER302); // AST REWRITE // elements: INSTRUCTION_FORMAT11x, REGISTER @@ -10376,9 +10623,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 868:5: -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) + // 884:5: -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:868:8: ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:884:8: ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT11x, (retval.start), "I_STATEMENT_FORMAT11x"), root_1); @@ -10421,42 +10668,42 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format12x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:870:1: insn_format12x : instruction_format12x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:886:1: insn_format12x : instruction_format12x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) ; public final smaliParser.insn_format12x_return insn_format12x() throws RecognitionException { smaliParser.insn_format12x_return retval = new smaliParser.insn_format12x_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token REGISTER296=null; - Token COMMA297=null; - Token REGISTER298=null; - ParserRuleReturnScope instruction_format12x295 =null; + Token REGISTER304=null; + Token COMMA305=null; + Token REGISTER306=null; + ParserRuleReturnScope instruction_format12x303 =null; - CommonTree REGISTER296_tree=null; - CommonTree COMMA297_tree=null; - CommonTree REGISTER298_tree=null; + CommonTree REGISTER304_tree=null; + CommonTree COMMA305_tree=null; + CommonTree REGISTER306_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_instruction_format12x=new RewriteRuleSubtreeStream(adaptor,"rule instruction_format12x"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:871:3: ( instruction_format12x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:872:5: instruction_format12x REGISTER COMMA REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:887:3: ( instruction_format12x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:888:5: instruction_format12x REGISTER COMMA REGISTER { - pushFollow(FOLLOW_instruction_format12x_in_insn_format12x4149); - instruction_format12x295=instruction_format12x(); + pushFollow(FOLLOW_instruction_format12x_in_insn_format12x4257); + instruction_format12x303=instruction_format12x(); state._fsp--; - stream_instruction_format12x.add(instruction_format12x295.getTree()); - REGISTER296=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4151); - stream_REGISTER.add(REGISTER296); + stream_instruction_format12x.add(instruction_format12x303.getTree()); + REGISTER304=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4259); + stream_REGISTER.add(REGISTER304); - COMMA297=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format12x4153); - stream_COMMA.add(COMMA297); + COMMA305=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format12x4261); + stream_COMMA.add(COMMA305); - REGISTER298=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4155); - stream_REGISTER.add(REGISTER298); + REGISTER306=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4263); + stream_REGISTER.add(REGISTER306); // AST REWRITE // elements: REGISTER, instruction_format12x, REGISTER @@ -10469,9 +10716,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 873:5: -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) + // 889:5: -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:873:8: ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:889:8: ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT12x, (retval.start), "I_STATEMENT_FORMAT12x"), root_1); @@ -10515,51 +10762,51 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format20bc" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:875:1: insn_format20bc : INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:891:1: insn_format20bc : INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) ; public final smaliParser.insn_format20bc_return insn_format20bc() throws RecognitionException { smaliParser.insn_format20bc_return retval = new smaliParser.insn_format20bc_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT20bc299=null; - Token VERIFICATION_ERROR_TYPE300=null; - Token COMMA301=null; - ParserRuleReturnScope verification_error_reference302 =null; + Token INSTRUCTION_FORMAT20bc307=null; + Token VERIFICATION_ERROR_TYPE308=null; + Token COMMA309=null; + ParserRuleReturnScope verification_error_reference310 =null; - CommonTree INSTRUCTION_FORMAT20bc299_tree=null; - CommonTree VERIFICATION_ERROR_TYPE300_tree=null; - CommonTree COMMA301_tree=null; + CommonTree INSTRUCTION_FORMAT20bc307_tree=null; + CommonTree VERIFICATION_ERROR_TYPE308_tree=null; + CommonTree COMMA309_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT20bc=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT20bc"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_VERIFICATION_ERROR_TYPE=new RewriteRuleTokenStream(adaptor,"token VERIFICATION_ERROR_TYPE"); RewriteRuleSubtreeStream stream_verification_error_reference=new RewriteRuleSubtreeStream(adaptor,"rule verification_error_reference"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:876:3: ( INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:877:5: INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:892:3: ( INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:893:5: INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference { - INSTRUCTION_FORMAT20bc299=(Token)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc4187); - stream_INSTRUCTION_FORMAT20bc.add(INSTRUCTION_FORMAT20bc299); + INSTRUCTION_FORMAT20bc307=(Token)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc4295); + stream_INSTRUCTION_FORMAT20bc.add(INSTRUCTION_FORMAT20bc307); - VERIFICATION_ERROR_TYPE300=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_insn_format20bc4189); - stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE300); + VERIFICATION_ERROR_TYPE308=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_insn_format20bc4297); + stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE308); - COMMA301=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format20bc4191); - stream_COMMA.add(COMMA301); + COMMA309=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format20bc4299); + stream_COMMA.add(COMMA309); - pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc4193); - verification_error_reference302=verification_error_reference(); + pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc4301); + verification_error_reference310=verification_error_reference(); state._fsp--; - stream_verification_error_reference.add(verification_error_reference302.getTree()); + stream_verification_error_reference.add(verification_error_reference310.getTree()); - if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc299!=null?INSTRUCTION_FORMAT20bc299.getText():null)) == null || apiLevel >= 14) { - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT20bc299!=null?INSTRUCTION_FORMAT20bc299.getText():null)); + if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc307!=null?INSTRUCTION_FORMAT20bc307.getText():null)) == null || apiLevel >= 14) { + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT20bc307!=null?INSTRUCTION_FORMAT20bc307.getText():null)); } // AST REWRITE - // elements: INSTRUCTION_FORMAT20bc, verification_error_reference, VERIFICATION_ERROR_TYPE + // elements: verification_error_reference, INSTRUCTION_FORMAT20bc, VERIFICATION_ERROR_TYPE // token labels: // rule labels: retval // token list labels: @@ -10569,9 +10816,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 883:5: -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) + // 899:5: -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:883:8: ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:899:8: ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT20bc, "I_STATEMENT_FORMAT20bc"), root_1); @@ -10615,32 +10862,32 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format20t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:885:1: insn_format20t : INSTRUCTION_FORMAT20t label_ref -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:901:1: insn_format20t : INSTRUCTION_FORMAT20t label_ref -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) ; public final smaliParser.insn_format20t_return insn_format20t() throws RecognitionException { smaliParser.insn_format20t_return retval = new smaliParser.insn_format20t_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT20t303=null; - ParserRuleReturnScope label_ref304 =null; + Token INSTRUCTION_FORMAT20t311=null; + ParserRuleReturnScope label_ref312 =null; - CommonTree INSTRUCTION_FORMAT20t303_tree=null; + CommonTree INSTRUCTION_FORMAT20t311_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT20t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT20t"); RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:886:3: ( INSTRUCTION_FORMAT20t label_ref -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:887:5: INSTRUCTION_FORMAT20t label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:902:3: ( INSTRUCTION_FORMAT20t label_ref -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:903:5: INSTRUCTION_FORMAT20t label_ref { - INSTRUCTION_FORMAT20t303=(Token)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t4230); - stream_INSTRUCTION_FORMAT20t.add(INSTRUCTION_FORMAT20t303); + INSTRUCTION_FORMAT20t311=(Token)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t4338); + stream_INSTRUCTION_FORMAT20t.add(INSTRUCTION_FORMAT20t311); - pushFollow(FOLLOW_label_ref_in_insn_format20t4232); - label_ref304=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_format20t4340); + label_ref312=label_ref(); state._fsp--; - stream_label_ref.add(label_ref304.getTree()); + stream_label_ref.add(label_ref312.getTree()); // AST REWRITE // elements: INSTRUCTION_FORMAT20t, label_ref // token labels: @@ -10652,9 +10899,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 888:5: -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) + // 904:5: -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:888:8: ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:904:8: ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT20t, (retval.start), "I_STATEMENT_FORMAT20t"), root_1); @@ -10697,46 +10944,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21c_field" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:890:1: insn_format21c_field : INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:906:1: insn_format21c_field : INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) ; public final smaliParser.insn_format21c_field_return insn_format21c_field() throws RecognitionException { smaliParser.insn_format21c_field_return retval = new smaliParser.insn_format21c_field_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21c_FIELD305=null; - Token REGISTER306=null; - Token COMMA307=null; - ParserRuleReturnScope field_reference308 =null; + Token INSTRUCTION_FORMAT21c_FIELD313=null; + Token REGISTER314=null; + Token COMMA315=null; + ParserRuleReturnScope field_reference316 =null; - CommonTree INSTRUCTION_FORMAT21c_FIELD305_tree=null; - CommonTree REGISTER306_tree=null; - CommonTree COMMA307_tree=null; + CommonTree INSTRUCTION_FORMAT21c_FIELD313_tree=null; + CommonTree REGISTER314_tree=null; + CommonTree COMMA315_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:891:3: ( INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:892:5: INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA field_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:907:3: ( INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:908:5: INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA field_reference { - INSTRUCTION_FORMAT21c_FIELD305=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_insn_format21c_field4262); - stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD305); + INSTRUCTION_FORMAT21c_FIELD313=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_insn_format21c_field4370); + stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD313); - REGISTER306=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field4264); - stream_REGISTER.add(REGISTER306); + REGISTER314=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field4372); + stream_REGISTER.add(REGISTER314); - COMMA307=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field4266); - stream_COMMA.add(COMMA307); + COMMA315=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field4374); + stream_COMMA.add(COMMA315); - pushFollow(FOLLOW_field_reference_in_insn_format21c_field4268); - field_reference308=field_reference(); + pushFollow(FOLLOW_field_reference_in_insn_format21c_field4376); + field_reference316=field_reference(); state._fsp--; - stream_field_reference.add(field_reference308.getTree()); + stream_field_reference.add(field_reference316.getTree()); // AST REWRITE - // elements: field_reference, INSTRUCTION_FORMAT21c_FIELD, REGISTER + // elements: REGISTER, field_reference, INSTRUCTION_FORMAT21c_FIELD // token labels: // rule labels: retval // token list labels: @@ -10746,9 +10993,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 893:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) + // 909:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:893:8: ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:909:8: ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21c_FIELD, (retval.start), "I_STATEMENT_FORMAT21c_FIELD"), root_1); @@ -10792,51 +11039,51 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21c_field_odex" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:895:1: insn_format21c_field_odex : INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:911:1: insn_format21c_field_odex : INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) ; public final smaliParser.insn_format21c_field_odex_return insn_format21c_field_odex() throws RecognitionException { smaliParser.insn_format21c_field_odex_return retval = new smaliParser.insn_format21c_field_odex_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21c_FIELD_ODEX309=null; - Token REGISTER310=null; - Token COMMA311=null; - ParserRuleReturnScope field_reference312 =null; + Token INSTRUCTION_FORMAT21c_FIELD_ODEX317=null; + Token REGISTER318=null; + Token COMMA319=null; + ParserRuleReturnScope field_reference320 =null; - CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX309_tree=null; - CommonTree REGISTER310_tree=null; - CommonTree COMMA311_tree=null; + CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX317_tree=null; + CommonTree REGISTER318_tree=null; + CommonTree COMMA319_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD_ODEX"); RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:896:3: ( INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:897:5: INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA field_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:912:3: ( INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:913:5: INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA field_reference { - INSTRUCTION_FORMAT21c_FIELD_ODEX309=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_insn_format21c_field_odex4300); - stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX309); + INSTRUCTION_FORMAT21c_FIELD_ODEX317=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_insn_format21c_field_odex4408); + stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX317); - REGISTER310=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field_odex4302); - stream_REGISTER.add(REGISTER310); + REGISTER318=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field_odex4410); + stream_REGISTER.add(REGISTER318); - COMMA311=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field_odex4304); - stream_COMMA.add(COMMA311); + COMMA319=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field_odex4412); + stream_COMMA.add(COMMA319); - pushFollow(FOLLOW_field_reference_in_insn_format21c_field_odex4306); - field_reference312=field_reference(); + pushFollow(FOLLOW_field_reference_in_insn_format21c_field_odex4414); + field_reference320=field_reference(); state._fsp--; - stream_field_reference.add(field_reference312.getTree()); + stream_field_reference.add(field_reference320.getTree()); - if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_FIELD_ODEX309!=null?INSTRUCTION_FORMAT21c_FIELD_ODEX309.getText():null)) == null || apiLevel >= 14) { - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT21c_FIELD_ODEX309!=null?INSTRUCTION_FORMAT21c_FIELD_ODEX309.getText():null)); + if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_FIELD_ODEX317!=null?INSTRUCTION_FORMAT21c_FIELD_ODEX317.getText():null)) == null || apiLevel >= 14) { + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT21c_FIELD_ODEX317!=null?INSTRUCTION_FORMAT21c_FIELD_ODEX317.getText():null)); } // AST REWRITE - // elements: REGISTER, INSTRUCTION_FORMAT21c_FIELD_ODEX, field_reference + // elements: field_reference, INSTRUCTION_FORMAT21c_FIELD_ODEX, REGISTER // token labels: // rule labels: retval // token list labels: @@ -10846,9 +11093,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 903:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) + // 919:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:903:8: ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:919:8: ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21c_FIELD, (retval.start), "I_STATEMENT_FORMAT21c_FIELD"), root_1); @@ -10892,42 +11139,42 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21c_string" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:905:1: insn_format21c_string : INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:921:1: insn_format21c_string : INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) ; public final smaliParser.insn_format21c_string_return insn_format21c_string() throws RecognitionException { smaliParser.insn_format21c_string_return retval = new smaliParser.insn_format21c_string_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21c_STRING313=null; - Token REGISTER314=null; - Token COMMA315=null; - Token STRING_LITERAL316=null; + Token INSTRUCTION_FORMAT21c_STRING321=null; + Token REGISTER322=null; + Token COMMA323=null; + Token STRING_LITERAL324=null; - CommonTree INSTRUCTION_FORMAT21c_STRING313_tree=null; - CommonTree REGISTER314_tree=null; - CommonTree COMMA315_tree=null; - CommonTree STRING_LITERAL316_tree=null; + CommonTree INSTRUCTION_FORMAT21c_STRING321_tree=null; + CommonTree REGISTER322_tree=null; + CommonTree COMMA323_tree=null; + CommonTree STRING_LITERAL324_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_STRING=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_STRING"); RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:906:3: ( INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:907:5: INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:922:3: ( INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:923:5: INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL { - INSTRUCTION_FORMAT21c_STRING313=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string4344); - stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING313); + INSTRUCTION_FORMAT21c_STRING321=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string4452); + stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING321); - REGISTER314=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string4346); - stream_REGISTER.add(REGISTER314); + REGISTER322=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string4454); + stream_REGISTER.add(REGISTER322); - COMMA315=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_string4348); - stream_COMMA.add(COMMA315); + COMMA323=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_string4456); + stream_COMMA.add(COMMA323); - STRING_LITERAL316=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format21c_string4350); - stream_STRING_LITERAL.add(STRING_LITERAL316); + STRING_LITERAL324=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format21c_string4458); + stream_STRING_LITERAL.add(STRING_LITERAL324); // AST REWRITE // elements: INSTRUCTION_FORMAT21c_STRING, REGISTER, STRING_LITERAL @@ -10940,9 +11187,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 908:5: -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) + // 924:5: -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:908:8: ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:924:8: ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21c_STRING, (retval.start), "I_STATEMENT_FORMAT21c_STRING"), root_1); @@ -10986,46 +11233,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21c_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:910:1: insn_format21c_type : INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:926:1: insn_format21c_type : INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ; public final smaliParser.insn_format21c_type_return insn_format21c_type() throws RecognitionException { smaliParser.insn_format21c_type_return retval = new smaliParser.insn_format21c_type_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21c_TYPE317=null; - Token REGISTER318=null; - Token COMMA319=null; - ParserRuleReturnScope nonvoid_type_descriptor320 =null; + Token INSTRUCTION_FORMAT21c_TYPE325=null; + Token REGISTER326=null; + Token COMMA327=null; + ParserRuleReturnScope nonvoid_type_descriptor328 =null; - CommonTree INSTRUCTION_FORMAT21c_TYPE317_tree=null; - CommonTree REGISTER318_tree=null; - CommonTree COMMA319_tree=null; + CommonTree INSTRUCTION_FORMAT21c_TYPE325_tree=null; + CommonTree REGISTER326_tree=null; + CommonTree COMMA327_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_TYPE"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:911:3: ( INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:912:5: INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:927:3: ( INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:928:5: INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor { - INSTRUCTION_FORMAT21c_TYPE317=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type4382); - stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE317); + INSTRUCTION_FORMAT21c_TYPE325=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type4490); + stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE325); - REGISTER318=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type4384); - stream_REGISTER.add(REGISTER318); + REGISTER326=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type4492); + stream_REGISTER.add(REGISTER326); - COMMA319=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_type4386); - stream_COMMA.add(COMMA319); + COMMA327=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_type4494); + stream_COMMA.add(COMMA327); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type4388); - nonvoid_type_descriptor320=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type4496); + nonvoid_type_descriptor328=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor320.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor328.getTree()); // AST REWRITE - // elements: nonvoid_type_descriptor, REGISTER, INSTRUCTION_FORMAT21c_TYPE + // elements: REGISTER, nonvoid_type_descriptor, INSTRUCTION_FORMAT21c_TYPE // token labels: // rule labels: retval // token list labels: @@ -11035,9 +11282,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 913:5: -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) + // 929:5: -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:913:8: ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:929:8: ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21c_TYPE, (retval.start), "I_STATEMENT_FORMAT21c"), root_1); @@ -11073,6 +11320,195 @@ public class smaliParser extends Parser { // $ANTLR end "insn_format21c_type" + public static class insn_format21c_lambda_return extends ParserRuleReturnScope { + CommonTree tree; + @Override + public CommonTree getTree() { return tree; } + }; + + + // $ANTLR start "insn_format21c_lambda" + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:931:1: insn_format21c_lambda : INSTRUCTION_FORMAT21c_LAMBDA REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT21c_LAMBDA[$start, \"I_STATEMENT_FORMAT21c_LAMBDA\"] INSTRUCTION_FORMAT21c_LAMBDA REGISTER STRING_LITERAL ) ; + public final smaliParser.insn_format21c_lambda_return insn_format21c_lambda() throws RecognitionException { + smaliParser.insn_format21c_lambda_return retval = new smaliParser.insn_format21c_lambda_return(); + retval.start = input.LT(1); + + CommonTree root_0 = null; + + Token INSTRUCTION_FORMAT21c_LAMBDA329=null; + Token REGISTER330=null; + Token COMMA331=null; + Token STRING_LITERAL332=null; + + CommonTree INSTRUCTION_FORMAT21c_LAMBDA329_tree=null; + CommonTree REGISTER330_tree=null; + CommonTree COMMA331_tree=null; + CommonTree STRING_LITERAL332_tree=null; + RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_LAMBDA=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_LAMBDA"); + RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); + RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); + + try { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:932:3: ( INSTRUCTION_FORMAT21c_LAMBDA REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT21c_LAMBDA[$start, \"I_STATEMENT_FORMAT21c_LAMBDA\"] INSTRUCTION_FORMAT21c_LAMBDA REGISTER STRING_LITERAL ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:933:5: INSTRUCTION_FORMAT21c_LAMBDA REGISTER COMMA STRING_LITERAL + { + INSTRUCTION_FORMAT21c_LAMBDA329=(Token)match(input,INSTRUCTION_FORMAT21c_LAMBDA,FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_insn_format21c_lambda4528); + stream_INSTRUCTION_FORMAT21c_LAMBDA.add(INSTRUCTION_FORMAT21c_LAMBDA329); + + REGISTER330=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_lambda4530); + stream_REGISTER.add(REGISTER330); + + COMMA331=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_lambda4532); + stream_COMMA.add(COMMA331); + + STRING_LITERAL332=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format21c_lambda4534); + stream_STRING_LITERAL.add(STRING_LITERAL332); + + // AST REWRITE + // elements: REGISTER, STRING_LITERAL, INSTRUCTION_FORMAT21c_LAMBDA + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 934:5: -> ^( I_STATEMENT_FORMAT21c_LAMBDA[$start, \"I_STATEMENT_FORMAT21c_LAMBDA\"] INSTRUCTION_FORMAT21c_LAMBDA REGISTER STRING_LITERAL ) + { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:934:8: ^( I_STATEMENT_FORMAT21c_LAMBDA[$start, \"I_STATEMENT_FORMAT21c_LAMBDA\"] INSTRUCTION_FORMAT21c_LAMBDA REGISTER STRING_LITERAL ) + { + CommonTree root_1 = (CommonTree)adaptor.nil(); + root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21c_LAMBDA, (retval.start), "I_STATEMENT_FORMAT21c_LAMBDA"), root_1); + adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT21c_LAMBDA.nextNode()); + adaptor.addChild(root_1, stream_REGISTER.nextNode()); + adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode()); + adaptor.addChild(root_0, root_1); + } + + } + + + retval.tree = root_0; + + } + + retval.stop = input.LT(-1); + + retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); + adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); + } + finally { + // do for sure before leaving + } + return retval; + } + // $ANTLR end "insn_format21c_lambda" + + + public static class insn_format21c_method_return extends ParserRuleReturnScope { + CommonTree tree; + @Override + public CommonTree getTree() { return tree; } + }; + + + // $ANTLR start "insn_format21c_method" + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:936:1: insn_format21c_method : INSTRUCTION_FORMAT21c_METHOD REGISTER COMMA method_reference -> ^( I_STATEMENT_FORMAT21c_METHOD[$start, \"I_STATEMENT_FORMAT21c_METHOD\"] INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference ) ; + public final smaliParser.insn_format21c_method_return insn_format21c_method() throws RecognitionException { + smaliParser.insn_format21c_method_return retval = new smaliParser.insn_format21c_method_return(); + retval.start = input.LT(1); + + CommonTree root_0 = null; + + Token INSTRUCTION_FORMAT21c_METHOD333=null; + Token REGISTER334=null; + Token COMMA335=null; + ParserRuleReturnScope method_reference336 =null; + + CommonTree INSTRUCTION_FORMAT21c_METHOD333_tree=null; + CommonTree REGISTER334_tree=null; + CommonTree COMMA335_tree=null; + RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); + RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_METHOD"); + RewriteRuleSubtreeStream stream_method_reference=new RewriteRuleSubtreeStream(adaptor,"rule method_reference"); + + try { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:937:3: ( INSTRUCTION_FORMAT21c_METHOD REGISTER COMMA method_reference -> ^( I_STATEMENT_FORMAT21c_METHOD[$start, \"I_STATEMENT_FORMAT21c_METHOD\"] INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:938:5: INSTRUCTION_FORMAT21c_METHOD REGISTER COMMA method_reference + { + INSTRUCTION_FORMAT21c_METHOD333=(Token)match(input,INSTRUCTION_FORMAT21c_METHOD,FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_insn_format21c_method4566); + stream_INSTRUCTION_FORMAT21c_METHOD.add(INSTRUCTION_FORMAT21c_METHOD333); + + REGISTER334=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_method4568); + stream_REGISTER.add(REGISTER334); + + COMMA335=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_method4570); + stream_COMMA.add(COMMA335); + + pushFollow(FOLLOW_method_reference_in_insn_format21c_method4572); + method_reference336=method_reference(); + state._fsp--; + + stream_method_reference.add(method_reference336.getTree()); + // AST REWRITE + // elements: REGISTER, INSTRUCTION_FORMAT21c_METHOD, method_reference + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 939:5: -> ^( I_STATEMENT_FORMAT21c_METHOD[$start, \"I_STATEMENT_FORMAT21c_METHOD\"] INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference ) + { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:939:8: ^( I_STATEMENT_FORMAT21c_METHOD[$start, \"I_STATEMENT_FORMAT21c_METHOD\"] INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference ) + { + CommonTree root_1 = (CommonTree)adaptor.nil(); + root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21c_METHOD, (retval.start), "I_STATEMENT_FORMAT21c_METHOD"), root_1); + adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT21c_METHOD.nextNode()); + adaptor.addChild(root_1, stream_REGISTER.nextNode()); + adaptor.addChild(root_1, stream_method_reference.nextTree()); + adaptor.addChild(root_0, root_1); + } + + } + + + retval.tree = root_0; + + } + + retval.stop = input.LT(-1); + + retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); + adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); + } + finally { + // do for sure before leaving + } + return retval; + } + // $ANTLR end "insn_format21c_method" + + public static class insn_format21ih_return extends ParserRuleReturnScope { CommonTree tree; @Override @@ -11081,46 +11517,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21ih" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:915:1: insn_format21ih : INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:941:1: insn_format21ih : INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ; public final smaliParser.insn_format21ih_return insn_format21ih() throws RecognitionException { smaliParser.insn_format21ih_return retval = new smaliParser.insn_format21ih_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21ih321=null; - Token REGISTER322=null; - Token COMMA323=null; - ParserRuleReturnScope fixed_32bit_literal324 =null; + Token INSTRUCTION_FORMAT21ih337=null; + Token REGISTER338=null; + Token COMMA339=null; + ParserRuleReturnScope fixed_32bit_literal340 =null; - CommonTree INSTRUCTION_FORMAT21ih321_tree=null; - CommonTree REGISTER322_tree=null; - CommonTree COMMA323_tree=null; + CommonTree INSTRUCTION_FORMAT21ih337_tree=null; + CommonTree REGISTER338_tree=null; + CommonTree COMMA339_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21ih=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21ih"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_fixed_32bit_literal=new RewriteRuleSubtreeStream(adaptor,"rule fixed_32bit_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:916:3: ( INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:917:5: INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:942:3: ( INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:943:5: INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal { - INSTRUCTION_FORMAT21ih321=(Token)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih4420); - stream_INSTRUCTION_FORMAT21ih.add(INSTRUCTION_FORMAT21ih321); + INSTRUCTION_FORMAT21ih337=(Token)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih4604); + stream_INSTRUCTION_FORMAT21ih.add(INSTRUCTION_FORMAT21ih337); - REGISTER322=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih4422); - stream_REGISTER.add(REGISTER322); + REGISTER338=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih4606); + stream_REGISTER.add(REGISTER338); - COMMA323=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21ih4424); - stream_COMMA.add(COMMA323); + COMMA339=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21ih4608); + stream_COMMA.add(COMMA339); - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih4426); - fixed_32bit_literal324=fixed_32bit_literal(); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih4610); + fixed_32bit_literal340=fixed_32bit_literal(); state._fsp--; - stream_fixed_32bit_literal.add(fixed_32bit_literal324.getTree()); + stream_fixed_32bit_literal.add(fixed_32bit_literal340.getTree()); // AST REWRITE - // elements: REGISTER, INSTRUCTION_FORMAT21ih, fixed_32bit_literal + // elements: INSTRUCTION_FORMAT21ih, fixed_32bit_literal, REGISTER // token labels: // rule labels: retval // token list labels: @@ -11130,9 +11566,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 918:5: -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) + // 944:5: -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:918:8: ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:944:8: ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21ih, (retval.start), "I_STATEMENT_FORMAT21ih"), root_1); @@ -11176,46 +11612,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21lh" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:920:1: insn_format21lh : INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:946:1: insn_format21lh : INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) ; public final smaliParser.insn_format21lh_return insn_format21lh() throws RecognitionException { smaliParser.insn_format21lh_return retval = new smaliParser.insn_format21lh_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21lh325=null; - Token REGISTER326=null; - Token COMMA327=null; - ParserRuleReturnScope fixed_32bit_literal328 =null; + Token INSTRUCTION_FORMAT21lh341=null; + Token REGISTER342=null; + Token COMMA343=null; + ParserRuleReturnScope fixed_32bit_literal344 =null; - CommonTree INSTRUCTION_FORMAT21lh325_tree=null; - CommonTree REGISTER326_tree=null; - CommonTree COMMA327_tree=null; + CommonTree INSTRUCTION_FORMAT21lh341_tree=null; + CommonTree REGISTER342_tree=null; + CommonTree COMMA343_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21lh=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21lh"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_fixed_32bit_literal=new RewriteRuleSubtreeStream(adaptor,"rule fixed_32bit_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:921:3: ( INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:922:5: INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:947:3: ( INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:948:5: INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal { - INSTRUCTION_FORMAT21lh325=(Token)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh4458); - stream_INSTRUCTION_FORMAT21lh.add(INSTRUCTION_FORMAT21lh325); + INSTRUCTION_FORMAT21lh341=(Token)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh4642); + stream_INSTRUCTION_FORMAT21lh.add(INSTRUCTION_FORMAT21lh341); - REGISTER326=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh4460); - stream_REGISTER.add(REGISTER326); + REGISTER342=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh4644); + stream_REGISTER.add(REGISTER342); - COMMA327=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21lh4462); - stream_COMMA.add(COMMA327); + COMMA343=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21lh4646); + stream_COMMA.add(COMMA343); - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21lh4464); - fixed_32bit_literal328=fixed_32bit_literal(); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21lh4648); + fixed_32bit_literal344=fixed_32bit_literal(); state._fsp--; - stream_fixed_32bit_literal.add(fixed_32bit_literal328.getTree()); + stream_fixed_32bit_literal.add(fixed_32bit_literal344.getTree()); // AST REWRITE - // elements: INSTRUCTION_FORMAT21lh, fixed_32bit_literal, REGISTER + // elements: fixed_32bit_literal, INSTRUCTION_FORMAT21lh, REGISTER // token labels: // rule labels: retval // token list labels: @@ -11225,9 +11661,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 923:5: -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) + // 949:5: -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:923:8: ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:949:8: ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21lh, (retval.start), "I_STATEMENT_FORMAT21lh"), root_1); @@ -11271,46 +11707,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21s" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:925:1: insn_format21s : INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:951:1: insn_format21s : INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) ; public final smaliParser.insn_format21s_return insn_format21s() throws RecognitionException { smaliParser.insn_format21s_return retval = new smaliParser.insn_format21s_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21s329=null; - Token REGISTER330=null; - Token COMMA331=null; - ParserRuleReturnScope integral_literal332 =null; + Token INSTRUCTION_FORMAT21s345=null; + Token REGISTER346=null; + Token COMMA347=null; + ParserRuleReturnScope integral_literal348 =null; - CommonTree INSTRUCTION_FORMAT21s329_tree=null; - CommonTree REGISTER330_tree=null; - CommonTree COMMA331_tree=null; + CommonTree INSTRUCTION_FORMAT21s345_tree=null; + CommonTree REGISTER346_tree=null; + CommonTree COMMA347_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21s=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21s"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:926:3: ( INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:927:5: INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:952:3: ( INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:953:5: INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal { - INSTRUCTION_FORMAT21s329=(Token)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s4496); - stream_INSTRUCTION_FORMAT21s.add(INSTRUCTION_FORMAT21s329); + INSTRUCTION_FORMAT21s345=(Token)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s4680); + stream_INSTRUCTION_FORMAT21s.add(INSTRUCTION_FORMAT21s345); - REGISTER330=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s4498); - stream_REGISTER.add(REGISTER330); + REGISTER346=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s4682); + stream_REGISTER.add(REGISTER346); - COMMA331=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21s4500); - stream_COMMA.add(COMMA331); + COMMA347=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21s4684); + stream_COMMA.add(COMMA347); - pushFollow(FOLLOW_integral_literal_in_insn_format21s4502); - integral_literal332=integral_literal(); + pushFollow(FOLLOW_integral_literal_in_insn_format21s4686); + integral_literal348=integral_literal(); state._fsp--; - stream_integral_literal.add(integral_literal332.getTree()); + stream_integral_literal.add(integral_literal348.getTree()); // AST REWRITE - // elements: INSTRUCTION_FORMAT21s, integral_literal, REGISTER + // elements: INSTRUCTION_FORMAT21s, REGISTER, integral_literal // token labels: // rule labels: retval // token list labels: @@ -11320,9 +11756,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 928:5: -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) + // 954:5: -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:928:8: ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:954:8: ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21s, (retval.start), "I_STATEMENT_FORMAT21s"), root_1); @@ -11366,46 +11802,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format21t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:930:1: insn_format21t : INSTRUCTION_FORMAT21t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:956:1: insn_format21t : INSTRUCTION_FORMAT21t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) ; public final smaliParser.insn_format21t_return insn_format21t() throws RecognitionException { smaliParser.insn_format21t_return retval = new smaliParser.insn_format21t_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT21t333=null; - Token REGISTER334=null; - Token COMMA335=null; - ParserRuleReturnScope label_ref336 =null; + Token INSTRUCTION_FORMAT21t349=null; + Token REGISTER350=null; + Token COMMA351=null; + ParserRuleReturnScope label_ref352 =null; - CommonTree INSTRUCTION_FORMAT21t333_tree=null; - CommonTree REGISTER334_tree=null; - CommonTree COMMA335_tree=null; + CommonTree INSTRUCTION_FORMAT21t349_tree=null; + CommonTree REGISTER350_tree=null; + CommonTree COMMA351_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21t"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:931:3: ( INSTRUCTION_FORMAT21t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:932:5: INSTRUCTION_FORMAT21t REGISTER COMMA label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:957:3: ( INSTRUCTION_FORMAT21t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:958:5: INSTRUCTION_FORMAT21t REGISTER COMMA label_ref { - INSTRUCTION_FORMAT21t333=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t4534); - stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t333); + INSTRUCTION_FORMAT21t349=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t4718); + stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t349); - REGISTER334=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t4536); - stream_REGISTER.add(REGISTER334); + REGISTER350=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t4720); + stream_REGISTER.add(REGISTER350); - COMMA335=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21t4538); - stream_COMMA.add(COMMA335); + COMMA351=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21t4722); + stream_COMMA.add(COMMA351); - pushFollow(FOLLOW_label_ref_in_insn_format21t4540); - label_ref336=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_format21t4724); + label_ref352=label_ref(); state._fsp--; - stream_label_ref.add(label_ref336.getTree()); + stream_label_ref.add(label_ref352.getTree()); // AST REWRITE - // elements: label_ref, REGISTER, INSTRUCTION_FORMAT21t + // elements: label_ref, INSTRUCTION_FORMAT21t, REGISTER // token labels: // rule labels: retval // token list labels: @@ -11415,9 +11851,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 933:5: -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) + // 959:5: -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:933:8: ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:959:8: ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21t, (retval.start), "I_STATEMENT_FORMAT21t"), root_1); @@ -11461,56 +11897,56 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22b" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:935:1: insn_format22b : INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:961:1: insn_format22b : INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) ; public final smaliParser.insn_format22b_return insn_format22b() throws RecognitionException { smaliParser.insn_format22b_return retval = new smaliParser.insn_format22b_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22b337=null; - Token REGISTER338=null; - Token COMMA339=null; - Token REGISTER340=null; - Token COMMA341=null; - ParserRuleReturnScope integral_literal342 =null; + Token INSTRUCTION_FORMAT22b353=null; + Token REGISTER354=null; + Token COMMA355=null; + Token REGISTER356=null; + Token COMMA357=null; + ParserRuleReturnScope integral_literal358 =null; - CommonTree INSTRUCTION_FORMAT22b337_tree=null; - CommonTree REGISTER338_tree=null; - CommonTree COMMA339_tree=null; - CommonTree REGISTER340_tree=null; - CommonTree COMMA341_tree=null; + CommonTree INSTRUCTION_FORMAT22b353_tree=null; + CommonTree REGISTER354_tree=null; + CommonTree COMMA355_tree=null; + CommonTree REGISTER356_tree=null; + CommonTree COMMA357_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22b=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22b"); RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:936:3: ( INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:937:5: INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:962:3: ( INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:963:5: INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal { - INSTRUCTION_FORMAT22b337=(Token)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b4572); - stream_INSTRUCTION_FORMAT22b.add(INSTRUCTION_FORMAT22b337); + INSTRUCTION_FORMAT22b353=(Token)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b4756); + stream_INSTRUCTION_FORMAT22b.add(INSTRUCTION_FORMAT22b353); - REGISTER338=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4574); - stream_REGISTER.add(REGISTER338); + REGISTER354=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4758); + stream_REGISTER.add(REGISTER354); - COMMA339=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4576); - stream_COMMA.add(COMMA339); + COMMA355=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4760); + stream_COMMA.add(COMMA355); - REGISTER340=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4578); - stream_REGISTER.add(REGISTER340); + REGISTER356=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4762); + stream_REGISTER.add(REGISTER356); - COMMA341=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4580); - stream_COMMA.add(COMMA341); + COMMA357=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4764); + stream_COMMA.add(COMMA357); - pushFollow(FOLLOW_integral_literal_in_insn_format22b4582); - integral_literal342=integral_literal(); + pushFollow(FOLLOW_integral_literal_in_insn_format22b4766); + integral_literal358=integral_literal(); state._fsp--; - stream_integral_literal.add(integral_literal342.getTree()); + stream_integral_literal.add(integral_literal358.getTree()); // AST REWRITE - // elements: integral_literal, REGISTER, INSTRUCTION_FORMAT22b, REGISTER + // elements: REGISTER, INSTRUCTION_FORMAT22b, REGISTER, integral_literal // token labels: // rule labels: retval // token list labels: @@ -11520,9 +11956,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 938:5: -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) + // 964:5: -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:938:8: ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:964:8: ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22b, (retval.start), "I_STATEMENT_FORMAT22b"), root_1); @@ -11567,56 +12003,56 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22c_field" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:940:1: insn_format22c_field : INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:966:1: insn_format22c_field : INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) ; public final smaliParser.insn_format22c_field_return insn_format22c_field() throws RecognitionException { smaliParser.insn_format22c_field_return retval = new smaliParser.insn_format22c_field_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22c_FIELD343=null; - Token REGISTER344=null; - Token COMMA345=null; - Token REGISTER346=null; - Token COMMA347=null; - ParserRuleReturnScope field_reference348 =null; + Token INSTRUCTION_FORMAT22c_FIELD359=null; + Token REGISTER360=null; + Token COMMA361=null; + Token REGISTER362=null; + Token COMMA363=null; + ParserRuleReturnScope field_reference364 =null; - CommonTree INSTRUCTION_FORMAT22c_FIELD343_tree=null; - CommonTree REGISTER344_tree=null; - CommonTree COMMA345_tree=null; - CommonTree REGISTER346_tree=null; - CommonTree COMMA347_tree=null; + CommonTree INSTRUCTION_FORMAT22c_FIELD359_tree=null; + CommonTree REGISTER360_tree=null; + CommonTree COMMA361_tree=null; + CommonTree REGISTER362_tree=null; + CommonTree COMMA363_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD"); RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:941:3: ( INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:942:5: INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA field_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:967:3: ( INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:968:5: INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA field_reference { - INSTRUCTION_FORMAT22c_FIELD343=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_insn_format22c_field4616); - stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD343); + INSTRUCTION_FORMAT22c_FIELD359=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_insn_format22c_field4800); + stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD359); - REGISTER344=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4618); - stream_REGISTER.add(REGISTER344); + REGISTER360=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4802); + stream_REGISTER.add(REGISTER360); - COMMA345=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4620); - stream_COMMA.add(COMMA345); + COMMA361=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4804); + stream_COMMA.add(COMMA361); - REGISTER346=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4622); - stream_REGISTER.add(REGISTER346); + REGISTER362=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4806); + stream_REGISTER.add(REGISTER362); - COMMA347=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4624); - stream_COMMA.add(COMMA347); + COMMA363=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4808); + stream_COMMA.add(COMMA363); - pushFollow(FOLLOW_field_reference_in_insn_format22c_field4626); - field_reference348=field_reference(); + pushFollow(FOLLOW_field_reference_in_insn_format22c_field4810); + field_reference364=field_reference(); state._fsp--; - stream_field_reference.add(field_reference348.getTree()); + stream_field_reference.add(field_reference364.getTree()); // AST REWRITE - // elements: REGISTER, field_reference, INSTRUCTION_FORMAT22c_FIELD, REGISTER + // elements: REGISTER, REGISTER, INSTRUCTION_FORMAT22c_FIELD, field_reference // token labels: // rule labels: retval // token list labels: @@ -11626,9 +12062,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 943:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) + // 969:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:943:8: ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:969:8: ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22c_FIELD, (retval.start), "I_STATEMENT_FORMAT22c_FIELD"), root_1); @@ -11673,61 +12109,61 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22c_field_odex" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:945:1: insn_format22c_field_odex : INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:971:1: insn_format22c_field_odex : INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) ; public final smaliParser.insn_format22c_field_odex_return insn_format22c_field_odex() throws RecognitionException { smaliParser.insn_format22c_field_odex_return retval = new smaliParser.insn_format22c_field_odex_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22c_FIELD_ODEX349=null; - Token REGISTER350=null; - Token COMMA351=null; - Token REGISTER352=null; - Token COMMA353=null; - ParserRuleReturnScope field_reference354 =null; + Token INSTRUCTION_FORMAT22c_FIELD_ODEX365=null; + Token REGISTER366=null; + Token COMMA367=null; + Token REGISTER368=null; + Token COMMA369=null; + ParserRuleReturnScope field_reference370 =null; - CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX349_tree=null; - CommonTree REGISTER350_tree=null; - CommonTree COMMA351_tree=null; - CommonTree REGISTER352_tree=null; - CommonTree COMMA353_tree=null; + CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX365_tree=null; + CommonTree REGISTER366_tree=null; + CommonTree COMMA367_tree=null; + CommonTree REGISTER368_tree=null; + CommonTree COMMA369_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD_ODEX"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:946:3: ( INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:947:5: INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA field_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:972:3: ( INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA field_reference -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:973:5: INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA field_reference { - INSTRUCTION_FORMAT22c_FIELD_ODEX349=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_insn_format22c_field_odex4660); - stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX349); + INSTRUCTION_FORMAT22c_FIELD_ODEX365=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_insn_format22c_field_odex4844); + stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX365); - REGISTER350=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4662); - stream_REGISTER.add(REGISTER350); + REGISTER366=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4846); + stream_REGISTER.add(REGISTER366); - COMMA351=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4664); - stream_COMMA.add(COMMA351); + COMMA367=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4848); + stream_COMMA.add(COMMA367); - REGISTER352=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4666); - stream_REGISTER.add(REGISTER352); + REGISTER368=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4850); + stream_REGISTER.add(REGISTER368); - COMMA353=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4668); - stream_COMMA.add(COMMA353); + COMMA369=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4852); + stream_COMMA.add(COMMA369); - pushFollow(FOLLOW_field_reference_in_insn_format22c_field_odex4670); - field_reference354=field_reference(); + pushFollow(FOLLOW_field_reference_in_insn_format22c_field_odex4854); + field_reference370=field_reference(); state._fsp--; - stream_field_reference.add(field_reference354.getTree()); + stream_field_reference.add(field_reference370.getTree()); - if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_FIELD_ODEX349!=null?INSTRUCTION_FORMAT22c_FIELD_ODEX349.getText():null)) == null || apiLevel >= 14) { - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT22c_FIELD_ODEX349!=null?INSTRUCTION_FORMAT22c_FIELD_ODEX349.getText():null)); + if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_FIELD_ODEX365!=null?INSTRUCTION_FORMAT22c_FIELD_ODEX365.getText():null)) == null || apiLevel >= 14) { + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT22c_FIELD_ODEX365!=null?INSTRUCTION_FORMAT22c_FIELD_ODEX365.getText():null)); } // AST REWRITE - // elements: REGISTER, field_reference, REGISTER, INSTRUCTION_FORMAT22c_FIELD_ODEX + // elements: INSTRUCTION_FORMAT22c_FIELD_ODEX, REGISTER, field_reference, REGISTER // token labels: // rule labels: retval // token list labels: @@ -11737,9 +12173,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 953:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) + // 979:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:953:8: ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:979:8: ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22c_FIELD, (retval.start), "I_STATEMENT_FORMAT22c_FIELD"), root_1); @@ -11784,54 +12220,54 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22c_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:955:1: insn_format22c_type : INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:981:1: insn_format22c_type : INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) ; public final smaliParser.insn_format22c_type_return insn_format22c_type() throws RecognitionException { smaliParser.insn_format22c_type_return retval = new smaliParser.insn_format22c_type_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22c_TYPE355=null; - Token REGISTER356=null; - Token COMMA357=null; - Token REGISTER358=null; - Token COMMA359=null; - ParserRuleReturnScope nonvoid_type_descriptor360 =null; + Token INSTRUCTION_FORMAT22c_TYPE371=null; + Token REGISTER372=null; + Token COMMA373=null; + Token REGISTER374=null; + Token COMMA375=null; + ParserRuleReturnScope nonvoid_type_descriptor376 =null; - CommonTree INSTRUCTION_FORMAT22c_TYPE355_tree=null; - CommonTree REGISTER356_tree=null; - CommonTree COMMA357_tree=null; - CommonTree REGISTER358_tree=null; - CommonTree COMMA359_tree=null; + CommonTree INSTRUCTION_FORMAT22c_TYPE371_tree=null; + CommonTree REGISTER372_tree=null; + CommonTree COMMA373_tree=null; + CommonTree REGISTER374_tree=null; + CommonTree COMMA375_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_TYPE"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:956:3: ( INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:957:5: INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:982:3: ( INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:983:5: INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor { - INSTRUCTION_FORMAT22c_TYPE355=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type4710); - stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE355); + INSTRUCTION_FORMAT22c_TYPE371=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type4894); + stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE371); - REGISTER356=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4712); - stream_REGISTER.add(REGISTER356); + REGISTER372=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4896); + stream_REGISTER.add(REGISTER372); - COMMA357=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4714); - stream_COMMA.add(COMMA357); + COMMA373=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4898); + stream_COMMA.add(COMMA373); - REGISTER358=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4716); - stream_REGISTER.add(REGISTER358); + REGISTER374=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4900); + stream_REGISTER.add(REGISTER374); - COMMA359=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4718); - stream_COMMA.add(COMMA359); + COMMA375=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4902); + stream_COMMA.add(COMMA375); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type4720); - nonvoid_type_descriptor360=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type4904); + nonvoid_type_descriptor376=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor360.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor376.getTree()); // AST REWRITE // elements: REGISTER, nonvoid_type_descriptor, REGISTER, INSTRUCTION_FORMAT22c_TYPE // token labels: @@ -11843,9 +12279,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 958:5: -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) + // 984:5: -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:958:8: ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:984:8: ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22c_TYPE, (retval.start), "I_STATEMENT_FORMAT22c_TYPE"), root_1); @@ -11882,6 +12318,111 @@ public class smaliParser extends Parser { // $ANTLR end "insn_format22c_type" + public static class insn_format22c_string_return extends ParserRuleReturnScope { + CommonTree tree; + @Override + public CommonTree getTree() { return tree; } + }; + + + // $ANTLR start "insn_format22c_string" + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:986:1: insn_format22c_string : INSTRUCTION_FORMAT22c_STRING REGISTER COMMA REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT22c_STRING[$start, \"I_STATEMENT_FORMAT22c_STRING\"] INSTRUCTION_FORMAT22c_STRING REGISTER REGISTER STRING_LITERAL ) ; + public final smaliParser.insn_format22c_string_return insn_format22c_string() throws RecognitionException { + smaliParser.insn_format22c_string_return retval = new smaliParser.insn_format22c_string_return(); + retval.start = input.LT(1); + + CommonTree root_0 = null; + + Token INSTRUCTION_FORMAT22c_STRING377=null; + Token REGISTER378=null; + Token COMMA379=null; + Token REGISTER380=null; + Token COMMA381=null; + Token STRING_LITERAL382=null; + + CommonTree INSTRUCTION_FORMAT22c_STRING377_tree=null; + CommonTree REGISTER378_tree=null; + CommonTree COMMA379_tree=null; + CommonTree REGISTER380_tree=null; + CommonTree COMMA381_tree=null; + CommonTree STRING_LITERAL382_tree=null; + RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_STRING=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_STRING"); + RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); + RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); + + try { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:987:3: ( INSTRUCTION_FORMAT22c_STRING REGISTER COMMA REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT22c_STRING[$start, \"I_STATEMENT_FORMAT22c_STRING\"] INSTRUCTION_FORMAT22c_STRING REGISTER REGISTER STRING_LITERAL ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:988:5: INSTRUCTION_FORMAT22c_STRING REGISTER COMMA REGISTER COMMA STRING_LITERAL + { + INSTRUCTION_FORMAT22c_STRING377=(Token)match(input,INSTRUCTION_FORMAT22c_STRING,FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_insn_format22c_string4938); + stream_INSTRUCTION_FORMAT22c_STRING.add(INSTRUCTION_FORMAT22c_STRING377); + + REGISTER378=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_string4940); + stream_REGISTER.add(REGISTER378); + + COMMA379=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_string4942); + stream_COMMA.add(COMMA379); + + REGISTER380=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_string4944); + stream_REGISTER.add(REGISTER380); + + COMMA381=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_string4946); + stream_COMMA.add(COMMA381); + + STRING_LITERAL382=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format22c_string4948); + stream_STRING_LITERAL.add(STRING_LITERAL382); + + // AST REWRITE + // elements: STRING_LITERAL, REGISTER, REGISTER, INSTRUCTION_FORMAT22c_STRING + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 989:5: -> ^( I_STATEMENT_FORMAT22c_STRING[$start, \"I_STATEMENT_FORMAT22c_STRING\"] INSTRUCTION_FORMAT22c_STRING REGISTER REGISTER STRING_LITERAL ) + { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:989:8: ^( I_STATEMENT_FORMAT22c_STRING[$start, \"I_STATEMENT_FORMAT22c_STRING\"] INSTRUCTION_FORMAT22c_STRING REGISTER REGISTER STRING_LITERAL ) + { + CommonTree root_1 = (CommonTree)adaptor.nil(); + root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22c_STRING, (retval.start), "I_STATEMENT_FORMAT22c_STRING"), root_1); + adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT22c_STRING.nextNode()); + adaptor.addChild(root_1, stream_REGISTER.nextNode()); + adaptor.addChild(root_1, stream_REGISTER.nextNode()); + adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode()); + adaptor.addChild(root_0, root_1); + } + + } + + + retval.tree = root_0; + + } + + retval.stop = input.LT(-1); + + retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); + adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); + } + finally { + // do for sure before leaving + } + return retval; + } + // $ANTLR end "insn_format22c_string" + + public static class insn_format22cs_field_return extends ParserRuleReturnScope { CommonTree tree; @Override @@ -11890,60 +12431,60 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22cs_field" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:960:1: insn_format22cs_field : INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:991:1: insn_format22cs_field : INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET ; public final smaliParser.insn_format22cs_field_return insn_format22cs_field() throws RecognitionException { smaliParser.insn_format22cs_field_return retval = new smaliParser.insn_format22cs_field_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22cs_FIELD361=null; - Token REGISTER362=null; - Token COMMA363=null; - Token REGISTER364=null; - Token COMMA365=null; - Token FIELD_OFFSET366=null; + Token INSTRUCTION_FORMAT22cs_FIELD383=null; + Token REGISTER384=null; + Token COMMA385=null; + Token REGISTER386=null; + Token COMMA387=null; + Token FIELD_OFFSET388=null; - CommonTree INSTRUCTION_FORMAT22cs_FIELD361_tree=null; - CommonTree REGISTER362_tree=null; - CommonTree COMMA363_tree=null; - CommonTree REGISTER364_tree=null; - CommonTree COMMA365_tree=null; - CommonTree FIELD_OFFSET366_tree=null; + CommonTree INSTRUCTION_FORMAT22cs_FIELD383_tree=null; + CommonTree REGISTER384_tree=null; + CommonTree COMMA385_tree=null; + CommonTree REGISTER386_tree=null; + CommonTree COMMA387_tree=null; + CommonTree FIELD_OFFSET388_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:961:3: ( INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:962:5: INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:992:3: ( INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:993:5: INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT22cs_FIELD361=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_insn_format22cs_field4754); - INSTRUCTION_FORMAT22cs_FIELD361_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT22cs_FIELD361); - adaptor.addChild(root_0, INSTRUCTION_FORMAT22cs_FIELD361_tree); + INSTRUCTION_FORMAT22cs_FIELD383=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_insn_format22cs_field4982); + INSTRUCTION_FORMAT22cs_FIELD383_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT22cs_FIELD383); + adaptor.addChild(root_0, INSTRUCTION_FORMAT22cs_FIELD383_tree); - REGISTER362=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4756); - REGISTER362_tree = (CommonTree)adaptor.create(REGISTER362); - adaptor.addChild(root_0, REGISTER362_tree); + REGISTER384=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4984); + REGISTER384_tree = (CommonTree)adaptor.create(REGISTER384); + adaptor.addChild(root_0, REGISTER384_tree); - COMMA363=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4758); - COMMA363_tree = (CommonTree)adaptor.create(COMMA363); - adaptor.addChild(root_0, COMMA363_tree); + COMMA385=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4986); + COMMA385_tree = (CommonTree)adaptor.create(COMMA385); + adaptor.addChild(root_0, COMMA385_tree); - REGISTER364=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4760); - REGISTER364_tree = (CommonTree)adaptor.create(REGISTER364); - adaptor.addChild(root_0, REGISTER364_tree); + REGISTER386=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4988); + REGISTER386_tree = (CommonTree)adaptor.create(REGISTER386); + adaptor.addChild(root_0, REGISTER386_tree); - COMMA365=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4762); - COMMA365_tree = (CommonTree)adaptor.create(COMMA365); - adaptor.addChild(root_0, COMMA365_tree); + COMMA387=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4990); + COMMA387_tree = (CommonTree)adaptor.create(COMMA387); + adaptor.addChild(root_0, COMMA387_tree); - FIELD_OFFSET366=(Token)match(input,FIELD_OFFSET,FOLLOW_FIELD_OFFSET_in_insn_format22cs_field4764); - FIELD_OFFSET366_tree = (CommonTree)adaptor.create(FIELD_OFFSET366); - adaptor.addChild(root_0, FIELD_OFFSET366_tree); + FIELD_OFFSET388=(Token)match(input,FIELD_OFFSET,FOLLOW_FIELD_OFFSET_in_insn_format22cs_field4992); + FIELD_OFFSET388_tree = (CommonTree)adaptor.create(FIELD_OFFSET388); + adaptor.addChild(root_0, FIELD_OFFSET388_tree); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT22cs_FIELD361!=null?INSTRUCTION_FORMAT22cs_FIELD361.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT22cs_FIELD383!=null?INSTRUCTION_FORMAT22cs_FIELD383.getText():null)); } @@ -11974,57 +12515,57 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22s" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:967:1: insn_format22s : instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:998:1: insn_format22s : instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) ; public final smaliParser.insn_format22s_return insn_format22s() throws RecognitionException { smaliParser.insn_format22s_return retval = new smaliParser.insn_format22s_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token REGISTER368=null; - Token COMMA369=null; - Token REGISTER370=null; - Token COMMA371=null; - ParserRuleReturnScope instruction_format22s367 =null; - ParserRuleReturnScope integral_literal372 =null; + Token REGISTER390=null; + Token COMMA391=null; + Token REGISTER392=null; + Token COMMA393=null; + ParserRuleReturnScope instruction_format22s389 =null; + ParserRuleReturnScope integral_literal394 =null; - CommonTree REGISTER368_tree=null; - CommonTree COMMA369_tree=null; - CommonTree REGISTER370_tree=null; - CommonTree COMMA371_tree=null; + CommonTree REGISTER390_tree=null; + CommonTree COMMA391_tree=null; + CommonTree REGISTER392_tree=null; + CommonTree COMMA393_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal"); RewriteRuleSubtreeStream stream_instruction_format22s=new RewriteRuleSubtreeStream(adaptor,"rule instruction_format22s"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:968:3: ( instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:969:5: instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:999:3: ( instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1000:5: instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal { - pushFollow(FOLLOW_instruction_format22s_in_insn_format22s4785); - instruction_format22s367=instruction_format22s(); + pushFollow(FOLLOW_instruction_format22s_in_insn_format22s5013); + instruction_format22s389=instruction_format22s(); state._fsp--; - stream_instruction_format22s.add(instruction_format22s367.getTree()); - REGISTER368=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s4787); - stream_REGISTER.add(REGISTER368); + stream_instruction_format22s.add(instruction_format22s389.getTree()); + REGISTER390=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s5015); + stream_REGISTER.add(REGISTER390); - COMMA369=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s4789); - stream_COMMA.add(COMMA369); + COMMA391=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s5017); + stream_COMMA.add(COMMA391); - REGISTER370=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s4791); - stream_REGISTER.add(REGISTER370); + REGISTER392=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s5019); + stream_REGISTER.add(REGISTER392); - COMMA371=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s4793); - stream_COMMA.add(COMMA371); + COMMA393=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s5021); + stream_COMMA.add(COMMA393); - pushFollow(FOLLOW_integral_literal_in_insn_format22s4795); - integral_literal372=integral_literal(); + pushFollow(FOLLOW_integral_literal_in_insn_format22s5023); + integral_literal394=integral_literal(); state._fsp--; - stream_integral_literal.add(integral_literal372.getTree()); + stream_integral_literal.add(integral_literal394.getTree()); // AST REWRITE - // elements: REGISTER, integral_literal, REGISTER, instruction_format22s + // elements: REGISTER, instruction_format22s, REGISTER, integral_literal // token labels: // rule labels: retval // token list labels: @@ -12034,9 +12575,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 970:5: -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) + // 1001:5: -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:970:8: ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1001:8: ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22s, (retval.start), "I_STATEMENT_FORMAT22s"), root_1); @@ -12081,56 +12622,56 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:972:1: insn_format22t : INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1003:1: insn_format22t : INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) ; public final smaliParser.insn_format22t_return insn_format22t() throws RecognitionException { smaliParser.insn_format22t_return retval = new smaliParser.insn_format22t_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22t373=null; - Token REGISTER374=null; - Token COMMA375=null; - Token REGISTER376=null; - Token COMMA377=null; - ParserRuleReturnScope label_ref378 =null; + Token INSTRUCTION_FORMAT22t395=null; + Token REGISTER396=null; + Token COMMA397=null; + Token REGISTER398=null; + Token COMMA399=null; + ParserRuleReturnScope label_ref400 =null; - CommonTree INSTRUCTION_FORMAT22t373_tree=null; - CommonTree REGISTER374_tree=null; - CommonTree COMMA375_tree=null; - CommonTree REGISTER376_tree=null; - CommonTree COMMA377_tree=null; + CommonTree INSTRUCTION_FORMAT22t395_tree=null; + CommonTree REGISTER396_tree=null; + CommonTree COMMA397_tree=null; + CommonTree REGISTER398_tree=null; + CommonTree COMMA399_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22t"); RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:973:3: ( INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:974:5: INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1004:3: ( INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1005:5: INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref { - INSTRUCTION_FORMAT22t373=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t4829); - stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t373); + INSTRUCTION_FORMAT22t395=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t5057); + stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t395); - REGISTER374=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t4831); - stream_REGISTER.add(REGISTER374); + REGISTER396=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t5059); + stream_REGISTER.add(REGISTER396); - COMMA375=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t4833); - stream_COMMA.add(COMMA375); + COMMA397=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t5061); + stream_COMMA.add(COMMA397); - REGISTER376=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t4835); - stream_REGISTER.add(REGISTER376); + REGISTER398=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t5063); + stream_REGISTER.add(REGISTER398); - COMMA377=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t4837); - stream_COMMA.add(COMMA377); + COMMA399=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t5065); + stream_COMMA.add(COMMA399); - pushFollow(FOLLOW_label_ref_in_insn_format22t4839); - label_ref378=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_format22t5067); + label_ref400=label_ref(); state._fsp--; - stream_label_ref.add(label_ref378.getTree()); + stream_label_ref.add(label_ref400.getTree()); // AST REWRITE - // elements: REGISTER, label_ref, INSTRUCTION_FORMAT22t, REGISTER + // elements: label_ref, REGISTER, REGISTER, INSTRUCTION_FORMAT22t // token labels: // rule labels: retval // token list labels: @@ -12140,9 +12681,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 975:5: -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) + // 1006:5: -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:975:8: ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1006:8: ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22t, (retval.start), "I_STATEMENT_FFORMAT22t"), root_1); @@ -12187,44 +12728,44 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format22x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:977:1: insn_format22x : INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1008:1: insn_format22x : INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) ; public final smaliParser.insn_format22x_return insn_format22x() throws RecognitionException { smaliParser.insn_format22x_return retval = new smaliParser.insn_format22x_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT22x379=null; - Token REGISTER380=null; - Token COMMA381=null; - Token REGISTER382=null; + Token INSTRUCTION_FORMAT22x401=null; + Token REGISTER402=null; + Token COMMA403=null; + Token REGISTER404=null; - CommonTree INSTRUCTION_FORMAT22x379_tree=null; - CommonTree REGISTER380_tree=null; - CommonTree COMMA381_tree=null; - CommonTree REGISTER382_tree=null; + CommonTree INSTRUCTION_FORMAT22x401_tree=null; + CommonTree REGISTER402_tree=null; + CommonTree COMMA403_tree=null; + CommonTree REGISTER404_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22x"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:978:3: ( INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:979:5: INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1009:3: ( INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1010:5: INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER { - INSTRUCTION_FORMAT22x379=(Token)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x4873); - stream_INSTRUCTION_FORMAT22x.add(INSTRUCTION_FORMAT22x379); + INSTRUCTION_FORMAT22x401=(Token)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x5101); + stream_INSTRUCTION_FORMAT22x.add(INSTRUCTION_FORMAT22x401); - REGISTER380=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x4875); - stream_REGISTER.add(REGISTER380); + REGISTER402=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x5103); + stream_REGISTER.add(REGISTER402); - COMMA381=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22x4877); - stream_COMMA.add(COMMA381); + COMMA403=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22x5105); + stream_COMMA.add(COMMA403); - REGISTER382=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x4879); - stream_REGISTER.add(REGISTER382); + REGISTER404=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x5107); + stream_REGISTER.add(REGISTER404); // AST REWRITE - // elements: REGISTER, REGISTER, INSTRUCTION_FORMAT22x + // elements: INSTRUCTION_FORMAT22x, REGISTER, REGISTER // token labels: // rule labels: retval // token list labels: @@ -12234,9 +12775,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 980:5: -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) + // 1011:5: -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:980:8: ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1011:8: ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22x, (retval.start), "I_STATEMENT_FORMAT22x"), root_1); @@ -12280,51 +12821,51 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format23x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:982:1: insn_format23x : INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1013:1: insn_format23x : INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) ; public final smaliParser.insn_format23x_return insn_format23x() throws RecognitionException { smaliParser.insn_format23x_return retval = new smaliParser.insn_format23x_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT23x383=null; - Token REGISTER384=null; - Token COMMA385=null; - Token REGISTER386=null; - Token COMMA387=null; - Token REGISTER388=null; + Token INSTRUCTION_FORMAT23x405=null; + Token REGISTER406=null; + Token COMMA407=null; + Token REGISTER408=null; + Token COMMA409=null; + Token REGISTER410=null; - CommonTree INSTRUCTION_FORMAT23x383_tree=null; - CommonTree REGISTER384_tree=null; - CommonTree COMMA385_tree=null; - CommonTree REGISTER386_tree=null; - CommonTree COMMA387_tree=null; - CommonTree REGISTER388_tree=null; + CommonTree INSTRUCTION_FORMAT23x405_tree=null; + CommonTree REGISTER406_tree=null; + CommonTree COMMA407_tree=null; + CommonTree REGISTER408_tree=null; + CommonTree COMMA409_tree=null; + CommonTree REGISTER410_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT23x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT23x"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:983:3: ( INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:984:5: INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1014:3: ( INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1015:5: INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER { - INSTRUCTION_FORMAT23x383=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x4911); - stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x383); + INSTRUCTION_FORMAT23x405=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x5139); + stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x405); - REGISTER384=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4913); - stream_REGISTER.add(REGISTER384); + REGISTER406=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x5141); + stream_REGISTER.add(REGISTER406); - COMMA385=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x4915); - stream_COMMA.add(COMMA385); + COMMA407=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x5143); + stream_COMMA.add(COMMA407); - REGISTER386=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4917); - stream_REGISTER.add(REGISTER386); + REGISTER408=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x5145); + stream_REGISTER.add(REGISTER408); - COMMA387=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x4919); - stream_COMMA.add(COMMA387); + COMMA409=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x5147); + stream_COMMA.add(COMMA409); - REGISTER388=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4921); - stream_REGISTER.add(REGISTER388); + REGISTER410=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x5149); + stream_REGISTER.add(REGISTER410); // AST REWRITE // elements: REGISTER, INSTRUCTION_FORMAT23x, REGISTER, REGISTER @@ -12337,9 +12878,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 985:5: -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) + // 1016:5: -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:985:8: ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1016:8: ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT23x, (retval.start), "I_STATEMENT_FORMAT23x"), root_1); @@ -12376,6 +12917,113 @@ public class smaliParser extends Parser { // $ANTLR end "insn_format23x" + public static class insn_format25x_return extends ParserRuleReturnScope { + CommonTree tree; + @Override + public CommonTree getTree() { return tree; } + }; + + + // $ANTLR start "insn_format25x" + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1018:1: insn_format25x : INSTRUCTION_FORMAT25x REGISTER COMMA OPEN_BRACE register_list CLOSE_BRACE -> ^( I_STATEMENT_FORMAT25x[$start, \"I_STATEMENT_FORMAT25x\"] INSTRUCTION_FORMAT25x REGISTER register_list ) ; + public final smaliParser.insn_format25x_return insn_format25x() throws RecognitionException { + smaliParser.insn_format25x_return retval = new smaliParser.insn_format25x_return(); + retval.start = input.LT(1); + + CommonTree root_0 = null; + + Token INSTRUCTION_FORMAT25x411=null; + Token REGISTER412=null; + Token COMMA413=null; + Token OPEN_BRACE414=null; + Token CLOSE_BRACE416=null; + ParserRuleReturnScope register_list415 =null; + + CommonTree INSTRUCTION_FORMAT25x411_tree=null; + CommonTree REGISTER412_tree=null; + CommonTree COMMA413_tree=null; + CommonTree OPEN_BRACE414_tree=null; + CommonTree CLOSE_BRACE416_tree=null; + RewriteRuleTokenStream stream_INSTRUCTION_FORMAT25x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT25x"); + RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); + RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); + RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); + RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE"); + RewriteRuleSubtreeStream stream_register_list=new RewriteRuleSubtreeStream(adaptor,"rule register_list"); + + try { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1019:3: ( INSTRUCTION_FORMAT25x REGISTER COMMA OPEN_BRACE register_list CLOSE_BRACE -> ^( I_STATEMENT_FORMAT25x[$start, \"I_STATEMENT_FORMAT25x\"] INSTRUCTION_FORMAT25x REGISTER register_list ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1020:5: INSTRUCTION_FORMAT25x REGISTER COMMA OPEN_BRACE register_list CLOSE_BRACE + { + INSTRUCTION_FORMAT25x411=(Token)match(input,INSTRUCTION_FORMAT25x,FOLLOW_INSTRUCTION_FORMAT25x_in_insn_format25x5183); + stream_INSTRUCTION_FORMAT25x.add(INSTRUCTION_FORMAT25x411); + + REGISTER412=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format25x5185); + stream_REGISTER.add(REGISTER412); + + COMMA413=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format25x5187); + stream_COMMA.add(COMMA413); + + OPEN_BRACE414=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format25x5189); + stream_OPEN_BRACE.add(OPEN_BRACE414); + + pushFollow(FOLLOW_register_list_in_insn_format25x5191); + register_list415=register_list(); + state._fsp--; + + stream_register_list.add(register_list415.getTree()); + CLOSE_BRACE416=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format25x5193); + stream_CLOSE_BRACE.add(CLOSE_BRACE416); + + // AST REWRITE + // elements: REGISTER, INSTRUCTION_FORMAT25x, register_list + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 1021:5: -> ^( I_STATEMENT_FORMAT25x[$start, \"I_STATEMENT_FORMAT25x\"] INSTRUCTION_FORMAT25x REGISTER register_list ) + { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1021:8: ^( I_STATEMENT_FORMAT25x[$start, \"I_STATEMENT_FORMAT25x\"] INSTRUCTION_FORMAT25x REGISTER register_list ) + { + CommonTree root_1 = (CommonTree)adaptor.nil(); + root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT25x, (retval.start), "I_STATEMENT_FORMAT25x"), root_1); + adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT25x.nextNode()); + adaptor.addChild(root_1, stream_REGISTER.nextNode()); + adaptor.addChild(root_1, stream_register_list.nextTree()); + adaptor.addChild(root_0, root_1); + } + + } + + + retval.tree = root_0; + + } + + retval.stop = input.LT(-1); + + retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); + adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); + } + finally { + // do for sure before leaving + } + return retval; + } + // $ANTLR end "insn_format25x" + + public static class insn_format30t_return extends ParserRuleReturnScope { CommonTree tree; @Override @@ -12384,32 +13032,32 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format30t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:987:1: insn_format30t : INSTRUCTION_FORMAT30t label_ref -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1023:1: insn_format30t : INSTRUCTION_FORMAT30t label_ref -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) ; public final smaliParser.insn_format30t_return insn_format30t() throws RecognitionException { smaliParser.insn_format30t_return retval = new smaliParser.insn_format30t_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT30t389=null; - ParserRuleReturnScope label_ref390 =null; + Token INSTRUCTION_FORMAT30t417=null; + ParserRuleReturnScope label_ref418 =null; - CommonTree INSTRUCTION_FORMAT30t389_tree=null; + CommonTree INSTRUCTION_FORMAT30t417_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT30t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT30t"); RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:988:3: ( INSTRUCTION_FORMAT30t label_ref -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:989:5: INSTRUCTION_FORMAT30t label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1024:3: ( INSTRUCTION_FORMAT30t label_ref -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1025:5: INSTRUCTION_FORMAT30t label_ref { - INSTRUCTION_FORMAT30t389=(Token)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t4955); - stream_INSTRUCTION_FORMAT30t.add(INSTRUCTION_FORMAT30t389); + INSTRUCTION_FORMAT30t417=(Token)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t5225); + stream_INSTRUCTION_FORMAT30t.add(INSTRUCTION_FORMAT30t417); - pushFollow(FOLLOW_label_ref_in_insn_format30t4957); - label_ref390=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_format30t5227); + label_ref418=label_ref(); state._fsp--; - stream_label_ref.add(label_ref390.getTree()); + stream_label_ref.add(label_ref418.getTree()); // AST REWRITE // elements: label_ref, INSTRUCTION_FORMAT30t // token labels: @@ -12421,9 +13069,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 990:5: -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) + // 1026:5: -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:990:8: ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1026:8: ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT30t, (retval.start), "I_STATEMENT_FORMAT30t"), root_1); @@ -12466,45 +13114,45 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format31c" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:992:1: insn_format31c : INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1028:1: insn_format31c : INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) ; public final smaliParser.insn_format31c_return insn_format31c() throws RecognitionException { smaliParser.insn_format31c_return retval = new smaliParser.insn_format31c_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT31c391=null; - Token REGISTER392=null; - Token COMMA393=null; - Token STRING_LITERAL394=null; + Token INSTRUCTION_FORMAT31c419=null; + Token REGISTER420=null; + Token COMMA421=null; + Token STRING_LITERAL422=null; - CommonTree INSTRUCTION_FORMAT31c391_tree=null; - CommonTree REGISTER392_tree=null; - CommonTree COMMA393_tree=null; - CommonTree STRING_LITERAL394_tree=null; + CommonTree INSTRUCTION_FORMAT31c419_tree=null; + CommonTree REGISTER420_tree=null; + CommonTree COMMA421_tree=null; + CommonTree STRING_LITERAL422_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31c=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31c"); RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:993:3: ( INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:994:5: INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1029:3: ( INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1030:5: INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL { - INSTRUCTION_FORMAT31c391=(Token)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c4987); - stream_INSTRUCTION_FORMAT31c.add(INSTRUCTION_FORMAT31c391); + INSTRUCTION_FORMAT31c419=(Token)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c5257); + stream_INSTRUCTION_FORMAT31c.add(INSTRUCTION_FORMAT31c419); - REGISTER392=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c4989); - stream_REGISTER.add(REGISTER392); + REGISTER420=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c5259); + stream_REGISTER.add(REGISTER420); - COMMA393=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31c4991); - stream_COMMA.add(COMMA393); + COMMA421=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31c5261); + stream_COMMA.add(COMMA421); - STRING_LITERAL394=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format31c4993); - stream_STRING_LITERAL.add(STRING_LITERAL394); + STRING_LITERAL422=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format31c5263); + stream_STRING_LITERAL.add(STRING_LITERAL422); // AST REWRITE - // elements: REGISTER, INSTRUCTION_FORMAT31c, STRING_LITERAL + // elements: STRING_LITERAL, INSTRUCTION_FORMAT31c, REGISTER // token labels: // rule labels: retval // token list labels: @@ -12514,9 +13162,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 995:5: -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) + // 1031:5: -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:995:7: ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1031:7: ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT31c, (retval.start), "I_STATEMENT_FORMAT31c"), root_1); @@ -12560,47 +13208,47 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format31i" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:997:1: insn_format31i : instruction_format31i REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1033:1: insn_format31i : instruction_format31i REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) ; public final smaliParser.insn_format31i_return insn_format31i() throws RecognitionException { smaliParser.insn_format31i_return retval = new smaliParser.insn_format31i_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token REGISTER396=null; - Token COMMA397=null; - ParserRuleReturnScope instruction_format31i395 =null; - ParserRuleReturnScope fixed_32bit_literal398 =null; + Token REGISTER424=null; + Token COMMA425=null; + ParserRuleReturnScope instruction_format31i423 =null; + ParserRuleReturnScope fixed_32bit_literal426 =null; - CommonTree REGISTER396_tree=null; - CommonTree COMMA397_tree=null; + CommonTree REGISTER424_tree=null; + CommonTree COMMA425_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_instruction_format31i=new RewriteRuleSubtreeStream(adaptor,"rule instruction_format31i"); RewriteRuleSubtreeStream stream_fixed_32bit_literal=new RewriteRuleSubtreeStream(adaptor,"rule fixed_32bit_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:998:3: ( instruction_format31i REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:999:5: instruction_format31i REGISTER COMMA fixed_32bit_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1034:3: ( instruction_format31i REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1035:5: instruction_format31i REGISTER COMMA fixed_32bit_literal { - pushFollow(FOLLOW_instruction_format31i_in_insn_format31i5024); - instruction_format31i395=instruction_format31i(); + pushFollow(FOLLOW_instruction_format31i_in_insn_format31i5294); + instruction_format31i423=instruction_format31i(); state._fsp--; - stream_instruction_format31i.add(instruction_format31i395.getTree()); - REGISTER396=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i5026); - stream_REGISTER.add(REGISTER396); + stream_instruction_format31i.add(instruction_format31i423.getTree()); + REGISTER424=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i5296); + stream_REGISTER.add(REGISTER424); - COMMA397=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31i5028); - stream_COMMA.add(COMMA397); + COMMA425=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31i5298); + stream_COMMA.add(COMMA425); - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i5030); - fixed_32bit_literal398=fixed_32bit_literal(); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i5300); + fixed_32bit_literal426=fixed_32bit_literal(); state._fsp--; - stream_fixed_32bit_literal.add(fixed_32bit_literal398.getTree()); + stream_fixed_32bit_literal.add(fixed_32bit_literal426.getTree()); // AST REWRITE - // elements: instruction_format31i, fixed_32bit_literal, REGISTER + // elements: instruction_format31i, REGISTER, fixed_32bit_literal // token labels: // rule labels: retval // token list labels: @@ -12610,9 +13258,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1000:5: -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) + // 1036:5: -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1000:8: ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1036:8: ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT31i, (retval.start), "I_STATEMENT_FORMAT31i"), root_1); @@ -12656,46 +13304,46 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format31t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1002:1: insn_format31t : INSTRUCTION_FORMAT31t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1038:1: insn_format31t : INSTRUCTION_FORMAT31t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) ; public final smaliParser.insn_format31t_return insn_format31t() throws RecognitionException { smaliParser.insn_format31t_return retval = new smaliParser.insn_format31t_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT31t399=null; - Token REGISTER400=null; - Token COMMA401=null; - ParserRuleReturnScope label_ref402 =null; + Token INSTRUCTION_FORMAT31t427=null; + Token REGISTER428=null; + Token COMMA429=null; + ParserRuleReturnScope label_ref430 =null; - CommonTree INSTRUCTION_FORMAT31t399_tree=null; - CommonTree REGISTER400_tree=null; - CommonTree COMMA401_tree=null; + CommonTree INSTRUCTION_FORMAT31t427_tree=null; + CommonTree REGISTER428_tree=null; + CommonTree COMMA429_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31t"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1003:3: ( INSTRUCTION_FORMAT31t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1004:5: INSTRUCTION_FORMAT31t REGISTER COMMA label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1039:3: ( INSTRUCTION_FORMAT31t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1040:5: INSTRUCTION_FORMAT31t REGISTER COMMA label_ref { - INSTRUCTION_FORMAT31t399=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t5062); - stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t399); + INSTRUCTION_FORMAT31t427=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t5332); + stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t427); - REGISTER400=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t5064); - stream_REGISTER.add(REGISTER400); + REGISTER428=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t5334); + stream_REGISTER.add(REGISTER428); - COMMA401=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31t5066); - stream_COMMA.add(COMMA401); + COMMA429=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31t5336); + stream_COMMA.add(COMMA429); - pushFollow(FOLLOW_label_ref_in_insn_format31t5068); - label_ref402=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_format31t5338); + label_ref430=label_ref(); state._fsp--; - stream_label_ref.add(label_ref402.getTree()); + stream_label_ref.add(label_ref430.getTree()); // AST REWRITE - // elements: REGISTER, INSTRUCTION_FORMAT31t, label_ref + // elements: REGISTER, label_ref, INSTRUCTION_FORMAT31t // token labels: // rule labels: retval // token list labels: @@ -12705,9 +13353,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1005:5: -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) + // 1041:5: -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1005:8: ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1041:8: ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT31t, (retval.start), "I_STATEMENT_FORMAT31t"), root_1); @@ -12751,44 +13399,44 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format32x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1007:1: insn_format32x : INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1043:1: insn_format32x : INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) ; public final smaliParser.insn_format32x_return insn_format32x() throws RecognitionException { smaliParser.insn_format32x_return retval = new smaliParser.insn_format32x_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT32x403=null; - Token REGISTER404=null; - Token COMMA405=null; - Token REGISTER406=null; + Token INSTRUCTION_FORMAT32x431=null; + Token REGISTER432=null; + Token COMMA433=null; + Token REGISTER434=null; - CommonTree INSTRUCTION_FORMAT32x403_tree=null; - CommonTree REGISTER404_tree=null; - CommonTree COMMA405_tree=null; - CommonTree REGISTER406_tree=null; + CommonTree INSTRUCTION_FORMAT32x431_tree=null; + CommonTree REGISTER432_tree=null; + CommonTree COMMA433_tree=null; + CommonTree REGISTER434_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT32x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT32x"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1008:3: ( INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1009:5: INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1044:3: ( INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1045:5: INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER { - INSTRUCTION_FORMAT32x403=(Token)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x5100); - stream_INSTRUCTION_FORMAT32x.add(INSTRUCTION_FORMAT32x403); + INSTRUCTION_FORMAT32x431=(Token)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x5370); + stream_INSTRUCTION_FORMAT32x.add(INSTRUCTION_FORMAT32x431); - REGISTER404=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5102); - stream_REGISTER.add(REGISTER404); + REGISTER432=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5372); + stream_REGISTER.add(REGISTER432); - COMMA405=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format32x5104); - stream_COMMA.add(COMMA405); + COMMA433=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format32x5374); + stream_COMMA.add(COMMA433); - REGISTER406=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5106); - stream_REGISTER.add(REGISTER406); + REGISTER434=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5376); + stream_REGISTER.add(REGISTER434); // AST REWRITE - // elements: REGISTER, INSTRUCTION_FORMAT32x, REGISTER + // elements: INSTRUCTION_FORMAT32x, REGISTER, REGISTER // token labels: // rule labels: retval // token list labels: @@ -12798,9 +13446,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1010:5: -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) + // 1046:5: -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1010:8: ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1046:8: ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT32x, (retval.start), "I_STATEMENT_FORMAT32x"), root_1); @@ -12844,24 +13492,24 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format35c_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1012:1: insn_format35c_method : INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1048:1: insn_format35c_method : INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ; public final smaliParser.insn_format35c_method_return insn_format35c_method() throws RecognitionException { smaliParser.insn_format35c_method_return retval = new smaliParser.insn_format35c_method_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT35c_METHOD407=null; - Token OPEN_BRACE408=null; - Token CLOSE_BRACE410=null; - Token COMMA411=null; - ParserRuleReturnScope register_list409 =null; - ParserRuleReturnScope method_reference412 =null; - - CommonTree INSTRUCTION_FORMAT35c_METHOD407_tree=null; - CommonTree OPEN_BRACE408_tree=null; - CommonTree CLOSE_BRACE410_tree=null; - CommonTree COMMA411_tree=null; + Token INSTRUCTION_FORMAT35c_METHOD435=null; + Token OPEN_BRACE436=null; + Token CLOSE_BRACE438=null; + Token COMMA439=null; + ParserRuleReturnScope register_list437 =null; + ParserRuleReturnScope method_reference440 =null; + + CommonTree INSTRUCTION_FORMAT35c_METHOD435_tree=null; + CommonTree OPEN_BRACE436_tree=null; + CommonTree CLOSE_BRACE438_tree=null; + CommonTree COMMA439_tree=null; RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_METHOD"); RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); @@ -12870,33 +13518,33 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_method_reference=new RewriteRuleSubtreeStream(adaptor,"rule method_reference"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1013:3: ( INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1014:5: INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1049:3: ( INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1050:5: INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference { - INSTRUCTION_FORMAT35c_METHOD407=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method5138); - stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD407); + INSTRUCTION_FORMAT35c_METHOD435=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method5408); + stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD435); - OPEN_BRACE408=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_method5140); - stream_OPEN_BRACE.add(OPEN_BRACE408); + OPEN_BRACE436=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_method5410); + stream_OPEN_BRACE.add(OPEN_BRACE436); - pushFollow(FOLLOW_register_list_in_insn_format35c_method5142); - register_list409=register_list(); + pushFollow(FOLLOW_register_list_in_insn_format35c_method5412); + register_list437=register_list(); state._fsp--; - stream_register_list.add(register_list409.getTree()); - CLOSE_BRACE410=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_method5144); - stream_CLOSE_BRACE.add(CLOSE_BRACE410); + stream_register_list.add(register_list437.getTree()); + CLOSE_BRACE438=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_method5414); + stream_CLOSE_BRACE.add(CLOSE_BRACE438); - COMMA411=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_method5146); - stream_COMMA.add(COMMA411); + COMMA439=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_method5416); + stream_COMMA.add(COMMA439); - pushFollow(FOLLOW_method_reference_in_insn_format35c_method5148); - method_reference412=method_reference(); + pushFollow(FOLLOW_method_reference_in_insn_format35c_method5418); + method_reference440=method_reference(); state._fsp--; - stream_method_reference.add(method_reference412.getTree()); + stream_method_reference.add(method_reference440.getTree()); // AST REWRITE - // elements: method_reference, register_list, INSTRUCTION_FORMAT35c_METHOD + // elements: INSTRUCTION_FORMAT35c_METHOD, method_reference, register_list // token labels: // rule labels: retval // token list labels: @@ -12906,9 +13554,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1015:5: -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) + // 1051:5: -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1015:8: ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1051:8: ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT35c_METHOD, (retval.start), "I_STATEMENT_FORMAT35c_METHOD"), root_1); @@ -12952,24 +13600,24 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format35c_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1017:1: insn_format35c_type : INSTRUCTION_FORMAT35c_TYPE OPEN_BRACE register_list CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1053:1: insn_format35c_type : INSTRUCTION_FORMAT35c_TYPE OPEN_BRACE register_list CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ; public final smaliParser.insn_format35c_type_return insn_format35c_type() throws RecognitionException { smaliParser.insn_format35c_type_return retval = new smaliParser.insn_format35c_type_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT35c_TYPE413=null; - Token OPEN_BRACE414=null; - Token CLOSE_BRACE416=null; - Token COMMA417=null; - ParserRuleReturnScope register_list415 =null; - ParserRuleReturnScope nonvoid_type_descriptor418 =null; - - CommonTree INSTRUCTION_FORMAT35c_TYPE413_tree=null; - CommonTree OPEN_BRACE414_tree=null; - CommonTree CLOSE_BRACE416_tree=null; - CommonTree COMMA417_tree=null; + Token INSTRUCTION_FORMAT35c_TYPE441=null; + Token OPEN_BRACE442=null; + Token CLOSE_BRACE444=null; + Token COMMA445=null; + ParserRuleReturnScope register_list443 =null; + ParserRuleReturnScope nonvoid_type_descriptor446 =null; + + CommonTree INSTRUCTION_FORMAT35c_TYPE441_tree=null; + CommonTree OPEN_BRACE442_tree=null; + CommonTree CLOSE_BRACE444_tree=null; + CommonTree COMMA445_tree=null; RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE"); @@ -12978,33 +13626,33 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_register_list=new RewriteRuleSubtreeStream(adaptor,"rule register_list"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1018:3: ( INSTRUCTION_FORMAT35c_TYPE OPEN_BRACE register_list CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1019:5: INSTRUCTION_FORMAT35c_TYPE OPEN_BRACE register_list CLOSE_BRACE COMMA nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1054:3: ( INSTRUCTION_FORMAT35c_TYPE OPEN_BRACE register_list CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1055:5: INSTRUCTION_FORMAT35c_TYPE OPEN_BRACE register_list CLOSE_BRACE COMMA nonvoid_type_descriptor { - INSTRUCTION_FORMAT35c_TYPE413=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type5180); - stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE413); + INSTRUCTION_FORMAT35c_TYPE441=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type5450); + stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE441); - OPEN_BRACE414=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_type5182); - stream_OPEN_BRACE.add(OPEN_BRACE414); + OPEN_BRACE442=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_type5452); + stream_OPEN_BRACE.add(OPEN_BRACE442); - pushFollow(FOLLOW_register_list_in_insn_format35c_type5184); - register_list415=register_list(); + pushFollow(FOLLOW_register_list_in_insn_format35c_type5454); + register_list443=register_list(); state._fsp--; - stream_register_list.add(register_list415.getTree()); - CLOSE_BRACE416=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_type5186); - stream_CLOSE_BRACE.add(CLOSE_BRACE416); + stream_register_list.add(register_list443.getTree()); + CLOSE_BRACE444=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_type5456); + stream_CLOSE_BRACE.add(CLOSE_BRACE444); - COMMA417=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_type5188); - stream_COMMA.add(COMMA417); + COMMA445=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_type5458); + stream_COMMA.add(COMMA445); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type5190); - nonvoid_type_descriptor418=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type5460); + nonvoid_type_descriptor446=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor418.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor446.getTree()); // AST REWRITE - // elements: register_list, nonvoid_type_descriptor, INSTRUCTION_FORMAT35c_TYPE + // elements: nonvoid_type_descriptor, register_list, INSTRUCTION_FORMAT35c_TYPE // token labels: // rule labels: retval // token list labels: @@ -13014,9 +13662,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1020:5: -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) + // 1056:5: -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1020:8: ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1056:8: ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT35c_TYPE, (retval.start), "I_STATEMENT_FORMAT35c_TYPE"), root_1); @@ -13060,62 +13708,62 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format35c_method_odex" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1022:1: insn_format35c_method_odex : INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1058:1: insn_format35c_method_odex : INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ; public final smaliParser.insn_format35c_method_odex_return insn_format35c_method_odex() throws RecognitionException { smaliParser.insn_format35c_method_odex_return retval = new smaliParser.insn_format35c_method_odex_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT35c_METHOD_ODEX419=null; - Token OPEN_BRACE420=null; - Token CLOSE_BRACE422=null; - Token COMMA423=null; - ParserRuleReturnScope register_list421 =null; - ParserRuleReturnScope method_reference424 =null; + Token INSTRUCTION_FORMAT35c_METHOD_ODEX447=null; + Token OPEN_BRACE448=null; + Token CLOSE_BRACE450=null; + Token COMMA451=null; + ParserRuleReturnScope register_list449 =null; + ParserRuleReturnScope method_reference452 =null; - CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX419_tree=null; - CommonTree OPEN_BRACE420_tree=null; - CommonTree CLOSE_BRACE422_tree=null; - CommonTree COMMA423_tree=null; + CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX447_tree=null; + CommonTree OPEN_BRACE448_tree=null; + CommonTree CLOSE_BRACE450_tree=null; + CommonTree COMMA451_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1023:3: ( INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1024:5: INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1059:3: ( INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1060:5: INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT35c_METHOD_ODEX419=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_insn_format35c_method_odex5222); - INSTRUCTION_FORMAT35c_METHOD_ODEX419_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35c_METHOD_ODEX419); - adaptor.addChild(root_0, INSTRUCTION_FORMAT35c_METHOD_ODEX419_tree); + INSTRUCTION_FORMAT35c_METHOD_ODEX447=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_insn_format35c_method_odex5492); + INSTRUCTION_FORMAT35c_METHOD_ODEX447_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35c_METHOD_ODEX447); + adaptor.addChild(root_0, INSTRUCTION_FORMAT35c_METHOD_ODEX447_tree); - OPEN_BRACE420=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_method_odex5224); - OPEN_BRACE420_tree = (CommonTree)adaptor.create(OPEN_BRACE420); - adaptor.addChild(root_0, OPEN_BRACE420_tree); + OPEN_BRACE448=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_method_odex5494); + OPEN_BRACE448_tree = (CommonTree)adaptor.create(OPEN_BRACE448); + adaptor.addChild(root_0, OPEN_BRACE448_tree); - pushFollow(FOLLOW_register_list_in_insn_format35c_method_odex5226); - register_list421=register_list(); + pushFollow(FOLLOW_register_list_in_insn_format35c_method_odex5496); + register_list449=register_list(); state._fsp--; - adaptor.addChild(root_0, register_list421.getTree()); + adaptor.addChild(root_0, register_list449.getTree()); - CLOSE_BRACE422=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_method_odex5228); - CLOSE_BRACE422_tree = (CommonTree)adaptor.create(CLOSE_BRACE422); - adaptor.addChild(root_0, CLOSE_BRACE422_tree); + CLOSE_BRACE450=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_method_odex5498); + CLOSE_BRACE450_tree = (CommonTree)adaptor.create(CLOSE_BRACE450); + adaptor.addChild(root_0, CLOSE_BRACE450_tree); - COMMA423=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_method_odex5230); - COMMA423_tree = (CommonTree)adaptor.create(COMMA423); - adaptor.addChild(root_0, COMMA423_tree); + COMMA451=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_method_odex5500); + COMMA451_tree = (CommonTree)adaptor.create(COMMA451); + adaptor.addChild(root_0, COMMA451_tree); - pushFollow(FOLLOW_method_reference_in_insn_format35c_method_odex5232); - method_reference424=method_reference(); + pushFollow(FOLLOW_method_reference_in_insn_format35c_method_odex5502); + method_reference452=method_reference(); state._fsp--; - adaptor.addChild(root_0, method_reference424.getTree()); + adaptor.addChild(root_0, method_reference452.getTree()); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35c_METHOD_ODEX419!=null?INSTRUCTION_FORMAT35c_METHOD_ODEX419.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35c_METHOD_ODEX447!=null?INSTRUCTION_FORMAT35c_METHOD_ODEX447.getText():null)); } @@ -13146,61 +13794,61 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format35mi_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1029:1: insn_format35mi_method : INSTRUCTION_FORMAT35mi_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA INLINE_INDEX ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1065:1: insn_format35mi_method : INSTRUCTION_FORMAT35mi_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA INLINE_INDEX ; public final smaliParser.insn_format35mi_method_return insn_format35mi_method() throws RecognitionException { smaliParser.insn_format35mi_method_return retval = new smaliParser.insn_format35mi_method_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT35mi_METHOD425=null; - Token OPEN_BRACE426=null; - Token CLOSE_BRACE428=null; - Token COMMA429=null; - Token INLINE_INDEX430=null; - ParserRuleReturnScope register_list427 =null; + Token INSTRUCTION_FORMAT35mi_METHOD453=null; + Token OPEN_BRACE454=null; + Token CLOSE_BRACE456=null; + Token COMMA457=null; + Token INLINE_INDEX458=null; + ParserRuleReturnScope register_list455 =null; - CommonTree INSTRUCTION_FORMAT35mi_METHOD425_tree=null; - CommonTree OPEN_BRACE426_tree=null; - CommonTree CLOSE_BRACE428_tree=null; - CommonTree COMMA429_tree=null; - CommonTree INLINE_INDEX430_tree=null; + CommonTree INSTRUCTION_FORMAT35mi_METHOD453_tree=null; + CommonTree OPEN_BRACE454_tree=null; + CommonTree CLOSE_BRACE456_tree=null; + CommonTree COMMA457_tree=null; + CommonTree INLINE_INDEX458_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1030:3: ( INSTRUCTION_FORMAT35mi_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA INLINE_INDEX ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1031:5: INSTRUCTION_FORMAT35mi_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA INLINE_INDEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1066:3: ( INSTRUCTION_FORMAT35mi_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA INLINE_INDEX ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1067:5: INSTRUCTION_FORMAT35mi_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA INLINE_INDEX { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT35mi_METHOD425=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_insn_format35mi_method5253); - INSTRUCTION_FORMAT35mi_METHOD425_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35mi_METHOD425); - adaptor.addChild(root_0, INSTRUCTION_FORMAT35mi_METHOD425_tree); + INSTRUCTION_FORMAT35mi_METHOD453=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_insn_format35mi_method5523); + INSTRUCTION_FORMAT35mi_METHOD453_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35mi_METHOD453); + adaptor.addChild(root_0, INSTRUCTION_FORMAT35mi_METHOD453_tree); - OPEN_BRACE426=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35mi_method5255); - OPEN_BRACE426_tree = (CommonTree)adaptor.create(OPEN_BRACE426); - adaptor.addChild(root_0, OPEN_BRACE426_tree); + OPEN_BRACE454=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35mi_method5525); + OPEN_BRACE454_tree = (CommonTree)adaptor.create(OPEN_BRACE454); + adaptor.addChild(root_0, OPEN_BRACE454_tree); - pushFollow(FOLLOW_register_list_in_insn_format35mi_method5257); - register_list427=register_list(); + pushFollow(FOLLOW_register_list_in_insn_format35mi_method5527); + register_list455=register_list(); state._fsp--; - adaptor.addChild(root_0, register_list427.getTree()); + adaptor.addChild(root_0, register_list455.getTree()); - CLOSE_BRACE428=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35mi_method5259); - CLOSE_BRACE428_tree = (CommonTree)adaptor.create(CLOSE_BRACE428); - adaptor.addChild(root_0, CLOSE_BRACE428_tree); + CLOSE_BRACE456=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35mi_method5529); + CLOSE_BRACE456_tree = (CommonTree)adaptor.create(CLOSE_BRACE456); + adaptor.addChild(root_0, CLOSE_BRACE456_tree); - COMMA429=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35mi_method5261); - COMMA429_tree = (CommonTree)adaptor.create(COMMA429); - adaptor.addChild(root_0, COMMA429_tree); + COMMA457=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35mi_method5531); + COMMA457_tree = (CommonTree)adaptor.create(COMMA457); + adaptor.addChild(root_0, COMMA457_tree); - INLINE_INDEX430=(Token)match(input,INLINE_INDEX,FOLLOW_INLINE_INDEX_in_insn_format35mi_method5263); - INLINE_INDEX430_tree = (CommonTree)adaptor.create(INLINE_INDEX430); - adaptor.addChild(root_0, INLINE_INDEX430_tree); + INLINE_INDEX458=(Token)match(input,INLINE_INDEX,FOLLOW_INLINE_INDEX_in_insn_format35mi_method5533); + INLINE_INDEX458_tree = (CommonTree)adaptor.create(INLINE_INDEX458); + adaptor.addChild(root_0, INLINE_INDEX458_tree); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35mi_METHOD425!=null?INSTRUCTION_FORMAT35mi_METHOD425.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35mi_METHOD453!=null?INSTRUCTION_FORMAT35mi_METHOD453.getText():null)); } @@ -13231,61 +13879,61 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format35ms_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1036:1: insn_format35ms_method : INSTRUCTION_FORMAT35ms_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA VTABLE_INDEX ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1072:1: insn_format35ms_method : INSTRUCTION_FORMAT35ms_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA VTABLE_INDEX ; public final smaliParser.insn_format35ms_method_return insn_format35ms_method() throws RecognitionException { smaliParser.insn_format35ms_method_return retval = new smaliParser.insn_format35ms_method_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT35ms_METHOD431=null; - Token OPEN_BRACE432=null; - Token CLOSE_BRACE434=null; - Token COMMA435=null; - Token VTABLE_INDEX436=null; - ParserRuleReturnScope register_list433 =null; + Token INSTRUCTION_FORMAT35ms_METHOD459=null; + Token OPEN_BRACE460=null; + Token CLOSE_BRACE462=null; + Token COMMA463=null; + Token VTABLE_INDEX464=null; + ParserRuleReturnScope register_list461 =null; - CommonTree INSTRUCTION_FORMAT35ms_METHOD431_tree=null; - CommonTree OPEN_BRACE432_tree=null; - CommonTree CLOSE_BRACE434_tree=null; - CommonTree COMMA435_tree=null; - CommonTree VTABLE_INDEX436_tree=null; + CommonTree INSTRUCTION_FORMAT35ms_METHOD459_tree=null; + CommonTree OPEN_BRACE460_tree=null; + CommonTree CLOSE_BRACE462_tree=null; + CommonTree COMMA463_tree=null; + CommonTree VTABLE_INDEX464_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1037:3: ( INSTRUCTION_FORMAT35ms_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA VTABLE_INDEX ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1038:5: INSTRUCTION_FORMAT35ms_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA VTABLE_INDEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1073:3: ( INSTRUCTION_FORMAT35ms_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA VTABLE_INDEX ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1074:5: INSTRUCTION_FORMAT35ms_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA VTABLE_INDEX { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT35ms_METHOD431=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_insn_format35ms_method5284); - INSTRUCTION_FORMAT35ms_METHOD431_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35ms_METHOD431); - adaptor.addChild(root_0, INSTRUCTION_FORMAT35ms_METHOD431_tree); + INSTRUCTION_FORMAT35ms_METHOD459=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_insn_format35ms_method5554); + INSTRUCTION_FORMAT35ms_METHOD459_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35ms_METHOD459); + adaptor.addChild(root_0, INSTRUCTION_FORMAT35ms_METHOD459_tree); - OPEN_BRACE432=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35ms_method5286); - OPEN_BRACE432_tree = (CommonTree)adaptor.create(OPEN_BRACE432); - adaptor.addChild(root_0, OPEN_BRACE432_tree); + OPEN_BRACE460=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35ms_method5556); + OPEN_BRACE460_tree = (CommonTree)adaptor.create(OPEN_BRACE460); + adaptor.addChild(root_0, OPEN_BRACE460_tree); - pushFollow(FOLLOW_register_list_in_insn_format35ms_method5288); - register_list433=register_list(); + pushFollow(FOLLOW_register_list_in_insn_format35ms_method5558); + register_list461=register_list(); state._fsp--; - adaptor.addChild(root_0, register_list433.getTree()); + adaptor.addChild(root_0, register_list461.getTree()); - CLOSE_BRACE434=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35ms_method5290); - CLOSE_BRACE434_tree = (CommonTree)adaptor.create(CLOSE_BRACE434); - adaptor.addChild(root_0, CLOSE_BRACE434_tree); + CLOSE_BRACE462=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35ms_method5560); + CLOSE_BRACE462_tree = (CommonTree)adaptor.create(CLOSE_BRACE462); + adaptor.addChild(root_0, CLOSE_BRACE462_tree); - COMMA435=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35ms_method5292); - COMMA435_tree = (CommonTree)adaptor.create(COMMA435); - adaptor.addChild(root_0, COMMA435_tree); + COMMA463=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35ms_method5562); + COMMA463_tree = (CommonTree)adaptor.create(COMMA463); + adaptor.addChild(root_0, COMMA463_tree); - VTABLE_INDEX436=(Token)match(input,VTABLE_INDEX,FOLLOW_VTABLE_INDEX_in_insn_format35ms_method5294); - VTABLE_INDEX436_tree = (CommonTree)adaptor.create(VTABLE_INDEX436); - adaptor.addChild(root_0, VTABLE_INDEX436_tree); + VTABLE_INDEX464=(Token)match(input,VTABLE_INDEX,FOLLOW_VTABLE_INDEX_in_insn_format35ms_method5564); + VTABLE_INDEX464_tree = (CommonTree)adaptor.create(VTABLE_INDEX464); + adaptor.addChild(root_0, VTABLE_INDEX464_tree); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35ms_METHOD431!=null?INSTRUCTION_FORMAT35ms_METHOD431.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35ms_METHOD459!=null?INSTRUCTION_FORMAT35ms_METHOD459.getText():null)); } @@ -13316,24 +13964,24 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format3rc_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1043:1: insn_format3rc_method : INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1079:1: insn_format3rc_method : INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ; public final smaliParser.insn_format3rc_method_return insn_format3rc_method() throws RecognitionException { smaliParser.insn_format3rc_method_return retval = new smaliParser.insn_format3rc_method_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT3rc_METHOD437=null; - Token OPEN_BRACE438=null; - Token CLOSE_BRACE440=null; - Token COMMA441=null; - ParserRuleReturnScope register_range439 =null; - ParserRuleReturnScope method_reference442 =null; - - CommonTree INSTRUCTION_FORMAT3rc_METHOD437_tree=null; - CommonTree OPEN_BRACE438_tree=null; - CommonTree CLOSE_BRACE440_tree=null; - CommonTree COMMA441_tree=null; + Token INSTRUCTION_FORMAT3rc_METHOD465=null; + Token OPEN_BRACE466=null; + Token CLOSE_BRACE468=null; + Token COMMA469=null; + ParserRuleReturnScope register_range467 =null; + ParserRuleReturnScope method_reference470 =null; + + CommonTree INSTRUCTION_FORMAT3rc_METHOD465_tree=null; + CommonTree OPEN_BRACE466_tree=null; + CommonTree CLOSE_BRACE468_tree=null; + CommonTree COMMA469_tree=null; RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT3rc_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT3rc_METHOD"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); @@ -13342,31 +13990,31 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_register_range=new RewriteRuleSubtreeStream(adaptor,"rule register_range"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1044:3: ( INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1045:5: INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA method_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1080:3: ( INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA method_reference -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1081:5: INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA method_reference { - INSTRUCTION_FORMAT3rc_METHOD437=(Token)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method5315); - stream_INSTRUCTION_FORMAT3rc_METHOD.add(INSTRUCTION_FORMAT3rc_METHOD437); + INSTRUCTION_FORMAT3rc_METHOD465=(Token)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method5585); + stream_INSTRUCTION_FORMAT3rc_METHOD.add(INSTRUCTION_FORMAT3rc_METHOD465); - OPEN_BRACE438=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_method5317); - stream_OPEN_BRACE.add(OPEN_BRACE438); + OPEN_BRACE466=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_method5587); + stream_OPEN_BRACE.add(OPEN_BRACE466); - pushFollow(FOLLOW_register_range_in_insn_format3rc_method5319); - register_range439=register_range(); + pushFollow(FOLLOW_register_range_in_insn_format3rc_method5589); + register_range467=register_range(); state._fsp--; - stream_register_range.add(register_range439.getTree()); - CLOSE_BRACE440=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_method5321); - stream_CLOSE_BRACE.add(CLOSE_BRACE440); + stream_register_range.add(register_range467.getTree()); + CLOSE_BRACE468=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_method5591); + stream_CLOSE_BRACE.add(CLOSE_BRACE468); - COMMA441=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_method5323); - stream_COMMA.add(COMMA441); + COMMA469=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_method5593); + stream_COMMA.add(COMMA469); - pushFollow(FOLLOW_method_reference_in_insn_format3rc_method5325); - method_reference442=method_reference(); + pushFollow(FOLLOW_method_reference_in_insn_format3rc_method5595); + method_reference470=method_reference(); state._fsp--; - stream_method_reference.add(method_reference442.getTree()); + stream_method_reference.add(method_reference470.getTree()); // AST REWRITE // elements: INSTRUCTION_FORMAT3rc_METHOD, method_reference, register_range // token labels: @@ -13378,9 +14026,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1046:5: -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) + // 1082:5: -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1046:8: ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1082:8: ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT3rc_METHOD, (retval.start), "I_STATEMENT_FORMAT3rc_METHOD"), root_1); @@ -13424,62 +14072,62 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format3rc_method_odex" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1048:1: insn_format3rc_method_odex : INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1084:1: insn_format3rc_method_odex : INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ; public final smaliParser.insn_format3rc_method_odex_return insn_format3rc_method_odex() throws RecognitionException { smaliParser.insn_format3rc_method_odex_return retval = new smaliParser.insn_format3rc_method_odex_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT3rc_METHOD_ODEX443=null; - Token OPEN_BRACE444=null; - Token CLOSE_BRACE446=null; - Token COMMA447=null; - ParserRuleReturnScope register_list445 =null; - ParserRuleReturnScope method_reference448 =null; + Token INSTRUCTION_FORMAT3rc_METHOD_ODEX471=null; + Token OPEN_BRACE472=null; + Token CLOSE_BRACE474=null; + Token COMMA475=null; + ParserRuleReturnScope register_list473 =null; + ParserRuleReturnScope method_reference476 =null; - CommonTree INSTRUCTION_FORMAT3rc_METHOD_ODEX443_tree=null; - CommonTree OPEN_BRACE444_tree=null; - CommonTree CLOSE_BRACE446_tree=null; - CommonTree COMMA447_tree=null; + CommonTree INSTRUCTION_FORMAT3rc_METHOD_ODEX471_tree=null; + CommonTree OPEN_BRACE472_tree=null; + CommonTree CLOSE_BRACE474_tree=null; + CommonTree COMMA475_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1049:3: ( INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1050:5: INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1085:3: ( INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1086:5: INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT3rc_METHOD_ODEX443=(Token)match(input,INSTRUCTION_FORMAT3rc_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_ODEX_in_insn_format3rc_method_odex5357); - INSTRUCTION_FORMAT3rc_METHOD_ODEX443_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rc_METHOD_ODEX443); - adaptor.addChild(root_0, INSTRUCTION_FORMAT3rc_METHOD_ODEX443_tree); + INSTRUCTION_FORMAT3rc_METHOD_ODEX471=(Token)match(input,INSTRUCTION_FORMAT3rc_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_ODEX_in_insn_format3rc_method_odex5627); + INSTRUCTION_FORMAT3rc_METHOD_ODEX471_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rc_METHOD_ODEX471); + adaptor.addChild(root_0, INSTRUCTION_FORMAT3rc_METHOD_ODEX471_tree); - OPEN_BRACE444=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_method_odex5359); - OPEN_BRACE444_tree = (CommonTree)adaptor.create(OPEN_BRACE444); - adaptor.addChild(root_0, OPEN_BRACE444_tree); + OPEN_BRACE472=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_method_odex5629); + OPEN_BRACE472_tree = (CommonTree)adaptor.create(OPEN_BRACE472); + adaptor.addChild(root_0, OPEN_BRACE472_tree); - pushFollow(FOLLOW_register_list_in_insn_format3rc_method_odex5361); - register_list445=register_list(); + pushFollow(FOLLOW_register_list_in_insn_format3rc_method_odex5631); + register_list473=register_list(); state._fsp--; - adaptor.addChild(root_0, register_list445.getTree()); + adaptor.addChild(root_0, register_list473.getTree()); - CLOSE_BRACE446=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_method_odex5363); - CLOSE_BRACE446_tree = (CommonTree)adaptor.create(CLOSE_BRACE446); - adaptor.addChild(root_0, CLOSE_BRACE446_tree); + CLOSE_BRACE474=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_method_odex5633); + CLOSE_BRACE474_tree = (CommonTree)adaptor.create(CLOSE_BRACE474); + adaptor.addChild(root_0, CLOSE_BRACE474_tree); - COMMA447=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_method_odex5365); - COMMA447_tree = (CommonTree)adaptor.create(COMMA447); - adaptor.addChild(root_0, COMMA447_tree); + COMMA475=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_method_odex5635); + COMMA475_tree = (CommonTree)adaptor.create(COMMA475); + adaptor.addChild(root_0, COMMA475_tree); - pushFollow(FOLLOW_method_reference_in_insn_format3rc_method_odex5367); - method_reference448=method_reference(); + pushFollow(FOLLOW_method_reference_in_insn_format3rc_method_odex5637); + method_reference476=method_reference(); state._fsp--; - adaptor.addChild(root_0, method_reference448.getTree()); + adaptor.addChild(root_0, method_reference476.getTree()); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rc_METHOD_ODEX443!=null?INSTRUCTION_FORMAT3rc_METHOD_ODEX443.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rc_METHOD_ODEX471!=null?INSTRUCTION_FORMAT3rc_METHOD_ODEX471.getText():null)); } @@ -13510,24 +14158,24 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format3rc_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1055:1: insn_format3rc_type : INSTRUCTION_FORMAT3rc_TYPE OPEN_BRACE register_range CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1091:1: insn_format3rc_type : INSTRUCTION_FORMAT3rc_TYPE OPEN_BRACE register_range CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ; public final smaliParser.insn_format3rc_type_return insn_format3rc_type() throws RecognitionException { smaliParser.insn_format3rc_type_return retval = new smaliParser.insn_format3rc_type_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT3rc_TYPE449=null; - Token OPEN_BRACE450=null; - Token CLOSE_BRACE452=null; - Token COMMA453=null; - ParserRuleReturnScope register_range451 =null; - ParserRuleReturnScope nonvoid_type_descriptor454 =null; - - CommonTree INSTRUCTION_FORMAT3rc_TYPE449_tree=null; - CommonTree OPEN_BRACE450_tree=null; - CommonTree CLOSE_BRACE452_tree=null; - CommonTree COMMA453_tree=null; + Token INSTRUCTION_FORMAT3rc_TYPE477=null; + Token OPEN_BRACE478=null; + Token CLOSE_BRACE480=null; + Token COMMA481=null; + ParserRuleReturnScope register_range479 =null; + ParserRuleReturnScope nonvoid_type_descriptor482 =null; + + CommonTree INSTRUCTION_FORMAT3rc_TYPE477_tree=null; + CommonTree OPEN_BRACE478_tree=null; + CommonTree CLOSE_BRACE480_tree=null; + CommonTree COMMA481_tree=null; RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT3rc_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT3rc_TYPE"); RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); @@ -13536,33 +14184,33 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_register_range=new RewriteRuleSubtreeStream(adaptor,"rule register_range"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1056:3: ( INSTRUCTION_FORMAT3rc_TYPE OPEN_BRACE register_range CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1057:5: INSTRUCTION_FORMAT3rc_TYPE OPEN_BRACE register_range CLOSE_BRACE COMMA nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1092:3: ( INSTRUCTION_FORMAT3rc_TYPE OPEN_BRACE register_range CLOSE_BRACE COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1093:5: INSTRUCTION_FORMAT3rc_TYPE OPEN_BRACE register_range CLOSE_BRACE COMMA nonvoid_type_descriptor { - INSTRUCTION_FORMAT3rc_TYPE449=(Token)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type5388); - stream_INSTRUCTION_FORMAT3rc_TYPE.add(INSTRUCTION_FORMAT3rc_TYPE449); + INSTRUCTION_FORMAT3rc_TYPE477=(Token)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type5658); + stream_INSTRUCTION_FORMAT3rc_TYPE.add(INSTRUCTION_FORMAT3rc_TYPE477); - OPEN_BRACE450=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_type5390); - stream_OPEN_BRACE.add(OPEN_BRACE450); + OPEN_BRACE478=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_type5660); + stream_OPEN_BRACE.add(OPEN_BRACE478); - pushFollow(FOLLOW_register_range_in_insn_format3rc_type5392); - register_range451=register_range(); + pushFollow(FOLLOW_register_range_in_insn_format3rc_type5662); + register_range479=register_range(); state._fsp--; - stream_register_range.add(register_range451.getTree()); - CLOSE_BRACE452=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_type5394); - stream_CLOSE_BRACE.add(CLOSE_BRACE452); + stream_register_range.add(register_range479.getTree()); + CLOSE_BRACE480=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_type5664); + stream_CLOSE_BRACE.add(CLOSE_BRACE480); - COMMA453=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_type5396); - stream_COMMA.add(COMMA453); + COMMA481=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_type5666); + stream_COMMA.add(COMMA481); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type5398); - nonvoid_type_descriptor454=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type5668); + nonvoid_type_descriptor482=nonvoid_type_descriptor(); state._fsp--; - stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor454.getTree()); + stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor482.getTree()); // AST REWRITE - // elements: nonvoid_type_descriptor, register_range, INSTRUCTION_FORMAT3rc_TYPE + // elements: INSTRUCTION_FORMAT3rc_TYPE, nonvoid_type_descriptor, register_range // token labels: // rule labels: retval // token list labels: @@ -13572,9 +14220,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1058:5: -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) + // 1094:5: -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1058:8: ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1094:8: ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT3rc_TYPE, (retval.start), "I_STATEMENT_FORMAT3rc_TYPE"), root_1); @@ -13618,61 +14266,61 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format3rmi_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1060:1: insn_format3rmi_method : INSTRUCTION_FORMAT3rmi_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA INLINE_INDEX ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1096:1: insn_format3rmi_method : INSTRUCTION_FORMAT3rmi_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA INLINE_INDEX ; public final smaliParser.insn_format3rmi_method_return insn_format3rmi_method() throws RecognitionException { smaliParser.insn_format3rmi_method_return retval = new smaliParser.insn_format3rmi_method_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT3rmi_METHOD455=null; - Token OPEN_BRACE456=null; - Token CLOSE_BRACE458=null; - Token COMMA459=null; - Token INLINE_INDEX460=null; - ParserRuleReturnScope register_range457 =null; + Token INSTRUCTION_FORMAT3rmi_METHOD483=null; + Token OPEN_BRACE484=null; + Token CLOSE_BRACE486=null; + Token COMMA487=null; + Token INLINE_INDEX488=null; + ParserRuleReturnScope register_range485 =null; - CommonTree INSTRUCTION_FORMAT3rmi_METHOD455_tree=null; - CommonTree OPEN_BRACE456_tree=null; - CommonTree CLOSE_BRACE458_tree=null; - CommonTree COMMA459_tree=null; - CommonTree INLINE_INDEX460_tree=null; + CommonTree INSTRUCTION_FORMAT3rmi_METHOD483_tree=null; + CommonTree OPEN_BRACE484_tree=null; + CommonTree CLOSE_BRACE486_tree=null; + CommonTree COMMA487_tree=null; + CommonTree INLINE_INDEX488_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1061:3: ( INSTRUCTION_FORMAT3rmi_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA INLINE_INDEX ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1062:5: INSTRUCTION_FORMAT3rmi_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA INLINE_INDEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1097:3: ( INSTRUCTION_FORMAT3rmi_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA INLINE_INDEX ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1098:5: INSTRUCTION_FORMAT3rmi_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA INLINE_INDEX { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT3rmi_METHOD455=(Token)match(input,INSTRUCTION_FORMAT3rmi_METHOD,FOLLOW_INSTRUCTION_FORMAT3rmi_METHOD_in_insn_format3rmi_method5430); - INSTRUCTION_FORMAT3rmi_METHOD455_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rmi_METHOD455); - adaptor.addChild(root_0, INSTRUCTION_FORMAT3rmi_METHOD455_tree); + INSTRUCTION_FORMAT3rmi_METHOD483=(Token)match(input,INSTRUCTION_FORMAT3rmi_METHOD,FOLLOW_INSTRUCTION_FORMAT3rmi_METHOD_in_insn_format3rmi_method5700); + INSTRUCTION_FORMAT3rmi_METHOD483_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rmi_METHOD483); + adaptor.addChild(root_0, INSTRUCTION_FORMAT3rmi_METHOD483_tree); - OPEN_BRACE456=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rmi_method5432); - OPEN_BRACE456_tree = (CommonTree)adaptor.create(OPEN_BRACE456); - adaptor.addChild(root_0, OPEN_BRACE456_tree); + OPEN_BRACE484=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rmi_method5702); + OPEN_BRACE484_tree = (CommonTree)adaptor.create(OPEN_BRACE484); + adaptor.addChild(root_0, OPEN_BRACE484_tree); - pushFollow(FOLLOW_register_range_in_insn_format3rmi_method5434); - register_range457=register_range(); + pushFollow(FOLLOW_register_range_in_insn_format3rmi_method5704); + register_range485=register_range(); state._fsp--; - adaptor.addChild(root_0, register_range457.getTree()); + adaptor.addChild(root_0, register_range485.getTree()); - CLOSE_BRACE458=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rmi_method5436); - CLOSE_BRACE458_tree = (CommonTree)adaptor.create(CLOSE_BRACE458); - adaptor.addChild(root_0, CLOSE_BRACE458_tree); + CLOSE_BRACE486=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rmi_method5706); + CLOSE_BRACE486_tree = (CommonTree)adaptor.create(CLOSE_BRACE486); + adaptor.addChild(root_0, CLOSE_BRACE486_tree); - COMMA459=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rmi_method5438); - COMMA459_tree = (CommonTree)adaptor.create(COMMA459); - adaptor.addChild(root_0, COMMA459_tree); + COMMA487=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rmi_method5708); + COMMA487_tree = (CommonTree)adaptor.create(COMMA487); + adaptor.addChild(root_0, COMMA487_tree); - INLINE_INDEX460=(Token)match(input,INLINE_INDEX,FOLLOW_INLINE_INDEX_in_insn_format3rmi_method5440); - INLINE_INDEX460_tree = (CommonTree)adaptor.create(INLINE_INDEX460); - adaptor.addChild(root_0, INLINE_INDEX460_tree); + INLINE_INDEX488=(Token)match(input,INLINE_INDEX,FOLLOW_INLINE_INDEX_in_insn_format3rmi_method5710); + INLINE_INDEX488_tree = (CommonTree)adaptor.create(INLINE_INDEX488); + adaptor.addChild(root_0, INLINE_INDEX488_tree); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rmi_METHOD455!=null?INSTRUCTION_FORMAT3rmi_METHOD455.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rmi_METHOD483!=null?INSTRUCTION_FORMAT3rmi_METHOD483.getText():null)); } @@ -13703,61 +14351,61 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format3rms_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1067:1: insn_format3rms_method : INSTRUCTION_FORMAT3rms_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA VTABLE_INDEX ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1103:1: insn_format3rms_method : INSTRUCTION_FORMAT3rms_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA VTABLE_INDEX ; public final smaliParser.insn_format3rms_method_return insn_format3rms_method() throws RecognitionException { smaliParser.insn_format3rms_method_return retval = new smaliParser.insn_format3rms_method_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT3rms_METHOD461=null; - Token OPEN_BRACE462=null; - Token CLOSE_BRACE464=null; - Token COMMA465=null; - Token VTABLE_INDEX466=null; - ParserRuleReturnScope register_range463 =null; + Token INSTRUCTION_FORMAT3rms_METHOD489=null; + Token OPEN_BRACE490=null; + Token CLOSE_BRACE492=null; + Token COMMA493=null; + Token VTABLE_INDEX494=null; + ParserRuleReturnScope register_range491 =null; - CommonTree INSTRUCTION_FORMAT3rms_METHOD461_tree=null; - CommonTree OPEN_BRACE462_tree=null; - CommonTree CLOSE_BRACE464_tree=null; - CommonTree COMMA465_tree=null; - CommonTree VTABLE_INDEX466_tree=null; + CommonTree INSTRUCTION_FORMAT3rms_METHOD489_tree=null; + CommonTree OPEN_BRACE490_tree=null; + CommonTree CLOSE_BRACE492_tree=null; + CommonTree COMMA493_tree=null; + CommonTree VTABLE_INDEX494_tree=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1068:3: ( INSTRUCTION_FORMAT3rms_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA VTABLE_INDEX ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1069:5: INSTRUCTION_FORMAT3rms_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA VTABLE_INDEX + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1104:3: ( INSTRUCTION_FORMAT3rms_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA VTABLE_INDEX ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1105:5: INSTRUCTION_FORMAT3rms_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA VTABLE_INDEX { root_0 = (CommonTree)adaptor.nil(); - INSTRUCTION_FORMAT3rms_METHOD461=(Token)match(input,INSTRUCTION_FORMAT3rms_METHOD,FOLLOW_INSTRUCTION_FORMAT3rms_METHOD_in_insn_format3rms_method5461); - INSTRUCTION_FORMAT3rms_METHOD461_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rms_METHOD461); - adaptor.addChild(root_0, INSTRUCTION_FORMAT3rms_METHOD461_tree); + INSTRUCTION_FORMAT3rms_METHOD489=(Token)match(input,INSTRUCTION_FORMAT3rms_METHOD,FOLLOW_INSTRUCTION_FORMAT3rms_METHOD_in_insn_format3rms_method5731); + INSTRUCTION_FORMAT3rms_METHOD489_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rms_METHOD489); + adaptor.addChild(root_0, INSTRUCTION_FORMAT3rms_METHOD489_tree); - OPEN_BRACE462=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rms_method5463); - OPEN_BRACE462_tree = (CommonTree)adaptor.create(OPEN_BRACE462); - adaptor.addChild(root_0, OPEN_BRACE462_tree); + OPEN_BRACE490=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rms_method5733); + OPEN_BRACE490_tree = (CommonTree)adaptor.create(OPEN_BRACE490); + adaptor.addChild(root_0, OPEN_BRACE490_tree); - pushFollow(FOLLOW_register_range_in_insn_format3rms_method5465); - register_range463=register_range(); + pushFollow(FOLLOW_register_range_in_insn_format3rms_method5735); + register_range491=register_range(); state._fsp--; - adaptor.addChild(root_0, register_range463.getTree()); + adaptor.addChild(root_0, register_range491.getTree()); - CLOSE_BRACE464=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rms_method5467); - CLOSE_BRACE464_tree = (CommonTree)adaptor.create(CLOSE_BRACE464); - adaptor.addChild(root_0, CLOSE_BRACE464_tree); + CLOSE_BRACE492=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rms_method5737); + CLOSE_BRACE492_tree = (CommonTree)adaptor.create(CLOSE_BRACE492); + adaptor.addChild(root_0, CLOSE_BRACE492_tree); - COMMA465=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rms_method5469); - COMMA465_tree = (CommonTree)adaptor.create(COMMA465); - adaptor.addChild(root_0, COMMA465_tree); + COMMA493=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rms_method5739); + COMMA493_tree = (CommonTree)adaptor.create(COMMA493); + adaptor.addChild(root_0, COMMA493_tree); - VTABLE_INDEX466=(Token)match(input,VTABLE_INDEX,FOLLOW_VTABLE_INDEX_in_insn_format3rms_method5471); - VTABLE_INDEX466_tree = (CommonTree)adaptor.create(VTABLE_INDEX466); - adaptor.addChild(root_0, VTABLE_INDEX466_tree); + VTABLE_INDEX494=(Token)match(input,VTABLE_INDEX,FOLLOW_VTABLE_INDEX_in_insn_format3rms_method5741); + VTABLE_INDEX494_tree = (CommonTree)adaptor.create(VTABLE_INDEX494); + adaptor.addChild(root_0, VTABLE_INDEX494_tree); - throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rms_METHOD461!=null?INSTRUCTION_FORMAT3rms_METHOD461.getText():null)); + throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rms_METHOD489!=null?INSTRUCTION_FORMAT3rms_METHOD489.getText():null)); } @@ -13788,44 +14436,44 @@ public class smaliParser extends Parser { // $ANTLR start "insn_format51l" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1074:1: insn_format51l : INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1110:1: insn_format51l : INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) ; public final smaliParser.insn_format51l_return insn_format51l() throws RecognitionException { smaliParser.insn_format51l_return retval = new smaliParser.insn_format51l_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token INSTRUCTION_FORMAT51l467=null; - Token REGISTER468=null; - Token COMMA469=null; - ParserRuleReturnScope fixed_literal470 =null; + Token INSTRUCTION_FORMAT51l495=null; + Token REGISTER496=null; + Token COMMA497=null; + ParserRuleReturnScope fixed_literal498 =null; - CommonTree INSTRUCTION_FORMAT51l467_tree=null; - CommonTree REGISTER468_tree=null; - CommonTree COMMA469_tree=null; + CommonTree INSTRUCTION_FORMAT51l495_tree=null; + CommonTree REGISTER496_tree=null; + CommonTree COMMA497_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); RewriteRuleTokenStream stream_INSTRUCTION_FORMAT51l=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT51l"); RewriteRuleSubtreeStream stream_fixed_literal=new RewriteRuleSubtreeStream(adaptor,"rule fixed_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1075:3: ( INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1076:5: INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1111:3: ( INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1112:5: INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal { - INSTRUCTION_FORMAT51l467=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l5492); - stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l467); + INSTRUCTION_FORMAT51l495=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l5762); + stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l495); - REGISTER468=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l5494); - stream_REGISTER.add(REGISTER468); + REGISTER496=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l5764); + stream_REGISTER.add(REGISTER496); - COMMA469=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format51l5496); - stream_COMMA.add(COMMA469); + COMMA497=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format51l5766); + stream_COMMA.add(COMMA497); - pushFollow(FOLLOW_fixed_literal_in_insn_format51l5498); - fixed_literal470=fixed_literal(); + pushFollow(FOLLOW_fixed_literal_in_insn_format51l5768); + fixed_literal498=fixed_literal(); state._fsp--; - stream_fixed_literal.add(fixed_literal470.getTree()); + stream_fixed_literal.add(fixed_literal498.getTree()); // AST REWRITE // elements: REGISTER, fixed_literal, INSTRUCTION_FORMAT51l // token labels: @@ -13837,9 +14485,9 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1077:5: -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) + // 1113:5: -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1077:8: ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1113:8: ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT51l, (retval.start), "I_STATEMENT_FORMAT51l"), root_1); @@ -13883,44 +14531,44 @@ public class smaliParser extends Parser { // $ANTLR start "insn_array_data_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1079:1: insn_array_data_directive : ARRAY_DATA_DIRECTIVE parsed_integer_literal ( fixed_literal )* END_ARRAY_DATA_DIRECTIVE -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1115:1: insn_array_data_directive : ARRAY_DATA_DIRECTIVE parsed_integer_literal ( fixed_literal )* END_ARRAY_DATA_DIRECTIVE -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) ; public final smaliParser.insn_array_data_directive_return insn_array_data_directive() throws RecognitionException { smaliParser.insn_array_data_directive_return retval = new smaliParser.insn_array_data_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token ARRAY_DATA_DIRECTIVE471=null; - Token END_ARRAY_DATA_DIRECTIVE474=null; - ParserRuleReturnScope parsed_integer_literal472 =null; - ParserRuleReturnScope fixed_literal473 =null; + Token ARRAY_DATA_DIRECTIVE499=null; + Token END_ARRAY_DATA_DIRECTIVE502=null; + ParserRuleReturnScope parsed_integer_literal500 =null; + ParserRuleReturnScope fixed_literal501 =null; - CommonTree ARRAY_DATA_DIRECTIVE471_tree=null; - CommonTree END_ARRAY_DATA_DIRECTIVE474_tree=null; + CommonTree ARRAY_DATA_DIRECTIVE499_tree=null; + CommonTree END_ARRAY_DATA_DIRECTIVE502_tree=null; RewriteRuleTokenStream stream_ARRAY_DATA_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token ARRAY_DATA_DIRECTIVE"); RewriteRuleTokenStream stream_END_ARRAY_DATA_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_ARRAY_DATA_DIRECTIVE"); RewriteRuleSubtreeStream stream_fixed_literal=new RewriteRuleSubtreeStream(adaptor,"rule fixed_literal"); RewriteRuleSubtreeStream stream_parsed_integer_literal=new RewriteRuleSubtreeStream(adaptor,"rule parsed_integer_literal"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1080:3: ( ARRAY_DATA_DIRECTIVE parsed_integer_literal ( fixed_literal )* END_ARRAY_DATA_DIRECTIVE -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1080:5: ARRAY_DATA_DIRECTIVE parsed_integer_literal ( fixed_literal )* END_ARRAY_DATA_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1116:3: ( ARRAY_DATA_DIRECTIVE parsed_integer_literal ( fixed_literal )* END_ARRAY_DATA_DIRECTIVE -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1116:5: ARRAY_DATA_DIRECTIVE parsed_integer_literal ( fixed_literal )* END_ARRAY_DATA_DIRECTIVE { - ARRAY_DATA_DIRECTIVE471=(Token)match(input,ARRAY_DATA_DIRECTIVE,FOLLOW_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5525); - stream_ARRAY_DATA_DIRECTIVE.add(ARRAY_DATA_DIRECTIVE471); + ARRAY_DATA_DIRECTIVE499=(Token)match(input,ARRAY_DATA_DIRECTIVE,FOLLOW_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5795); + stream_ARRAY_DATA_DIRECTIVE.add(ARRAY_DATA_DIRECTIVE499); - pushFollow(FOLLOW_parsed_integer_literal_in_insn_array_data_directive5531); - parsed_integer_literal472=parsed_integer_literal(); + pushFollow(FOLLOW_parsed_integer_literal_in_insn_array_data_directive5801); + parsed_integer_literal500=parsed_integer_literal(); state._fsp--; - stream_parsed_integer_literal.add(parsed_integer_literal472.getTree()); + stream_parsed_integer_literal.add(parsed_integer_literal500.getTree()); - int elementWidth = (parsed_integer_literal472!=null?((smaliParser.parsed_integer_literal_return)parsed_integer_literal472).value:0); + int elementWidth = (parsed_integer_literal500!=null?((smaliParser.parsed_integer_literal_return)parsed_integer_literal500).value:0); if (elementWidth != 4 && elementWidth != 8 && elementWidth != 1 && elementWidth != 2) { throw new SemanticException(input, (retval.start), "Invalid element width: %d. Must be 1, 2, 4 or 8", elementWidth); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1088:5: ( fixed_literal )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1124:5: ( fixed_literal )* loop50: while (true) { int alt50=2; @@ -13931,13 +14579,13 @@ public class smaliParser extends Parser { switch (alt50) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1088:5: fixed_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1124:5: fixed_literal { - pushFollow(FOLLOW_fixed_literal_in_insn_array_data_directive5543); - fixed_literal473=fixed_literal(); + pushFollow(FOLLOW_fixed_literal_in_insn_array_data_directive5813); + fixed_literal501=fixed_literal(); state._fsp--; - stream_fixed_literal.add(fixed_literal473.getTree()); + stream_fixed_literal.add(fixed_literal501.getTree()); } break; @@ -13946,8 +14594,8 @@ public class smaliParser extends Parser { } } - END_ARRAY_DATA_DIRECTIVE474=(Token)match(input,END_ARRAY_DATA_DIRECTIVE,FOLLOW_END_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5546); - stream_END_ARRAY_DATA_DIRECTIVE.add(END_ARRAY_DATA_DIRECTIVE474); + END_ARRAY_DATA_DIRECTIVE502=(Token)match(input,END_ARRAY_DATA_DIRECTIVE,FOLLOW_END_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5816); + stream_END_ARRAY_DATA_DIRECTIVE.add(END_ARRAY_DATA_DIRECTIVE502); // AST REWRITE // elements: fixed_literal, parsed_integer_literal @@ -13960,13 +14608,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1090:5: -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) + // 1126:5: -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1090:8: ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1126:8: ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_ARRAY_DATA, (retval.start), "I_STATEMENT_ARRAY_DATA"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1090:67: ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1126:67: ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ARRAY_ELEMENT_SIZE, "I_ARRAY_ELEMENT_SIZE"), root_2); @@ -13974,11 +14622,11 @@ public class smaliParser extends Parser { adaptor.addChild(root_1, root_2); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1091:8: ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1127:8: ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ARRAY_ELEMENTS, "I_ARRAY_ELEMENTS"), root_2); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1091:27: ( fixed_literal )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1127:27: ( fixed_literal )* while ( stream_fixed_literal.hasNext() ) { adaptor.addChild(root_2, stream_fixed_literal.nextTree()); } @@ -14024,38 +14672,38 @@ public class smaliParser extends Parser { // $ANTLR start "insn_packed_switch_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1093:1: insn_packed_switch_directive : PACKED_SWITCH_DIRECTIVE fixed_32bit_literal ( label_ref )* END_PACKED_SWITCH_DIRECTIVE -> ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1129:1: insn_packed_switch_directive : PACKED_SWITCH_DIRECTIVE fixed_32bit_literal ( label_ref )* END_PACKED_SWITCH_DIRECTIVE -> ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) ; public final smaliParser.insn_packed_switch_directive_return insn_packed_switch_directive() throws RecognitionException { smaliParser.insn_packed_switch_directive_return retval = new smaliParser.insn_packed_switch_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token PACKED_SWITCH_DIRECTIVE475=null; - Token END_PACKED_SWITCH_DIRECTIVE478=null; - ParserRuleReturnScope fixed_32bit_literal476 =null; - ParserRuleReturnScope label_ref477 =null; + Token PACKED_SWITCH_DIRECTIVE503=null; + Token END_PACKED_SWITCH_DIRECTIVE506=null; + ParserRuleReturnScope fixed_32bit_literal504 =null; + ParserRuleReturnScope label_ref505 =null; - CommonTree PACKED_SWITCH_DIRECTIVE475_tree=null; - CommonTree END_PACKED_SWITCH_DIRECTIVE478_tree=null; + CommonTree PACKED_SWITCH_DIRECTIVE503_tree=null; + CommonTree END_PACKED_SWITCH_DIRECTIVE506_tree=null; RewriteRuleTokenStream stream_PACKED_SWITCH_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token PACKED_SWITCH_DIRECTIVE"); RewriteRuleTokenStream stream_END_PACKED_SWITCH_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_PACKED_SWITCH_DIRECTIVE"); RewriteRuleSubtreeStream stream_fixed_32bit_literal=new RewriteRuleSubtreeStream(adaptor,"rule fixed_32bit_literal"); RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1094:5: ( PACKED_SWITCH_DIRECTIVE fixed_32bit_literal ( label_ref )* END_PACKED_SWITCH_DIRECTIVE -> ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1094:9: PACKED_SWITCH_DIRECTIVE fixed_32bit_literal ( label_ref )* END_PACKED_SWITCH_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1130:5: ( PACKED_SWITCH_DIRECTIVE fixed_32bit_literal ( label_ref )* END_PACKED_SWITCH_DIRECTIVE -> ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1130:9: PACKED_SWITCH_DIRECTIVE fixed_32bit_literal ( label_ref )* END_PACKED_SWITCH_DIRECTIVE { - PACKED_SWITCH_DIRECTIVE475=(Token)match(input,PACKED_SWITCH_DIRECTIVE,FOLLOW_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5592); - stream_PACKED_SWITCH_DIRECTIVE.add(PACKED_SWITCH_DIRECTIVE475); + PACKED_SWITCH_DIRECTIVE503=(Token)match(input,PACKED_SWITCH_DIRECTIVE,FOLLOW_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5862); + stream_PACKED_SWITCH_DIRECTIVE.add(PACKED_SWITCH_DIRECTIVE503); - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive5598); - fixed_32bit_literal476=fixed_32bit_literal(); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive5868); + fixed_32bit_literal504=fixed_32bit_literal(); state._fsp--; - stream_fixed_32bit_literal.add(fixed_32bit_literal476.getTree()); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1096:5: ( label_ref )* + stream_fixed_32bit_literal.add(fixed_32bit_literal504.getTree()); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1132:5: ( label_ref )* loop51: while (true) { int alt51=2; @@ -14066,13 +14714,13 @@ public class smaliParser extends Parser { switch (alt51) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1096:5: label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1132:5: label_ref { - pushFollow(FOLLOW_label_ref_in_insn_packed_switch_directive5604); - label_ref477=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_packed_switch_directive5874); + label_ref505=label_ref(); state._fsp--; - stream_label_ref.add(label_ref477.getTree()); + stream_label_ref.add(label_ref505.getTree()); } break; @@ -14081,11 +14729,11 @@ public class smaliParser extends Parser { } } - END_PACKED_SWITCH_DIRECTIVE478=(Token)match(input,END_PACKED_SWITCH_DIRECTIVE,FOLLOW_END_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5611); - stream_END_PACKED_SWITCH_DIRECTIVE.add(END_PACKED_SWITCH_DIRECTIVE478); + END_PACKED_SWITCH_DIRECTIVE506=(Token)match(input,END_PACKED_SWITCH_DIRECTIVE,FOLLOW_END_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5881); + stream_END_PACKED_SWITCH_DIRECTIVE.add(END_PACKED_SWITCH_DIRECTIVE506); // AST REWRITE - // elements: fixed_32bit_literal, label_ref + // elements: label_ref, fixed_32bit_literal // token labels: // rule labels: retval // token list labels: @@ -14095,13 +14743,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1098:5: -> ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) + // 1134:5: -> ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1098:8: ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1134:8: ^( I_STATEMENT_PACKED_SWITCH[$start, \"I_STATEMENT_PACKED_SWITCH\"] ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_PACKED_SWITCH, (retval.start), "I_STATEMENT_PACKED_SWITCH"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1099:10: ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1135:10: ^( I_PACKED_SWITCH_START_KEY[$start, \"I_PACKED_SWITCH_START_KEY\"] fixed_32bit_literal ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PACKED_SWITCH_START_KEY, (retval.start), "I_PACKED_SWITCH_START_KEY"), root_2); @@ -14109,11 +14757,11 @@ public class smaliParser extends Parser { adaptor.addChild(root_1, root_2); } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1100:10: ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1136:10: ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PACKED_SWITCH_ELEMENTS, (retval.start), "I_PACKED_SWITCH_ELEMENTS"), root_2); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1101:11: ( label_ref )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1137:11: ( label_ref )* while ( stream_label_ref.hasNext() ) { adaptor.addChild(root_2, stream_label_ref.nextTree()); } @@ -14159,22 +14807,22 @@ public class smaliParser extends Parser { // $ANTLR start "insn_sparse_switch_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1104:1: insn_sparse_switch_directive : SPARSE_SWITCH_DIRECTIVE ( fixed_32bit_literal ARROW label_ref )* END_SPARSE_SWITCH_DIRECTIVE -> ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1140:1: insn_sparse_switch_directive : SPARSE_SWITCH_DIRECTIVE ( fixed_32bit_literal ARROW label_ref )* END_SPARSE_SWITCH_DIRECTIVE -> ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) ; public final smaliParser.insn_sparse_switch_directive_return insn_sparse_switch_directive() throws RecognitionException { smaliParser.insn_sparse_switch_directive_return retval = new smaliParser.insn_sparse_switch_directive_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token SPARSE_SWITCH_DIRECTIVE479=null; - Token ARROW481=null; - Token END_SPARSE_SWITCH_DIRECTIVE483=null; - ParserRuleReturnScope fixed_32bit_literal480 =null; - ParserRuleReturnScope label_ref482 =null; + Token SPARSE_SWITCH_DIRECTIVE507=null; + Token ARROW509=null; + Token END_SPARSE_SWITCH_DIRECTIVE511=null; + ParserRuleReturnScope fixed_32bit_literal508 =null; + ParserRuleReturnScope label_ref510 =null; - CommonTree SPARSE_SWITCH_DIRECTIVE479_tree=null; - CommonTree ARROW481_tree=null; - CommonTree END_SPARSE_SWITCH_DIRECTIVE483_tree=null; + CommonTree SPARSE_SWITCH_DIRECTIVE507_tree=null; + CommonTree ARROW509_tree=null; + CommonTree END_SPARSE_SWITCH_DIRECTIVE511_tree=null; RewriteRuleTokenStream stream_SPARSE_SWITCH_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SPARSE_SWITCH_DIRECTIVE"); RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); RewriteRuleTokenStream stream_END_SPARSE_SWITCH_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_SPARSE_SWITCH_DIRECTIVE"); @@ -14182,13 +14830,13 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref"); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1105:3: ( SPARSE_SWITCH_DIRECTIVE ( fixed_32bit_literal ARROW label_ref )* END_SPARSE_SWITCH_DIRECTIVE -> ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1105:7: SPARSE_SWITCH_DIRECTIVE ( fixed_32bit_literal ARROW label_ref )* END_SPARSE_SWITCH_DIRECTIVE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1141:3: ( SPARSE_SWITCH_DIRECTIVE ( fixed_32bit_literal ARROW label_ref )* END_SPARSE_SWITCH_DIRECTIVE -> ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1141:7: SPARSE_SWITCH_DIRECTIVE ( fixed_32bit_literal ARROW label_ref )* END_SPARSE_SWITCH_DIRECTIVE { - SPARSE_SWITCH_DIRECTIVE479=(Token)match(input,SPARSE_SWITCH_DIRECTIVE,FOLLOW_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5685); - stream_SPARSE_SWITCH_DIRECTIVE.add(SPARSE_SWITCH_DIRECTIVE479); + SPARSE_SWITCH_DIRECTIVE507=(Token)match(input,SPARSE_SWITCH_DIRECTIVE,FOLLOW_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5955); + stream_SPARSE_SWITCH_DIRECTIVE.add(SPARSE_SWITCH_DIRECTIVE507); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1106:5: ( fixed_32bit_literal ARROW label_ref )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1142:5: ( fixed_32bit_literal ARROW label_ref )* loop52: while (true) { int alt52=2; @@ -14199,21 +14847,21 @@ public class smaliParser extends Parser { switch (alt52) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1106:6: fixed_32bit_literal ARROW label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1142:6: fixed_32bit_literal ARROW label_ref { - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_sparse_switch_directive5692); - fixed_32bit_literal480=fixed_32bit_literal(); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_sparse_switch_directive5962); + fixed_32bit_literal508=fixed_32bit_literal(); state._fsp--; - stream_fixed_32bit_literal.add(fixed_32bit_literal480.getTree()); - ARROW481=(Token)match(input,ARROW,FOLLOW_ARROW_in_insn_sparse_switch_directive5694); - stream_ARROW.add(ARROW481); + stream_fixed_32bit_literal.add(fixed_32bit_literal508.getTree()); + ARROW509=(Token)match(input,ARROW,FOLLOW_ARROW_in_insn_sparse_switch_directive5964); + stream_ARROW.add(ARROW509); - pushFollow(FOLLOW_label_ref_in_insn_sparse_switch_directive5696); - label_ref482=label_ref(); + pushFollow(FOLLOW_label_ref_in_insn_sparse_switch_directive5966); + label_ref510=label_ref(); state._fsp--; - stream_label_ref.add(label_ref482.getTree()); + stream_label_ref.add(label_ref510.getTree()); } break; @@ -14222,11 +14870,11 @@ public class smaliParser extends Parser { } } - END_SPARSE_SWITCH_DIRECTIVE483=(Token)match(input,END_SPARSE_SWITCH_DIRECTIVE,FOLLOW_END_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5704); - stream_END_SPARSE_SWITCH_DIRECTIVE.add(END_SPARSE_SWITCH_DIRECTIVE483); + END_SPARSE_SWITCH_DIRECTIVE511=(Token)match(input,END_SPARSE_SWITCH_DIRECTIVE,FOLLOW_END_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5974); + stream_END_SPARSE_SWITCH_DIRECTIVE.add(END_SPARSE_SWITCH_DIRECTIVE511); // AST REWRITE - // elements: label_ref, fixed_32bit_literal + // elements: fixed_32bit_literal, label_ref // token labels: // rule labels: retval // token list labels: @@ -14236,23 +14884,23 @@ public class smaliParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 1108:5: -> ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) + // 1144:5: -> ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1108:8: ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1144:8: ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_SPARSE_SWITCH, (retval.start), "I_STATEMENT_SPARSE_SWITCH"), root_1); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1109:8: ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1145:8: ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SPARSE_SWITCH_ELEMENTS, (retval.start), "I_SPARSE_SWITCH_ELEMENTS"), root_2); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1109:71: ( fixed_32bit_literal label_ref )* - while ( stream_label_ref.hasNext()||stream_fixed_32bit_literal.hasNext() ) { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliParser.g:1145:71: ( fixed_32bit_literal label_ref )* + while ( stream_fixed_32bit_literal.hasNext()||stream_label_ref.hasNext() ) { adaptor.addChild(root_2, stream_fixed_32bit_literal.nextTree()); adaptor.addChild(root_2, stream_label_ref.nextTree()); } - stream_label_ref.reset(); stream_fixed_32bit_literal.reset(); + stream_label_ref.reset(); adaptor.addChild(root_1, root_2); } @@ -14292,68 +14940,72 @@ public class smaliParser extends Parser { protected DFA36 dfa36 = new DFA36(this); protected DFA38 dfa38 = new DFA38(this); static final String DFA28_eotS = - "\55\uffff"; + "\61\uffff"; static final String DFA28_eofS = - "\55\uffff"; + "\61\uffff"; static final String DFA28_minS = - "\1\4\12\23\1\u00b8\35\23\2\uffff\1\u00b4\1\23"; + "\1\4\12\23\1\u00c0\41\23\2\uffff\1\u00bc\1\23"; static final String DFA28_maxS = - "\1\u00c5\12\u00b0\1\u00b8\35\u00b0\2\uffff\1\u00b8\1\u00b0"; + "\1\u00cd\12\u00b8\1\u00c0\41\u00b8\2\uffff\1\u00c0\1\u00b8"; static final String DFA28_acceptS = - "\51\uffff\1\1\1\2\2\uffff"; + "\55\uffff\1\1\1\2\2\uffff"; static final String DFA28_specialS = - "\55\uffff}>"; + "\61\uffff}>"; static final String[] DFA28_transitionS = { "\1\2\1\uffff\1\16\3\uffff\1\10\14\uffff\1\7\17\uffff\1\6\2\uffff\1\17"+ - "\1\20\1\21\1\uffff\1\22\1\uffff\1\23\2\uffff\1\24\1\25\1\26\1\27\3\uffff"+ - "\1\30\1\uffff\1\31\1\32\1\33\1\34\1\uffff\1\35\1\36\1\uffff\1\37\3\uffff"+ - "\1\40\1\41\1\uffff\1\42\1\43\1\44\1\45\1\46\5\uffff\1\47\125\uffff\1"+ - "\50\1\uffff\1\5\1\11\6\uffff\1\13\1\uffff\1\4\1\14\1\uffff\1\12\3\uffff"+ - "\1\1\5\uffff\1\3\1\15", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\53", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", - "\1\51\u009c\uffff\1\52", + "\1\20\1\21\1\uffff\1\22\1\uffff\1\23\2\uffff\1\24\1\25\1\30\1\31\1\26"+ + "\1\27\3\uffff\1\32\1\uffff\1\33\1\34\1\36\1\35\1\37\1\uffff\1\40\1\41"+ + "\1\uffff\1\42\1\43\3\uffff\1\44\1\45\1\uffff\1\46\1\47\1\50\1\51\1\52"+ + "\5\uffff\1\53\131\uffff\1\54\1\uffff\1\5\1\11\6\uffff\1\13\1\uffff\1"+ + "\4\1\14\1\uffff\1\12\3\uffff\1\1\5\uffff\1\3\1\15", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\57", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", + "\1\55\u00a4\uffff\1\56", "", "", - "\1\54\3\uffff\1\53", - "\1\51\u009c\uffff\1\52" + "\1\60\3\uffff\1\57", + "\1\55\u00a4\uffff\1\56" }; static final short[] DFA28_eot = DFA.unpackEncodedString(DFA28_eotS); @@ -14387,85 +15039,90 @@ public class smaliParser extends Parser { } @Override public String getDescription() { - return "690:7: ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) )"; + return "702:7: ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD ( reference_type_descriptor )? member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype ) )"; } } static final String DFA36_eotS = - "\61\uffff"; + "\65\uffff"; static final String DFA36_eofS = - "\61\uffff"; + "\65\uffff"; static final String DFA36_minS = - "\1\4\1\5\1\11\12\23\1\u00b8\35\23\1\uffff\1\4\2\uffff\1\u00b4\1\23"; + "\1\4\1\5\1\11\12\23\1\u00c0\41\23\1\uffff\1\4\2\uffff\1\u00bc\1\23"; static final String DFA36_maxS = - "\1\u00c5\1\u00c0\1\11\12\u00b0\1\u00b8\35\u00b0\1\uffff\1\u00c5\2\uffff"+ - "\1\u00b8\1\u00b0"; + "\1\u00cd\1\u00c8\1\11\12\u00b8\1\u00c0\41\u00b8\1\uffff\1\u00cd\2\uffff"+ + "\1\u00c0\1\u00b8"; static final String DFA36_acceptS = - "\53\uffff\1\1\1\uffff\1\2\1\3\2\uffff"; + "\57\uffff\1\1\1\uffff\1\2\1\3\2\uffff"; static final String DFA36_specialS = - "\61\uffff}>"; + "\65\uffff}>"; static final String[] DFA36_transitionS = { "\1\4\1\uffff\1\20\1\uffff\1\2\1\uffff\1\12\4\uffff\1\1\7\uffff\1\11\17"+ "\uffff\1\10\2\uffff\1\21\1\22\1\23\1\uffff\1\24\1\uffff\1\25\2\uffff"+ - "\1\26\1\27\1\30\1\31\3\uffff\1\32\1\uffff\1\33\1\34\1\35\1\36\1\uffff"+ - "\1\37\1\40\1\uffff\1\41\3\uffff\1\42\1\43\1\uffff\1\44\1\45\1\46\1\47"+ - "\1\50\5\uffff\1\51\125\uffff\1\52\1\uffff\1\7\1\13\6\uffff\1\15\1\uffff"+ - "\1\6\1\16\1\uffff\1\14\3\uffff\1\3\5\uffff\1\5\1\17", - "\1\53\1\uffff\1\53\1\uffff\1\54\2\uffff\2\53\5\uffff\1\53\7\uffff\2"+ - "\53\5\uffff\1\53\7\uffff\54\53\121\uffff\3\53\7\uffff\2\53\6\uffff\1"+ - "\53\1\uffff\2\53\2\uffff\2\53", - "\1\54", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\57", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", - "\1\55\u009c\uffff\1\56", + "\1\26\1\27\1\32\1\33\1\30\1\31\3\uffff\1\34\1\uffff\1\35\1\36\1\40\1"+ + "\37\1\41\1\uffff\1\42\1\43\1\uffff\1\44\1\45\3\uffff\1\46\1\47\1\uffff"+ + "\1\50\1\51\1\52\1\53\1\54\5\uffff\1\55\131\uffff\1\56\1\uffff\1\7\1\13"+ + "\6\uffff\1\15\1\uffff\1\6\1\16\1\uffff\1\14\3\uffff\1\3\5\uffff\1\5\1"+ + "\17", + "\1\57\1\uffff\1\57\1\uffff\1\60\2\uffff\2\57\5\uffff\1\57\7\uffff\2"+ + "\57\5\uffff\1\57\7\uffff\60\57\125\uffff\3\57\7\uffff\2\57\6\uffff\1"+ + "\57\1\uffff\2\57\2\uffff\2\57", + "\1\60", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\63", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", + "\1\61\u00a4\uffff\1\62", "", "\1\4\1\uffff\1\20\3\uffff\1\12\14\uffff\1\11\17\uffff\1\10\2\uffff\1"+ - "\21\1\22\1\23\1\uffff\1\24\1\uffff\1\25\2\uffff\1\26\1\27\1\30\1\31\3"+ - "\uffff\1\32\1\uffff\1\33\1\34\1\35\1\36\1\uffff\1\37\1\40\1\uffff\1\41"+ - "\3\uffff\1\42\1\43\1\uffff\1\44\1\45\1\46\1\47\1\50\5\uffff\1\51\125"+ - "\uffff\1\52\1\uffff\1\7\1\13\6\uffff\1\15\1\uffff\1\6\1\16\1\uffff\1"+ - "\14\3\uffff\1\3\5\uffff\1\5\1\17", + "\21\1\22\1\23\1\uffff\1\24\1\uffff\1\25\2\uffff\1\26\1\27\1\32\1\33\1"+ + "\30\1\31\3\uffff\1\34\1\uffff\1\35\1\36\1\40\1\37\1\41\1\uffff\1\42\1"+ + "\43\1\uffff\1\44\1\45\3\uffff\1\46\1\47\1\uffff\1\50\1\51\1\52\1\53\1"+ + "\54\5\uffff\1\55\131\uffff\1\56\1\uffff\1\7\1\13\6\uffff\1\15\1\uffff"+ + "\1\6\1\16\1\uffff\1\14\3\uffff\1\3\5\uffff\1\5\1\17", "", "", - "\1\60\3\uffff\1\57", - "\1\55\u009c\uffff\1\56" + "\1\64\3\uffff\1\63", + "\1\61\u00a4\uffff\1\62" }; static final short[] DFA36_eot = DFA.unpackEncodedString(DFA36_eotS); @@ -14499,26 +15156,30 @@ public class smaliParser extends Parser { } @Override public String getDescription() { - return "718:1: verification_error_reference : ( CLASS_DESCRIPTOR | field_reference | method_reference );"; + return "730:1: verification_error_reference : ( CLASS_DESCRIPTOR | field_reference | method_reference );"; } } static final String DFA38_eotS = - "\101\uffff"; + "\105\uffff"; static final String DFA38_eofS = - "\101\uffff"; + "\105\uffff"; static final String DFA38_minS = - "\1\5\76\uffff\1\0\1\uffff"; + "\1\5\102\uffff\1\0\1\uffff"; static final String DFA38_maxS = - "\1\u00c0\76\uffff\1\0\1\uffff"; + "\1\u00c8\102\uffff\1\0\1\uffff"; static final String DFA38_acceptS = - "\1\uffff\1\2\76\uffff\1\1"; + "\1\uffff\1\2\102\uffff\1\1"; static final String DFA38_specialS = - "\77\uffff\1\0\1\uffff}>"; + "\103\uffff\1\0\1\uffff}>"; static final String[] DFA38_transitionS = { - "\1\77\1\uffff\1\1\4\uffff\2\1\5\uffff\1\1\7\uffff\2\1\1\uffff\1\1\3\uffff"+ - "\1\1\7\uffff\54\1\121\uffff\3\1\7\uffff\2\1\6\uffff\1\1\1\uffff\2\1\2"+ - "\uffff\2\1", + "\1\103\1\uffff\1\1\4\uffff\2\1\5\uffff\1\1\7\uffff\2\1\1\uffff\1\1\3"+ + "\uffff\1\1\7\uffff\60\1\125\uffff\3\1\7\uffff\2\1\6\uffff\1\1\1\uffff"+ + "\2\1\2\uffff\2\1", + "", + "", + "", + "", "", "", "", @@ -14616,7 +15277,7 @@ public class smaliParser extends Parser { } @Override public String getDescription() { - return "()* loopback of 736:5: ({...}? annotation )*"; + return "()* loopback of 748:5: ({...}? annotation )*"; } @Override public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { @@ -14624,15 +15285,15 @@ public class smaliParser extends Parser { int _s = s; switch ( s ) { case 0 : - int LA38_63 = input.LA(1); + int LA38_67 = input.LA(1); - int index38_63 = input.index(); + int index38_67 = input.index(); input.rewind(); s = -1; - if ( ((input.LA(1) == ANNOTATION_DIRECTIVE)) ) {s = 64;} + if ( ((input.LA(1) == ANNOTATION_DIRECTIVE)) ) {s = 68;} else if ( (true) ) {s = 1;} - input.seek(index38_63); + input.seek(index38_67); if ( s>=0 ) return s; break; } @@ -14643,498 +15304,526 @@ public class smaliParser extends Parser { } } - public static final BitSet FOLLOW_class_spec_in_smali_file1070 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x8000100000000000L,0x0000000000000008L}); - public static final BitSet FOLLOW_super_spec_in_smali_file1081 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x8000100000000000L,0x0000000000000008L}); - public static final BitSet FOLLOW_implements_spec_in_smali_file1089 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x8000100000000000L,0x0000000000000008L}); - public static final BitSet FOLLOW_source_spec_in_smali_file1098 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x8000100000000000L,0x0000000000000008L}); - public static final BitSet FOLLOW_method_in_smali_file1106 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x8000100000000000L,0x0000000000000008L}); - public static final BitSet FOLLOW_field_in_smali_file1112 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x8000100000000000L,0x0000000000000008L}); - public static final BitSet FOLLOW_annotation_in_smali_file1118 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x8000100000000000L,0x0000000000000008L}); - public static final BitSet FOLLOW_EOF_in_smali_file1129 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CLASS_DIRECTIVE_in_class_spec1216 = new BitSet(new long[]{0x0000000000008010L}); - public static final BitSet FOLLOW_access_list_in_class_spec1218 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec1220 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SUPER_DIRECTIVE_in_super_spec1238 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_super_spec1240 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1259 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1261 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SOURCE_DIRECTIVE_in_source_spec1280 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_source_spec1282 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ACCESS_SPEC_in_access_list1301 = new BitSet(new long[]{0x0000000000000012L}); - public static final BitSet FOLLOW_FIELD_DIRECTIVE_in_field1332 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_access_list_in_field1334 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_member_name_in_field1336 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_COLON_in_field1338 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field1340 = new BitSet(new long[]{0x0000000804000022L}); - public static final BitSet FOLLOW_EQUAL_in_field1343 = new BitSet(new long[]{0xF4795CC200C0CD50L,0x000000000020FB16L,0x65A0EC0000000000L,0x0000000000000036L}); - public static final BitSet FOLLOW_literal_in_field1345 = new BitSet(new long[]{0x0000000004000022L}); - public static final BitSet FOLLOW_annotation_in_field1358 = new BitSet(new long[]{0x0000000004000022L}); - public static final BitSet FOLLOW_END_FIELD_DIRECTIVE_in_field1372 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_METHOD_DIRECTIVE_in_method1483 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_access_list_in_method1485 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_member_name_in_method1487 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0001000000000000L}); - public static final BitSet FOLLOW_method_prototype_in_method1489 = new BitSet(new long[]{0xFFFFFC04180830A0L,0x00000000003FFFFFL,0x9A06038000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_statements_and_directives_in_method1491 = new BitSet(new long[]{0x0000000010000000L}); - public static final BitSet FOLLOW_END_METHOD_DIRECTIVE_in_method1497 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ordered_method_item_in_statements_and_directives1542 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x00000000003FFFFFL,0x9A06038000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_registers_directive_in_statements_and_directives1550 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x00000000003FFFFFL,0x9A06038000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_catch_directive_in_statements_and_directives1558 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x00000000003FFFFFL,0x9A06038000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_catchall_directive_in_statements_and_directives1566 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x00000000003FFFFFL,0x9A06038000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_parameter_directive_in_statements_and_directives1574 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x00000000003FFFFFL,0x9A06038000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_annotation_in_statements_and_directives1582 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x00000000003FFFFFL,0x9A06038000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_label_in_ordered_method_item1667 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_instruction_in_ordered_method_item1673 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_debug_directive_in_ordered_method_item1679 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1699 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_integral_literal_in_registers_directive1703 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1723 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_integral_literal_in_registers_directive1727 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PARAM_LIST_OR_ID_START_in_param_list_or_id1759 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_param_list_or_id1761 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0110000000000000L}); - public static final BitSet FOLLOW_PARAM_LIST_OR_ID_END_in_param_list_or_id1764 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SIMPLE_NAME_in_simple_name1776 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ACCESS_SPEC_in_simple_name1782 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1793 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1804 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1815 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1826 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1837 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BOOL_LITERAL_in_simple_name1848 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NULL_LITERAL_in_simple_name1859 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_REGISTER_in_simple_name1870 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_param_list_or_id_in_simple_name1881 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_simple_name1891 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_VOID_TYPE_in_simple_name1902 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1913 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1924 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1935 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name1946 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name1957 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name1968 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name1979 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name1990 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2001 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2012 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2023 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2034 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2045 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2056 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2067 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2078 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2089 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2100 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2111 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2122 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2133 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2144 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2155 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2166 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2177 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2188 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_simple_name_in_member_name2203 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_MEMBER_NAME_in_member_name2209 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_OPEN_PAREN_in_method_prototype2224 = new BitSet(new long[]{0x0000000000048100L,0x0000000000000000L,0x0160000000000000L}); - public static final BitSet FOLLOW_param_list_in_method_prototype2226 = new BitSet(new long[]{0x0000000000040000L}); - public static final BitSet FOLLOW_CLOSE_PAREN_in_method_prototype2228 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L,0x0000000000000020L}); - public static final BitSet FOLLOW_type_descriptor_in_method_prototype2230 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PARAM_LIST_START_in_param_list2260 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0108000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_param_list2262 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0108000000000000L}); - public static final BitSet FOLLOW_PARAM_LIST_END_in_param_list2265 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PARAM_LIST_OR_ID_START_in_param_list2276 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0110000000000000L}); - public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_param_list2278 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0110000000000000L}); - public static final BitSet FOLLOW_PARAM_LIST_OR_ID_END_in_param_list2281 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_param_list2292 = new BitSet(new long[]{0x0000000000008102L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2369 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2380 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FLOAT_LITERAL_OR_ID_in_float_literal2395 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FLOAT_LITERAL_in_float_literal2406 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DOUBLE_LITERAL_OR_ID_in_double_literal2416 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DOUBLE_LITERAL_in_double_literal2427 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LONG_LITERAL_in_literal2437 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_integer_literal_in_literal2443 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SHORT_LITERAL_in_literal2449 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BYTE_LITERAL_in_literal2455 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_float_literal_in_literal2461 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_double_literal_in_literal2467 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CHAR_LITERAL_in_literal2473 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_literal2479 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BOOL_LITERAL_in_literal2485 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_NULL_LITERAL_in_literal2491 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_array_literal_in_literal2497 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_subannotation_in_literal2503 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_type_field_method_literal_in_literal2509 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_enum_literal_in_literal2515 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_integer_literal_in_parsed_integer_literal2528 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LONG_LITERAL_in_integral_literal2540 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_integer_literal_in_integral_literal2546 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SHORT_LITERAL_in_integral_literal2552 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CHAR_LITERAL_in_integral_literal2558 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BYTE_LITERAL_in_integral_literal2564 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LONG_LITERAL_in_fixed_32bit_literal2574 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_integer_literal_in_fixed_32bit_literal2580 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SHORT_LITERAL_in_fixed_32bit_literal2586 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BYTE_LITERAL_in_fixed_32bit_literal2592 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_float_literal_in_fixed_32bit_literal2598 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CHAR_LITERAL_in_fixed_32bit_literal2604 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BOOL_LITERAL_in_fixed_32bit_literal2610 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_integer_literal_in_fixed_literal2620 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LONG_LITERAL_in_fixed_literal2626 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SHORT_LITERAL_in_fixed_literal2632 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BYTE_LITERAL_in_fixed_literal2638 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_float_literal_in_fixed_literal2644 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_double_literal_in_fixed_literal2650 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CHAR_LITERAL_in_fixed_literal2656 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BOOL_LITERAL_in_fixed_literal2662 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_array_literal2672 = new BitSet(new long[]{0xF4795CC200C2CD50L,0x000000000020FB16L,0x65A0EC0000000000L,0x0000000000000036L}); - public static final BitSet FOLLOW_literal_in_array_literal2675 = new BitSet(new long[]{0x0000000000120000L}); - public static final BitSet FOLLOW_COMMA_in_array_literal2678 = new BitSet(new long[]{0xF4795CC200C0CD50L,0x000000000020FB16L,0x65A0EC0000000000L,0x0000000000000036L}); - public static final BitSet FOLLOW_literal_in_array_literal2680 = new BitSet(new long[]{0x0000000000120000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_array_literal2688 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_simple_name_in_annotation_element2712 = new BitSet(new long[]{0x0000000800000000L}); - public static final BitSet FOLLOW_EQUAL_in_annotation_element2714 = new BitSet(new long[]{0xF4795CC200C0CD50L,0x000000000020FB16L,0x65A0EC0000000000L,0x0000000000000036L}); - public static final BitSet FOLLOW_literal_in_annotation_element2716 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2741 = new BitSet(new long[]{0x0000000000000040L}); - public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_annotation2743 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_annotation2745 = new BitSet(new long[]{0xF4795C8001800450L,0x000000000020FB16L,0x45A0600000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_annotation_element_in_annotation2751 = new BitSet(new long[]{0xF4795C8001800450L,0x000000000020FB16L,0x45A0600000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2754 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2787 = new BitSet(new long[]{0x0000000000008000L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_subannotation2789 = new BitSet(new long[]{0xF4795C8100800450L,0x000000000020FB16L,0x45A0600000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_annotation_element_in_subannotation2791 = new BitSet(new long[]{0xF4795C8100800450L,0x000000000020FB16L,0x45A0600000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2794 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ENUM_DIRECTIVE_in_enum_literal2820 = new BitSet(new long[]{0x0000000000008100L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_enum_literal2822 = new BitSet(new long[]{0x0000000000000200L}); - public static final BitSet FOLLOW_ARROW_in_enum_literal2824 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0600000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_simple_name_in_enum_literal2826 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_COLON_in_enum_literal2828 = new BitSet(new long[]{0x0000000000008100L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_enum_literal2830 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_type_field_method_literal2854 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_type_field_method_literal2863 = new BitSet(new long[]{0x0000000000000200L}); - public static final BitSet FOLLOW_ARROW_in_type_field_method_literal2865 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_member_name_in_type_field_method_literal2877 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_COLON_in_type_field_method_literal2879 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2881 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_member_name_in_type_field_method_literal2904 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0001000000000000L}); - public static final BitSet FOLLOW_method_prototype_in_type_field_method_literal2906 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_type_field_method_literal2939 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_VOID_TYPE_in_type_field_method_literal2945 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_method_reference2956 = new BitSet(new long[]{0x0000000000000200L}); - public static final BitSet FOLLOW_ARROW_in_method_reference2958 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_member_name_in_method_reference2962 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0001000000000000L}); - public static final BitSet FOLLOW_method_prototype_in_method_reference2964 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_field_reference2986 = new BitSet(new long[]{0x0000000000000200L}); - public static final BitSet FOLLOW_ARROW_in_field_reference2988 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_member_name_in_field_reference2992 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_COLON_in_field_reference2994 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field_reference2996 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_COLON_in_label3017 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0600000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_simple_name_in_label3019 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_COLON_in_label_ref3038 = new BitSet(new long[]{0xF4795C8000800450L,0x000000000020FB16L,0x45A0600000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_simple_name_in_label_ref3040 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_REGISTER_in_register_list3054 = new BitSet(new long[]{0x0000000000100002L}); - public static final BitSet FOLLOW_COMMA_in_register_list3057 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_register_list3059 = new BitSet(new long[]{0x0000000000100002L}); - public static final BitSet FOLLOW_REGISTER_in_register_range3094 = new BitSet(new long[]{0x0000000000200002L}); - public static final BitSet FOLLOW_DOTDOT_in_register_range3097 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_register_range3101 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference3130 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_field_reference_in_verification_error_reference3134 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_method_reference_in_verification_error_reference3138 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CATCH_DIRECTIVE_in_catch_directive3148 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_catch_directive3150 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_catch_directive3152 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_catch_directive3156 = new BitSet(new long[]{0x0000000000200000L}); - public static final BitSet FOLLOW_DOTDOT_in_catch_directive3158 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_catch_directive3162 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_catch_directive3164 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_catch_directive3168 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CATCHALL_DIRECTIVE_in_catchall_directive3200 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_catchall_directive3202 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_catchall_directive3206 = new BitSet(new long[]{0x0000000000200000L}); - public static final BitSet FOLLOW_DOTDOT_in_catchall_directive3208 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_catchall_directive3212 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_catchall_directive3214 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_catchall_directive3218 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PARAMETER_DIRECTIVE_in_parameter_directive3257 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_parameter_directive3259 = new BitSet(new long[]{0x0000000040100022L}); - public static final BitSet FOLLOW_COMMA_in_parameter_directive3262 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_parameter_directive3264 = new BitSet(new long[]{0x0000000040000022L}); - public static final BitSet FOLLOW_annotation_in_parameter_directive3275 = new BitSet(new long[]{0x0000000040000022L}); - public static final BitSet FOLLOW_END_PARAMETER_DIRECTIVE_in_parameter_directive3288 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_line_directive_in_debug_directive3361 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_local_directive_in_debug_directive3367 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_end_local_directive_in_debug_directive3373 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_restart_local_directive_in_debug_directive3379 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_prologue_directive_in_debug_directive3385 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_epilogue_directive_in_debug_directive3391 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_source_directive_in_debug_directive3397 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LINE_DIRECTIVE_in_line_directive3407 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_integral_literal_in_line_directive3409 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LOCAL_DIRECTIVE_in_local_directive3432 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_local_directive3434 = new BitSet(new long[]{0x0000000000100002L}); - public static final BitSet FOLLOW_COMMA_in_local_directive3437 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000400000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_NULL_LITERAL_in_local_directive3440 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_local_directive3446 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_COLON_in_local_directive3449 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L,0x0000000000000020L}); - public static final BitSet FOLLOW_VOID_TYPE_in_local_directive3452 = new BitSet(new long[]{0x0000000000100002L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_local_directive3456 = new BitSet(new long[]{0x0000000000100002L}); - public static final BitSet FOLLOW_COMMA_in_local_directive3490 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_local_directive3494 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_END_LOCAL_DIRECTIVE_in_end_local_directive3536 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_end_local_directive3538 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_RESTART_LOCAL_DIRECTIVE_in_restart_local_directive3561 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_restart_local_directive3563 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PROLOGUE_DIRECTIVE_in_prologue_directive3586 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_EPILOGUE_DIRECTIVE_in_epilogue_directive3607 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SOURCE_DIRECTIVE_in_source_directive3628 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_source_directive3630 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_in_instruction_format12x3655 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_instruction_format12x3661 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_in_instruction_format22s3676 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_instruction_format22s3682 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_in_instruction_format31i3697 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_instruction_format31i3703 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format10t_in_instruction3720 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format10x_in_instruction3726 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format10x_odex_in_instruction3732 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format11n_in_instruction3738 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format11x_in_instruction3744 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format12x_in_instruction3750 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format20bc_in_instruction3756 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format20t_in_instruction3762 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21c_field_in_instruction3768 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21c_field_odex_in_instruction3774 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21c_string_in_instruction3780 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21c_type_in_instruction3786 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21ih_in_instruction3792 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21lh_in_instruction3798 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21s_in_instruction3804 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21t_in_instruction3810 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22b_in_instruction3816 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22c_field_in_instruction3822 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22c_field_odex_in_instruction3828 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22c_type_in_instruction3834 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22cs_field_in_instruction3840 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22s_in_instruction3846 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22t_in_instruction3852 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22x_in_instruction3858 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format23x_in_instruction3864 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format30t_in_instruction3870 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format31c_in_instruction3876 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format31i_in_instruction3882 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format31t_in_instruction3888 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format32x_in_instruction3894 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format35c_method_in_instruction3900 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format35c_type_in_instruction3906 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format35c_method_odex_in_instruction3912 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format35mi_method_in_instruction3918 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format35ms_method_in_instruction3924 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format3rc_method_in_instruction3930 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format3rc_method_odex_in_instruction3936 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format3rc_type_in_instruction3942 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format3rmi_method_in_instruction3948 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format3rms_method_in_instruction3954 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format51l_in_instruction3960 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_array_data_directive_in_instruction3966 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_packed_switch_directive_in_instruction3972 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_sparse_switch_directive_in_instruction3978 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t3998 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format10t4000 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x4030 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_insn_format10x_odex4058 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n4079 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format11n4081 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format11n4083 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_integral_literal_in_insn_format11n4085 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x4117 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format11x4119 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_instruction_format12x_in_insn_format12x4149 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format12x4151 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format12x4153 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format12x4155 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc4187 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000010L}); - public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_insn_format20bc4189 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format20bc4191 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_verification_error_reference_in_insn_format20bc4193 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t4230 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format20t4232 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_insn_format21c_field4262 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field4264 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21c_field4266 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_field_reference_in_insn_format21c_field4268 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_insn_format21c_field_odex4300 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field_odex4302 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21c_field_odex4304 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_field_reference_in_insn_format21c_field_odex4306 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string4344 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21c_string4346 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21c_string4348 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format21c_string4350 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type4382 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21c_type4384 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21c_type4386 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type4388 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih4420 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21ih4422 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21ih4424 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21ih4426 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh4458 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21lh4460 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21lh4462 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21lh4464 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s4496 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21s4498 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21s4500 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_integral_literal_in_insn_format21s4502 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t4534 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21t4536 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format21t4538 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format21t4540 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b4572 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22b4574 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22b4576 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22b4578 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22b4580 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_integral_literal_in_insn_format22b4582 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_insn_format22c_field4616 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field4618 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22c_field4620 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field4622 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22c_field4624 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_field_reference_in_insn_format22c_field4626 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_insn_format22c_field_odex4660 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field_odex4662 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22c_field_odex4664 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field_odex4666 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22c_field_odex4668 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_field_reference_in_insn_format22c_field_odex4670 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type4710 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type4712 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22c_type4714 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type4716 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22c_type4718 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type4720 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_insn_format22cs_field4754 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22cs_field4756 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22cs_field4758 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22cs_field4760 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22cs_field4762 = new BitSet(new long[]{0x0000002000000000L}); - public static final BitSet FOLLOW_FIELD_OFFSET_in_insn_format22cs_field4764 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_instruction_format22s_in_insn_format22s4785 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22s4787 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22s4789 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22s4791 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22s4793 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_integral_literal_in_insn_format22s4795 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t4829 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22t4831 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22t4833 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22t4835 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22t4837 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format22t4839 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x4873 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22x4875 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format22x4877 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22x4879 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x4911 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format23x4913 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format23x4915 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format23x4917 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format23x4919 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format23x4921 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t4955 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format30t4957 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c4987 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format31c4989 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format31c4991 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format31c4993 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_instruction_format31i_in_insn_format31i5024 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format31i5026 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format31i5028 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format31i5030 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t5062 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format31t5064 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format31t5066 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format31t5068 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x5100 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format32x5102 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format32x5104 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format32x5106 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method5138 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_method5140 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format35c_method5142 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_method5144 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format35c_method5146 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_method_reference_in_insn_format35c_method5148 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type5180 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_type5182 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format35c_type5184 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_type5186 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format35c_type5188 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type5190 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_insn_format35c_method_odex5222 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_method_odex5224 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format35c_method_odex5226 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_method_odex5228 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format35c_method_odex5230 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_method_reference_in_insn_format35c_method_odex5232 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_insn_format35mi_method5253 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35mi_method5255 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format35mi_method5257 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35mi_method5259 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format35mi_method5261 = new BitSet(new long[]{0x0000020000000000L}); - public static final BitSet FOLLOW_INLINE_INDEX_in_insn_format35mi_method5263 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_insn_format35ms_method5284 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35ms_method5286 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format35ms_method5288 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35ms_method5290 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format35ms_method5292 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); - public static final BitSet FOLLOW_VTABLE_INDEX_in_insn_format35ms_method5294 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method5315 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_method5317 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_range_in_insn_format3rc_method5319 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_method5321 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format3rc_method5323 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_method_reference_in_insn_format3rc_method5325 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_ODEX_in_insn_format3rc_method_odex5357 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_method_odex5359 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format3rc_method_odex5361 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_method_odex5363 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format3rc_method_odex5365 = new BitSet(new long[]{0xF4795C8000808550L,0x000000000020FB16L,0x45A0680000000000L,0x0000000000000030L}); - public static final BitSet FOLLOW_method_reference_in_insn_format3rc_method_odex5367 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type5388 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_type5390 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_range_in_insn_format3rc_type5392 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_type5394 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format3rc_type5396 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type5398 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rmi_METHOD_in_insn_format3rmi_method5430 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rmi_method5432 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_range_in_insn_format3rmi_method5434 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rmi_method5436 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format3rmi_method5438 = new BitSet(new long[]{0x0000020000000000L}); - public static final BitSet FOLLOW_INLINE_INDEX_in_insn_format3rmi_method5440 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rms_METHOD_in_insn_format3rms_method5461 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000800000000000L}); - public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rms_method5463 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_register_range_in_insn_format3rms_method5465 = new BitSet(new long[]{0x0000000000020000L}); - public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rms_method5467 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format3rms_method5469 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); - public static final BitSet FOLLOW_VTABLE_INDEX_in_insn_format3rms_method5471 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l5492 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format51l5494 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_COMMA_in_insn_format51l5496 = new BitSet(new long[]{0x000000C000C04C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_fixed_literal_in_insn_format51l5498 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5525 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080200000000000L}); - public static final BitSet FOLLOW_parsed_integer_literal_in_insn_array_data_directive5531 = new BitSet(new long[]{0x000000C002C04C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_fixed_literal_in_insn_array_data_directive5543 = new BitSet(new long[]{0x000000C002C04C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_END_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5546 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5592 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive5598 = new BitSet(new long[]{0x0000000020080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_packed_switch_directive5604 = new BitSet(new long[]{0x0000000020080000L}); - public static final BitSet FOLLOW_END_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5611 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5685 = new BitSet(new long[]{0x000000C080004C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_sparse_switch_directive5692 = new BitSet(new long[]{0x0000000000000200L}); - public static final BitSet FOLLOW_ARROW_in_insn_sparse_switch_directive5694 = new BitSet(new long[]{0x0000000000080000L}); - public static final BitSet FOLLOW_label_ref_in_insn_sparse_switch_directive5696 = new BitSet(new long[]{0x000000C080004C00L,0x0000000000000000L,0x2080240000000000L}); - public static final BitSet FOLLOW_END_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5704 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_class_spec_in_smali_file1110 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x0010000000000000L,0x0000000000000880L}); + public static final BitSet FOLLOW_super_spec_in_smali_file1121 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x0010000000000000L,0x0000000000000880L}); + public static final BitSet FOLLOW_implements_spec_in_smali_file1129 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x0010000000000000L,0x0000000000000880L}); + public static final BitSet FOLLOW_source_spec_in_smali_file1138 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x0010000000000000L,0x0000000000000880L}); + public static final BitSet FOLLOW_method_in_smali_file1146 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x0010000000000000L,0x0000000000000880L}); + public static final BitSet FOLLOW_field_in_smali_file1152 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x0010000000000000L,0x0000000000000880L}); + public static final BitSet FOLLOW_annotation_in_smali_file1158 = new BitSet(new long[]{0x0000011000010020L,0x0000000000000000L,0x0010000000000000L,0x0000000000000880L}); + public static final BitSet FOLLOW_EOF_in_smali_file1169 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CLASS_DIRECTIVE_in_class_spec1256 = new BitSet(new long[]{0x0000000000008010L}); + public static final BitSet FOLLOW_access_list_in_class_spec1258 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec1260 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SUPER_DIRECTIVE_in_super_spec1278 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_super_spec1280 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1299 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1301 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SOURCE_DIRECTIVE_in_source_spec1320 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_source_spec1322 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ACCESS_SPEC_in_access_list1341 = new BitSet(new long[]{0x0000000000000012L}); + public static final BitSet FOLLOW_FIELD_DIRECTIVE_in_field1372 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_access_list_in_field1374 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_member_name_in_field1376 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_COLON_in_field1378 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field1380 = new BitSet(new long[]{0x0000000804000022L}); + public static final BitSet FOLLOW_EQUAL_in_field1383 = new BitSet(new long[]{0xD1F95CC200C0CD50L,0x00000000020FB1B7L,0xA0EC000000000000L,0x0000000000003665L}); + public static final BitSet FOLLOW_literal_in_field1385 = new BitSet(new long[]{0x0000000004000022L}); + public static final BitSet FOLLOW_annotation_in_field1398 = new BitSet(new long[]{0x0000000004000022L}); + public static final BitSet FOLLOW_END_FIELD_DIRECTIVE_in_field1412 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_METHOD_DIRECTIVE_in_method1523 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_access_list_in_method1525 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_member_name_in_method1527 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0100000000000000L}); + public static final BitSet FOLLOW_method_prototype_in_method1529 = new BitSet(new long[]{0xFFFFFC04180830A0L,0x0000000003FFFFFFL,0x0603800000000000L,0x000000000000019AL}); + public static final BitSet FOLLOW_statements_and_directives_in_method1531 = new BitSet(new long[]{0x0000000010000000L}); + public static final BitSet FOLLOW_END_METHOD_DIRECTIVE_in_method1537 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ordered_method_item_in_statements_and_directives1582 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x0000000003FFFFFFL,0x0603800000000000L,0x000000000000019AL}); + public static final BitSet FOLLOW_registers_directive_in_statements_and_directives1590 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x0000000003FFFFFFL,0x0603800000000000L,0x000000000000019AL}); + public static final BitSet FOLLOW_catch_directive_in_statements_and_directives1598 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x0000000003FFFFFFL,0x0603800000000000L,0x000000000000019AL}); + public static final BitSet FOLLOW_catchall_directive_in_statements_and_directives1606 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x0000000003FFFFFFL,0x0603800000000000L,0x000000000000019AL}); + public static final BitSet FOLLOW_parameter_directive_in_statements_and_directives1614 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x0000000003FFFFFFL,0x0603800000000000L,0x000000000000019AL}); + public static final BitSet FOLLOW_annotation_in_statements_and_directives1622 = new BitSet(new long[]{0xFFFFFC04080830A2L,0x0000000003FFFFFFL,0x0603800000000000L,0x000000000000019AL}); + public static final BitSet FOLLOW_label_in_ordered_method_item1707 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_instruction_in_ordered_method_item1713 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_debug_directive_in_ordered_method_item1719 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1739 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_integral_literal_in_registers_directive1743 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1763 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_integral_literal_in_registers_directive1767 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PARAM_LIST_OR_ID_START_in_param_list_or_id1799 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_param_list_or_id1801 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x1000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_PARAM_LIST_OR_ID_END_in_param_list_or_id1804 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SIMPLE_NAME_in_simple_name1816 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ACCESS_SPEC_in_simple_name1822 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1833 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1844 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1855 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1866 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1877 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BOOL_LITERAL_in_simple_name1888 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NULL_LITERAL_in_simple_name1899 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_REGISTER_in_simple_name1910 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_param_list_or_id_in_simple_name1921 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_simple_name1931 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_VOID_TYPE_in_simple_name1942 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1953 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1964 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1975 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name1986 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name1997 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name2008 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name2019 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name2030 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2041 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2052 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_simple_name2063 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_simple_name2074 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2085 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2096 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2107 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2118 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_simple_name2129 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2140 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2151 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2162 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2173 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT25x_in_simple_name2184 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2195 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2206 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2217 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2228 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2239 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2250 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2261 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2272 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_simple_name_in_member_name2287 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_MEMBER_NAME_in_member_name2293 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_OPEN_PAREN_in_method_prototype2308 = new BitSet(new long[]{0x0000000000048100L,0x0000000000000000L,0x6000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_param_list_in_method_prototype2310 = new BitSet(new long[]{0x0000000000040000L}); + public static final BitSet FOLLOW_CLOSE_PAREN_in_method_prototype2312 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000002001L}); + public static final BitSet FOLLOW_type_descriptor_in_method_prototype2314 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PARAM_LIST_START_in_param_list2344 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0800000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_param_list2346 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0800000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_PARAM_LIST_END_in_param_list2349 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PARAM_LIST_OR_ID_START_in_param_list2360 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x1000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_param_list2362 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x1000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_PARAM_LIST_OR_ID_END_in_param_list2365 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_param_list2376 = new BitSet(new long[]{0x0000000000008102L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2453 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2464 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FLOAT_LITERAL_OR_ID_in_float_literal2479 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FLOAT_LITERAL_in_float_literal2490 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DOUBLE_LITERAL_OR_ID_in_double_literal2500 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DOUBLE_LITERAL_in_double_literal2511 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LONG_LITERAL_in_literal2521 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_integer_literal_in_literal2527 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SHORT_LITERAL_in_literal2533 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BYTE_LITERAL_in_literal2539 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_float_literal_in_literal2545 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_double_literal_in_literal2551 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CHAR_LITERAL_in_literal2557 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_literal2563 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BOOL_LITERAL_in_literal2569 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_NULL_LITERAL_in_literal2575 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_array_literal_in_literal2581 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_subannotation_in_literal2587 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_type_field_method_literal_in_literal2593 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_enum_literal_in_literal2599 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_integer_literal_in_parsed_integer_literal2612 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LONG_LITERAL_in_integral_literal2624 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_integer_literal_in_integral_literal2630 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SHORT_LITERAL_in_integral_literal2636 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CHAR_LITERAL_in_integral_literal2642 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BYTE_LITERAL_in_integral_literal2648 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LONG_LITERAL_in_fixed_32bit_literal2658 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_integer_literal_in_fixed_32bit_literal2664 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SHORT_LITERAL_in_fixed_32bit_literal2670 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BYTE_LITERAL_in_fixed_32bit_literal2676 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_float_literal_in_fixed_32bit_literal2682 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CHAR_LITERAL_in_fixed_32bit_literal2688 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BOOL_LITERAL_in_fixed_32bit_literal2694 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_integer_literal_in_fixed_literal2704 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LONG_LITERAL_in_fixed_literal2710 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SHORT_LITERAL_in_fixed_literal2716 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BYTE_LITERAL_in_fixed_literal2722 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_float_literal_in_fixed_literal2728 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_double_literal_in_fixed_literal2734 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CHAR_LITERAL_in_fixed_literal2740 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BOOL_LITERAL_in_fixed_literal2746 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_array_literal2756 = new BitSet(new long[]{0xD1F95CC200C2CD50L,0x00000000020FB1B7L,0xA0EC000000000000L,0x0000000000003665L}); + public static final BitSet FOLLOW_literal_in_array_literal2759 = new BitSet(new long[]{0x0000000000120000L}); + public static final BitSet FOLLOW_COMMA_in_array_literal2762 = new BitSet(new long[]{0xD1F95CC200C0CD50L,0x00000000020FB1B7L,0xA0EC000000000000L,0x0000000000003665L}); + public static final BitSet FOLLOW_literal_in_array_literal2764 = new BitSet(new long[]{0x0000000000120000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_array_literal2772 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_simple_name_in_annotation_element2796 = new BitSet(new long[]{0x0000000800000000L}); + public static final BitSet FOLLOW_EQUAL_in_annotation_element2798 = new BitSet(new long[]{0xD1F95CC200C0CD50L,0x00000000020FB1B7L,0xA0EC000000000000L,0x0000000000003665L}); + public static final BitSet FOLLOW_literal_in_annotation_element2800 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2825 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_annotation2827 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_annotation2829 = new BitSet(new long[]{0xD1F95C8001800450L,0x00000000020FB1B7L,0xA060000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_annotation_element_in_annotation2835 = new BitSet(new long[]{0xD1F95C8001800450L,0x00000000020FB1B7L,0xA060000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2838 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2871 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_subannotation2873 = new BitSet(new long[]{0xD1F95C8100800450L,0x00000000020FB1B7L,0xA060000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_annotation_element_in_subannotation2875 = new BitSet(new long[]{0xD1F95C8100800450L,0x00000000020FB1B7L,0xA060000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2878 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ENUM_DIRECTIVE_in_enum_literal2904 = new BitSet(new long[]{0x0000000000008100L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_enum_literal2906 = new BitSet(new long[]{0x0000000000000200L}); + public static final BitSet FOLLOW_ARROW_in_enum_literal2908 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA060000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_simple_name_in_enum_literal2910 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_COLON_in_enum_literal2912 = new BitSet(new long[]{0x0000000000008100L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_enum_literal2914 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_type_field_method_literal2938 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_type_field_method_literal2947 = new BitSet(new long[]{0x0000000000000200L}); + public static final BitSet FOLLOW_ARROW_in_type_field_method_literal2949 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_member_name_in_type_field_method_literal2961 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_COLON_in_type_field_method_literal2963 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2965 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_member_name_in_type_field_method_literal2988 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0100000000000000L}); + public static final BitSet FOLLOW_method_prototype_in_type_field_method_literal2990 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_type_field_method_literal3023 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_VOID_TYPE_in_type_field_method_literal3029 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_method_reference3040 = new BitSet(new long[]{0x0000000000000200L}); + public static final BitSet FOLLOW_ARROW_in_method_reference3042 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_member_name_in_method_reference3046 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0100000000000000L}); + public static final BitSet FOLLOW_method_prototype_in_method_reference3048 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_field_reference3070 = new BitSet(new long[]{0x0000000000000200L}); + public static final BitSet FOLLOW_ARROW_in_field_reference3072 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_member_name_in_field_reference3076 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_COLON_in_field_reference3078 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field_reference3080 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_COLON_in_label3101 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA060000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_simple_name_in_label3103 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_COLON_in_label_ref3122 = new BitSet(new long[]{0xD1F95C8000800450L,0x00000000020FB1B7L,0xA060000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_simple_name_in_label_ref3124 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_REGISTER_in_register_list3138 = new BitSet(new long[]{0x0000000000100002L}); + public static final BitSet FOLLOW_COMMA_in_register_list3141 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_register_list3143 = new BitSet(new long[]{0x0000000000100002L}); + public static final BitSet FOLLOW_REGISTER_in_register_range3178 = new BitSet(new long[]{0x0000000000200002L}); + public static final BitSet FOLLOW_DOTDOT_in_register_range3181 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_register_range3185 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference3214 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_field_reference_in_verification_error_reference3218 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_method_reference_in_verification_error_reference3222 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CATCH_DIRECTIVE_in_catch_directive3232 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_catch_directive3234 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_catch_directive3236 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_catch_directive3240 = new BitSet(new long[]{0x0000000000200000L}); + public static final BitSet FOLLOW_DOTDOT_in_catch_directive3242 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_catch_directive3246 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_catch_directive3248 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_catch_directive3252 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CATCHALL_DIRECTIVE_in_catchall_directive3284 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_catchall_directive3286 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_catchall_directive3290 = new BitSet(new long[]{0x0000000000200000L}); + public static final BitSet FOLLOW_DOTDOT_in_catchall_directive3292 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_catchall_directive3296 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_catchall_directive3298 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_catchall_directive3302 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PARAMETER_DIRECTIVE_in_parameter_directive3341 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_parameter_directive3343 = new BitSet(new long[]{0x0000000040100022L}); + public static final BitSet FOLLOW_COMMA_in_parameter_directive3346 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_parameter_directive3348 = new BitSet(new long[]{0x0000000040000022L}); + public static final BitSet FOLLOW_annotation_in_parameter_directive3359 = new BitSet(new long[]{0x0000000040000022L}); + public static final BitSet FOLLOW_END_PARAMETER_DIRECTIVE_in_parameter_directive3372 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_line_directive_in_debug_directive3445 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_local_directive_in_debug_directive3451 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_end_local_directive_in_debug_directive3457 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_restart_local_directive_in_debug_directive3463 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_prologue_directive_in_debug_directive3469 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_epilogue_directive_in_debug_directive3475 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_source_directive_in_debug_directive3481 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LINE_DIRECTIVE_in_line_directive3491 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_integral_literal_in_line_directive3493 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LOCAL_DIRECTIVE_in_local_directive3516 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_local_directive3518 = new BitSet(new long[]{0x0000000000100002L}); + public static final BitSet FOLLOW_COMMA_in_local_directive3521 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0040000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_NULL_LITERAL_in_local_directive3524 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_local_directive3530 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_COLON_in_local_directive3533 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000002001L}); + public static final BitSet FOLLOW_VOID_TYPE_in_local_directive3536 = new BitSet(new long[]{0x0000000000100002L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_local_directive3540 = new BitSet(new long[]{0x0000000000100002L}); + public static final BitSet FOLLOW_COMMA_in_local_directive3574 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_local_directive3578 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_END_LOCAL_DIRECTIVE_in_end_local_directive3620 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_end_local_directive3622 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_RESTART_LOCAL_DIRECTIVE_in_restart_local_directive3645 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_restart_local_directive3647 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PROLOGUE_DIRECTIVE_in_prologue_directive3670 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_EPILOGUE_DIRECTIVE_in_epilogue_directive3691 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SOURCE_DIRECTIVE_in_source_directive3712 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_source_directive3714 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_in_instruction_format12x3739 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_instruction_format12x3745 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_in_instruction_format22s3760 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_instruction_format22s3766 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_in_instruction_format31i3781 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_instruction_format31i3787 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format10t_in_instruction3804 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format10x_in_instruction3810 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format10x_odex_in_instruction3816 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format11n_in_instruction3822 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format11x_in_instruction3828 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format12x_in_instruction3834 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format20bc_in_instruction3840 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format20t_in_instruction3846 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_field_in_instruction3852 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_field_odex_in_instruction3858 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_string_in_instruction3864 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_type_in_instruction3870 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_lambda_in_instruction3876 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_method_in_instruction3882 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21ih_in_instruction3888 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21lh_in_instruction3894 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21s_in_instruction3900 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21t_in_instruction3906 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22b_in_instruction3912 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22c_field_in_instruction3918 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22c_field_odex_in_instruction3924 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22c_type_in_instruction3930 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22c_string_in_instruction3936 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22cs_field_in_instruction3942 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22s_in_instruction3948 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22t_in_instruction3954 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22x_in_instruction3960 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format23x_in_instruction3966 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format25x_in_instruction3972 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format30t_in_instruction3978 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format31c_in_instruction3984 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format31i_in_instruction3990 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format31t_in_instruction3996 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format32x_in_instruction4002 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format35c_method_in_instruction4008 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format35c_type_in_instruction4014 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format35c_method_odex_in_instruction4020 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format35mi_method_in_instruction4026 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format35ms_method_in_instruction4032 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format3rc_method_in_instruction4038 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format3rc_method_odex_in_instruction4044 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format3rc_type_in_instruction4050 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format3rmi_method_in_instruction4056 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format3rms_method_in_instruction4062 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format51l_in_instruction4068 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_array_data_directive_in_instruction4074 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_packed_switch_directive_in_instruction4080 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_sparse_switch_directive_in_instruction4086 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t4106 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_format10t4108 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x4138 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_insn_format10x_odex4166 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n4187 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format11n4189 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format11n4191 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_integral_literal_in_insn_format11n4193 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x4225 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format11x4227 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_instruction_format12x_in_insn_format12x4257 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format12x4259 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format12x4261 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format12x4263 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc4295 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000001000L}); + public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_insn_format20bc4297 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format20bc4299 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_verification_error_reference_in_insn_format20bc4301 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t4338 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_format20t4340 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_insn_format21c_field4370 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field4372 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21c_field4374 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_field_reference_in_insn_format21c_field4376 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_insn_format21c_field_odex4408 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field_odex4410 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21c_field_odex4412 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_field_reference_in_insn_format21c_field_odex4414 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string4452 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_string4454 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21c_string4456 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format21c_string4458 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type4490 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_type4492 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21c_type4494 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type4496 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_insn_format21c_lambda4528 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_lambda4530 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21c_lambda4532 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format21c_lambda4534 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_insn_format21c_method4566 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_method4568 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21c_method4570 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_method_reference_in_insn_format21c_method4572 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih4604 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21ih4606 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21ih4608 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21ih4610 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh4642 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21lh4644 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21lh4646 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21lh4648 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s4680 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21s4682 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21s4684 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_integral_literal_in_insn_format21s4686 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t4718 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21t4720 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format21t4722 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_format21t4724 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b4756 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22b4758 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22b4760 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22b4762 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22b4764 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_integral_literal_in_insn_format22b4766 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_insn_format22c_field4800 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field4802 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_field4804 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field4806 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_field4808 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_field_reference_in_insn_format22c_field4810 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_insn_format22c_field_odex4844 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field_odex4846 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_field_odex4848 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field_odex4850 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_field_odex4852 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_field_reference_in_insn_format22c_field_odex4854 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type4894 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type4896 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_type4898 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type4900 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_type4902 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type4904 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_insn_format22c_string4938 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_string4940 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_string4942 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_string4944 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22c_string4946 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format22c_string4948 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_insn_format22cs_field4982 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22cs_field4984 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22cs_field4986 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22cs_field4988 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22cs_field4990 = new BitSet(new long[]{0x0000002000000000L}); + public static final BitSet FOLLOW_FIELD_OFFSET_in_insn_format22cs_field4992 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_instruction_format22s_in_insn_format22s5013 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22s5015 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22s5017 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22s5019 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22s5021 = new BitSet(new long[]{0x0000000000004800L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_integral_literal_in_insn_format22s5023 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t5057 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22t5059 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22t5061 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22t5063 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22t5065 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_format22t5067 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x5101 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22x5103 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format22x5105 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22x5107 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x5139 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format23x5141 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format23x5143 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format23x5145 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format23x5147 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format23x5149 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT25x_in_insn_format25x5183 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format25x5185 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format25x5187 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format25x5189 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_list_in_insn_format25x5191 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format25x5193 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t5225 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_format30t5227 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c5257 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format31c5259 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format31c5261 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format31c5263 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_instruction_format31i_in_insn_format31i5294 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format31i5296 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format31i5298 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format31i5300 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t5332 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format31t5334 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format31t5336 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_format31t5338 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x5370 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format32x5372 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format32x5374 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format32x5376 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method5408 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_method5410 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_list_in_insn_format35c_method5412 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_method5414 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format35c_method5416 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_method_reference_in_insn_format35c_method5418 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type5450 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_type5452 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_list_in_insn_format35c_type5454 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_type5456 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format35c_type5458 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type5460 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_insn_format35c_method_odex5492 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_method_odex5494 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_list_in_insn_format35c_method_odex5496 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_method_odex5498 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format35c_method_odex5500 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_method_reference_in_insn_format35c_method_odex5502 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_insn_format35mi_method5523 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35mi_method5525 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_list_in_insn_format35mi_method5527 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35mi_method5529 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format35mi_method5531 = new BitSet(new long[]{0x0000020000000000L}); + public static final BitSet FOLLOW_INLINE_INDEX_in_insn_format35mi_method5533 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_insn_format35ms_method5554 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35ms_method5556 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_list_in_insn_format35ms_method5558 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35ms_method5560 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format35ms_method5562 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000004000L}); + public static final BitSet FOLLOW_VTABLE_INDEX_in_insn_format35ms_method5564 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method5585 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_method5587 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_range_in_insn_format3rc_method5589 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_method5591 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format3rc_method5593 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_method_reference_in_insn_format3rc_method5595 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_ODEX_in_insn_format3rc_method_odex5627 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_method_odex5629 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_list_in_insn_format3rc_method_odex5631 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_method_odex5633 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format3rc_method_odex5635 = new BitSet(new long[]{0xD1F95C8000808550L,0x00000000020FB1B7L,0xA068000000000000L,0x0000000000003045L}); + public static final BitSet FOLLOW_method_reference_in_insn_format3rc_method_odex5637 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type5658 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_type5660 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_range_in_insn_format3rc_type5662 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_type5664 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format3rc_type5666 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type5668 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rmi_METHOD_in_insn_format3rmi_method5700 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rmi_method5702 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_range_in_insn_format3rmi_method5704 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rmi_method5706 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format3rmi_method5708 = new BitSet(new long[]{0x0000020000000000L}); + public static final BitSet FOLLOW_INLINE_INDEX_in_insn_format3rmi_method5710 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rms_METHOD_in_insn_format3rms_method5731 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0080000000000000L}); + public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rms_method5733 = new BitSet(new long[]{0x0000000000020000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_range_in_insn_format3rms_method5735 = new BitSet(new long[]{0x0000000000020000L}); + public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rms_method5737 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format3rms_method5739 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000004000L}); + public static final BitSet FOLLOW_VTABLE_INDEX_in_insn_format3rms_method5741 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l5762 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format51l5764 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_COMMA_in_insn_format51l5766 = new BitSet(new long[]{0x000000C000C04C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_literal_in_insn_format51l5768 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5795 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x8020000000000000L}); + public static final BitSet FOLLOW_parsed_integer_literal_in_insn_array_data_directive5801 = new BitSet(new long[]{0x000000C002C04C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_literal_in_insn_array_data_directive5813 = new BitSet(new long[]{0x000000C002C04C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_END_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5816 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5862 = new BitSet(new long[]{0x000000C000004C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive5868 = new BitSet(new long[]{0x0000000020080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_packed_switch_directive5874 = new BitSet(new long[]{0x0000000020080000L}); + public static final BitSet FOLLOW_END_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5881 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5955 = new BitSet(new long[]{0x000000C080004C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_sparse_switch_directive5962 = new BitSet(new long[]{0x0000000000000200L}); + public static final BitSet FOLLOW_ARROW_in_insn_sparse_switch_directive5964 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_label_ref_in_insn_sparse_switch_directive5966 = new BitSet(new long[]{0x000000C080004C00L,0x0000000000000000L,0x8024000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_END_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5974 = new BitSet(new long[]{0x0000000000000002L}); } diff --git a/smali/src/main/java/org/jf/smali/smaliTreeWalker.java b/smali/src/main/java/org/jf/smali/smaliTreeWalker.java index 16af8496..a1c311d0 100644 --- a/smali/src/main/java/org/jf/smali/smaliTreeWalker.java +++ b/smali/src/main/java/org/jf/smali/smaliTreeWalker.java @@ -1,4 +1,4 @@ -// $ANTLR 3.5 /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g 2015-02-19 13:37:39 +// $ANTLR 3.5 /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g 2015-04-23 12:35:17 package org.jf.smali; @@ -61,48 +61,51 @@ public class smaliTreeWalker extends TreeParser { "INSTRUCTION_FORMAT10t", "INSTRUCTION_FORMAT10x", "INSTRUCTION_FORMAT10x_ODEX", "INSTRUCTION_FORMAT11n", "INSTRUCTION_FORMAT11x", "INSTRUCTION_FORMAT12x", "INSTRUCTION_FORMAT12x_OR_ID", "INSTRUCTION_FORMAT20bc", "INSTRUCTION_FORMAT20t", - "INSTRUCTION_FORMAT21c_FIELD", "INSTRUCTION_FORMAT21c_FIELD_ODEX", "INSTRUCTION_FORMAT21c_STRING", - "INSTRUCTION_FORMAT21c_TYPE", "INSTRUCTION_FORMAT21ih", "INSTRUCTION_FORMAT21lh", - "INSTRUCTION_FORMAT21s", "INSTRUCTION_FORMAT21t", "INSTRUCTION_FORMAT22b", - "INSTRUCTION_FORMAT22c_FIELD", "INSTRUCTION_FORMAT22c_FIELD_ODEX", "INSTRUCTION_FORMAT22c_TYPE", + "INSTRUCTION_FORMAT21c_FIELD", "INSTRUCTION_FORMAT21c_FIELD_ODEX", "INSTRUCTION_FORMAT21c_LAMBDA", + "INSTRUCTION_FORMAT21c_METHOD", "INSTRUCTION_FORMAT21c_STRING", "INSTRUCTION_FORMAT21c_TYPE", + "INSTRUCTION_FORMAT21ih", "INSTRUCTION_FORMAT21lh", "INSTRUCTION_FORMAT21s", + "INSTRUCTION_FORMAT21t", "INSTRUCTION_FORMAT22b", "INSTRUCTION_FORMAT22c_FIELD", + "INSTRUCTION_FORMAT22c_FIELD_ODEX", "INSTRUCTION_FORMAT22c_STRING", "INSTRUCTION_FORMAT22c_TYPE", "INSTRUCTION_FORMAT22cs_FIELD", "INSTRUCTION_FORMAT22s", "INSTRUCTION_FORMAT22s_OR_ID", "INSTRUCTION_FORMAT22t", "INSTRUCTION_FORMAT22x", "INSTRUCTION_FORMAT23x", - "INSTRUCTION_FORMAT30t", "INSTRUCTION_FORMAT31c", "INSTRUCTION_FORMAT31i", - "INSTRUCTION_FORMAT31i_OR_ID", "INSTRUCTION_FORMAT31t", "INSTRUCTION_FORMAT32x", - "INSTRUCTION_FORMAT35c_METHOD", "INSTRUCTION_FORMAT35c_METHOD_ODEX", "INSTRUCTION_FORMAT35c_TYPE", - "INSTRUCTION_FORMAT35mi_METHOD", "INSTRUCTION_FORMAT35ms_METHOD", "INSTRUCTION_FORMAT3rc_METHOD", - "INSTRUCTION_FORMAT3rc_METHOD_ODEX", "INSTRUCTION_FORMAT3rc_TYPE", "INSTRUCTION_FORMAT3rmi_METHOD", - "INSTRUCTION_FORMAT3rms_METHOD", "INSTRUCTION_FORMAT51l", "INTEGER_LITERAL", - "INVALID_TOKEN", "I_ACCESS_LIST", "I_ANNOTATION", "I_ANNOTATIONS", "I_ANNOTATION_ELEMENT", - "I_ARRAY_ELEMENTS", "I_ARRAY_ELEMENT_SIZE", "I_CATCH", "I_CATCHALL", "I_CATCHES", - "I_CLASS_DEF", "I_ENCODED_ARRAY", "I_ENCODED_ENUM", "I_ENCODED_FIELD", - "I_ENCODED_METHOD", "I_END_LOCAL", "I_EPILOGUE", "I_FIELD", "I_FIELDS", - "I_FIELD_INITIAL_VALUE", "I_FIELD_TYPE", "I_IMPLEMENTS", "I_LABEL", "I_LINE", - "I_LOCAL", "I_LOCALS", "I_METHOD", "I_METHODS", "I_METHOD_PROTOTYPE", + "INSTRUCTION_FORMAT25x", "INSTRUCTION_FORMAT30t", "INSTRUCTION_FORMAT31c", + "INSTRUCTION_FORMAT31i", "INSTRUCTION_FORMAT31i_OR_ID", "INSTRUCTION_FORMAT31t", + "INSTRUCTION_FORMAT32x", "INSTRUCTION_FORMAT35c_METHOD", "INSTRUCTION_FORMAT35c_METHOD_ODEX", + "INSTRUCTION_FORMAT35c_TYPE", "INSTRUCTION_FORMAT35mi_METHOD", "INSTRUCTION_FORMAT35ms_METHOD", + "INSTRUCTION_FORMAT3rc_METHOD", "INSTRUCTION_FORMAT3rc_METHOD_ODEX", "INSTRUCTION_FORMAT3rc_TYPE", + "INSTRUCTION_FORMAT3rmi_METHOD", "INSTRUCTION_FORMAT3rms_METHOD", "INSTRUCTION_FORMAT51l", + "INTEGER_LITERAL", "INVALID_TOKEN", "I_ACCESS_LIST", "I_ANNOTATION", "I_ANNOTATIONS", + "I_ANNOTATION_ELEMENT", "I_ARRAY_ELEMENTS", "I_ARRAY_ELEMENT_SIZE", "I_CATCH", + "I_CATCHALL", "I_CATCHES", "I_CLASS_DEF", "I_ENCODED_ARRAY", "I_ENCODED_ENUM", + "I_ENCODED_FIELD", "I_ENCODED_METHOD", "I_END_LOCAL", "I_EPILOGUE", "I_FIELD", + "I_FIELDS", "I_FIELD_INITIAL_VALUE", "I_FIELD_TYPE", "I_IMPLEMENTS", "I_LABEL", + "I_LINE", "I_LOCAL", "I_LOCALS", "I_METHOD", "I_METHODS", "I_METHOD_PROTOTYPE", "I_METHOD_RETURN_TYPE", "I_ORDERED_METHOD_ITEMS", "I_PACKED_SWITCH_ELEMENTS", "I_PACKED_SWITCH_START_KEY", "I_PARAMETER", "I_PARAMETERS", "I_PARAMETER_NOT_SPECIFIED", "I_PROLOGUE", "I_REGISTERS", "I_REGISTER_LIST", "I_REGISTER_RANGE", "I_RESTART_LOCAL", "I_SOURCE", "I_SPARSE_SWITCH_ELEMENTS", "I_STATEMENT_ARRAY_DATA", "I_STATEMENT_FORMAT10t", "I_STATEMENT_FORMAT10x", "I_STATEMENT_FORMAT11n", "I_STATEMENT_FORMAT11x", "I_STATEMENT_FORMAT12x", "I_STATEMENT_FORMAT20bc", "I_STATEMENT_FORMAT20t", - "I_STATEMENT_FORMAT21c_FIELD", "I_STATEMENT_FORMAT21c_STRING", "I_STATEMENT_FORMAT21c_TYPE", - "I_STATEMENT_FORMAT21ih", "I_STATEMENT_FORMAT21lh", "I_STATEMENT_FORMAT21s", - "I_STATEMENT_FORMAT21t", "I_STATEMENT_FORMAT22b", "I_STATEMENT_FORMAT22c_FIELD", + "I_STATEMENT_FORMAT21c_FIELD", "I_STATEMENT_FORMAT21c_LAMBDA", "I_STATEMENT_FORMAT21c_METHOD", + "I_STATEMENT_FORMAT21c_STRING", "I_STATEMENT_FORMAT21c_TYPE", "I_STATEMENT_FORMAT21ih", + "I_STATEMENT_FORMAT21lh", "I_STATEMENT_FORMAT21s", "I_STATEMENT_FORMAT21t", + "I_STATEMENT_FORMAT22b", "I_STATEMENT_FORMAT22c_FIELD", "I_STATEMENT_FORMAT22c_STRING", "I_STATEMENT_FORMAT22c_TYPE", "I_STATEMENT_FORMAT22s", "I_STATEMENT_FORMAT22t", - "I_STATEMENT_FORMAT22x", "I_STATEMENT_FORMAT23x", "I_STATEMENT_FORMAT30t", - "I_STATEMENT_FORMAT31c", "I_STATEMENT_FORMAT31i", "I_STATEMENT_FORMAT31t", - "I_STATEMENT_FORMAT32x", "I_STATEMENT_FORMAT35c_METHOD", "I_STATEMENT_FORMAT35c_TYPE", - "I_STATEMENT_FORMAT3rc_METHOD", "I_STATEMENT_FORMAT3rc_TYPE", "I_STATEMENT_FORMAT51l", - "I_STATEMENT_PACKED_SWITCH", "I_STATEMENT_SPARSE_SWITCH", "I_SUBANNOTATION", - "I_SUPER", "LINE_COMMENT", "LINE_DIRECTIVE", "LOCALS_DIRECTIVE", "LOCAL_DIRECTIVE", - "LONG_LITERAL", "MEMBER_NAME", "METHOD_DIRECTIVE", "NEGATIVE_INTEGER_LITERAL", - "NULL_LITERAL", "OPEN_BRACE", "OPEN_PAREN", "PACKED_SWITCH_DIRECTIVE", - "PARAMETER_DIRECTIVE", "PARAM_LIST_END", "PARAM_LIST_OR_ID_END", "PARAM_LIST_OR_ID_START", - "PARAM_LIST_START", "POSITIVE_INTEGER_LITERAL", "PRIMITIVE_TYPE", "PROLOGUE_DIRECTIVE", - "REGISTER", "REGISTERS_DIRECTIVE", "RESTART_LOCAL_DIRECTIVE", "SHORT_LITERAL", - "SIMPLE_NAME", "SOURCE_DIRECTIVE", "SPARSE_SWITCH_DIRECTIVE", "STRING_LITERAL", - "SUBANNOTATION_DIRECTIVE", "SUPER_DIRECTIVE", "VERIFICATION_ERROR_TYPE", - "VOID_TYPE", "VTABLE_INDEX", "WHITE_SPACE" + "I_STATEMENT_FORMAT22x", "I_STATEMENT_FORMAT23x", "I_STATEMENT_FORMAT25x", + "I_STATEMENT_FORMAT30t", "I_STATEMENT_FORMAT31c", "I_STATEMENT_FORMAT31i", + "I_STATEMENT_FORMAT31t", "I_STATEMENT_FORMAT32x", "I_STATEMENT_FORMAT35c_METHOD", + "I_STATEMENT_FORMAT35c_TYPE", "I_STATEMENT_FORMAT3rc_METHOD", "I_STATEMENT_FORMAT3rc_TYPE", + "I_STATEMENT_FORMAT51l", "I_STATEMENT_PACKED_SWITCH", "I_STATEMENT_SPARSE_SWITCH", + "I_SUBANNOTATION", "I_SUPER", "LINE_COMMENT", "LINE_DIRECTIVE", "LOCALS_DIRECTIVE", + "LOCAL_DIRECTIVE", "LONG_LITERAL", "MEMBER_NAME", "METHOD_DIRECTIVE", + "NEGATIVE_INTEGER_LITERAL", "NULL_LITERAL", "OPEN_BRACE", "OPEN_PAREN", + "PACKED_SWITCH_DIRECTIVE", "PARAMETER_DIRECTIVE", "PARAM_LIST_END", "PARAM_LIST_OR_ID_END", + "PARAM_LIST_OR_ID_START", "PARAM_LIST_START", "POSITIVE_INTEGER_LITERAL", + "PRIMITIVE_TYPE", "PROLOGUE_DIRECTIVE", "REGISTER", "REGISTERS_DIRECTIVE", + "RESTART_LOCAL_DIRECTIVE", "SHORT_LITERAL", "SIMPLE_NAME", "SOURCE_DIRECTIVE", + "SPARSE_SWITCH_DIRECTIVE", "STRING_LITERAL", "SUBANNOTATION_DIRECTIVE", + "SUPER_DIRECTIVE", "VERIFICATION_ERROR_TYPE", "VOID_TYPE", "VTABLE_INDEX", + "WHITE_SPACE" }; public static final int EOF=-1; public static final int ACCESS_SPEC=4; @@ -154,153 +157,161 @@ public class smaliTreeWalker extends TreeParser { public static final int INSTRUCTION_FORMAT20t=50; public static final int INSTRUCTION_FORMAT21c_FIELD=51; public static final int INSTRUCTION_FORMAT21c_FIELD_ODEX=52; - public static final int INSTRUCTION_FORMAT21c_STRING=53; - public static final int INSTRUCTION_FORMAT21c_TYPE=54; - public static final int INSTRUCTION_FORMAT21ih=55; - public static final int INSTRUCTION_FORMAT21lh=56; - public static final int INSTRUCTION_FORMAT21s=57; - public static final int INSTRUCTION_FORMAT21t=58; - public static final int INSTRUCTION_FORMAT22b=59; - public static final int INSTRUCTION_FORMAT22c_FIELD=60; - public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=61; - public static final int INSTRUCTION_FORMAT22c_TYPE=62; - public static final int INSTRUCTION_FORMAT22cs_FIELD=63; - public static final int INSTRUCTION_FORMAT22s=64; - public static final int INSTRUCTION_FORMAT22s_OR_ID=65; - public static final int INSTRUCTION_FORMAT22t=66; - public static final int INSTRUCTION_FORMAT22x=67; - public static final int INSTRUCTION_FORMAT23x=68; - public static final int INSTRUCTION_FORMAT30t=69; - public static final int INSTRUCTION_FORMAT31c=70; - public static final int INSTRUCTION_FORMAT31i=71; - public static final int INSTRUCTION_FORMAT31i_OR_ID=72; - public static final int INSTRUCTION_FORMAT31t=73; - public static final int INSTRUCTION_FORMAT32x=74; - public static final int INSTRUCTION_FORMAT35c_METHOD=75; - public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=76; - public static final int INSTRUCTION_FORMAT35c_TYPE=77; - public static final int INSTRUCTION_FORMAT35mi_METHOD=78; - public static final int INSTRUCTION_FORMAT35ms_METHOD=79; - public static final int INSTRUCTION_FORMAT3rc_METHOD=80; - public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=81; - public static final int INSTRUCTION_FORMAT3rc_TYPE=82; - public static final int INSTRUCTION_FORMAT3rmi_METHOD=83; - public static final int INSTRUCTION_FORMAT3rms_METHOD=84; - public static final int INSTRUCTION_FORMAT51l=85; - public static final int INTEGER_LITERAL=86; - public static final int INVALID_TOKEN=87; - public static final int I_ACCESS_LIST=88; - public static final int I_ANNOTATION=89; - public static final int I_ANNOTATIONS=90; - public static final int I_ANNOTATION_ELEMENT=91; - public static final int I_ARRAY_ELEMENTS=92; - public static final int I_ARRAY_ELEMENT_SIZE=93; - public static final int I_CATCH=94; - public static final int I_CATCHALL=95; - public static final int I_CATCHES=96; - public static final int I_CLASS_DEF=97; - public static final int I_ENCODED_ARRAY=98; - public static final int I_ENCODED_ENUM=99; - public static final int I_ENCODED_FIELD=100; - public static final int I_ENCODED_METHOD=101; - public static final int I_END_LOCAL=102; - public static final int I_EPILOGUE=103; - public static final int I_FIELD=104; - public static final int I_FIELDS=105; - public static final int I_FIELD_INITIAL_VALUE=106; - public static final int I_FIELD_TYPE=107; - public static final int I_IMPLEMENTS=108; - public static final int I_LABEL=109; - public static final int I_LINE=110; - public static final int I_LOCAL=111; - public static final int I_LOCALS=112; - public static final int I_METHOD=113; - public static final int I_METHODS=114; - public static final int I_METHOD_PROTOTYPE=115; - public static final int I_METHOD_RETURN_TYPE=116; - public static final int I_ORDERED_METHOD_ITEMS=117; - public static final int I_PACKED_SWITCH_ELEMENTS=118; - public static final int I_PACKED_SWITCH_START_KEY=119; - public static final int I_PARAMETER=120; - public static final int I_PARAMETERS=121; - public static final int I_PARAMETER_NOT_SPECIFIED=122; - public static final int I_PROLOGUE=123; - public static final int I_REGISTERS=124; - public static final int I_REGISTER_LIST=125; - public static final int I_REGISTER_RANGE=126; - public static final int I_RESTART_LOCAL=127; - public static final int I_SOURCE=128; - public static final int I_SPARSE_SWITCH_ELEMENTS=129; - public static final int I_STATEMENT_ARRAY_DATA=130; - public static final int I_STATEMENT_FORMAT10t=131; - public static final int I_STATEMENT_FORMAT10x=132; - public static final int I_STATEMENT_FORMAT11n=133; - public static final int I_STATEMENT_FORMAT11x=134; - public static final int I_STATEMENT_FORMAT12x=135; - public static final int I_STATEMENT_FORMAT20bc=136; - public static final int I_STATEMENT_FORMAT20t=137; - public static final int I_STATEMENT_FORMAT21c_FIELD=138; - public static final int I_STATEMENT_FORMAT21c_STRING=139; - public static final int I_STATEMENT_FORMAT21c_TYPE=140; - public static final int I_STATEMENT_FORMAT21ih=141; - public static final int I_STATEMENT_FORMAT21lh=142; - public static final int I_STATEMENT_FORMAT21s=143; - public static final int I_STATEMENT_FORMAT21t=144; - public static final int I_STATEMENT_FORMAT22b=145; - public static final int I_STATEMENT_FORMAT22c_FIELD=146; - public static final int I_STATEMENT_FORMAT22c_TYPE=147; - public static final int I_STATEMENT_FORMAT22s=148; - public static final int I_STATEMENT_FORMAT22t=149; - public static final int I_STATEMENT_FORMAT22x=150; - public static final int I_STATEMENT_FORMAT23x=151; - public static final int I_STATEMENT_FORMAT30t=152; - public static final int I_STATEMENT_FORMAT31c=153; - public static final int I_STATEMENT_FORMAT31i=154; - public static final int I_STATEMENT_FORMAT31t=155; - public static final int I_STATEMENT_FORMAT32x=156; - public static final int I_STATEMENT_FORMAT35c_METHOD=157; - public static final int I_STATEMENT_FORMAT35c_TYPE=158; - public static final int I_STATEMENT_FORMAT3rc_METHOD=159; - public static final int I_STATEMENT_FORMAT3rc_TYPE=160; - public static final int I_STATEMENT_FORMAT51l=161; - public static final int I_STATEMENT_PACKED_SWITCH=162; - public static final int I_STATEMENT_SPARSE_SWITCH=163; - public static final int I_SUBANNOTATION=164; - public static final int I_SUPER=165; - public static final int LINE_COMMENT=166; - public static final int LINE_DIRECTIVE=167; - public static final int LOCALS_DIRECTIVE=168; - public static final int LOCAL_DIRECTIVE=169; - public static final int LONG_LITERAL=170; - public static final int MEMBER_NAME=171; - public static final int METHOD_DIRECTIVE=172; - public static final int NEGATIVE_INTEGER_LITERAL=173; - public static final int NULL_LITERAL=174; - public static final int OPEN_BRACE=175; - public static final int OPEN_PAREN=176; - public static final int PACKED_SWITCH_DIRECTIVE=177; - public static final int PARAMETER_DIRECTIVE=178; - public static final int PARAM_LIST_END=179; - public static final int PARAM_LIST_OR_ID_END=180; - public static final int PARAM_LIST_OR_ID_START=181; - public static final int PARAM_LIST_START=182; - public static final int POSITIVE_INTEGER_LITERAL=183; - public static final int PRIMITIVE_TYPE=184; - public static final int PROLOGUE_DIRECTIVE=185; - public static final int REGISTER=186; - public static final int REGISTERS_DIRECTIVE=187; - public static final int RESTART_LOCAL_DIRECTIVE=188; - public static final int SHORT_LITERAL=189; - public static final int SIMPLE_NAME=190; - public static final int SOURCE_DIRECTIVE=191; - public static final int SPARSE_SWITCH_DIRECTIVE=192; - public static final int STRING_LITERAL=193; - public static final int SUBANNOTATION_DIRECTIVE=194; - public static final int SUPER_DIRECTIVE=195; - public static final int VERIFICATION_ERROR_TYPE=196; - public static final int VOID_TYPE=197; - public static final int VTABLE_INDEX=198; - public static final int WHITE_SPACE=199; + public static final int INSTRUCTION_FORMAT21c_LAMBDA=53; + public static final int INSTRUCTION_FORMAT21c_METHOD=54; + public static final int INSTRUCTION_FORMAT21c_STRING=55; + public static final int INSTRUCTION_FORMAT21c_TYPE=56; + public static final int INSTRUCTION_FORMAT21ih=57; + public static final int INSTRUCTION_FORMAT21lh=58; + public static final int INSTRUCTION_FORMAT21s=59; + public static final int INSTRUCTION_FORMAT21t=60; + public static final int INSTRUCTION_FORMAT22b=61; + public static final int INSTRUCTION_FORMAT22c_FIELD=62; + public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=63; + public static final int INSTRUCTION_FORMAT22c_STRING=64; + public static final int INSTRUCTION_FORMAT22c_TYPE=65; + public static final int INSTRUCTION_FORMAT22cs_FIELD=66; + public static final int INSTRUCTION_FORMAT22s=67; + public static final int INSTRUCTION_FORMAT22s_OR_ID=68; + public static final int INSTRUCTION_FORMAT22t=69; + public static final int INSTRUCTION_FORMAT22x=70; + public static final int INSTRUCTION_FORMAT23x=71; + public static final int INSTRUCTION_FORMAT25x=72; + public static final int INSTRUCTION_FORMAT30t=73; + public static final int INSTRUCTION_FORMAT31c=74; + public static final int INSTRUCTION_FORMAT31i=75; + public static final int INSTRUCTION_FORMAT31i_OR_ID=76; + public static final int INSTRUCTION_FORMAT31t=77; + public static final int INSTRUCTION_FORMAT32x=78; + public static final int INSTRUCTION_FORMAT35c_METHOD=79; + public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=80; + public static final int INSTRUCTION_FORMAT35c_TYPE=81; + public static final int INSTRUCTION_FORMAT35mi_METHOD=82; + public static final int INSTRUCTION_FORMAT35ms_METHOD=83; + public static final int INSTRUCTION_FORMAT3rc_METHOD=84; + public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=85; + public static final int INSTRUCTION_FORMAT3rc_TYPE=86; + public static final int INSTRUCTION_FORMAT3rmi_METHOD=87; + public static final int INSTRUCTION_FORMAT3rms_METHOD=88; + public static final int INSTRUCTION_FORMAT51l=89; + public static final int INTEGER_LITERAL=90; + public static final int INVALID_TOKEN=91; + public static final int I_ACCESS_LIST=92; + public static final int I_ANNOTATION=93; + public static final int I_ANNOTATIONS=94; + public static final int I_ANNOTATION_ELEMENT=95; + public static final int I_ARRAY_ELEMENTS=96; + public static final int I_ARRAY_ELEMENT_SIZE=97; + public static final int I_CATCH=98; + public static final int I_CATCHALL=99; + public static final int I_CATCHES=100; + public static final int I_CLASS_DEF=101; + public static final int I_ENCODED_ARRAY=102; + public static final int I_ENCODED_ENUM=103; + public static final int I_ENCODED_FIELD=104; + public static final int I_ENCODED_METHOD=105; + public static final int I_END_LOCAL=106; + public static final int I_EPILOGUE=107; + public static final int I_FIELD=108; + public static final int I_FIELDS=109; + public static final int I_FIELD_INITIAL_VALUE=110; + public static final int I_FIELD_TYPE=111; + public static final int I_IMPLEMENTS=112; + public static final int I_LABEL=113; + public static final int I_LINE=114; + public static final int I_LOCAL=115; + public static final int I_LOCALS=116; + public static final int I_METHOD=117; + public static final int I_METHODS=118; + public static final int I_METHOD_PROTOTYPE=119; + public static final int I_METHOD_RETURN_TYPE=120; + public static final int I_ORDERED_METHOD_ITEMS=121; + public static final int I_PACKED_SWITCH_ELEMENTS=122; + public static final int I_PACKED_SWITCH_START_KEY=123; + public static final int I_PARAMETER=124; + public static final int I_PARAMETERS=125; + public static final int I_PARAMETER_NOT_SPECIFIED=126; + public static final int I_PROLOGUE=127; + public static final int I_REGISTERS=128; + public static final int I_REGISTER_LIST=129; + public static final int I_REGISTER_RANGE=130; + public static final int I_RESTART_LOCAL=131; + public static final int I_SOURCE=132; + public static final int I_SPARSE_SWITCH_ELEMENTS=133; + public static final int I_STATEMENT_ARRAY_DATA=134; + public static final int I_STATEMENT_FORMAT10t=135; + public static final int I_STATEMENT_FORMAT10x=136; + public static final int I_STATEMENT_FORMAT11n=137; + public static final int I_STATEMENT_FORMAT11x=138; + public static final int I_STATEMENT_FORMAT12x=139; + public static final int I_STATEMENT_FORMAT20bc=140; + public static final int I_STATEMENT_FORMAT20t=141; + public static final int I_STATEMENT_FORMAT21c_FIELD=142; + public static final int I_STATEMENT_FORMAT21c_LAMBDA=143; + public static final int I_STATEMENT_FORMAT21c_METHOD=144; + public static final int I_STATEMENT_FORMAT21c_STRING=145; + public static final int I_STATEMENT_FORMAT21c_TYPE=146; + public static final int I_STATEMENT_FORMAT21ih=147; + public static final int I_STATEMENT_FORMAT21lh=148; + public static final int I_STATEMENT_FORMAT21s=149; + public static final int I_STATEMENT_FORMAT21t=150; + public static final int I_STATEMENT_FORMAT22b=151; + public static final int I_STATEMENT_FORMAT22c_FIELD=152; + public static final int I_STATEMENT_FORMAT22c_STRING=153; + public static final int I_STATEMENT_FORMAT22c_TYPE=154; + public static final int I_STATEMENT_FORMAT22s=155; + public static final int I_STATEMENT_FORMAT22t=156; + public static final int I_STATEMENT_FORMAT22x=157; + public static final int I_STATEMENT_FORMAT23x=158; + public static final int I_STATEMENT_FORMAT25x=159; + public static final int I_STATEMENT_FORMAT30t=160; + public static final int I_STATEMENT_FORMAT31c=161; + public static final int I_STATEMENT_FORMAT31i=162; + public static final int I_STATEMENT_FORMAT31t=163; + public static final int I_STATEMENT_FORMAT32x=164; + public static final int I_STATEMENT_FORMAT35c_METHOD=165; + public static final int I_STATEMENT_FORMAT35c_TYPE=166; + public static final int I_STATEMENT_FORMAT3rc_METHOD=167; + public static final int I_STATEMENT_FORMAT3rc_TYPE=168; + public static final int I_STATEMENT_FORMAT51l=169; + public static final int I_STATEMENT_PACKED_SWITCH=170; + public static final int I_STATEMENT_SPARSE_SWITCH=171; + public static final int I_SUBANNOTATION=172; + public static final int I_SUPER=173; + public static final int LINE_COMMENT=174; + public static final int LINE_DIRECTIVE=175; + public static final int LOCALS_DIRECTIVE=176; + public static final int LOCAL_DIRECTIVE=177; + public static final int LONG_LITERAL=178; + public static final int MEMBER_NAME=179; + public static final int METHOD_DIRECTIVE=180; + public static final int NEGATIVE_INTEGER_LITERAL=181; + public static final int NULL_LITERAL=182; + public static final int OPEN_BRACE=183; + public static final int OPEN_PAREN=184; + public static final int PACKED_SWITCH_DIRECTIVE=185; + public static final int PARAMETER_DIRECTIVE=186; + public static final int PARAM_LIST_END=187; + public static final int PARAM_LIST_OR_ID_END=188; + public static final int PARAM_LIST_OR_ID_START=189; + public static final int PARAM_LIST_START=190; + public static final int POSITIVE_INTEGER_LITERAL=191; + public static final int PRIMITIVE_TYPE=192; + public static final int PROLOGUE_DIRECTIVE=193; + public static final int REGISTER=194; + public static final int REGISTERS_DIRECTIVE=195; + public static final int RESTART_LOCAL_DIRECTIVE=196; + public static final int SHORT_LITERAL=197; + public static final int SIMPLE_NAME=198; + public static final int SOURCE_DIRECTIVE=199; + public static final int SPARSE_SWITCH_DIRECTIVE=200; + public static final int STRING_LITERAL=201; + public static final int SUBANNOTATION_DIRECTIVE=202; + public static final int SUPER_DIRECTIVE=203; + public static final int VERIFICATION_ERROR_TYPE=204; + public static final int VOID_TYPE=205; + public static final int VTABLE_INDEX=206; + public static final int WHITE_SPACE=207; // delegates public TreeParser[] getDelegates() { @@ -318,21 +329,21 @@ public class smaliTreeWalker extends TreeParser { } @Override public String[] getTokenNames() { return smaliTreeWalker.tokenNames; } - @Override public String getGrammarFileName() { return "/mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g"; } + @Override public String getGrammarFileName() { return "/mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g"; } public String classType; private boolean verboseErrors = false; private int apiLevel = 15; - private Opcodes opcodes = new Opcodes(apiLevel); + private Opcodes opcodes = new Opcodes(apiLevel, false); private DexBuilder dexBuilder; public void setDexBuilder(DexBuilder dexBuilder) { this.dexBuilder = dexBuilder; } - public void setApiLevel(int apiLevel) { - this.opcodes = new Opcodes(apiLevel); + public void setApiLevel(int apiLevel, boolean experimental) { + this.opcodes = new Opcodes(apiLevel, experimental); this.apiLevel = apiLevel; } @@ -405,7 +416,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "smali_file" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:159:1: smali_file returns [ClassDef classDef] : ^( I_CLASS_DEF header methods fields annotations ) ; + // /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 ) ; public final ClassDef smali_file() throws RecognitionException { ClassDef classDef = null; @@ -416,8 +427,8 @@ public class smaliTreeWalker extends TreeParser { List<BuilderMethod> methods4 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:160:3: ( ^( I_CLASS_DEF header methods fields annotations ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:160:5: ^( I_CLASS_DEF header methods fields annotations ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:160:3: ( ^( I_CLASS_DEF header methods fields annotations ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:160:5: ^( I_CLASS_DEF header methods fields annotations ) { match(input,I_CLASS_DEF,FOLLOW_I_CLASS_DEF_in_smali_file52); match(input, Token.DOWN, null); @@ -473,7 +484,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "header" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ; + // /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 ; public final smaliTreeWalker.header_return header() throws RecognitionException { smaliTreeWalker.header_return retval = new smaliTreeWalker.header_return(); retval.start = input.LT(1); @@ -484,14 +495,14 @@ public class smaliTreeWalker extends TreeParser { String source_spec8 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:3: ( class_spec ( super_spec )? implements_list source_spec ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:3: class_spec ( super_spec )? implements_list source_spec + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:3: ( class_spec ( super_spec )? implements_list source_spec ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:3: class_spec ( super_spec )? implements_list source_spec { pushFollow(FOLLOW_class_spec_in_header85); class_spec5=class_spec(); state._fsp--; - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:14: ( super_spec )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:14: ( super_spec )? int alt1=2; int LA1_0 = input.LA(1); if ( (LA1_0==I_SUPER) ) { @@ -499,7 +510,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt1) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:14: super_spec + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:14: super_spec { pushFollow(FOLLOW_super_spec_in_header87); super_spec6=super_spec(); @@ -548,7 +559,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "class_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:185:1: class_spec returns [String type, int accessFlags] : CLASS_DESCRIPTOR access_list ; + // /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 ; public final smaliTreeWalker.class_spec_return class_spec() throws RecognitionException { smaliTreeWalker.class_spec_return retval = new smaliTreeWalker.class_spec_return(); retval.start = input.LT(1); @@ -557,8 +568,8 @@ public class smaliTreeWalker extends TreeParser { int access_list10 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:186:3: ( CLASS_DESCRIPTOR access_list ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:186:5: CLASS_DESCRIPTOR access_list + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:186:3: ( CLASS_DESCRIPTOR access_list ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:186:5: CLASS_DESCRIPTOR access_list { CLASS_DESCRIPTOR9=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec110); pushFollow(FOLLOW_access_list_in_class_spec112); @@ -586,7 +597,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "super_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:192:1: super_spec returns [String type] : ^( I_SUPER CLASS_DESCRIPTOR ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:192:1: super_spec returns [String type] : ^( I_SUPER CLASS_DESCRIPTOR ) ; public final String super_spec() throws RecognitionException { String type = null; @@ -594,8 +605,8 @@ public class smaliTreeWalker extends TreeParser { CommonTree CLASS_DESCRIPTOR11=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:193:3: ( ^( I_SUPER CLASS_DESCRIPTOR ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:193:5: ^( I_SUPER CLASS_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:193:3: ( ^( I_SUPER CLASS_DESCRIPTOR ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:193:5: ^( I_SUPER CLASS_DESCRIPTOR ) { match(input,I_SUPER,FOLLOW_I_SUPER_in_super_spec130); match(input, Token.DOWN, null); @@ -622,7 +633,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "implements_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:199:1: implements_spec returns [String type] : ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:199:1: implements_spec returns [String type] : ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) ; public final String implements_spec() throws RecognitionException { String type = null; @@ -630,8 +641,8 @@ public class smaliTreeWalker extends TreeParser { CommonTree CLASS_DESCRIPTOR12=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:200:3: ( ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:200:5: ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:200:3: ( ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:200:5: ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) { match(input,I_IMPLEMENTS,FOLLOW_I_IMPLEMENTS_in_implements_spec152); match(input, Token.DOWN, null); @@ -658,7 +669,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "implements_list" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:205:1: implements_list returns [List<String> implementsList] : ( implements_spec )* ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:205:1: implements_list returns [List<String> implementsList] : ( implements_spec )* ; public final List<String> implements_list() throws RecognitionException { List<String> implementsList = null; @@ -667,11 +678,11 @@ public class smaliTreeWalker extends TreeParser { List<String> typeList; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:207:3: ( ( implements_spec )* ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:207:5: ( implements_spec )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:207:3: ( ( implements_spec )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:207:5: ( implements_spec )* { typeList = Lists.newArrayList(); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:208:5: ( implements_spec )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:208:5: ( implements_spec )* loop2: while (true) { int alt2=2; @@ -682,7 +693,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt2) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:208:6: implements_spec + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:208:6: implements_spec { pushFollow(FOLLOW_implements_spec_in_implements_list184); implements_spec13=implements_spec(); @@ -721,7 +732,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "source_spec" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:217:1: source_spec returns [String source] : ( ^( I_SOURCE string_literal ) |); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:217:1: source_spec returns [String source] : ( ^( I_SOURCE string_literal ) |); public final String source_spec() throws RecognitionException { String source = null; @@ -729,7 +740,7 @@ public class smaliTreeWalker extends TreeParser { String string_literal14 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:218:3: ( ^( I_SOURCE string_literal ) |) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:218:3: ( ^( I_SOURCE string_literal ) |) int alt3=2; int LA3_0 = input.LA(1); if ( (LA3_0==I_SOURCE) ) { @@ -747,7 +758,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt3) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:218:5: ^( I_SOURCE string_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:218:5: ^( I_SOURCE string_literal ) { source = null; match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source_spec213); @@ -762,7 +773,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:220:16: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:220:16: { } break; @@ -783,7 +794,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "access_list" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:222:1: access_list returns [int value] : ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) ; + // /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 )* ) ; public final int access_list() throws RecognitionException { int value = 0; @@ -794,13 +805,13 @@ public class smaliTreeWalker extends TreeParser { value = 0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:227:3: ( ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:227:5: ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:227:3: ( ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:227:5: ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) { match(input,I_ACCESS_LIST,FOLLOW_I_ACCESS_LIST_in_access_list248); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:228:7: ( ACCESS_SPEC )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:228:7: ( ACCESS_SPEC )* loop4: while (true) { int alt4=2; @@ -811,7 +822,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt4) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:229:9: ACCESS_SPEC + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:229:9: ACCESS_SPEC { ACCESS_SPEC15=(CommonTree)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list266); @@ -845,7 +856,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "fields" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:236:1: fields returns [List<BuilderField> fields] : ^( I_FIELDS ( field )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:236:1: fields returns [List<BuilderField> fields] : ^( I_FIELDS ( field )* ) ; public final List<BuilderField> fields() throws RecognitionException { List<BuilderField> fields = null; @@ -854,13 +865,13 @@ public class smaliTreeWalker extends TreeParser { fields = Lists.newArrayList(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:238:3: ( ^( I_FIELDS ( field )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:238:5: ^( I_FIELDS ( field )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:238:3: ( ^( I_FIELDS ( field )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:238:5: ^( I_FIELDS ( field )* ) { match(input,I_FIELDS,FOLLOW_I_FIELDS_in_fields308); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:239:7: ( field )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:239:7: ( field )* loop5: while (true) { int alt5=2; @@ -871,7 +882,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt5) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:239:8: field + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:239:8: field { pushFollow(FOLLOW_field_in_fields317); field16=field(); @@ -908,7 +919,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "methods" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:244:1: methods returns [List<BuilderMethod> methods] : ^( I_METHODS ( method )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:244:1: methods returns [List<BuilderMethod> methods] : ^( I_METHODS ( method )* ) ; public final List<BuilderMethod> methods() throws RecognitionException { List<BuilderMethod> methods = null; @@ -917,13 +928,13 @@ public class smaliTreeWalker extends TreeParser { methods = Lists.newArrayList(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:246:3: ( ^( I_METHODS ( method )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:246:5: ^( I_METHODS ( method )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:246:3: ( ^( I_METHODS ( method )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:246:5: ^( I_METHODS ( method )* ) { match(input,I_METHODS,FOLLOW_I_METHODS_in_methods349); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:247:7: ( method )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:247:7: ( method )* loop6: while (true) { int alt6=2; @@ -934,7 +945,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt6) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:247:8: method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:247:8: method { pushFollow(FOLLOW_method_in_methods358); method17=method(); @@ -971,7 +982,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "field" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:252:1: field returns [BuilderField field] : ^( I_FIELD SIMPLE_NAME access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) field_initial_value ( annotations )? ) ; + // /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 )? ) ; public final BuilderField field() throws RecognitionException { BuilderField field = null; @@ -983,8 +994,8 @@ public class smaliTreeWalker extends TreeParser { Set<Annotation> annotations22 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:3: ( ^( I_FIELD SIMPLE_NAME access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) field_initial_value ( annotations )? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:4: ^( I_FIELD SIMPLE_NAME access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) field_initial_value ( annotations )? ) + // /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 )? ) ) + // /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 )? ) { match(input,I_FIELD,FOLLOW_I_FIELD_in_field383); match(input, Token.DOWN, null); @@ -1005,7 +1016,7 @@ public class smaliTreeWalker extends TreeParser { field_initial_value19=field_initial_value(); state._fsp--; - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:98: ( annotations )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:253:98: ( annotations )? int alt7=2; int LA7_0 = input.LA(1); if ( (LA7_0==I_ANNOTATIONS) ) { @@ -1013,7 +1024,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt7) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:98: annotations + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:253:98: annotations { pushFollow(FOLLOW_annotations_in_field397); annotations22=annotations(); @@ -1054,7 +1065,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "field_initial_value" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:267:1: field_initial_value returns [EncodedValue encodedValue] : ( ^( I_FIELD_INITIAL_VALUE literal ) |); + // /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 ) |); public final EncodedValue field_initial_value() throws RecognitionException { EncodedValue encodedValue = null; @@ -1062,7 +1073,7 @@ public class smaliTreeWalker extends TreeParser { EncodedValue literal23 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:268:3: ( ^( I_FIELD_INITIAL_VALUE literal ) |) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:268:3: ( ^( I_FIELD_INITIAL_VALUE literal ) |) int alt8=2; int LA8_0 = input.LA(1); if ( (LA8_0==I_FIELD_INITIAL_VALUE) ) { @@ -1080,7 +1091,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt8) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:268:5: ^( I_FIELD_INITIAL_VALUE literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:268:5: ^( I_FIELD_INITIAL_VALUE literal ) { match(input,I_FIELD_INITIAL_VALUE,FOLLOW_I_FIELD_INITIAL_VALUE_in_field_initial_value418); match(input, Token.DOWN, null); @@ -1094,7 +1105,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:269:16: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:269:16: { } break; @@ -1115,7 +1126,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ); + // /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 ); public final EncodedValue literal() throws RecognitionException { EncodedValue encodedValue = null; @@ -1137,7 +1148,7 @@ public class smaliTreeWalker extends TreeParser { FieldReference enum_literal38 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ) + // /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 ) int alt9=16; switch ( input.LA(1) ) { case INTEGER_LITERAL: @@ -1230,7 +1241,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt9) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:272:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:272:5: integer_literal { pushFollow(FOLLOW_integer_literal_in_literal442); integer_literal24=integer_literal(); @@ -1240,7 +1251,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:273:5: long_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:273:5: long_literal { pushFollow(FOLLOW_long_literal_in_literal450); long_literal25=long_literal(); @@ -1250,7 +1261,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:274:5: short_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:274:5: short_literal { pushFollow(FOLLOW_short_literal_in_literal458); short_literal26=short_literal(); @@ -1260,7 +1271,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:275:5: byte_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:275:5: byte_literal { pushFollow(FOLLOW_byte_literal_in_literal466); byte_literal27=byte_literal(); @@ -1270,7 +1281,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:276:5: float_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:276:5: float_literal { pushFollow(FOLLOW_float_literal_in_literal474); float_literal28=float_literal(); @@ -1280,7 +1291,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:277:5: double_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:277:5: double_literal { pushFollow(FOLLOW_double_literal_in_literal482); double_literal29=double_literal(); @@ -1290,7 +1301,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:278:5: char_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:278:5: char_literal { pushFollow(FOLLOW_char_literal_in_literal490); char_literal30=char_literal(); @@ -1300,7 +1311,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:279:5: string_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:279:5: string_literal { pushFollow(FOLLOW_string_literal_in_literal498); string_literal31=string_literal(); @@ -1310,7 +1321,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 9 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:280:5: bool_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:280:5: bool_literal { pushFollow(FOLLOW_bool_literal_in_literal506); bool_literal32=bool_literal(); @@ -1320,14 +1331,14 @@ public class smaliTreeWalker extends TreeParser { } break; case 10 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:281:5: NULL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:281:5: NULL_LITERAL { match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal514); encodedValue = ImmutableNullEncodedValue.INSTANCE; } break; case 11 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:282:5: type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:282:5: type_descriptor { pushFollow(FOLLOW_type_descriptor_in_literal522); type_descriptor33=type_descriptor(); @@ -1337,7 +1348,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 12 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:283:5: array_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:283:5: array_literal { pushFollow(FOLLOW_array_literal_in_literal530); array_literal34=array_literal(); @@ -1347,7 +1358,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 13 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:284:5: subannotation + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:284:5: subannotation { pushFollow(FOLLOW_subannotation_in_literal538); subannotation35=subannotation(); @@ -1357,7 +1368,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 14 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:285:5: field_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:285:5: field_literal { pushFollow(FOLLOW_field_literal_in_literal546); field_literal36=field_literal(); @@ -1367,7 +1378,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 15 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:286:5: method_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:286:5: method_literal { pushFollow(FOLLOW_method_literal_in_literal554); method_literal37=method_literal(); @@ -1377,7 +1388,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 16 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:287:5: enum_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:287:5: enum_literal { pushFollow(FOLLOW_enum_literal_in_literal562); enum_literal38=enum_literal(); @@ -1403,7 +1414,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "fixed_64bit_literal_number" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ); + // /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 ); public final Number fixed_64bit_literal_number() throws RecognitionException { Number value = null; @@ -1418,7 +1429,7 @@ public class smaliTreeWalker extends TreeParser { boolean bool_literal46 =false; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:291:3: ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | bool_literal ) + // /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 ) int alt10=8; switch ( input.LA(1) ) { case INTEGER_LITERAL: @@ -1468,7 +1479,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt10) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:291:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:291:5: integer_literal { pushFollow(FOLLOW_integer_literal_in_fixed_64bit_literal_number578); integer_literal39=integer_literal(); @@ -1478,7 +1489,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:292:5: long_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:292:5: long_literal { pushFollow(FOLLOW_long_literal_in_fixed_64bit_literal_number586); long_literal40=long_literal(); @@ -1488,7 +1499,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:293:5: short_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:293:5: short_literal { pushFollow(FOLLOW_short_literal_in_fixed_64bit_literal_number594); short_literal41=short_literal(); @@ -1498,7 +1509,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:294:5: byte_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:294:5: byte_literal { pushFollow(FOLLOW_byte_literal_in_fixed_64bit_literal_number602); byte_literal42=byte_literal(); @@ -1508,7 +1519,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:295:5: float_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:295:5: float_literal { pushFollow(FOLLOW_float_literal_in_fixed_64bit_literal_number610); float_literal43=float_literal(); @@ -1518,7 +1529,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:296:5: double_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:296:5: double_literal { pushFollow(FOLLOW_double_literal_in_fixed_64bit_literal_number618); double_literal44=double_literal(); @@ -1528,7 +1539,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:297:5: char_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:297:5: char_literal { pushFollow(FOLLOW_char_literal_in_fixed_64bit_literal_number626); char_literal45=char_literal(); @@ -1538,7 +1549,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:298:5: bool_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:298:5: bool_literal { pushFollow(FOLLOW_bool_literal_in_fixed_64bit_literal_number634); bool_literal46=bool_literal(); @@ -1564,7 +1575,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "fixed_64bit_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ); + // /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 ); public final long fixed_64bit_literal() throws RecognitionException { long value = 0; @@ -1579,7 +1590,7 @@ public class smaliTreeWalker extends TreeParser { boolean bool_literal54 =false; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:301:3: ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | bool_literal ) + // /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 ) int alt11=8; switch ( input.LA(1) ) { case INTEGER_LITERAL: @@ -1629,7 +1640,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt11) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:301:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:301:5: integer_literal { pushFollow(FOLLOW_integer_literal_in_fixed_64bit_literal649); integer_literal47=integer_literal(); @@ -1639,7 +1650,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:302:5: long_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:302:5: long_literal { pushFollow(FOLLOW_long_literal_in_fixed_64bit_literal657); long_literal48=long_literal(); @@ -1649,7 +1660,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:303:5: short_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:303:5: short_literal { pushFollow(FOLLOW_short_literal_in_fixed_64bit_literal665); short_literal49=short_literal(); @@ -1659,7 +1670,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:304:5: byte_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:304:5: byte_literal { pushFollow(FOLLOW_byte_literal_in_fixed_64bit_literal673); byte_literal50=byte_literal(); @@ -1669,7 +1680,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:305:5: float_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:305:5: float_literal { pushFollow(FOLLOW_float_literal_in_fixed_64bit_literal681); float_literal51=float_literal(); @@ -1679,7 +1690,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:306:5: double_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:306:5: double_literal { pushFollow(FOLLOW_double_literal_in_fixed_64bit_literal689); double_literal52=double_literal(); @@ -1689,7 +1700,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:307:5: char_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:307:5: char_literal { pushFollow(FOLLOW_char_literal_in_fixed_64bit_literal697); char_literal53=char_literal(); @@ -1699,7 +1710,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:308:5: bool_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:308:5: bool_literal { pushFollow(FOLLOW_bool_literal_in_fixed_64bit_literal705); bool_literal54=bool_literal(); @@ -1725,7 +1736,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "fixed_32bit_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:312:1: fixed_32bit_literal returns [int value] : ( integer_literal | long_literal | short_literal | byte_literal | float_literal | char_literal | bool_literal ); + // /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 ); public final int fixed_32bit_literal() throws RecognitionException { int value = 0; @@ -1739,7 +1750,7 @@ public class smaliTreeWalker extends TreeParser { boolean bool_literal61 =false; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:313:3: ( integer_literal | long_literal | short_literal | byte_literal | float_literal | char_literal | bool_literal ) + // /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 ) int alt12=7; switch ( input.LA(1) ) { case INTEGER_LITERAL: @@ -1784,7 +1795,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt12) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:313:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:313:5: integer_literal { pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal722); integer_literal55=integer_literal(); @@ -1794,7 +1805,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:314:5: long_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:314:5: long_literal { pushFollow(FOLLOW_long_literal_in_fixed_32bit_literal730); long_literal56=long_literal(); @@ -1804,7 +1815,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:315:5: short_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:315:5: short_literal { pushFollow(FOLLOW_short_literal_in_fixed_32bit_literal738); short_literal57=short_literal(); @@ -1814,7 +1825,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:316:5: byte_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:316:5: byte_literal { pushFollow(FOLLOW_byte_literal_in_fixed_32bit_literal746); byte_literal58=byte_literal(); @@ -1824,7 +1835,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:317:5: float_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:317:5: float_literal { pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal754); float_literal59=float_literal(); @@ -1834,7 +1845,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:318:5: char_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:318:5: char_literal { pushFollow(FOLLOW_char_literal_in_fixed_32bit_literal762); char_literal60=char_literal(); @@ -1844,7 +1855,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:319:5: bool_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:319:5: bool_literal { pushFollow(FOLLOW_bool_literal_in_fixed_32bit_literal770); bool_literal61=bool_literal(); @@ -1870,7 +1881,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "array_elements" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:321:1: array_elements returns [List<Number> elements] : ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) ; + // /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 )* ) ; public final List<Number> array_elements() throws RecognitionException { List<Number> elements = null; @@ -1878,14 +1889,14 @@ public class smaliTreeWalker extends TreeParser { Number fixed_64bit_literal_number62 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:322:3: ( ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:322:5: ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:322:3: ( ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:322:5: ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) { elements = Lists.newArrayList(); match(input,I_ARRAY_ELEMENTS,FOLLOW_I_ARRAY_ELEMENTS_in_array_elements792); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:324:7: ( fixed_64bit_literal_number )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:324:7: ( fixed_64bit_literal_number )* loop13: while (true) { int alt13=2; @@ -1896,7 +1907,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt13) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:324:8: fixed_64bit_literal_number + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:324:8: fixed_64bit_literal_number { pushFollow(FOLLOW_fixed_64bit_literal_number_in_array_elements801); fixed_64bit_literal_number62=fixed_64bit_literal_number(); @@ -1933,7 +1944,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "packed_switch_elements" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:329:1: packed_switch_elements returns [List<Label> elements] : ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) ; + // /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 )* ) ; public final List<Label> packed_switch_elements() throws RecognitionException { List<Label> elements = null; @@ -1942,13 +1953,13 @@ public class smaliTreeWalker extends TreeParser { elements = Lists.newArrayList(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:331:3: ( ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:332:5: ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:331:3: ( ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:332:5: ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) { match(input,I_PACKED_SWITCH_ELEMENTS,FOLLOW_I_PACKED_SWITCH_ELEMENTS_in_packed_switch_elements837); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:333:7: ( label_ref )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:333:7: ( label_ref )* loop14: while (true) { int alt14=2; @@ -1959,7 +1970,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt14) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:333:8: label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:333:8: label_ref { pushFollow(FOLLOW_label_ref_in_packed_switch_elements846); label_ref63=label_ref(); @@ -1994,7 +2005,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "sparse_switch_elements" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:336:1: sparse_switch_elements returns [List<SwitchLabelElement> elements] : ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) ; + // /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 )* ) ; public final List<SwitchLabelElement> sparse_switch_elements() throws RecognitionException { List<SwitchLabelElement> elements = null; @@ -2004,13 +2015,13 @@ public class smaliTreeWalker extends TreeParser { elements = Lists.newArrayList(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:338:3: ( ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:339:5: ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:338:3: ( ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:339:5: ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) { match(input,I_SPARSE_SWITCH_ELEMENTS,FOLLOW_I_SPARSE_SWITCH_ELEMENTS_in_sparse_switch_elements881); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:340:8: ( fixed_32bit_literal label_ref )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:340:8: ( fixed_32bit_literal label_ref )* loop15: while (true) { int alt15=2; @@ -2021,7 +2032,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt15) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:340:9: fixed_32bit_literal label_ref + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:340:9: fixed_32bit_literal label_ref { pushFollow(FOLLOW_fixed_32bit_literal_in_sparse_switch_elements891); fixed_32bit_literal64=fixed_32bit_literal(); @@ -2070,7 +2081,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ) ; + // /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 ) ; public final BuilderMethod method() throws RecognitionException { method_stack.push(new method_scope()); BuilderMethod ret = null; @@ -2090,8 +2101,8 @@ public class smaliTreeWalker extends TreeParser { method_stack.peek().isStatic = false; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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 ) + // /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 ) ) + // /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 ) { I_METHOD70=(CommonTree)match(input,I_METHOD,FOLLOW_I_METHOD_in_method945); match(input, Token.DOWN, null); @@ -2109,7 +2120,7 @@ public class smaliTreeWalker extends TreeParser { method_stack.peek().methodParameterRegisters = MethodUtil.getParameterRegisterCount((method_name_and_prototype67!=null?((smaliTreeWalker.method_name_and_prototype_return)method_name_and_prototype67).parameters:null), method_stack.peek().isStatic); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:371:7: ( ( registers_directive ) |) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:371:7: ( ( registers_directive ) |) int alt16=2; int LA16_0 = input.LA(1); if ( (LA16_0==I_LOCALS||LA16_0==I_REGISTERS) ) { @@ -2127,10 +2138,10 @@ public class smaliTreeWalker extends TreeParser { switch (alt16) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:372:9: ( registers_directive ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:372:9: ( registers_directive ) { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:372:9: ( registers_directive ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:372:10: registers_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:372:9: ( registers_directive ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:372:10: registers_directive { pushFollow(FOLLOW_registers_directive_in_method988); registers_directive68=registers_directive(); @@ -2151,7 +2162,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:385:9: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:385:9: { method_stack.peek().methodBuilder = new MethodImplementationBuilder(0); @@ -2274,7 +2285,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "method_prototype" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:467:1: method_prototype returns [List<String> parameters, String returnType] : ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) method_type_list ) ; + // /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 ) ; public final smaliTreeWalker.method_prototype_return method_prototype() throws RecognitionException { smaliTreeWalker.method_prototype_return retval = new smaliTreeWalker.method_prototype_return(); retval.start = input.LT(1); @@ -2283,8 +2294,8 @@ public class smaliTreeWalker extends TreeParser { List<String> method_type_list73 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:468:3: ( ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) method_type_list ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:468:5: ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) method_type_list ) + // /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 ) ) + // /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 ) { match(input,I_METHOD_PROTOTYPE,FOLLOW_I_METHOD_PROTOTYPE_in_method_prototype1094); match(input, Token.DOWN, null); @@ -2329,7 +2340,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "method_name_and_prototype" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:474:1: method_name_and_prototype returns [String name, List<SmaliMethodParameter> parameters, String returnType] : SIMPLE_NAME method_prototype ; + // /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 ; public final smaliTreeWalker.method_name_and_prototype_return method_name_and_prototype() throws RecognitionException { smaliTreeWalker.method_name_and_prototype_return retval = new smaliTreeWalker.method_name_and_prototype_return(); retval.start = input.LT(1); @@ -2338,8 +2349,8 @@ public class smaliTreeWalker extends TreeParser { TreeRuleReturnScope method_prototype75 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:475:3: ( SIMPLE_NAME method_prototype ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:475:5: SIMPLE_NAME method_prototype + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:475:3: ( SIMPLE_NAME method_prototype ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:475:5: SIMPLE_NAME method_prototype { SIMPLE_NAME74=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120); pushFollow(FOLLOW_method_prototype_in_method_name_and_prototype1122); @@ -2377,7 +2388,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "method_type_list" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:491:1: method_type_list returns [List<String> types] : ( nonvoid_type_descriptor )* ; + // /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 )* ; public final List<String> method_type_list() throws RecognitionException { List<String> types = null; @@ -2388,10 +2399,10 @@ public class smaliTreeWalker extends TreeParser { types = Lists.newArrayList(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:496:3: ( ( nonvoid_type_descriptor )* ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:496:3: ( ( nonvoid_type_descriptor )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* loop17: while (true) { int alt17=2; @@ -2402,7 +2413,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt17) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:497:7: nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:497:7: nonvoid_type_descriptor { pushFollow(FOLLOW_nonvoid_type_descriptor_in_method_type_list1156); nonvoid_type_descriptor76=nonvoid_type_descriptor(); @@ -2436,7 +2447,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "method_reference" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:504:1: method_reference returns [ImmutableMethodReference methodReference] : ( reference_type_descriptor )? SIMPLE_NAME method_prototype ; + // /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 ; public final ImmutableMethodReference method_reference() throws RecognitionException { ImmutableMethodReference methodReference = null; @@ -2446,10 +2457,10 @@ public class smaliTreeWalker extends TreeParser { TreeRuleReturnScope method_prototype79 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:505:3: ( ( reference_type_descriptor )? SIMPLE_NAME method_prototype ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:505:5: ( reference_type_descriptor )? SIMPLE_NAME method_prototype + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:3: ( ( reference_type_descriptor )? SIMPLE_NAME method_prototype ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:5: ( reference_type_descriptor )? SIMPLE_NAME method_prototype { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:505:5: ( reference_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:5: ( reference_type_descriptor )? int alt18=2; int LA18_0 = input.LA(1); if ( (LA18_0==ARRAY_DESCRIPTOR||LA18_0==CLASS_DESCRIPTOR) ) { @@ -2457,7 +2468,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt18) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:505:5: reference_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:5: reference_type_descriptor { pushFollow(FOLLOW_reference_type_descriptor_in_method_reference1185); reference_type_descriptor77=reference_type_descriptor(); @@ -2500,7 +2511,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "field_reference" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:517:1: field_reference returns [ImmutableFieldReference fieldReference] : ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor ; + // /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 ; public final ImmutableFieldReference field_reference() throws RecognitionException { ImmutableFieldReference fieldReference = null; @@ -2510,10 +2521,10 @@ public class smaliTreeWalker extends TreeParser { TreeRuleReturnScope nonvoid_type_descriptor82 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:518:3: ( ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:518:5: ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:3: ( ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:5: ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:518:5: ( reference_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:5: ( reference_type_descriptor )? int alt19=2; int LA19_0 = input.LA(1); if ( (LA19_0==ARRAY_DESCRIPTOR||LA19_0==CLASS_DESCRIPTOR) ) { @@ -2521,7 +2532,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt19) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:518:5: reference_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:5: reference_type_descriptor { pushFollow(FOLLOW_reference_type_descriptor_in_field_reference1207); reference_type_descriptor80=reference_type_descriptor(); @@ -2569,7 +2580,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "registers_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:530:1: registers_directive returns [boolean isLocalsDirective, int registers] : ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) ; + // /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 ) ; public final smaliTreeWalker.registers_directive_return registers_directive() throws RecognitionException { smaliTreeWalker.registers_directive_return retval = new smaliTreeWalker.registers_directive_return(); retval.start = input.LT(1); @@ -2577,11 +2588,11 @@ public class smaliTreeWalker extends TreeParser { short short_integral_literal83 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:531:3: ( ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:531:5: ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:531:3: ( ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:531:5: ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) { retval.registers = 0; - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:532:7: ( I_REGISTERS | I_LOCALS ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:532:7: ( I_REGISTERS | I_LOCALS ) int alt20=2; int LA20_0 = input.LA(1); if ( (LA20_0==I_REGISTERS) ) { @@ -2599,14 +2610,14 @@ public class smaliTreeWalker extends TreeParser { switch (alt20) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:532:9: I_REGISTERS + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:532:9: I_REGISTERS { match(input,I_REGISTERS,FOLLOW_I_REGISTERS_in_registers_directive1238); retval.isLocalsDirective = false; } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:533:9: I_LOCALS + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:533:9: I_LOCALS { match(input,I_LOCALS,FOLLOW_I_LOCALS_in_registers_directive1250); retval.isLocalsDirective = true; @@ -2620,7 +2631,7 @@ public class smaliTreeWalker extends TreeParser { short_integral_literal83=short_integral_literal(); state._fsp--; - retval.registers = short_integral_literal83; + retval.registers = short_integral_literal83 & 0xFFFF; match(input, Token.UP, null); } @@ -2640,13 +2651,13 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "label_def" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:538:1: label_def : ^( I_LABEL SIMPLE_NAME ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:538:1: label_def : ^( I_LABEL SIMPLE_NAME ) ; public final void label_def() throws RecognitionException { CommonTree SIMPLE_NAME84=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:539:3: ( ^( I_LABEL SIMPLE_NAME ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:539:5: ^( I_LABEL SIMPLE_NAME ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:539:3: ( ^( I_LABEL SIMPLE_NAME ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:539:5: ^( I_LABEL SIMPLE_NAME ) { match(input,I_LABEL,FOLLOW_I_LABEL_in_label_def1288); match(input, Token.DOWN, null); @@ -2672,20 +2683,20 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "catches" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:544:1: catches returns [List<BuilderTryBlock> tryBlocks] : ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ; + // /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 )* ) ; public final List<BuilderTryBlock> catches() throws RecognitionException { List<BuilderTryBlock> tryBlocks = null; tryBlocks = Lists.newArrayList(); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:3: ( ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:5: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:3: ( ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:5: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) { match(input,I_CATCHES,FOLLOW_I_CATCHES_in_catches1316); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:17: ( catch_directive )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:17: ( catch_directive )* loop21: while (true) { int alt21=2; @@ -2696,7 +2707,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt21) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:17: catch_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:17: catch_directive { pushFollow(FOLLOW_catch_directive_in_catches1318); catch_directive(); @@ -2710,7 +2721,7 @@ public class smaliTreeWalker extends TreeParser { } } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:34: ( catchall_directive )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:34: ( catchall_directive )* loop22: while (true) { int alt22=2; @@ -2721,7 +2732,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt22) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:34: catchall_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:34: catchall_directive { pushFollow(FOLLOW_catchall_directive_in_catches1321); catchall_directive(); @@ -2755,7 +2766,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "catch_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:548:1: catch_directive : ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) ; + // /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 ) ; public final void catch_directive() throws RecognitionException { Label from =null; Label to =null; @@ -2763,8 +2774,8 @@ public class smaliTreeWalker extends TreeParser { TreeRuleReturnScope nonvoid_type_descriptor85 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:549:3: ( ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:549:5: ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) + // /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 ) ) + // /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 ) { match(input,I_CATCH,FOLLOW_I_CATCH_in_catch_directive1334); match(input, Token.DOWN, null); @@ -2806,15 +2817,15 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "catchall_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:555:1: catchall_directive : ^( I_CATCHALL from= label_ref to= label_ref using= label_ref ) ; + // /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 ) ; public final void catchall_directive() throws RecognitionException { Label from =null; Label to =null; Label using =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:556:3: ( ^( I_CATCHALL from= label_ref to= label_ref using= label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:556:5: ^( I_CATCHALL from= label_ref to= label_ref using= label_ref ) + // /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 ) ) + // /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 ) { match(input,I_CATCHALL,FOLLOW_I_CATCHALL_in_catchall_directive1364); match(input, Token.DOWN, null); @@ -2851,16 +2862,16 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "parameters" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:561:1: parameters[List<SmaliMethodParameter> parameters] : ^( I_PARAMETERS ( parameter[parameters] )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:561:1: parameters[List<SmaliMethodParameter> parameters] : ^( I_PARAMETERS ( parameter[parameters] )* ) ; public final void parameters(List<SmaliMethodParameter> parameters) throws RecognitionException { try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:562:3: ( ^( I_PARAMETERS ( parameter[parameters] )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:562:5: ^( I_PARAMETERS ( parameter[parameters] )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:3: ( ^( I_PARAMETERS ( parameter[parameters] )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:5: ^( I_PARAMETERS ( parameter[parameters] )* ) { match(input,I_PARAMETERS,FOLLOW_I_PARAMETERS_in_parameters1393); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:562:20: ( parameter[parameters] )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:20: ( parameter[parameters] )* loop23: while (true) { int alt23=2; @@ -2871,7 +2882,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt23) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:562:21: parameter[parameters] + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:21: parameter[parameters] { pushFollow(FOLLOW_parameter_in_parameters1396); parameter(parameters); @@ -2904,7 +2915,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "parameter" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:564:1: parameter[List<SmaliMethodParameter> parameters] : ^( I_PARAMETER REGISTER ( string_literal )? annotations ) ; + // /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 ) ; public final void parameter(List<SmaliMethodParameter> parameters) throws RecognitionException { CommonTree REGISTER86=null; CommonTree I_PARAMETER87=null; @@ -2912,13 +2923,13 @@ public class smaliTreeWalker extends TreeParser { Set<Annotation> annotations89 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:565:3: ( ^( I_PARAMETER REGISTER ( string_literal )? annotations ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:565:5: ^( I_PARAMETER REGISTER ( string_literal )? annotations ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:3: ( ^( I_PARAMETER REGISTER ( string_literal )? annotations ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:5: ^( I_PARAMETER REGISTER ( string_literal )? annotations ) { I_PARAMETER87=(CommonTree)match(input,I_PARAMETER,FOLLOW_I_PARAMETER_in_parameter1412); match(input, Token.DOWN, null); REGISTER86=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_parameter1414); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:565:28: ( string_literal )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:28: ( string_literal )? int alt24=2; int LA24_0 = input.LA(1); if ( (LA24_0==STRING_LITERAL) ) { @@ -2926,7 +2937,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt24) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:565:28: string_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:28: string_literal { pushFollow(FOLLOW_string_literal_in_parameter1416); string_literal88=string_literal(); @@ -2990,10 +3001,10 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "debug_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:598:1: debug_directive : ( line | local | end_local | restart_local | prologue | epilogue | source ); + // /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 ); public final void debug_directive() throws RecognitionException { try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:599:3: ( line | local | end_local | restart_local | prologue | epilogue | source ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:599:3: ( line | local | end_local | restart_local | prologue | epilogue | source ) int alt25=7; switch ( input.LA(1) ) { case I_LINE: @@ -3038,7 +3049,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt25) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:599:5: line + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:599:5: line { pushFollow(FOLLOW_line_in_debug_directive1436); line(); @@ -3047,7 +3058,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:600:5: local + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:600:5: local { pushFollow(FOLLOW_local_in_debug_directive1442); local(); @@ -3056,7 +3067,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:601:5: end_local + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:601:5: end_local { pushFollow(FOLLOW_end_local_in_debug_directive1448); end_local(); @@ -3065,7 +3076,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:5: restart_local + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:602:5: restart_local { pushFollow(FOLLOW_restart_local_in_debug_directive1454); restart_local(); @@ -3074,7 +3085,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:603:5: prologue + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:603:5: prologue { pushFollow(FOLLOW_prologue_in_debug_directive1460); prologue(); @@ -3083,7 +3094,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:604:5: epilogue + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:604:5: epilogue { pushFollow(FOLLOW_epilogue_in_debug_directive1466); epilogue(); @@ -3092,7 +3103,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:605:5: source + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:605:5: source { pushFollow(FOLLOW_source_in_debug_directive1472); source(); @@ -3116,13 +3127,13 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "line" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:607:1: line : ^( I_LINE integral_literal ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:607:1: line : ^( I_LINE integral_literal ) ; public final void line() throws RecognitionException { int integral_literal90 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:608:3: ( ^( I_LINE integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:608:5: ^( I_LINE integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:608:3: ( ^( I_LINE integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:608:5: ^( I_LINE integral_literal ) { match(input,I_LINE,FOLLOW_I_LINE_in_line1483); match(input, Token.DOWN, null); @@ -3151,7 +3162,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "local" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:613:1: local : ^( I_LOCAL REGISTER ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? ) ; + // /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 )? )? ) ; public final void local() throws RecognitionException { CommonTree REGISTER91=null; String name =null; @@ -3159,13 +3170,13 @@ public class smaliTreeWalker extends TreeParser { TreeRuleReturnScope nonvoid_type_descriptor92 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:3: ( ^( I_LOCAL REGISTER ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:5: ^( I_LOCAL REGISTER ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? ) + // /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 )? )? ) ) + // /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 )? )? ) { match(input,I_LOCAL,FOLLOW_I_LOCAL_in_local1503); match(input, Token.DOWN, null); REGISTER91=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_local1505); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:24: ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? + // /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 )? )? int alt29=2; int LA29_0 = input.LA(1); if ( (LA29_0==NULL_LITERAL||LA29_0==STRING_LITERAL) ) { @@ -3173,9 +3184,9 @@ public class smaliTreeWalker extends TreeParser { } switch (alt29) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:25: ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? + // /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 )? { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:25: ( NULL_LITERAL |name= string_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:25: ( NULL_LITERAL |name= string_literal ) int alt26=2; int LA26_0 = input.LA(1); if ( (LA26_0==NULL_LITERAL) ) { @@ -3193,13 +3204,13 @@ public class smaliTreeWalker extends TreeParser { switch (alt26) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:26: NULL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:26: NULL_LITERAL { match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local1509); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:41: name= string_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:41: name= string_literal { pushFollow(FOLLOW_string_literal_in_local1515); name=string_literal(); @@ -3210,7 +3221,7 @@ public class smaliTreeWalker extends TreeParser { } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:62: ( nonvoid_type_descriptor )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:62: ( nonvoid_type_descriptor )? int alt27=2; int LA27_0 = input.LA(1); if ( (LA27_0==ARRAY_DESCRIPTOR||LA27_0==CLASS_DESCRIPTOR||LA27_0==PRIMITIVE_TYPE) ) { @@ -3218,7 +3229,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt27) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:62: nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:62: nonvoid_type_descriptor { pushFollow(FOLLOW_nonvoid_type_descriptor_in_local1518); nonvoid_type_descriptor92=nonvoid_type_descriptor(); @@ -3229,7 +3240,7 @@ public class smaliTreeWalker extends TreeParser { } - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:96: (signature= string_literal )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:96: (signature= string_literal )? int alt28=2; int LA28_0 = input.LA(1); if ( (LA28_0==STRING_LITERAL) ) { @@ -3237,7 +3248,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt28) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:96: signature= string_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:96: signature= string_literal { pushFollow(FOLLOW_string_literal_in_local1523); signature=string_literal(); @@ -3278,13 +3289,13 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "end_local" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:623:1: end_local : ^( I_END_LOCAL REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:623:1: end_local : ^( I_END_LOCAL REGISTER ) ; public final void end_local() throws RecognitionException { CommonTree REGISTER93=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:624:3: ( ^( I_END_LOCAL REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:624:5: ^( I_END_LOCAL REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:624:3: ( ^( I_END_LOCAL REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:624:5: ^( I_END_LOCAL REGISTER ) { match(input,I_END_LOCAL,FOLLOW_I_END_LOCAL_in_end_local1544); match(input, Token.DOWN, null); @@ -3311,13 +3322,13 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "restart_local" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:630:1: restart_local : ^( I_RESTART_LOCAL REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:630:1: restart_local : ^( I_RESTART_LOCAL REGISTER ) ; public final void restart_local() throws RecognitionException { CommonTree REGISTER94=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:631:3: ( ^( I_RESTART_LOCAL REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:631:5: ^( I_RESTART_LOCAL REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:631:3: ( ^( I_RESTART_LOCAL REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:631:5: ^( I_RESTART_LOCAL REGISTER ) { match(input,I_RESTART_LOCAL,FOLLOW_I_RESTART_LOCAL_in_restart_local1564); match(input, Token.DOWN, null); @@ -3344,11 +3355,11 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "prologue" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:637:1: prologue : I_PROLOGUE ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:637:1: prologue : I_PROLOGUE ; public final void prologue() throws RecognitionException { try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:638:3: ( I_PROLOGUE ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:638:5: I_PROLOGUE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:638:3: ( I_PROLOGUE ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:638:5: I_PROLOGUE { match(input,I_PROLOGUE,FOLLOW_I_PROLOGUE_in_prologue1583); @@ -3370,11 +3381,11 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "epilogue" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:643:1: epilogue : I_EPILOGUE ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:643:1: epilogue : I_EPILOGUE ; public final void epilogue() throws RecognitionException { try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:3: ( I_EPILOGUE ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:5: I_EPILOGUE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:644:3: ( I_EPILOGUE ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:644:5: I_EPILOGUE { match(input,I_EPILOGUE,FOLLOW_I_EPILOGUE_in_epilogue1599); @@ -3396,18 +3407,18 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "source" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:649:1: source : ^( I_SOURCE ( string_literal )? ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:649:1: source : ^( I_SOURCE ( string_literal )? ) ; public final void source() throws RecognitionException { String string_literal95 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:650:3: ( ^( I_SOURCE ( string_literal )? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:650:5: ^( I_SOURCE ( string_literal )? ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:3: ( ^( I_SOURCE ( string_literal )? ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:5: ^( I_SOURCE ( string_literal )? ) { match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source1616); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:650:16: ( string_literal )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:16: ( string_literal )? int alt30=2; int LA30_0 = input.LA(1); if ( (LA30_0==STRING_LITERAL) ) { @@ -3415,7 +3426,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt30) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:650:16: string_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:16: string_literal { pushFollow(FOLLOW_string_literal_in_source1618); string_literal95=string_literal(); @@ -3448,16 +3459,16 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "ordered_method_items" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:655:1: ordered_method_items : ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) ; + // /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 )* ) ; public final void ordered_method_items() throws RecognitionException { try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:3: ( ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:5: ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:3: ( ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:5: ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) { match(input,I_ORDERED_METHOD_ITEMS,FOLLOW_I_ORDERED_METHOD_ITEMS_in_ordered_method_items1637); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:30: ( label_def | instruction | debug_directive )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:30: ( label_def | instruction | debug_directive )* loop31: while (true) { int alt31=4; @@ -3476,6 +3487,8 @@ public class smaliTreeWalker extends TreeParser { case I_STATEMENT_FORMAT20bc: case I_STATEMENT_FORMAT20t: case I_STATEMENT_FORMAT21c_FIELD: + case I_STATEMENT_FORMAT21c_LAMBDA: + case I_STATEMENT_FORMAT21c_METHOD: case I_STATEMENT_FORMAT21c_STRING: case I_STATEMENT_FORMAT21c_TYPE: case I_STATEMENT_FORMAT21ih: @@ -3484,11 +3497,13 @@ public class smaliTreeWalker extends TreeParser { case I_STATEMENT_FORMAT21t: case I_STATEMENT_FORMAT22b: case I_STATEMENT_FORMAT22c_FIELD: + case I_STATEMENT_FORMAT22c_STRING: case I_STATEMENT_FORMAT22c_TYPE: case I_STATEMENT_FORMAT22s: case I_STATEMENT_FORMAT22t: case I_STATEMENT_FORMAT22x: case I_STATEMENT_FORMAT23x: + case I_STATEMENT_FORMAT25x: case I_STATEMENT_FORMAT30t: case I_STATEMENT_FORMAT31c: case I_STATEMENT_FORMAT31i: @@ -3519,7 +3534,7 @@ public class smaliTreeWalker extends TreeParser { } switch (alt31) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:31: label_def + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:31: label_def { pushFollow(FOLLOW_label_def_in_ordered_method_items1640); label_def(); @@ -3528,7 +3543,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:43: instruction + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:43: instruction { pushFollow(FOLLOW_instruction_in_ordered_method_items1644); instruction(); @@ -3537,7 +3552,7 @@ public class smaliTreeWalker extends TreeParser { } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:57: debug_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:57: debug_directive { pushFollow(FOLLOW_debug_directive_in_ordered_method_items1648); debug_directive(); @@ -3570,7 +3585,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "label_ref" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:658:1: label_ref returns [Label label] : SIMPLE_NAME ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:658:1: label_ref returns [Label label] : SIMPLE_NAME ; public final Label label_ref() throws RecognitionException { Label label = null; @@ -3578,8 +3593,8 @@ public class smaliTreeWalker extends TreeParser { CommonTree SIMPLE_NAME96=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:659:3: ( SIMPLE_NAME ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:659:5: SIMPLE_NAME + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:659:3: ( SIMPLE_NAME ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:659:5: SIMPLE_NAME { SIMPLE_NAME96=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_label_ref1664); label = method_stack.peek().methodBuilder.getLabel((SIMPLE_NAME96!=null?SIMPLE_NAME96.getText():null)); @@ -3605,7 +3620,7 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "register_list" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:661:1: register_list returns [byte[] registers, byte registerCount] : ^( I_REGISTER_LIST ( REGISTER )* ) ; + // /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 )* ) ; public final smaliTreeWalker.register_list_return register_list() throws RecognitionException { smaliTreeWalker.register_list_return retval = new smaliTreeWalker.register_list_return(); retval.start = input.LT(1); @@ -3618,13 +3633,13 @@ public class smaliTreeWalker extends TreeParser { retval.registerCount = 0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:667:3: ( ^( I_REGISTER_LIST ( REGISTER )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:667:5: ^( I_REGISTER_LIST ( REGISTER )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:667:3: ( ^( I_REGISTER_LIST ( REGISTER )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:667:5: ^( I_REGISTER_LIST ( REGISTER )* ) { I_REGISTER_LIST97=(CommonTree)match(input,I_REGISTER_LIST,FOLLOW_I_REGISTER_LIST_in_register_list1689); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:668:7: ( REGISTER )* + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:668:7: ( REGISTER )* loop32: while (true) { int alt32=2; @@ -3635,7 +3650,7 @@ public class smaliTreeWalker extends TreeParser { switch (alt32) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:668:8: REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:668:8: REGISTER { REGISTER98=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_list1698); @@ -3671,6 +3686,79 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR end "register_list" + public static class register_list4_return extends TreeRuleReturnScope { + public byte[] registers; + public byte registerCount; + }; + + + // $ANTLR start "register_list4" + // /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 )* ) ; + public final smaliTreeWalker.register_list4_return register_list4() throws RecognitionException { + smaliTreeWalker.register_list4_return retval = new smaliTreeWalker.register_list4_return(); + retval.start = input.LT(1); + + CommonTree I_REGISTER_LIST99=null; + CommonTree REGISTER100=null; + + + retval.registers = new byte[4]; + retval.registerCount = 0; + + try { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:683:3: ( ^( I_REGISTER_LIST ( REGISTER )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:683:5: ^( I_REGISTER_LIST ( REGISTER )* ) + { + I_REGISTER_LIST99=(CommonTree)match(input,I_REGISTER_LIST,FOLLOW_I_REGISTER_LIST_in_register_list41732); + if ( input.LA(1)==Token.DOWN ) { + match(input, Token.DOWN, null); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:684:7: ( REGISTER )* + loop33: + while (true) { + int alt33=2; + int LA33_0 = input.LA(1); + if ( (LA33_0==REGISTER) ) { + alt33=1; + } + + switch (alt33) { + case 1 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:684:8: REGISTER + { + REGISTER100=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_list41741); + + if (retval.registerCount == 4) { + throw new SemanticException(input, I_REGISTER_LIST99, "A list4 of registers can only have a maximum of 4 " + + "registers. Use the <op>/range alternate opcode instead."); + } + retval.registers[retval.registerCount++] = parseRegister_nibble((REGISTER100!=null?REGISTER100.getText():null)); + + } + break; + + default : + break loop33; + } + } + + match(input, Token.UP, null); + } + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + // do for sure before leaving + } + return retval; + } + // $ANTLR end "register_list4" + + public static class register_range_return extends TreeRuleReturnScope { public int startRegister; public int endRegister; @@ -3678,44 +3766,44 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "register_range" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:677:1: register_range returns [int startRegister, int endRegister] : ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) ; + // /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 )? )? ) ; public final smaliTreeWalker.register_range_return register_range() throws RecognitionException { smaliTreeWalker.register_range_return retval = new smaliTreeWalker.register_range_return(); retval.start = input.LT(1); CommonTree startReg=null; CommonTree endReg=null; - CommonTree I_REGISTER_RANGE99=null; + CommonTree I_REGISTER_RANGE101=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:3: ( ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:5: ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:3: ( ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:5: ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) { - I_REGISTER_RANGE99=(CommonTree)match(input,I_REGISTER_RANGE,FOLLOW_I_REGISTER_RANGE_in_register_range1723); + I_REGISTER_RANGE101=(CommonTree)match(input,I_REGISTER_RANGE,FOLLOW_I_REGISTER_RANGE_in_register_range1766); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:24: (startReg= REGISTER (endReg= REGISTER )? )? - int alt34=2; - int LA34_0 = input.LA(1); - if ( (LA34_0==REGISTER) ) { - alt34=1; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:24: (startReg= REGISTER (endReg= REGISTER )? )? + int alt35=2; + int LA35_0 = input.LA(1); + if ( (LA35_0==REGISTER) ) { + alt35=1; } - switch (alt34) { + switch (alt35) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:25: startReg= REGISTER (endReg= REGISTER )? + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:25: startReg= REGISTER (endReg= REGISTER )? { - startReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1728); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:49: (endReg= REGISTER )? - int alt33=2; - int LA33_0 = input.LA(1); - if ( (LA33_0==REGISTER) ) { - alt33=1; + startReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1771); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:49: (endReg= REGISTER )? + int alt34=2; + int LA34_0 = input.LA(1); + if ( (LA34_0==REGISTER) ) { + alt34=1; } - switch (alt33) { + switch (alt34) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:49: endReg= REGISTER + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:49: endReg= REGISTER { - endReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1732); + endReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1775); } break; @@ -3743,7 +3831,7 @@ public class smaliTreeWalker extends TreeParser { int registerCount = retval.endRegister-retval.startRegister+1; if (registerCount < 1) { - throw new SemanticException(input, I_REGISTER_RANGE99, "A register range must have the lower register listed first"); + throw new SemanticException(input, I_REGISTER_RANGE101, "A register range must have the lower register listed first"); } } @@ -3764,32 +3852,32 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "verification_error_reference" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:698:1: verification_error_reference returns [ImmutableReference reference] : ( CLASS_DESCRIPTOR | field_reference | method_reference ); + // /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 ); public final ImmutableReference verification_error_reference() throws RecognitionException { ImmutableReference reference = null; - CommonTree CLASS_DESCRIPTOR100=null; - ImmutableFieldReference field_reference101 =null; - ImmutableMethodReference method_reference102 =null; + CommonTree CLASS_DESCRIPTOR102=null; + ImmutableFieldReference field_reference103 =null; + ImmutableMethodReference method_reference104 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:699:3: ( CLASS_DESCRIPTOR | field_reference | method_reference ) - int alt35=3; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:715:3: ( CLASS_DESCRIPTOR | field_reference | method_reference ) + int alt36=3; switch ( input.LA(1) ) { case CLASS_DESCRIPTOR: { - int LA35_1 = input.LA(2); - if ( (LA35_1==UP) ) { - alt35=1; + int LA36_1 = input.LA(2); + if ( (LA36_1==UP) ) { + alt36=1; } - else if ( (LA35_1==SIMPLE_NAME) ) { - int LA35_3 = input.LA(3); - if ( (LA35_3==ARRAY_DESCRIPTOR||LA35_3==CLASS_DESCRIPTOR||LA35_3==PRIMITIVE_TYPE) ) { - alt35=2; + else if ( (LA36_1==SIMPLE_NAME) ) { + int LA36_3 = input.LA(3); + if ( (LA36_3==ARRAY_DESCRIPTOR||LA36_3==CLASS_DESCRIPTOR||LA36_3==PRIMITIVE_TYPE) ) { + alt36=2; } - else if ( (LA35_3==I_METHOD_PROTOTYPE) ) { - alt35=3; + else if ( (LA36_3==I_METHOD_PROTOTYPE) ) { + alt36=3; } else { @@ -3799,7 +3887,7 @@ public class smaliTreeWalker extends TreeParser { input.consume(); } NoViableAltException nvae = - new NoViableAltException("", 35, 3, input); + new NoViableAltException("", 36, 3, input); throw nvae; } finally { input.rewind(nvaeMark); @@ -3813,7 +3901,7 @@ public class smaliTreeWalker extends TreeParser { try { input.consume(); NoViableAltException nvae = - new NoViableAltException("", 35, 1, input); + new NoViableAltException("", 36, 1, input); throw nvae; } finally { input.rewind(nvaeMark); @@ -3824,14 +3912,14 @@ public class smaliTreeWalker extends TreeParser { break; case ARRAY_DESCRIPTOR: { - int LA35_2 = input.LA(2); - if ( (LA35_2==SIMPLE_NAME) ) { - int LA35_3 = input.LA(3); - if ( (LA35_3==ARRAY_DESCRIPTOR||LA35_3==CLASS_DESCRIPTOR||LA35_3==PRIMITIVE_TYPE) ) { - alt35=2; + int LA36_2 = input.LA(2); + if ( (LA36_2==SIMPLE_NAME) ) { + int LA36_3 = input.LA(3); + if ( (LA36_3==ARRAY_DESCRIPTOR||LA36_3==CLASS_DESCRIPTOR||LA36_3==PRIMITIVE_TYPE) ) { + alt36=2; } - else if ( (LA35_3==I_METHOD_PROTOTYPE) ) { - alt35=3; + else if ( (LA36_3==I_METHOD_PROTOTYPE) ) { + alt36=3; } else { @@ -3841,7 +3929,7 @@ public class smaliTreeWalker extends TreeParser { input.consume(); } NoViableAltException nvae = - new NoViableAltException("", 35, 3, input); + new NoViableAltException("", 36, 3, input); throw nvae; } finally { input.rewind(nvaeMark); @@ -3855,7 +3943,7 @@ public class smaliTreeWalker extends TreeParser { try { input.consume(); NoViableAltException nvae = - new NoViableAltException("", 35, 2, input); + new NoViableAltException("", 36, 2, input); throw nvae; } finally { input.rewind(nvaeMark); @@ -3866,12 +3954,12 @@ public class smaliTreeWalker extends TreeParser { break; case SIMPLE_NAME: { - int LA35_3 = input.LA(2); - if ( (LA35_3==ARRAY_DESCRIPTOR||LA35_3==CLASS_DESCRIPTOR||LA35_3==PRIMITIVE_TYPE) ) { - alt35=2; + int LA36_3 = input.LA(2); + if ( (LA36_3==ARRAY_DESCRIPTOR||LA36_3==CLASS_DESCRIPTOR||LA36_3==PRIMITIVE_TYPE) ) { + alt36=2; } - else if ( (LA35_3==I_METHOD_PROTOTYPE) ) { - alt35=3; + else if ( (LA36_3==I_METHOD_PROTOTYPE) ) { + alt36=3; } else { @@ -3879,7 +3967,7 @@ public class smaliTreeWalker extends TreeParser { try { input.consume(); NoViableAltException nvae = - new NoViableAltException("", 35, 3, input); + new NoViableAltException("", 36, 3, input); throw nvae; } finally { input.rewind(nvaeMark); @@ -3890,40 +3978,40 @@ public class smaliTreeWalker extends TreeParser { break; default: NoViableAltException nvae = - new NoViableAltException("", 35, 0, input); + new NoViableAltException("", 36, 0, input); throw nvae; } - switch (alt35) { + switch (alt36) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:699:5: CLASS_DESCRIPTOR + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:715:5: CLASS_DESCRIPTOR { - CLASS_DESCRIPTOR100=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1755); + CLASS_DESCRIPTOR102=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1798); - reference = new ImmutableTypeReference((CLASS_DESCRIPTOR100!=null?CLASS_DESCRIPTOR100.getText():null)); + reference = new ImmutableTypeReference((CLASS_DESCRIPTOR102!=null?CLASS_DESCRIPTOR102.getText():null)); } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:703:5: field_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:719:5: field_reference { - pushFollow(FOLLOW_field_reference_in_verification_error_reference1765); - field_reference101=field_reference(); + pushFollow(FOLLOW_field_reference_in_verification_error_reference1808); + field_reference103=field_reference(); state._fsp--; - reference = field_reference101; + reference = field_reference103; } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:707:5: method_reference + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:723:5: method_reference { - pushFollow(FOLLOW_method_reference_in_verification_error_reference1775); - method_reference102=method_reference(); + pushFollow(FOLLOW_method_reference_in_verification_error_reference1818); + method_reference104=method_reference(); state._fsp--; - reference = method_reference102; + reference = method_reference104; } break; @@ -3944,20 +4032,20 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "verification_error_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:712:1: verification_error_type returns [int verificationError] : VERIFICATION_ERROR_TYPE ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:728:1: verification_error_type returns [int verificationError] : VERIFICATION_ERROR_TYPE ; public final int verification_error_type() throws RecognitionException { int verificationError = 0; - CommonTree VERIFICATION_ERROR_TYPE103=null; + CommonTree VERIFICATION_ERROR_TYPE105=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:713:3: ( VERIFICATION_ERROR_TYPE ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:713:5: VERIFICATION_ERROR_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:729:3: ( VERIFICATION_ERROR_TYPE ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:729:5: VERIFICATION_ERROR_TYPE { - VERIFICATION_ERROR_TYPE103=(CommonTree)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1792); + VERIFICATION_ERROR_TYPE105=(CommonTree)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1835); - verificationError = VerificationError.getVerificationError((VERIFICATION_ERROR_TYPE103!=null?VERIFICATION_ERROR_TYPE103.getText():null)); + verificationError = VerificationError.getVerificationError((VERIFICATION_ERROR_TYPE105!=null?VERIFICATION_ERROR_TYPE105.getText():null)); } @@ -3979,492 +4067,548 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "instruction" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:718: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_format21ih | insn_format21lh | insn_format21s | insn_format21t | insn_format22b | insn_format22c_field | insn_format22c_type | insn_format22s | insn_format22t | insn_format22x | insn_format23x | 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 ); + // /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 ); public final smaliTreeWalker.instruction_return instruction() throws RecognitionException { smaliTreeWalker.instruction_return retval = new smaliTreeWalker.instruction_return(); retval.start = input.LT(1); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:719: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_format21ih | insn_format21lh | insn_format21s | insn_format21t | insn_format22b | insn_format22c_field | insn_format22c_type | insn_format22s | insn_format22t | insn_format22x | insn_format23x | 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 ) - int alt36=34; + // /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 ) + int alt37=38; switch ( input.LA(1) ) { case I_STATEMENT_FORMAT10t: { - alt36=1; + alt37=1; } break; case I_STATEMENT_FORMAT10x: { - alt36=2; + alt37=2; } break; case I_STATEMENT_FORMAT11n: { - alt36=3; + alt37=3; } break; case I_STATEMENT_FORMAT11x: { - alt36=4; + alt37=4; } break; case I_STATEMENT_FORMAT12x: { - alt36=5; + alt37=5; } break; case I_STATEMENT_FORMAT20bc: { - alt36=6; + alt37=6; } break; case I_STATEMENT_FORMAT20t: { - alt36=7; + alt37=7; } break; case I_STATEMENT_FORMAT21c_FIELD: { - alt36=8; + alt37=8; } break; case I_STATEMENT_FORMAT21c_STRING: { - alt36=9; + alt37=9; } break; case I_STATEMENT_FORMAT21c_TYPE: { - alt36=10; + alt37=10; + } + break; + case I_STATEMENT_FORMAT21c_LAMBDA: + { + alt37=11; + } + break; + case I_STATEMENT_FORMAT21c_METHOD: + { + alt37=12; } break; case I_STATEMENT_FORMAT21ih: { - alt36=11; + alt37=13; } break; case I_STATEMENT_FORMAT21lh: { - alt36=12; + alt37=14; } break; case I_STATEMENT_FORMAT21s: { - alt36=13; + alt37=15; } break; case I_STATEMENT_FORMAT21t: { - alt36=14; + alt37=16; } break; case I_STATEMENT_FORMAT22b: { - alt36=15; + alt37=17; } break; case I_STATEMENT_FORMAT22c_FIELD: { - alt36=16; + alt37=18; } break; case I_STATEMENT_FORMAT22c_TYPE: { - alt36=17; + alt37=19; + } + break; + case I_STATEMENT_FORMAT22c_STRING: + { + alt37=20; } break; case I_STATEMENT_FORMAT22s: { - alt36=18; + alt37=21; } break; case I_STATEMENT_FORMAT22t: { - alt36=19; + alt37=22; } break; case I_STATEMENT_FORMAT22x: { - alt36=20; + alt37=23; } break; case I_STATEMENT_FORMAT23x: { - alt36=21; + alt37=24; + } + break; + case I_STATEMENT_FORMAT25x: + { + alt37=25; } break; case I_STATEMENT_FORMAT30t: { - alt36=22; + alt37=26; } break; case I_STATEMENT_FORMAT31c: { - alt36=23; + alt37=27; } break; case I_STATEMENT_FORMAT31i: { - alt36=24; + alt37=28; } break; case I_STATEMENT_FORMAT31t: { - alt36=25; + alt37=29; } break; case I_STATEMENT_FORMAT32x: { - alt36=26; + alt37=30; } break; case I_STATEMENT_FORMAT35c_METHOD: { - alt36=27; + alt37=31; } break; case I_STATEMENT_FORMAT35c_TYPE: { - alt36=28; + alt37=32; } break; case I_STATEMENT_FORMAT3rc_METHOD: { - alt36=29; + alt37=33; } break; case I_STATEMENT_FORMAT3rc_TYPE: { - alt36=30; + alt37=34; } break; case I_STATEMENT_FORMAT51l: { - alt36=31; + alt37=35; } break; case I_STATEMENT_ARRAY_DATA: { - alt36=32; + alt37=36; } break; case I_STATEMENT_PACKED_SWITCH: { - alt36=33; + alt37=37; } break; case I_STATEMENT_SPARSE_SWITCH: { - alt36=34; + alt37=38; } break; default: NoViableAltException nvae = - new NoViableAltException("", 36, 0, input); + new NoViableAltException("", 37, 0, input); throw nvae; } - switch (alt36) { + switch (alt37) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:719:5: insn_format10t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:735:5: insn_format10t { - pushFollow(FOLLOW_insn_format10t_in_instruction1806); + pushFollow(FOLLOW_insn_format10t_in_instruction1849); insn_format10t(); state._fsp--; } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:720:5: insn_format10x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:736:5: insn_format10x { - pushFollow(FOLLOW_insn_format10x_in_instruction1812); + pushFollow(FOLLOW_insn_format10x_in_instruction1855); insn_format10x(); state._fsp--; } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:721:5: insn_format11n + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:737:5: insn_format11n { - pushFollow(FOLLOW_insn_format11n_in_instruction1818); + pushFollow(FOLLOW_insn_format11n_in_instruction1861); insn_format11n(); state._fsp--; } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:722:5: insn_format11x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:738:5: insn_format11x { - pushFollow(FOLLOW_insn_format11x_in_instruction1824); + pushFollow(FOLLOW_insn_format11x_in_instruction1867); insn_format11x(); state._fsp--; } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:723:5: insn_format12x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:739:5: insn_format12x { - pushFollow(FOLLOW_insn_format12x_in_instruction1830); + pushFollow(FOLLOW_insn_format12x_in_instruction1873); insn_format12x(); state._fsp--; } break; case 6 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:724:5: insn_format20bc + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:740:5: insn_format20bc { - pushFollow(FOLLOW_insn_format20bc_in_instruction1836); + pushFollow(FOLLOW_insn_format20bc_in_instruction1879); insn_format20bc(); state._fsp--; } break; case 7 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:725:5: insn_format20t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:741:5: insn_format20t { - pushFollow(FOLLOW_insn_format20t_in_instruction1842); + pushFollow(FOLLOW_insn_format20t_in_instruction1885); insn_format20t(); state._fsp--; } break; case 8 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:726:5: insn_format21c_field + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:742:5: insn_format21c_field { - pushFollow(FOLLOW_insn_format21c_field_in_instruction1848); + pushFollow(FOLLOW_insn_format21c_field_in_instruction1891); insn_format21c_field(); state._fsp--; } break; case 9 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:727:5: insn_format21c_string + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:743:5: insn_format21c_string { - pushFollow(FOLLOW_insn_format21c_string_in_instruction1854); + pushFollow(FOLLOW_insn_format21c_string_in_instruction1897); insn_format21c_string(); state._fsp--; } break; case 10 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:728:5: insn_format21c_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:744:5: insn_format21c_type { - pushFollow(FOLLOW_insn_format21c_type_in_instruction1860); + pushFollow(FOLLOW_insn_format21c_type_in_instruction1903); insn_format21c_type(); state._fsp--; } break; case 11 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:729:5: insn_format21ih + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:745:5: insn_format21c_lambda { - pushFollow(FOLLOW_insn_format21ih_in_instruction1866); - insn_format21ih(); + pushFollow(FOLLOW_insn_format21c_lambda_in_instruction1909); + insn_format21c_lambda(); state._fsp--; } break; case 12 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:730:5: insn_format21lh + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:746:5: insn_format21c_method { - pushFollow(FOLLOW_insn_format21lh_in_instruction1872); - insn_format21lh(); + pushFollow(FOLLOW_insn_format21c_method_in_instruction1915); + insn_format21c_method(); state._fsp--; } break; case 13 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:731:5: insn_format21s + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:747:5: insn_format21ih { - pushFollow(FOLLOW_insn_format21s_in_instruction1878); - insn_format21s(); + pushFollow(FOLLOW_insn_format21ih_in_instruction1921); + insn_format21ih(); state._fsp--; } break; case 14 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:732:5: insn_format21t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:748:5: insn_format21lh { - pushFollow(FOLLOW_insn_format21t_in_instruction1884); - insn_format21t(); + pushFollow(FOLLOW_insn_format21lh_in_instruction1927); + insn_format21lh(); state._fsp--; } break; case 15 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:733:5: insn_format22b + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:749:5: insn_format21s { - pushFollow(FOLLOW_insn_format22b_in_instruction1890); - insn_format22b(); + pushFollow(FOLLOW_insn_format21s_in_instruction1933); + insn_format21s(); state._fsp--; } break; case 16 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:734:5: insn_format22c_field + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:750:5: insn_format21t { - pushFollow(FOLLOW_insn_format22c_field_in_instruction1896); - insn_format22c_field(); + pushFollow(FOLLOW_insn_format21t_in_instruction1939); + insn_format21t(); state._fsp--; } break; case 17 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:735:5: insn_format22c_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:751:5: insn_format22b { - pushFollow(FOLLOW_insn_format22c_type_in_instruction1902); - insn_format22c_type(); + pushFollow(FOLLOW_insn_format22b_in_instruction1945); + insn_format22b(); state._fsp--; } break; case 18 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:736:5: insn_format22s + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:752:5: insn_format22c_field { - pushFollow(FOLLOW_insn_format22s_in_instruction1908); - insn_format22s(); + pushFollow(FOLLOW_insn_format22c_field_in_instruction1951); + insn_format22c_field(); state._fsp--; } break; case 19 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:737:5: insn_format22t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:753:5: insn_format22c_type { - pushFollow(FOLLOW_insn_format22t_in_instruction1914); - insn_format22t(); + pushFollow(FOLLOW_insn_format22c_type_in_instruction1957); + insn_format22c_type(); state._fsp--; } break; case 20 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:738:5: insn_format22x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:754:5: insn_format22c_string { - pushFollow(FOLLOW_insn_format22x_in_instruction1920); - insn_format22x(); + pushFollow(FOLLOW_insn_format22c_string_in_instruction1963); + insn_format22c_string(); state._fsp--; } break; case 21 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:739:5: insn_format23x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:755:5: insn_format22s { - pushFollow(FOLLOW_insn_format23x_in_instruction1926); - insn_format23x(); + pushFollow(FOLLOW_insn_format22s_in_instruction1969); + insn_format22s(); state._fsp--; } break; case 22 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:740:5: insn_format30t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:756:5: insn_format22t { - pushFollow(FOLLOW_insn_format30t_in_instruction1932); - insn_format30t(); + pushFollow(FOLLOW_insn_format22t_in_instruction1975); + insn_format22t(); state._fsp--; } break; case 23 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:741:5: insn_format31c + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:757:5: insn_format22x { - pushFollow(FOLLOW_insn_format31c_in_instruction1938); - insn_format31c(); + pushFollow(FOLLOW_insn_format22x_in_instruction1981); + insn_format22x(); state._fsp--; } break; case 24 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:742:5: insn_format31i + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:758:5: insn_format23x { - pushFollow(FOLLOW_insn_format31i_in_instruction1944); - insn_format31i(); + pushFollow(FOLLOW_insn_format23x_in_instruction1987); + insn_format23x(); state._fsp--; } break; case 25 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:743:5: insn_format31t + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:759:5: insn_format25x { - pushFollow(FOLLOW_insn_format31t_in_instruction1950); - insn_format31t(); + pushFollow(FOLLOW_insn_format25x_in_instruction1993); + insn_format25x(); state._fsp--; } break; case 26 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:744:5: insn_format32x + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:760:5: insn_format30t { - pushFollow(FOLLOW_insn_format32x_in_instruction1956); - insn_format32x(); + pushFollow(FOLLOW_insn_format30t_in_instruction1999); + insn_format30t(); state._fsp--; } break; case 27 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:745:5: insn_format35c_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:761:5: insn_format31c { - pushFollow(FOLLOW_insn_format35c_method_in_instruction1962); - insn_format35c_method(); + pushFollow(FOLLOW_insn_format31c_in_instruction2005); + insn_format31c(); state._fsp--; } break; case 28 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:746:5: insn_format35c_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:762:5: insn_format31i { - pushFollow(FOLLOW_insn_format35c_type_in_instruction1968); - insn_format35c_type(); + pushFollow(FOLLOW_insn_format31i_in_instruction2011); + insn_format31i(); state._fsp--; } break; case 29 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:747:5: insn_format3rc_method + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:763:5: insn_format31t { - pushFollow(FOLLOW_insn_format3rc_method_in_instruction1974); - insn_format3rc_method(); + pushFollow(FOLLOW_insn_format31t_in_instruction2017); + insn_format31t(); state._fsp--; } break; case 30 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:748:5: insn_format3rc_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:764:5: insn_format32x { - pushFollow(FOLLOW_insn_format3rc_type_in_instruction1980); - insn_format3rc_type(); + pushFollow(FOLLOW_insn_format32x_in_instruction2023); + insn_format32x(); state._fsp--; } break; case 31 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:749:5: insn_format51l_type + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:765:5: insn_format35c_method { - pushFollow(FOLLOW_insn_format51l_type_in_instruction1986); - insn_format51l_type(); + pushFollow(FOLLOW_insn_format35c_method_in_instruction2029); + insn_format35c_method(); state._fsp--; } break; case 32 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:750:5: insn_array_data_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:766:5: insn_format35c_type { - pushFollow(FOLLOW_insn_array_data_directive_in_instruction1992); - insn_array_data_directive(); + pushFollow(FOLLOW_insn_format35c_type_in_instruction2035); + insn_format35c_type(); state._fsp--; } break; case 33 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:751:5: insn_packed_switch_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:767:5: insn_format3rc_method { - pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction1998); - insn_packed_switch_directive(); + pushFollow(FOLLOW_insn_format3rc_method_in_instruction2041); + insn_format3rc_method(); state._fsp--; } break; case 34 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:752:5: insn_sparse_switch_directive + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:768:5: insn_format3rc_type + { + pushFollow(FOLLOW_insn_format3rc_type_in_instruction2047); + insn_format3rc_type(); + state._fsp--; + + } + break; + case 35 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:769:5: insn_format51l_type { - pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction2004); + pushFollow(FOLLOW_insn_format51l_type_in_instruction2053); + insn_format51l_type(); + state._fsp--; + + } + break; + case 36 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:770:5: insn_array_data_directive + { + pushFollow(FOLLOW_insn_array_data_directive_in_instruction2059); + insn_array_data_directive(); + state._fsp--; + + } + break; + case 37 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:771:5: insn_packed_switch_directive + { + pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction2065); + insn_packed_switch_directive(); + state._fsp--; + + } + break; + case 38 : + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:772:5: insn_sparse_switch_directive + { + pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction2071); insn_sparse_switch_directive(); state._fsp--; @@ -4490,27 +4634,27 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format10t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:758:1: insn_format10t : ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:778:1: insn_format10t : ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) ; public final void insn_format10t() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT10t104=null; - Label label_ref105 =null; + CommonTree INSTRUCTION_FORMAT10t106=null; + Label label_ref107 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:759:3: ( ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:760:5: ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:779:3: ( ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:780:5: ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) { - match(input,I_STATEMENT_FORMAT10t,FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2028); + match(input,I_STATEMENT_FORMAT10t,FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2095); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT10t104=(CommonTree)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2030); - pushFollow(FOLLOW_label_ref_in_insn_format10t2032); - label_ref105=label_ref(); + INSTRUCTION_FORMAT10t106=(CommonTree)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2097); + pushFollow(FOLLOW_label_ref_in_insn_format10t2099); + label_ref107=label_ref(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT10t104!=null?INSTRUCTION_FORMAT10t104.getText():null)); - method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction10t(opcode, label_ref105)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT10t106!=null?INSTRUCTION_FORMAT10t106.getText():null)); + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction10t(opcode, label_ref107)); } @@ -4528,21 +4672,21 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format10x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:766:1: insn_format10x : ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:786:1: insn_format10x : ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) ; public final void insn_format10x() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT10x106=null; + CommonTree INSTRUCTION_FORMAT10x108=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:767:3: ( ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:768:5: ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:787:3: ( ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:788:5: ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) { - match(input,I_STATEMENT_FORMAT10x,FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2055); + match(input,I_STATEMENT_FORMAT10x,FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2122); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT10x106=(CommonTree)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2057); + INSTRUCTION_FORMAT10x108=(CommonTree)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2124); match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT10x106!=null?INSTRUCTION_FORMAT10x106.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT10x108!=null?INSTRUCTION_FORMAT10x108.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction10x(opcode)); } @@ -4561,31 +4705,31 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format11n" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:774:1: insn_format11n : ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) ; + // /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 ) ; public final void insn_format11n() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT11n107=null; - CommonTree REGISTER108=null; - short short_integral_literal109 =0; + CommonTree INSTRUCTION_FORMAT11n109=null; + CommonTree REGISTER110=null; + short short_integral_literal111 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:775:3: ( ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:776:5: ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:795:3: ( ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:796:5: ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) { - match(input,I_STATEMENT_FORMAT11n,FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2080); + match(input,I_STATEMENT_FORMAT11n,FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2147); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT11n107=(CommonTree)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2082); - REGISTER108=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n2084); - pushFollow(FOLLOW_short_integral_literal_in_insn_format11n2086); - short_integral_literal109=short_integral_literal(); + INSTRUCTION_FORMAT11n109=(CommonTree)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2149); + REGISTER110=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n2151); + pushFollow(FOLLOW_short_integral_literal_in_insn_format11n2153); + short_integral_literal111=short_integral_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT11n107!=null?INSTRUCTION_FORMAT11n107.getText():null)); - byte regA = parseRegister_nibble((REGISTER108!=null?REGISTER108.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT11n109!=null?INSTRUCTION_FORMAT11n109.getText():null)); + byte regA = parseRegister_nibble((REGISTER110!=null?REGISTER110.getText():null)); - short litB = short_integral_literal109; + short litB = short_integral_literal111; LiteralTools.checkNibble(litB); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction11n(opcode, regA, litB)); @@ -4606,24 +4750,24 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format11x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:787:1: insn_format11x : ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:807:1: insn_format11x : ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) ; public final void insn_format11x() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT11x110=null; - CommonTree REGISTER111=null; + CommonTree INSTRUCTION_FORMAT11x112=null; + CommonTree REGISTER113=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:788:3: ( ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:789:5: ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:808:3: ( ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:809:5: ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) { - match(input,I_STATEMENT_FORMAT11x,FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2109); + match(input,I_STATEMENT_FORMAT11x,FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2176); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT11x110=(CommonTree)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2111); - REGISTER111=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x2113); + INSTRUCTION_FORMAT11x112=(CommonTree)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2178); + REGISTER113=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x2180); match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT11x110!=null?INSTRUCTION_FORMAT11x110.getText():null)); - short regA = parseRegister_byte((REGISTER111!=null?REGISTER111.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT11x112!=null?INSTRUCTION_FORMAT11x112.getText():null)); + short regA = parseRegister_byte((REGISTER113!=null?REGISTER113.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction11x(opcode, regA)); @@ -4643,25 +4787,25 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format12x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:797:1: insn_format12x : ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) ; + // /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 ) ; public final void insn_format12x() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; - CommonTree INSTRUCTION_FORMAT12x112=null; + CommonTree INSTRUCTION_FORMAT12x114=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:798:3: ( ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:799:5: ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:818:3: ( ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:819:5: ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) { - match(input,I_STATEMENT_FORMAT12x,FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2136); + match(input,I_STATEMENT_FORMAT12x,FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2203); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT12x112=(CommonTree)match(input,INSTRUCTION_FORMAT12x,FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2138); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2142); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2146); + INSTRUCTION_FORMAT12x114=(CommonTree)match(input,INSTRUCTION_FORMAT12x,FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2205); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2209); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2213); match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT12x112!=null?INSTRUCTION_FORMAT12x112.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT12x114!=null?INSTRUCTION_FORMAT12x114.getText():null)); byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); @@ -4683,34 +4827,34 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format20bc" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:808:1: insn_format20bc : ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference ) ; + // /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 ) ; public final void insn_format20bc() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT20bc113=null; - int verification_error_type114 =0; - ImmutableReference verification_error_reference115 =null; + CommonTree INSTRUCTION_FORMAT20bc115=null; + int verification_error_type116 =0; + ImmutableReference verification_error_reference117 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:809:3: ( ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:810:5: ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT20bc,FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2169); + match(input,I_STATEMENT_FORMAT20bc,FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2236); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT20bc113=(CommonTree)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2171); - pushFollow(FOLLOW_verification_error_type_in_insn_format20bc2173); - verification_error_type114=verification_error_type(); + INSTRUCTION_FORMAT20bc115=(CommonTree)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2238); + pushFollow(FOLLOW_verification_error_type_in_insn_format20bc2240); + verification_error_type116=verification_error_type(); state._fsp--; - pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc2175); - verification_error_reference115=verification_error_reference(); + pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc2242); + verification_error_reference117=verification_error_reference(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc113!=null?INSTRUCTION_FORMAT20bc113.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc115!=null?INSTRUCTION_FORMAT20bc115.getText():null)); - int verificationError = verification_error_type114; - ImmutableReference referencedItem = verification_error_reference115; + int verificationError = verification_error_type116; + ImmutableReference referencedItem = verification_error_reference117; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction20bc(opcode, verificationError, dexBuilder.internReference(referencedItem))); @@ -4731,27 +4875,27 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format20t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:821:1: insn_format20t : ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:841:1: insn_format20t : ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) ; public final void insn_format20t() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT20t116=null; - Label label_ref117 =null; + CommonTree INSTRUCTION_FORMAT20t118=null; + Label label_ref119 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:822:3: ( ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:823:5: ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:842:3: ( ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:843:5: ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) { - match(input,I_STATEMENT_FORMAT20t,FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2198); + match(input,I_STATEMENT_FORMAT20t,FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2265); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT20t116=(CommonTree)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2200); - pushFollow(FOLLOW_label_ref_in_insn_format20t2202); - label_ref117=label_ref(); + INSTRUCTION_FORMAT20t118=(CommonTree)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2267); + pushFollow(FOLLOW_label_ref_in_insn_format20t2269); + label_ref119=label_ref(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT20t116!=null?INSTRUCTION_FORMAT20t116.getText():null)); - method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction20t(opcode, label_ref117)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT20t118!=null?INSTRUCTION_FORMAT20t118.getText():null)); + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction20t(opcode, label_ref119)); } @@ -4769,17 +4913,17 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format21c_field" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:829:1: insn_format21c_field : ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER field_reference ) ; + // /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 ) ; public final void insn_format21c_field() throws RecognitionException { CommonTree inst=null; - CommonTree REGISTER118=null; - ImmutableFieldReference field_reference119 =null; + CommonTree REGISTER120=null; + ImmutableFieldReference field_reference121 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:830:3: ( ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:831:5: ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER field_reference ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT21c_FIELD,FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2225); + match(input,I_STATEMENT_FORMAT21c_FIELD,FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2292); match(input, Token.DOWN, null); inst=(CommonTree)input.LT(1); if ( (input.LA(1) >= INSTRUCTION_FORMAT21c_FIELD && input.LA(1) <= INSTRUCTION_FORMAT21c_FIELD_ODEX) ) { @@ -4790,18 +4934,18 @@ public class smaliTreeWalker extends TreeParser { MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } - REGISTER118=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field2237); - pushFollow(FOLLOW_field_reference_in_insn_format21c_field2239); - field_reference119=field_reference(); + REGISTER120=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field2304); + pushFollow(FOLLOW_field_reference_in_insn_format21c_field2306); + field_reference121=field_reference(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((inst!=null?inst.getText():null)); - short regA = parseRegister_byte((REGISTER118!=null?REGISTER118.getText():null)); + short regA = parseRegister_byte((REGISTER120!=null?REGISTER120.getText():null)); - ImmutableFieldReference fieldReference = field_reference119; + ImmutableFieldReference fieldReference = field_reference121; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, dexBuilder.internFieldReference(fieldReference))); @@ -4822,32 +4966,32 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format21c_string" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:842:1: insn_format21c_string : ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal ) ; + // /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 ) ; public final void insn_format21c_string() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT21c_STRING120=null; - CommonTree REGISTER121=null; - String string_literal122 =null; + CommonTree INSTRUCTION_FORMAT21c_STRING122=null; + CommonTree REGISTER123=null; + String string_literal124 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:843:3: ( ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:844:5: ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT21c_STRING,FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2262); + match(input,I_STATEMENT_FORMAT21c_STRING,FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2329); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT21c_STRING120=(CommonTree)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2264); - REGISTER121=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string2266); - pushFollow(FOLLOW_string_literal_in_insn_format21c_string2268); - string_literal122=string_literal(); + INSTRUCTION_FORMAT21c_STRING122=(CommonTree)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2331); + REGISTER123=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string2333); + pushFollow(FOLLOW_string_literal_in_insn_format21c_string2335); + string_literal124=string_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_STRING120!=null?INSTRUCTION_FORMAT21c_STRING120.getText():null)); - short regA = parseRegister_byte((REGISTER121!=null?REGISTER121.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_STRING122!=null?INSTRUCTION_FORMAT21c_STRING122.getText():null)); + short regA = parseRegister_byte((REGISTER123!=null?REGISTER123.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, - dexBuilder.internStringReference(string_literal122))); + dexBuilder.internStringReference(string_literal124))); } @@ -4865,32 +5009,32 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format21c_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:853:1: insn_format21c_type : ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ; + // /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 ) ; public final void insn_format21c_type() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT21c_TYPE123=null; - CommonTree REGISTER124=null; - TreeRuleReturnScope nonvoid_type_descriptor125 =null; + CommonTree INSTRUCTION_FORMAT21c_TYPE125=null; + CommonTree REGISTER126=null; + TreeRuleReturnScope nonvoid_type_descriptor127 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:854:3: ( ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:855:5: ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2291); + match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2358); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT21c_TYPE123=(CommonTree)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2293); - REGISTER124=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type2295); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2297); - nonvoid_type_descriptor125=nonvoid_type_descriptor(); + INSTRUCTION_FORMAT21c_TYPE125=(CommonTree)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2360); + REGISTER126=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type2362); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2364); + nonvoid_type_descriptor127=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_TYPE123!=null?INSTRUCTION_FORMAT21c_TYPE123.getText():null)); - short regA = parseRegister_byte((REGISTER124!=null?REGISTER124.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_TYPE125!=null?INSTRUCTION_FORMAT21c_TYPE125.getText():null)); + short regA = parseRegister_byte((REGISTER126!=null?REGISTER126.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, - dexBuilder.internTypeReference((nonvoid_type_descriptor125!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor125).type:null)))); + dexBuilder.internTypeReference((nonvoid_type_descriptor127!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor127).type:null)))); } @@ -4907,32 +5051,120 @@ public class smaliTreeWalker extends TreeParser { + // $ANTLR start "insn_format21c_lambda" + // /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 ) ; + public final void insn_format21c_lambda() throws RecognitionException { + CommonTree INSTRUCTION_FORMAT21c_LAMBDA128=null; + CommonTree REGISTER129=null; + String string_literal130 =null; + + try { + // /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 ) ) + // /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 ) + { + match(input,I_STATEMENT_FORMAT21c_LAMBDA,FOLLOW_I_STATEMENT_FORMAT21c_LAMBDA_in_insn_format21c_lambda2387); + match(input, Token.DOWN, null); + INSTRUCTION_FORMAT21c_LAMBDA128=(CommonTree)match(input,INSTRUCTION_FORMAT21c_LAMBDA,FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_insn_format21c_lambda2389); + REGISTER129=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_lambda2391); + pushFollow(FOLLOW_string_literal_in_insn_format21c_lambda2393); + string_literal130=string_literal(); + state._fsp--; + + match(input, Token.UP, null); + + + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_LAMBDA128!=null?INSTRUCTION_FORMAT21c_LAMBDA128.getText():null)); + short regA = parseRegister_byte((REGISTER129!=null?REGISTER129.getText():null)); + + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, + dexBuilder.internStringReference(string_literal130))); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + // do for sure before leaving + } + } + // $ANTLR end "insn_format21c_lambda" + + + + // $ANTLR start "insn_format21c_method" + // /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 ) ; + public final void insn_format21c_method() throws RecognitionException { + CommonTree INSTRUCTION_FORMAT21c_METHOD131=null; + CommonTree REGISTER132=null; + ImmutableMethodReference method_reference133 =null; + + try { + // /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 ) ) + // /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 ) + { + match(input,I_STATEMENT_FORMAT21c_METHOD,FOLLOW_I_STATEMENT_FORMAT21c_METHOD_in_insn_format21c_method2416); + match(input, Token.DOWN, null); + INSTRUCTION_FORMAT21c_METHOD131=(CommonTree)match(input,INSTRUCTION_FORMAT21c_METHOD,FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_insn_format21c_method2418); + REGISTER132=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_method2420); + pushFollow(FOLLOW_method_reference_in_insn_format21c_method2422); + method_reference133=method_reference(); + state._fsp--; + + match(input, Token.UP, null); + + + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_METHOD131!=null?INSTRUCTION_FORMAT21c_METHOD131.getText():null)); + short regA = parseRegister_byte((REGISTER132!=null?REGISTER132.getText():null)); + + ImmutableMethodReference methodReference = method_reference133; + + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, + dexBuilder.internMethodReference(methodReference))); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + // do for sure before leaving + } + } + // $ANTLR end "insn_format21c_method" + + + // $ANTLR start "insn_format21ih" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:864:1: insn_format21ih : ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ; + // /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 ) ; public final void insn_format21ih() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT21ih126=null; - CommonTree REGISTER127=null; - int fixed_32bit_literal128 =0; + CommonTree INSTRUCTION_FORMAT21ih134=null; + CommonTree REGISTER135=null; + int fixed_32bit_literal136 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:865:3: ( ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:866:5: ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:909:3: ( ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:910:5: ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) { - match(input,I_STATEMENT_FORMAT21ih,FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2320); + match(input,I_STATEMENT_FORMAT21ih,FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2445); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT21ih126=(CommonTree)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2322); - REGISTER127=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih2324); - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih2326); - fixed_32bit_literal128=fixed_32bit_literal(); + INSTRUCTION_FORMAT21ih134=(CommonTree)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2447); + REGISTER135=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih2449); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih2451); + fixed_32bit_literal136=fixed_32bit_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21ih126!=null?INSTRUCTION_FORMAT21ih126.getText():null)); - short regA = parseRegister_byte((REGISTER127!=null?REGISTER127.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21ih134!=null?INSTRUCTION_FORMAT21ih134.getText():null)); + short regA = parseRegister_byte((REGISTER135!=null?REGISTER135.getText():null)); - int litB = fixed_32bit_literal128; + int litB = fixed_32bit_literal136; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21ih(opcode, regA, litB)); @@ -4952,31 +5184,31 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format21lh" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:876:1: insn_format21lh : ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) ; + // /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 ) ; public final void insn_format21lh() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT21lh129=null; - CommonTree REGISTER130=null; - long fixed_64bit_literal131 =0; + CommonTree INSTRUCTION_FORMAT21lh137=null; + CommonTree REGISTER138=null; + long fixed_64bit_literal139 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:877:3: ( ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:878:5: ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:921:3: ( ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:922:5: ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) { - match(input,I_STATEMENT_FORMAT21lh,FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2349); + match(input,I_STATEMENT_FORMAT21lh,FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2474); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT21lh129=(CommonTree)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2351); - REGISTER130=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh2353); - pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format21lh2355); - fixed_64bit_literal131=fixed_64bit_literal(); + INSTRUCTION_FORMAT21lh137=(CommonTree)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2476); + REGISTER138=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh2478); + pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format21lh2480); + fixed_64bit_literal139=fixed_64bit_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21lh129!=null?INSTRUCTION_FORMAT21lh129.getText():null)); - short regA = parseRegister_byte((REGISTER130!=null?REGISTER130.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21lh137!=null?INSTRUCTION_FORMAT21lh137.getText():null)); + short regA = parseRegister_byte((REGISTER138!=null?REGISTER138.getText():null)); - long litB = fixed_64bit_literal131; + long litB = fixed_64bit_literal139; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21lh(opcode, regA, litB)); @@ -4996,31 +5228,31 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format21s" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:888:1: insn_format21s : ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) ; + // /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 ) ; public final void insn_format21s() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT21s132=null; - CommonTree REGISTER133=null; - short short_integral_literal134 =0; + CommonTree INSTRUCTION_FORMAT21s140=null; + CommonTree REGISTER141=null; + short short_integral_literal142 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:889:3: ( ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:890:5: ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:933:3: ( ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:934:5: ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) { - match(input,I_STATEMENT_FORMAT21s,FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2378); + match(input,I_STATEMENT_FORMAT21s,FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2503); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT21s132=(CommonTree)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2380); - REGISTER133=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s2382); - pushFollow(FOLLOW_short_integral_literal_in_insn_format21s2384); - short_integral_literal134=short_integral_literal(); + INSTRUCTION_FORMAT21s140=(CommonTree)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2505); + REGISTER141=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s2507); + pushFollow(FOLLOW_short_integral_literal_in_insn_format21s2509); + short_integral_literal142=short_integral_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21s132!=null?INSTRUCTION_FORMAT21s132.getText():null)); - short regA = parseRegister_byte((REGISTER133!=null?REGISTER133.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21s140!=null?INSTRUCTION_FORMAT21s140.getText():null)); + short regA = parseRegister_byte((REGISTER141!=null?REGISTER141.getText():null)); - short litB = short_integral_literal134; + short litB = short_integral_literal142; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21s(opcode, regA, litB)); @@ -5040,31 +5272,31 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format21t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:900:1: insn_format21t : ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) ; + // /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 ) ; public final void insn_format21t() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT21t135=null; - CommonTree REGISTER136=null; - Label label_ref137 =null; + CommonTree INSTRUCTION_FORMAT21t143=null; + CommonTree REGISTER144=null; + Label label_ref145 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:901:3: ( ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:902:5: ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:945:3: ( ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:946:5: ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) { - match(input,I_STATEMENT_FORMAT21t,FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2407); + match(input,I_STATEMENT_FORMAT21t,FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2532); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT21t135=(CommonTree)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2409); - REGISTER136=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t2411); - pushFollow(FOLLOW_label_ref_in_insn_format21t2413); - label_ref137=label_ref(); + INSTRUCTION_FORMAT21t143=(CommonTree)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2534); + REGISTER144=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t2536); + pushFollow(FOLLOW_label_ref_in_insn_format21t2538); + label_ref145=label_ref(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21t135!=null?INSTRUCTION_FORMAT21t135.getText():null)); - short regA = parseRegister_byte((REGISTER136!=null?REGISTER136.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21t143!=null?INSTRUCTION_FORMAT21t143.getText():null)); + short regA = parseRegister_byte((REGISTER144!=null?REGISTER144.getText():null)); - method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21t(opcode, regA, label_ref137)); + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21t(opcode, regA, label_ref145)); } @@ -5082,34 +5314,34 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format22b" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:910:1: insn_format22b : ^( I_STATEMENT_FORMAT22b INSTRUCTION_FORMAT22b registerA= REGISTER registerB= REGISTER short_integral_literal ) ; + // /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 ) ; public final void insn_format22b() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; - CommonTree INSTRUCTION_FORMAT22b138=null; - short short_integral_literal139 =0; + CommonTree INSTRUCTION_FORMAT22b146=null; + short short_integral_literal147 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:911:3: ( ^( I_STATEMENT_FORMAT22b INSTRUCTION_FORMAT22b registerA= REGISTER registerB= REGISTER short_integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:912:5: ^( I_STATEMENT_FORMAT22b INSTRUCTION_FORMAT22b registerA= REGISTER registerB= REGISTER short_integral_literal ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT22b,FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2436); + match(input,I_STATEMENT_FORMAT22b,FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2561); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT22b138=(CommonTree)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2438); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2442); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2446); - pushFollow(FOLLOW_short_integral_literal_in_insn_format22b2448); - short_integral_literal139=short_integral_literal(); + INSTRUCTION_FORMAT22b146=(CommonTree)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2563); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2567); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2571); + pushFollow(FOLLOW_short_integral_literal_in_insn_format22b2573); + short_integral_literal147=short_integral_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22b138!=null?INSTRUCTION_FORMAT22b138.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22b146!=null?INSTRUCTION_FORMAT22b146.getText():null)); short regA = parseRegister_byte((registerA!=null?registerA.getText():null)); short regB = parseRegister_byte((registerB!=null?registerB.getText():null)); - short litC = short_integral_literal139; + short litC = short_integral_literal147; LiteralTools.checkByte(litC); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22b(opcode, regA, regB, litC)); @@ -5130,18 +5362,18 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format22c_field" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:924:1: insn_format22c_field : ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER field_reference ) ; + // /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 ) ; public final void insn_format22c_field() throws RecognitionException { CommonTree inst=null; CommonTree registerA=null; CommonTree registerB=null; - ImmutableFieldReference field_reference140 =null; + ImmutableFieldReference field_reference148 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:925:3: ( ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:926:5: ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER field_reference ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT22c_FIELD,FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2471); + match(input,I_STATEMENT_FORMAT22c_FIELD,FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2596); match(input, Token.DOWN, null); inst=(CommonTree)input.LT(1); if ( (input.LA(1) >= INSTRUCTION_FORMAT22c_FIELD && input.LA(1) <= INSTRUCTION_FORMAT22c_FIELD_ODEX) ) { @@ -5152,10 +5384,10 @@ public class smaliTreeWalker extends TreeParser { MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2485); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2489); - pushFollow(FOLLOW_field_reference_in_insn_format22c_field2491); - field_reference140=field_reference(); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2610); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2614); + pushFollow(FOLLOW_field_reference_in_insn_format22c_field2616); + field_reference148=field_reference(); state._fsp--; match(input, Token.UP, null); @@ -5165,7 +5397,7 @@ public class smaliTreeWalker extends TreeParser { byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); - ImmutableFieldReference fieldReference = field_reference140; + ImmutableFieldReference fieldReference = field_reference148; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB, dexBuilder.internFieldReference(fieldReference))); @@ -5186,35 +5418,35 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format22c_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:938:1: insn_format22c_type : ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) ; + // /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 ) ; public final void insn_format22c_type() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; - CommonTree INSTRUCTION_FORMAT22c_TYPE141=null; - TreeRuleReturnScope nonvoid_type_descriptor142 =null; + CommonTree INSTRUCTION_FORMAT22c_TYPE149=null; + TreeRuleReturnScope nonvoid_type_descriptor150 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:939:3: ( ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:940:5: ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2514); + match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2639); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT22c_TYPE141=(CommonTree)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2516); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2520); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2524); - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2526); - nonvoid_type_descriptor142=nonvoid_type_descriptor(); + INSTRUCTION_FORMAT22c_TYPE149=(CommonTree)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2641); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2645); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2649); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2651); + nonvoid_type_descriptor150=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_TYPE141!=null?INSTRUCTION_FORMAT22c_TYPE141.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_TYPE149!=null?INSTRUCTION_FORMAT22c_TYPE149.getText():null)); byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB, - dexBuilder.internTypeReference((nonvoid_type_descriptor142!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor142).type:null)))); + dexBuilder.internTypeReference((nonvoid_type_descriptor150!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor150).type:null)))); } @@ -5231,35 +5463,81 @@ public class smaliTreeWalker extends TreeParser { + // $ANTLR start "insn_format22c_string" + // /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 ) ; + public final void insn_format22c_string() throws RecognitionException { + CommonTree registerA=null; + CommonTree registerB=null; + CommonTree INSTRUCTION_FORMAT22c_STRING151=null; + String string_literal152 =null; + + try { + // /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 ) ) + // /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 ) + { + match(input,I_STATEMENT_FORMAT22c_STRING,FOLLOW_I_STATEMENT_FORMAT22c_STRING_in_insn_format22c_string2674); + match(input, Token.DOWN, null); + INSTRUCTION_FORMAT22c_STRING151=(CommonTree)match(input,INSTRUCTION_FORMAT22c_STRING,FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_insn_format22c_string2676); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_string2680); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_string2684); + pushFollow(FOLLOW_string_literal_in_insn_format22c_string2686); + string_literal152=string_literal(); + state._fsp--; + + match(input, Token.UP, null); + + + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_STRING151!=null?INSTRUCTION_FORMAT22c_STRING151.getText():null)); + byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); + byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); + + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB, + dexBuilder.internStringReference(string_literal152))); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + // do for sure before leaving + } + } + // $ANTLR end "insn_format22c_string" + + + // $ANTLR start "insn_format22s" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:950:1: insn_format22s : ^( I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA= REGISTER registerB= REGISTER short_integral_literal ) ; + // /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 ) ; public final void insn_format22s() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; - CommonTree INSTRUCTION_FORMAT22s143=null; - short short_integral_literal144 =0; + CommonTree INSTRUCTION_FORMAT22s153=null; + short short_integral_literal154 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:951:3: ( ^( I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA= REGISTER registerB= REGISTER short_integral_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:952:5: ^( I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA= REGISTER registerB= REGISTER short_integral_literal ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT22s,FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2549); + match(input,I_STATEMENT_FORMAT22s,FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2709); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT22s143=(CommonTree)match(input,INSTRUCTION_FORMAT22s,FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2551); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2555); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2559); - pushFollow(FOLLOW_short_integral_literal_in_insn_format22s2561); - short_integral_literal144=short_integral_literal(); + INSTRUCTION_FORMAT22s153=(CommonTree)match(input,INSTRUCTION_FORMAT22s,FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2711); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2715); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2719); + pushFollow(FOLLOW_short_integral_literal_in_insn_format22s2721); + short_integral_literal154=short_integral_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22s143!=null?INSTRUCTION_FORMAT22s143.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22s153!=null?INSTRUCTION_FORMAT22s153.getText():null)); byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); - short litC = short_integral_literal144; + short litC = short_integral_literal154; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22s(opcode, regA, regB, litC)); @@ -5279,34 +5557,34 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format22t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:963:1: insn_format22t : ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref ) ; + // /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 ) ; public final void insn_format22t() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; - CommonTree INSTRUCTION_FORMAT22t145=null; - Label label_ref146 =null; + CommonTree INSTRUCTION_FORMAT22t155=null; + Label label_ref156 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:964:3: ( ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:965:5: ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT22t,FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2584); + match(input,I_STATEMENT_FORMAT22t,FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2744); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT22t145=(CommonTree)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2586); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2590); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2594); - pushFollow(FOLLOW_label_ref_in_insn_format22t2596); - label_ref146=label_ref(); + INSTRUCTION_FORMAT22t155=(CommonTree)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2746); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2750); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2754); + pushFollow(FOLLOW_label_ref_in_insn_format22t2756); + label_ref156=label_ref(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22t145!=null?INSTRUCTION_FORMAT22t145.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22t155!=null?INSTRUCTION_FORMAT22t155.getText():null)); byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); - method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22t(opcode, regA, regB, label_ref146)); + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22t(opcode, regA, regB, label_ref156)); } @@ -5324,25 +5602,25 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format22x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:974:1: insn_format22x : ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) ; + // /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 ) ; public final void insn_format22x() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; - CommonTree INSTRUCTION_FORMAT22x147=null; + CommonTree INSTRUCTION_FORMAT22x157=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:975:3: ( ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:976:5: ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1031:3: ( ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1032:5: ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) { - match(input,I_STATEMENT_FORMAT22x,FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2619); + match(input,I_STATEMENT_FORMAT22x,FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2779); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT22x147=(CommonTree)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2621); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2625); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2629); + INSTRUCTION_FORMAT22x157=(CommonTree)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2781); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2785); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2789); match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22x147!=null?INSTRUCTION_FORMAT22x147.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22x157!=null?INSTRUCTION_FORMAT22x157.getText():null)); short regA = parseRegister_byte((registerA!=null?registerA.getText():null)); int regB = parseRegister_short((registerB!=null?registerB.getText():null)); @@ -5364,27 +5642,27 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format23x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:985:1: insn_format23x : ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER ) ; + // /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 ) ; public final void insn_format23x() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; CommonTree registerC=null; - CommonTree INSTRUCTION_FORMAT23x148=null; + CommonTree INSTRUCTION_FORMAT23x158=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:986:3: ( ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:987:5: ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT23x,FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2652); + match(input,I_STATEMENT_FORMAT23x,FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2812); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT23x148=(CommonTree)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2654); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2658); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2662); - registerC=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2666); + INSTRUCTION_FORMAT23x158=(CommonTree)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2814); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2818); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2822); + registerC=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2826); match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT23x148!=null?INSTRUCTION_FORMAT23x148.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT23x158!=null?INSTRUCTION_FORMAT23x158.getText():null)); short regA = parseRegister_byte((registerA!=null?registerA.getText():null)); short regB = parseRegister_byte((registerB!=null?registerB.getText():null)); short regC = parseRegister_byte((registerC!=null?registerC.getText():null)); @@ -5406,29 +5684,78 @@ public class smaliTreeWalker extends TreeParser { + // $ANTLR start "insn_format25x" + // /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 ) ; + public final void insn_format25x() throws RecognitionException { + CommonTree INSTRUCTION_FORMAT25x159=null; + CommonTree REGISTER160=null; + TreeRuleReturnScope register_list4161 =null; + + try { + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1054:3: ( ^( I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4 ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1055:5: ^( I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4 ) + { + match(input,I_STATEMENT_FORMAT25x,FOLLOW_I_STATEMENT_FORMAT25x_in_insn_format25x2849); + match(input, Token.DOWN, null); + INSTRUCTION_FORMAT25x159=(CommonTree)match(input,INSTRUCTION_FORMAT25x,FOLLOW_INSTRUCTION_FORMAT25x_in_insn_format25x2851); + REGISTER160=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format25x2853); + pushFollow(FOLLOW_register_list4_in_insn_format25x2855); + register_list4161=register_list4(); + state._fsp--; + + match(input, Token.UP, null); + + + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT25x159!=null?INSTRUCTION_FORMAT25x159.getText():null)); + + byte closureRegister = parseRegister_nibble((REGISTER160!=null?REGISTER160.getText():null)); + + //this depends on the fact that register_list4 returns a byte[4] + byte[] registers = (register_list4161!=null?((smaliTreeWalker.register_list4_return)register_list4161).registers:null); + int parameterRegisterCount = (register_list4161!=null?((smaliTreeWalker.register_list4_return)register_list4161).registerCount:0); // don't count closure register + + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction25x(opcode, + parameterRegisterCount, closureRegister, registers[0], registers[1], + registers[2], registers[3])); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + // do for sure before leaving + } + } + // $ANTLR end "insn_format25x" + + + // $ANTLR start "insn_format30t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:997:1: insn_format30t : ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1070:1: insn_format30t : ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) ; public final void insn_format30t() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT30t149=null; - Label label_ref150 =null; + CommonTree INSTRUCTION_FORMAT30t162=null; + Label label_ref163 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:998:3: ( ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:999:5: ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1071:3: ( ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1072:5: ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) { - match(input,I_STATEMENT_FORMAT30t,FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2689); + match(input,I_STATEMENT_FORMAT30t,FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2878); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT30t149=(CommonTree)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2691); - pushFollow(FOLLOW_label_ref_in_insn_format30t2693); - label_ref150=label_ref(); + INSTRUCTION_FORMAT30t162=(CommonTree)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2880); + pushFollow(FOLLOW_label_ref_in_insn_format30t2882); + label_ref163=label_ref(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT30t149!=null?INSTRUCTION_FORMAT30t149.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT30t162!=null?INSTRUCTION_FORMAT30t162.getText():null)); - method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction30t(opcode, label_ref150)); + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction30t(opcode, label_ref163)); } @@ -5446,32 +5773,32 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format31c" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1006:1: insn_format31c : ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) ; + // /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 ) ; public final void insn_format31c() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT31c151=null; - CommonTree REGISTER152=null; - String string_literal153 =null; + CommonTree INSTRUCTION_FORMAT31c164=null; + CommonTree REGISTER165=null; + String string_literal166 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1007:3: ( ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1008:5: ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1080:3: ( ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1081:5: ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) { - match(input,I_STATEMENT_FORMAT31c,FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2716); + match(input,I_STATEMENT_FORMAT31c,FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2905); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT31c151=(CommonTree)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2718); - REGISTER152=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c2720); - pushFollow(FOLLOW_string_literal_in_insn_format31c2722); - string_literal153=string_literal(); + INSTRUCTION_FORMAT31c164=(CommonTree)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2907); + REGISTER165=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c2909); + pushFollow(FOLLOW_string_literal_in_insn_format31c2911); + string_literal166=string_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31c151!=null?INSTRUCTION_FORMAT31c151.getText():null)); - short regA = parseRegister_byte((REGISTER152!=null?REGISTER152.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31c164!=null?INSTRUCTION_FORMAT31c164.getText():null)); + short regA = parseRegister_byte((REGISTER165!=null?REGISTER165.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31c(opcode, regA, - dexBuilder.internStringReference(string_literal153))); + dexBuilder.internStringReference(string_literal166))); } @@ -5489,31 +5816,31 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format31i" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1017:1: insn_format31i : ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) ; + // /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 ) ; public final void insn_format31i() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT31i154=null; - CommonTree REGISTER155=null; - int fixed_32bit_literal156 =0; + CommonTree INSTRUCTION_FORMAT31i167=null; + CommonTree REGISTER168=null; + int fixed_32bit_literal169 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1018:3: ( ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1019:5: ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1091:3: ( ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1092:5: ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) { - match(input,I_STATEMENT_FORMAT31i,FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2745); + match(input,I_STATEMENT_FORMAT31i,FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2934); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT31i154=(CommonTree)match(input,INSTRUCTION_FORMAT31i,FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2747); - REGISTER155=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i2749); - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i2751); - fixed_32bit_literal156=fixed_32bit_literal(); + INSTRUCTION_FORMAT31i167=(CommonTree)match(input,INSTRUCTION_FORMAT31i,FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2936); + REGISTER168=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i2938); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i2940); + fixed_32bit_literal169=fixed_32bit_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31i154!=null?INSTRUCTION_FORMAT31i154.getText():null)); - short regA = parseRegister_byte((REGISTER155!=null?REGISTER155.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31i167!=null?INSTRUCTION_FORMAT31i167.getText():null)); + short regA = parseRegister_byte((REGISTER168!=null?REGISTER168.getText():null)); - int litB = fixed_32bit_literal156; + int litB = fixed_32bit_literal169; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31i(opcode, regA, litB)); @@ -5533,32 +5860,32 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format31t" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1029:1: insn_format31t : ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) ; + // /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 ) ; public final void insn_format31t() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT31t157=null; - CommonTree REGISTER158=null; - Label label_ref159 =null; + CommonTree INSTRUCTION_FORMAT31t170=null; + CommonTree REGISTER171=null; + Label label_ref172 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1030:3: ( ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1031:5: ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1103:3: ( ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1104:5: ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) { - match(input,I_STATEMENT_FORMAT31t,FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2774); + match(input,I_STATEMENT_FORMAT31t,FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2963); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT31t157=(CommonTree)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2776); - REGISTER158=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t2778); - pushFollow(FOLLOW_label_ref_in_insn_format31t2780); - label_ref159=label_ref(); + INSTRUCTION_FORMAT31t170=(CommonTree)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2965); + REGISTER171=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t2967); + pushFollow(FOLLOW_label_ref_in_insn_format31t2969); + label_ref172=label_ref(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31t157!=null?INSTRUCTION_FORMAT31t157.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31t170!=null?INSTRUCTION_FORMAT31t170.getText():null)); - short regA = parseRegister_byte((REGISTER158!=null?REGISTER158.getText():null)); + short regA = parseRegister_byte((REGISTER171!=null?REGISTER171.getText():null)); - method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31t(opcode, regA, label_ref159)); + method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31t(opcode, regA, label_ref172)); } @@ -5576,25 +5903,25 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format32x" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1040:1: insn_format32x : ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) ; + // /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 ) ; public final void insn_format32x() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; - CommonTree INSTRUCTION_FORMAT32x160=null; + CommonTree INSTRUCTION_FORMAT32x173=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1041:3: ( ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1042:5: ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1114:3: ( ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1115:5: ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) { - match(input,I_STATEMENT_FORMAT32x,FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2803); + match(input,I_STATEMENT_FORMAT32x,FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2992); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT32x160=(CommonTree)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2805); - registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x2809); - registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x2813); + INSTRUCTION_FORMAT32x173=(CommonTree)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2994); + registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x2998); + registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x3002); match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT32x160!=null?INSTRUCTION_FORMAT32x160.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT32x173!=null?INSTRUCTION_FORMAT32x173.getText():null)); int regA = parseRegister_short((registerA!=null?registerA.getText():null)); int regB = parseRegister_short((registerB!=null?registerB.getText():null)); @@ -5616,37 +5943,37 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format35c_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1051:1: insn_format35c_method : ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ; + // /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 ) ; public final void insn_format35c_method() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT35c_METHOD161=null; - TreeRuleReturnScope register_list162 =null; - ImmutableMethodReference method_reference163 =null; + CommonTree INSTRUCTION_FORMAT35c_METHOD174=null; + TreeRuleReturnScope register_list175 =null; + ImmutableMethodReference method_reference176 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1052:3: ( ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1053:5: ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT35c_METHOD,FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method2836); + match(input,I_STATEMENT_FORMAT35c_METHOD,FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method3025); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT35c_METHOD161=(CommonTree)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method2838); - pushFollow(FOLLOW_register_list_in_insn_format35c_method2840); - register_list162=register_list(); + INSTRUCTION_FORMAT35c_METHOD174=(CommonTree)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method3027); + pushFollow(FOLLOW_register_list_in_insn_format35c_method3029); + register_list175=register_list(); state._fsp--; - pushFollow(FOLLOW_method_reference_in_insn_format35c_method2842); - method_reference163=method_reference(); + pushFollow(FOLLOW_method_reference_in_insn_format35c_method3031); + method_reference176=method_reference(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_METHOD161!=null?INSTRUCTION_FORMAT35c_METHOD161.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_METHOD174!=null?INSTRUCTION_FORMAT35c_METHOD174.getText():null)); //this depends on the fact that register_list returns a byte[5] - byte[] registers = (register_list162!=null?((smaliTreeWalker.register_list_return)register_list162).registers:null); - byte registerCount = (register_list162!=null?((smaliTreeWalker.register_list_return)register_list162).registerCount:0); + byte[] registers = (register_list175!=null?((smaliTreeWalker.register_list_return)register_list175).registers:null); + byte registerCount = (register_list175!=null?((smaliTreeWalker.register_list_return)register_list175).registerCount:0); - ImmutableMethodReference methodReference = method_reference163; + ImmutableMethodReference methodReference = method_reference176; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1], registers[2], registers[3], registers[4], dexBuilder.internMethodReference(methodReference))); @@ -5667,38 +5994,38 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format35c_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1067:1: insn_format35c_type : ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ; + // /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 ) ; public final void insn_format35c_type() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT35c_TYPE164=null; - TreeRuleReturnScope register_list165 =null; - TreeRuleReturnScope nonvoid_type_descriptor166 =null; + CommonTree INSTRUCTION_FORMAT35c_TYPE177=null; + TreeRuleReturnScope register_list178 =null; + TreeRuleReturnScope nonvoid_type_descriptor179 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1068:3: ( ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1069:5: ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT35c_TYPE,FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type2865); + match(input,I_STATEMENT_FORMAT35c_TYPE,FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type3054); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT35c_TYPE164=(CommonTree)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type2867); - pushFollow(FOLLOW_register_list_in_insn_format35c_type2869); - register_list165=register_list(); + INSTRUCTION_FORMAT35c_TYPE177=(CommonTree)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type3056); + pushFollow(FOLLOW_register_list_in_insn_format35c_type3058); + register_list178=register_list(); state._fsp--; - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type2871); - nonvoid_type_descriptor166=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type3060); + nonvoid_type_descriptor179=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_TYPE164!=null?INSTRUCTION_FORMAT35c_TYPE164.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_TYPE177!=null?INSTRUCTION_FORMAT35c_TYPE177.getText():null)); //this depends on the fact that register_list returns a byte[5] - byte[] registers = (register_list165!=null?((smaliTreeWalker.register_list_return)register_list165).registers:null); - byte registerCount = (register_list165!=null?((smaliTreeWalker.register_list_return)register_list165).registerCount:0); + byte[] registers = (register_list178!=null?((smaliTreeWalker.register_list_return)register_list178).registers:null); + byte registerCount = (register_list178!=null?((smaliTreeWalker.register_list_return)register_list178).registerCount:0); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1], - registers[2], registers[3], registers[4], dexBuilder.internTypeReference((nonvoid_type_descriptor166!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor166).type:null)))); + registers[2], registers[3], registers[4], dexBuilder.internTypeReference((nonvoid_type_descriptor179!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor179).type:null)))); } @@ -5716,37 +6043,37 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format3rc_method" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1081:1: insn_format3rc_method : ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ; + // /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 ) ; public final void insn_format3rc_method() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT3rc_METHOD167=null; - TreeRuleReturnScope register_range168 =null; - ImmutableMethodReference method_reference169 =null; + CommonTree INSTRUCTION_FORMAT3rc_METHOD180=null; + TreeRuleReturnScope register_range181 =null; + ImmutableMethodReference method_reference182 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1082:3: ( ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1083:5: ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT3rc_METHOD,FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method2894); + match(input,I_STATEMENT_FORMAT3rc_METHOD,FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method3083); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT3rc_METHOD167=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method2896); - pushFollow(FOLLOW_register_range_in_insn_format3rc_method2898); - register_range168=register_range(); + INSTRUCTION_FORMAT3rc_METHOD180=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method3085); + pushFollow(FOLLOW_register_range_in_insn_format3rc_method3087); + register_range181=register_range(); state._fsp--; - pushFollow(FOLLOW_method_reference_in_insn_format3rc_method2900); - method_reference169=method_reference(); + pushFollow(FOLLOW_method_reference_in_insn_format3rc_method3089); + method_reference182=method_reference(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_METHOD167!=null?INSTRUCTION_FORMAT3rc_METHOD167.getText():null)); - int startRegister = (register_range168!=null?((smaliTreeWalker.register_range_return)register_range168).startRegister:0); - int endRegister = (register_range168!=null?((smaliTreeWalker.register_range_return)register_range168).endRegister:0); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_METHOD180!=null?INSTRUCTION_FORMAT3rc_METHOD180.getText():null)); + int startRegister = (register_range181!=null?((smaliTreeWalker.register_range_return)register_range181).startRegister:0); + int endRegister = (register_range181!=null?((smaliTreeWalker.register_range_return)register_range181).endRegister:0); int registerCount = endRegister-startRegister+1; - ImmutableMethodReference methodReference = method_reference169; + ImmutableMethodReference methodReference = method_reference182; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount, dexBuilder.internMethodReference(methodReference))); @@ -5767,38 +6094,38 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format3rc_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1097:1: insn_format3rc_type : ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ; + // /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 ) ; public final void insn_format3rc_type() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT3rc_TYPE170=null; - TreeRuleReturnScope register_range171 =null; - TreeRuleReturnScope nonvoid_type_descriptor172 =null; + CommonTree INSTRUCTION_FORMAT3rc_TYPE183=null; + TreeRuleReturnScope register_range184 =null; + TreeRuleReturnScope nonvoid_type_descriptor185 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1098:3: ( ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1099:5: ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_FORMAT3rc_TYPE,FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type2923); + match(input,I_STATEMENT_FORMAT3rc_TYPE,FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type3112); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT3rc_TYPE170=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type2925); - pushFollow(FOLLOW_register_range_in_insn_format3rc_type2927); - register_range171=register_range(); + INSTRUCTION_FORMAT3rc_TYPE183=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type3114); + pushFollow(FOLLOW_register_range_in_insn_format3rc_type3116); + register_range184=register_range(); state._fsp--; - pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type2929); - nonvoid_type_descriptor172=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type3118); + nonvoid_type_descriptor185=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_TYPE170!=null?INSTRUCTION_FORMAT3rc_TYPE170.getText():null)); - int startRegister = (register_range171!=null?((smaliTreeWalker.register_range_return)register_range171).startRegister:0); - int endRegister = (register_range171!=null?((smaliTreeWalker.register_range_return)register_range171).endRegister:0); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_TYPE183!=null?INSTRUCTION_FORMAT3rc_TYPE183.getText():null)); + int startRegister = (register_range184!=null?((smaliTreeWalker.register_range_return)register_range184).startRegister:0); + int endRegister = (register_range184!=null?((smaliTreeWalker.register_range_return)register_range184).endRegister:0); int registerCount = endRegister-startRegister+1; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount, - dexBuilder.internTypeReference((nonvoid_type_descriptor172!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor172).type:null)))); + dexBuilder.internTypeReference((nonvoid_type_descriptor185!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor185).type:null)))); } @@ -5816,31 +6143,31 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_format51l_type" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1111:1: insn_format51l_type : ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) ; + // /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 ) ; public final void insn_format51l_type() throws RecognitionException { - CommonTree INSTRUCTION_FORMAT51l173=null; - CommonTree REGISTER174=null; - long fixed_64bit_literal175 =0; + CommonTree INSTRUCTION_FORMAT51l186=null; + CommonTree REGISTER187=null; + long fixed_64bit_literal188 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1112:3: ( ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1113:5: ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1185:3: ( ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1186:5: ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) { - match(input,I_STATEMENT_FORMAT51l,FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type2952); + match(input,I_STATEMENT_FORMAT51l,FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type3141); match(input, Token.DOWN, null); - INSTRUCTION_FORMAT51l173=(CommonTree)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type2954); - REGISTER174=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l_type2956); - pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format51l_type2958); - fixed_64bit_literal175=fixed_64bit_literal(); + INSTRUCTION_FORMAT51l186=(CommonTree)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type3143); + REGISTER187=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l_type3145); + pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format51l_type3147); + fixed_64bit_literal188=fixed_64bit_literal(); state._fsp--; match(input, Token.UP, null); - Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT51l173!=null?INSTRUCTION_FORMAT51l173.getText():null)); - short regA = parseRegister_byte((REGISTER174!=null?REGISTER174.getText():null)); + Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT51l186!=null?INSTRUCTION_FORMAT51l186.getText():null)); + short regA = parseRegister_byte((REGISTER187!=null?REGISTER187.getText():null)); - long litB = fixed_64bit_literal175; + long litB = fixed_64bit_literal188; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction51l(opcode, regA, litB)); @@ -5860,36 +6187,36 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_array_data_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1123:1: insn_array_data_directive : ^( I_STATEMENT_ARRAY_DATA ^( I_ARRAY_ELEMENT_SIZE short_integral_literal ) array_elements ) ; + // /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 ) ; public final void insn_array_data_directive() throws RecognitionException { - short short_integral_literal176 =0; - List<Number> array_elements177 =null; + short short_integral_literal189 =0; + List<Number> array_elements190 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1124:3: ( ^( I_STATEMENT_ARRAY_DATA ^( I_ARRAY_ELEMENT_SIZE short_integral_literal ) array_elements ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1125:5: ^( I_STATEMENT_ARRAY_DATA ^( I_ARRAY_ELEMENT_SIZE short_integral_literal ) array_elements ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_ARRAY_DATA,FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive2981); + match(input,I_STATEMENT_ARRAY_DATA,FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive3170); match(input, Token.DOWN, null); - match(input,I_ARRAY_ELEMENT_SIZE,FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive2984); + match(input,I_ARRAY_ELEMENT_SIZE,FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive3173); match(input, Token.DOWN, null); - pushFollow(FOLLOW_short_integral_literal_in_insn_array_data_directive2986); - short_integral_literal176=short_integral_literal(); + pushFollow(FOLLOW_short_integral_literal_in_insn_array_data_directive3175); + short_integral_literal189=short_integral_literal(); state._fsp--; match(input, Token.UP, null); - pushFollow(FOLLOW_array_elements_in_insn_array_data_directive2989); - array_elements177=array_elements(); + pushFollow(FOLLOW_array_elements_in_insn_array_data_directive3178); + array_elements190=array_elements(); state._fsp--; match(input, Token.UP, null); - int elementWidth = short_integral_literal176; - List<Number> elements = array_elements177; + int elementWidth = short_integral_literal189; + List<Number> elements = array_elements190; - method_stack.peek().methodBuilder.addInstruction(new BuilderArrayPayload(elementWidth, array_elements177)); + method_stack.peek().methodBuilder.addInstruction(new BuilderArrayPayload(elementWidth, array_elements190)); } @@ -5907,35 +6234,35 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_packed_switch_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1133:1: insn_packed_switch_directive : ^( I_STATEMENT_PACKED_SWITCH ^( I_PACKED_SWITCH_START_KEY fixed_32bit_literal ) packed_switch_elements ) ; + // /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 ) ; public final void insn_packed_switch_directive() throws RecognitionException { - int fixed_32bit_literal178 =0; - List<Label> packed_switch_elements179 =null; + int fixed_32bit_literal191 =0; + List<Label> packed_switch_elements192 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1134:3: ( ^( I_STATEMENT_PACKED_SWITCH ^( I_PACKED_SWITCH_START_KEY fixed_32bit_literal ) packed_switch_elements ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1135:5: ^( I_STATEMENT_PACKED_SWITCH ^( I_PACKED_SWITCH_START_KEY fixed_32bit_literal ) packed_switch_elements ) + // /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 ) ) + // /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 ) { - match(input,I_STATEMENT_PACKED_SWITCH,FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3011); + match(input,I_STATEMENT_PACKED_SWITCH,FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3200); match(input, Token.DOWN, null); - match(input,I_PACKED_SWITCH_START_KEY,FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3014); + match(input,I_PACKED_SWITCH_START_KEY,FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3203); match(input, Token.DOWN, null); - pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3016); - fixed_32bit_literal178=fixed_32bit_literal(); + pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3205); + fixed_32bit_literal191=fixed_32bit_literal(); state._fsp--; match(input, Token.UP, null); - pushFollow(FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3019); - packed_switch_elements179=packed_switch_elements(); + pushFollow(FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3208); + packed_switch_elements192=packed_switch_elements(); state._fsp--; match(input, Token.UP, null); - int startKey = fixed_32bit_literal178; + int startKey = fixed_32bit_literal191; method_stack.peek().methodBuilder.addInstruction(new BuilderPackedSwitchPayload(startKey, - packed_switch_elements179)); + packed_switch_elements192)); } @@ -5953,24 +6280,24 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "insn_sparse_switch_directive" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1142:1: insn_sparse_switch_directive : ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) ; + // /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 ) ; public final void insn_sparse_switch_directive() throws RecognitionException { - List<SwitchLabelElement> sparse_switch_elements180 =null; + List<SwitchLabelElement> sparse_switch_elements193 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1143:3: ( ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1144:5: ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1216:3: ( ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1217:5: ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) { - match(input,I_STATEMENT_SPARSE_SWITCH,FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3043); + match(input,I_STATEMENT_SPARSE_SWITCH,FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3232); match(input, Token.DOWN, null); - pushFollow(FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3045); - sparse_switch_elements180=sparse_switch_elements(); + pushFollow(FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3234); + sparse_switch_elements193=sparse_switch_elements(); state._fsp--; match(input, Token.UP, null); - method_stack.peek().methodBuilder.addInstruction(new BuilderSparseSwitchPayload(sparse_switch_elements180)); + method_stack.peek().methodBuilder.addInstruction(new BuilderSparseSwitchPayload(sparse_switch_elements193)); } @@ -5992,14 +6319,14 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "nonvoid_type_descriptor" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1149:1: nonvoid_type_descriptor returns [String type] : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ; + // /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 ) ; public final smaliTreeWalker.nonvoid_type_descriptor_return nonvoid_type_descriptor() throws RecognitionException { smaliTreeWalker.nonvoid_type_descriptor_return retval = new smaliTreeWalker.nonvoid_type_descriptor_return(); retval.start = input.LT(1); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1150:3: ( ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1150:5: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1223:3: ( ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1223:5: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) { if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE ) { input.consume(); @@ -6033,14 +6360,14 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "reference_type_descriptor" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1157:1: reference_type_descriptor returns [String type] : ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ; + // /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 ) ; public final smaliTreeWalker.reference_type_descriptor_return reference_type_descriptor() throws RecognitionException { smaliTreeWalker.reference_type_descriptor_return retval = new smaliTreeWalker.reference_type_descriptor_return(); retval.start = input.LT(1); try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1158:3: ( ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1158:5: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1231:3: ( ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1231:5: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) { if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR ) { input.consume(); @@ -6070,46 +6397,46 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "type_descriptor" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1164:1: type_descriptor returns [String type] : ( VOID_TYPE | nonvoid_type_descriptor ); + // /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 ); public final String type_descriptor() throws RecognitionException { String type = null; - TreeRuleReturnScope nonvoid_type_descriptor181 =null; + TreeRuleReturnScope nonvoid_type_descriptor194 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1165:3: ( VOID_TYPE | nonvoid_type_descriptor ) - int alt37=2; - int LA37_0 = input.LA(1); - if ( (LA37_0==VOID_TYPE) ) { - alt37=1; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1238:3: ( VOID_TYPE | nonvoid_type_descriptor ) + int alt38=2; + int LA38_0 = input.LA(1); + if ( (LA38_0==VOID_TYPE) ) { + alt38=1; } - else if ( (LA37_0==ARRAY_DESCRIPTOR||LA37_0==CLASS_DESCRIPTOR||LA37_0==PRIMITIVE_TYPE) ) { - alt37=2; + else if ( (LA38_0==ARRAY_DESCRIPTOR||LA38_0==CLASS_DESCRIPTOR||LA38_0==PRIMITIVE_TYPE) ) { + alt38=2; } else { NoViableAltException nvae = - new NoViableAltException("", 37, 0, input); + new NoViableAltException("", 38, 0, input); throw nvae; } - switch (alt37) { + switch (alt38) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1165:5: VOID_TYPE + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1238:5: VOID_TYPE { - match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_descriptor3124); + match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_descriptor3313); type = "V"; } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1166:5: nonvoid_type_descriptor + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1239:5: nonvoid_type_descriptor { - pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_descriptor3132); - nonvoid_type_descriptor181=nonvoid_type_descriptor(); + pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_descriptor3321); + nonvoid_type_descriptor194=nonvoid_type_descriptor(); state._fsp--; - type = (nonvoid_type_descriptor181!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor181).type:null); + type = (nonvoid_type_descriptor194!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor194).type:null); } break; @@ -6129,106 +6456,106 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "short_integral_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1169:1: short_integral_literal returns [short value] : ( long_literal | integer_literal | short_literal | char_literal | byte_literal ); + // /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 ); public final short short_integral_literal() throws RecognitionException { short value = 0; - long long_literal182 =0; - int integer_literal183 =0; - short short_literal184 =0; - char char_literal185 =0; - byte byte_literal186 =0; + long long_literal195 =0; + int integer_literal196 =0; + short short_literal197 =0; + char char_literal198 =0; + byte byte_literal199 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1170:3: ( long_literal | integer_literal | short_literal | char_literal | byte_literal ) - int alt38=5; + // /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 ) + int alt39=5; switch ( input.LA(1) ) { case LONG_LITERAL: { - alt38=1; + alt39=1; } break; case INTEGER_LITERAL: { - alt38=2; + alt39=2; } break; case SHORT_LITERAL: { - alt38=3; + alt39=3; } break; case CHAR_LITERAL: { - alt38=4; + alt39=4; } break; case BYTE_LITERAL: { - alt38=5; + alt39=5; } break; default: NoViableAltException nvae = - new NoViableAltException("", 38, 0, input); + new NoViableAltException("", 39, 0, input); throw nvae; } - switch (alt38) { + switch (alt39) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1170:5: long_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1243:5: long_literal { - pushFollow(FOLLOW_long_literal_in_short_integral_literal3150); - long_literal182=long_literal(); + pushFollow(FOLLOW_long_literal_in_short_integral_literal3339); + long_literal195=long_literal(); state._fsp--; - LiteralTools.checkShort(long_literal182); - value = (short)long_literal182; + LiteralTools.checkShort(long_literal195); + value = (short)long_literal195; } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1175:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1248:5: integer_literal { - pushFollow(FOLLOW_integer_literal_in_short_integral_literal3162); - integer_literal183=integer_literal(); + pushFollow(FOLLOW_integer_literal_in_short_integral_literal3351); + integer_literal196=integer_literal(); state._fsp--; - LiteralTools.checkShort(integer_literal183); - value = (short)integer_literal183; + LiteralTools.checkShort(integer_literal196); + value = (short)integer_literal196; } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1180:5: short_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1253:5: short_literal { - pushFollow(FOLLOW_short_literal_in_short_integral_literal3174); - short_literal184=short_literal(); + pushFollow(FOLLOW_short_literal_in_short_integral_literal3363); + short_literal197=short_literal(); state._fsp--; - value = short_literal184; + value = short_literal197; } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1181:5: char_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1254:5: char_literal { - pushFollow(FOLLOW_char_literal_in_short_integral_literal3182); - char_literal185=char_literal(); + pushFollow(FOLLOW_char_literal_in_short_integral_literal3371); + char_literal198=char_literal(); state._fsp--; - value = (short)char_literal185; + value = (short)char_literal198; } break; case 5 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1182:5: byte_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1255:5: byte_literal { - pushFollow(FOLLOW_byte_literal_in_short_integral_literal3190); - byte_literal186=byte_literal(); + pushFollow(FOLLOW_byte_literal_in_short_integral_literal3379); + byte_literal199=byte_literal(); state._fsp--; - value = byte_literal186; + value = byte_literal199; } break; @@ -6248,87 +6575,87 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "integral_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1184:1: integral_literal returns [int value] : ( long_literal | integer_literal | short_literal | byte_literal ); + // /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 ); public final int integral_literal() throws RecognitionException { int value = 0; - long long_literal187 =0; - int integer_literal188 =0; - short short_literal189 =0; - byte byte_literal190 =0; + long long_literal200 =0; + int integer_literal201 =0; + short short_literal202 =0; + byte byte_literal203 =0; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1185:3: ( long_literal | integer_literal | short_literal | byte_literal ) - int alt39=4; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1258:3: ( long_literal | integer_literal | short_literal | byte_literal ) + int alt40=4; switch ( input.LA(1) ) { case LONG_LITERAL: { - alt39=1; + alt40=1; } break; case INTEGER_LITERAL: { - alt39=2; + alt40=2; } break; case SHORT_LITERAL: { - alt39=3; + alt40=3; } break; case BYTE_LITERAL: { - alt39=4; + alt40=4; } break; default: NoViableAltException nvae = - new NoViableAltException("", 39, 0, input); + new NoViableAltException("", 40, 0, input); throw nvae; } - switch (alt39) { + switch (alt40) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1185:5: long_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1258:5: long_literal { - pushFollow(FOLLOW_long_literal_in_integral_literal3205); - long_literal187=long_literal(); + pushFollow(FOLLOW_long_literal_in_integral_literal3394); + long_literal200=long_literal(); state._fsp--; - LiteralTools.checkInt(long_literal187); - value = (int)long_literal187; + LiteralTools.checkInt(long_literal200); + value = (int)long_literal200; } break; case 2 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1190:5: integer_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1263:5: integer_literal { - pushFollow(FOLLOW_integer_literal_in_integral_literal3217); - integer_literal188=integer_literal(); + pushFollow(FOLLOW_integer_literal_in_integral_literal3406); + integer_literal201=integer_literal(); state._fsp--; - value = integer_literal188; + value = integer_literal201; } break; case 3 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1191:5: short_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1264:5: short_literal { - pushFollow(FOLLOW_short_literal_in_integral_literal3225); - short_literal189=short_literal(); + pushFollow(FOLLOW_short_literal_in_integral_literal3414); + short_literal202=short_literal(); state._fsp--; - value = short_literal189; + value = short_literal202; } break; case 4 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1192:5: byte_literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1265:5: byte_literal { - pushFollow(FOLLOW_byte_literal_in_integral_literal3233); - byte_literal190=byte_literal(); + pushFollow(FOLLOW_byte_literal_in_integral_literal3422); + byte_literal203=byte_literal(); state._fsp--; - value = byte_literal190; + value = byte_literal203; } break; @@ -6348,19 +6675,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "integer_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1195:1: integer_literal returns [int value] : INTEGER_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1268:1: integer_literal returns [int value] : INTEGER_LITERAL ; public final int integer_literal() throws RecognitionException { int value = 0; - CommonTree INTEGER_LITERAL191=null; + CommonTree INTEGER_LITERAL204=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1196:3: ( INTEGER_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1196:5: INTEGER_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1269:3: ( INTEGER_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1269:5: INTEGER_LITERAL { - INTEGER_LITERAL191=(CommonTree)match(input,INTEGER_LITERAL,FOLLOW_INTEGER_LITERAL_in_integer_literal3249); - value = LiteralTools.parseInt((INTEGER_LITERAL191!=null?INTEGER_LITERAL191.getText():null)); + INTEGER_LITERAL204=(CommonTree)match(input,INTEGER_LITERAL,FOLLOW_INTEGER_LITERAL_in_integer_literal3438); + value = LiteralTools.parseInt((INTEGER_LITERAL204!=null?INTEGER_LITERAL204.getText():null)); } } @@ -6378,19 +6705,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "long_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1198:1: long_literal returns [long value] : LONG_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1271:1: long_literal returns [long value] : LONG_LITERAL ; public final long long_literal() throws RecognitionException { long value = 0; - CommonTree LONG_LITERAL192=null; + CommonTree LONG_LITERAL205=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1199:3: ( LONG_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1199:5: LONG_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1272:3: ( LONG_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1272:5: LONG_LITERAL { - LONG_LITERAL192=(CommonTree)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_long_literal3264); - value = LiteralTools.parseLong((LONG_LITERAL192!=null?LONG_LITERAL192.getText():null)); + LONG_LITERAL205=(CommonTree)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_long_literal3453); + value = LiteralTools.parseLong((LONG_LITERAL205!=null?LONG_LITERAL205.getText():null)); } } @@ -6408,19 +6735,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "short_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1201:1: short_literal returns [short value] : SHORT_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1274:1: short_literal returns [short value] : SHORT_LITERAL ; public final short short_literal() throws RecognitionException { short value = 0; - CommonTree SHORT_LITERAL193=null; + CommonTree SHORT_LITERAL206=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1202:3: ( SHORT_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1202:5: SHORT_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1275:3: ( SHORT_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1275:5: SHORT_LITERAL { - SHORT_LITERAL193=(CommonTree)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_short_literal3279); - value = LiteralTools.parseShort((SHORT_LITERAL193!=null?SHORT_LITERAL193.getText():null)); + SHORT_LITERAL206=(CommonTree)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_short_literal3468); + value = LiteralTools.parseShort((SHORT_LITERAL206!=null?SHORT_LITERAL206.getText():null)); } } @@ -6438,19 +6765,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "byte_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1204:1: byte_literal returns [byte value] : BYTE_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1277:1: byte_literal returns [byte value] : BYTE_LITERAL ; public final byte byte_literal() throws RecognitionException { byte value = 0; - CommonTree BYTE_LITERAL194=null; + CommonTree BYTE_LITERAL207=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1205:3: ( BYTE_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1205:5: BYTE_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1278:3: ( BYTE_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1278:5: BYTE_LITERAL { - BYTE_LITERAL194=(CommonTree)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_byte_literal3294); - value = LiteralTools.parseByte((BYTE_LITERAL194!=null?BYTE_LITERAL194.getText():null)); + BYTE_LITERAL207=(CommonTree)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_byte_literal3483); + value = LiteralTools.parseByte((BYTE_LITERAL207!=null?BYTE_LITERAL207.getText():null)); } } @@ -6468,19 +6795,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "float_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1207:1: float_literal returns [float value] : FLOAT_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1280:1: float_literal returns [float value] : FLOAT_LITERAL ; public final float float_literal() throws RecognitionException { float value = 0.0f; - CommonTree FLOAT_LITERAL195=null; + CommonTree FLOAT_LITERAL208=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1208:3: ( FLOAT_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1208:5: FLOAT_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1281:3: ( FLOAT_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1281:5: FLOAT_LITERAL { - FLOAT_LITERAL195=(CommonTree)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal3309); - value = LiteralTools.parseFloat((FLOAT_LITERAL195!=null?FLOAT_LITERAL195.getText():null)); + FLOAT_LITERAL208=(CommonTree)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal3498); + value = LiteralTools.parseFloat((FLOAT_LITERAL208!=null?FLOAT_LITERAL208.getText():null)); } } @@ -6498,19 +6825,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "double_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1210:1: double_literal returns [double value] : DOUBLE_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1283:1: double_literal returns [double value] : DOUBLE_LITERAL ; public final double double_literal() throws RecognitionException { double value = 0.0; - CommonTree DOUBLE_LITERAL196=null; + CommonTree DOUBLE_LITERAL209=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1211:3: ( DOUBLE_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1211:5: DOUBLE_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1284:3: ( DOUBLE_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1284:5: DOUBLE_LITERAL { - DOUBLE_LITERAL196=(CommonTree)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal3324); - value = LiteralTools.parseDouble((DOUBLE_LITERAL196!=null?DOUBLE_LITERAL196.getText():null)); + DOUBLE_LITERAL209=(CommonTree)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal3513); + value = LiteralTools.parseDouble((DOUBLE_LITERAL209!=null?DOUBLE_LITERAL209.getText():null)); } } @@ -6528,19 +6855,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "char_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1213:1: char_literal returns [char value] : CHAR_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1286:1: char_literal returns [char value] : CHAR_LITERAL ; public final char char_literal() throws RecognitionException { char value = 0; - CommonTree CHAR_LITERAL197=null; + CommonTree CHAR_LITERAL210=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1214:3: ( CHAR_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1214:5: CHAR_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1287:3: ( CHAR_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1287:5: CHAR_LITERAL { - CHAR_LITERAL197=(CommonTree)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_char_literal3339); - value = (CHAR_LITERAL197!=null?CHAR_LITERAL197.getText():null).charAt(1); + CHAR_LITERAL210=(CommonTree)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_char_literal3528); + value = (CHAR_LITERAL210!=null?CHAR_LITERAL210.getText():null).charAt(1); } } @@ -6558,20 +6885,20 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "string_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1216:1: string_literal returns [String value] : STRING_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1289:1: string_literal returns [String value] : STRING_LITERAL ; public final String string_literal() throws RecognitionException { String value = null; - CommonTree STRING_LITERAL198=null; + CommonTree STRING_LITERAL211=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1217:3: ( STRING_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1217:5: STRING_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1290:3: ( STRING_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1290:5: STRING_LITERAL { - STRING_LITERAL198=(CommonTree)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_string_literal3354); + STRING_LITERAL211=(CommonTree)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_string_literal3543); - value = (STRING_LITERAL198!=null?STRING_LITERAL198.getText():null); + value = (STRING_LITERAL211!=null?STRING_LITERAL211.getText():null); value = value.substring(1,value.length()-1); } @@ -6591,19 +6918,19 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "bool_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1223:1: bool_literal returns [boolean value] : BOOL_LITERAL ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1296:1: bool_literal returns [boolean value] : BOOL_LITERAL ; public final boolean bool_literal() throws RecognitionException { boolean value = false; - CommonTree BOOL_LITERAL199=null; + CommonTree BOOL_LITERAL212=null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1224:3: ( BOOL_LITERAL ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1224:5: BOOL_LITERAL + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1297:3: ( BOOL_LITERAL ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1297:5: BOOL_LITERAL { - BOOL_LITERAL199=(CommonTree)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_bool_literal3373); - value = Boolean.parseBoolean((BOOL_LITERAL199!=null?BOOL_LITERAL199.getText():null)); + BOOL_LITERAL212=(CommonTree)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_bool_literal3562); + value = Boolean.parseBoolean((BOOL_LITERAL212!=null?BOOL_LITERAL212.getText():null)); } } @@ -6621,44 +6948,44 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "array_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1226:1: array_literal returns [List<EncodedValue> elements] : ^( I_ENCODED_ARRAY ( literal )* ) ; + // /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 )* ) ; public final List<EncodedValue> array_literal() throws RecognitionException { List<EncodedValue> elements = null; - EncodedValue literal200 =null; + EncodedValue literal213 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1227:3: ( ^( I_ENCODED_ARRAY ( literal )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1227:5: ^( I_ENCODED_ARRAY ( literal )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1300:3: ( ^( I_ENCODED_ARRAY ( literal )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1300:5: ^( I_ENCODED_ARRAY ( literal )* ) { elements = Lists.newArrayList(); - match(input,I_ENCODED_ARRAY,FOLLOW_I_ENCODED_ARRAY_in_array_literal3395); + match(input,I_ENCODED_ARRAY,FOLLOW_I_ENCODED_ARRAY_in_array_literal3584); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1228:23: ( literal )* - loop40: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1301:23: ( literal )* + loop41: while (true) { - int alt40=2; - int LA40_0 = input.LA(1); - if ( (LA40_0==ARRAY_DESCRIPTOR||(LA40_0 >= BOOL_LITERAL && LA40_0 <= BYTE_LITERAL)||(LA40_0 >= CHAR_LITERAL && LA40_0 <= CLASS_DESCRIPTOR)||LA40_0==DOUBLE_LITERAL||LA40_0==FLOAT_LITERAL||LA40_0==INTEGER_LITERAL||(LA40_0 >= I_ENCODED_ARRAY && LA40_0 <= I_ENCODED_METHOD)||LA40_0==I_SUBANNOTATION||LA40_0==LONG_LITERAL||LA40_0==NULL_LITERAL||LA40_0==PRIMITIVE_TYPE||LA40_0==SHORT_LITERAL||LA40_0==STRING_LITERAL||LA40_0==VOID_TYPE) ) { - alt40=1; + int alt41=2; + int LA41_0 = input.LA(1); + 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) ) { + alt41=1; } - switch (alt40) { + switch (alt41) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1228:24: literal + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1301:24: literal { - pushFollow(FOLLOW_literal_in_array_literal3398); - literal200=literal(); + pushFollow(FOLLOW_literal_in_array_literal3587); + literal213=literal(); state._fsp--; - elements.add(literal200); + elements.add(literal213); } break; default : - break loop40; + break loop41; } } @@ -6682,40 +7009,40 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "annotations" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1230:1: annotations returns [Set<Annotation> annotations] : ^( I_ANNOTATIONS ( annotation )* ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1303:1: annotations returns [Set<Annotation> annotations] : ^( I_ANNOTATIONS ( annotation )* ) ; public final Set<Annotation> annotations() throws RecognitionException { Set<Annotation> annotations = null; - Annotation annotation201 =null; + Annotation annotation214 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1231:3: ( ^( I_ANNOTATIONS ( annotation )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1231:5: ^( I_ANNOTATIONS ( annotation )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1304:3: ( ^( I_ANNOTATIONS ( annotation )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1304:5: ^( I_ANNOTATIONS ( annotation )* ) { HashMap<String, Annotation> annotationMap = Maps.newHashMap(); - match(input,I_ANNOTATIONS,FOLLOW_I_ANNOTATIONS_in_annotations3423); + match(input,I_ANNOTATIONS,FOLLOW_I_ANNOTATIONS_in_annotations3612); if ( input.LA(1)==Token.DOWN ) { match(input, Token.DOWN, null); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1232:21: ( annotation )* - loop41: + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1305:21: ( annotation )* + loop42: while (true) { - int alt41=2; - int LA41_0 = input.LA(1); - if ( (LA41_0==I_ANNOTATION) ) { - alt41=1; + int alt42=2; + int LA42_0 = input.LA(1); + if ( (LA42_0==I_ANNOTATION) ) { + alt42=1; } - switch (alt41) { + switch (alt42) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1232:22: annotation + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1305:22: annotation { - pushFollow(FOLLOW_annotation_in_annotations3426); - annotation201=annotation(); + pushFollow(FOLLOW_annotation_in_annotations3615); + annotation214=annotation(); state._fsp--; - Annotation anno = annotation201; + Annotation anno = annotation214; Annotation old = annotationMap.put(anno.getType(), anno); if (old != null) { throw new SemanticException(input, "Multiple annotations of type %s", anno.getType()); @@ -6725,7 +7052,7 @@ public class smaliTreeWalker extends TreeParser { break; default : - break loop41; + break loop42; } } @@ -6754,30 +7081,30 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "annotation" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1246:1: annotation returns [Annotation annotation] : ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) ; + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1319:1: annotation returns [Annotation annotation] : ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) ; public final Annotation annotation() throws RecognitionException { Annotation annotation = null; - CommonTree ANNOTATION_VISIBILITY202=null; - TreeRuleReturnScope subannotation203 =null; + CommonTree ANNOTATION_VISIBILITY215=null; + TreeRuleReturnScope subannotation216 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1247:3: ( ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1247:5: ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1320:3: ( ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1320:5: ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) { - match(input,I_ANNOTATION,FOLLOW_I_ANNOTATION_in_annotation3455); + match(input,I_ANNOTATION,FOLLOW_I_ANNOTATION_in_annotation3644); match(input, Token.DOWN, null); - ANNOTATION_VISIBILITY202=(CommonTree)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation3457); - pushFollow(FOLLOW_subannotation_in_annotation3459); - subannotation203=subannotation(); + ANNOTATION_VISIBILITY215=(CommonTree)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation3646); + pushFollow(FOLLOW_subannotation_in_annotation3648); + subannotation216=subannotation(); state._fsp--; match(input, Token.UP, null); - int visibility = AnnotationVisibility.getVisibility((ANNOTATION_VISIBILITY202!=null?ANNOTATION_VISIBILITY202.getText():null)); - annotation = new ImmutableAnnotation(visibility, (subannotation203!=null?((smaliTreeWalker.subannotation_return)subannotation203).annotationType:null), (subannotation203!=null?((smaliTreeWalker.subannotation_return)subannotation203).elements:null)); + int visibility = AnnotationVisibility.getVisibility((ANNOTATION_VISIBILITY215!=null?ANNOTATION_VISIBILITY215.getText():null)); + annotation = new ImmutableAnnotation(visibility, (subannotation216!=null?((smaliTreeWalker.subannotation_return)subannotation216).annotationType:null), (subannotation216!=null?((smaliTreeWalker.subannotation_return)subannotation216).elements:null)); } @@ -6796,29 +7123,29 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "annotation_element" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1253:1: annotation_element returns [AnnotationElement element] : ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) ; + // /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 ) ; public final AnnotationElement annotation_element() throws RecognitionException { AnnotationElement element = null; - CommonTree SIMPLE_NAME204=null; - EncodedValue literal205 =null; + CommonTree SIMPLE_NAME217=null; + EncodedValue literal218 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1254:3: ( ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1254:5: ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1327:3: ( ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1327:5: ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) { - match(input,I_ANNOTATION_ELEMENT,FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3480); + match(input,I_ANNOTATION_ELEMENT,FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3669); match(input, Token.DOWN, null); - SIMPLE_NAME204=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_annotation_element3482); - pushFollow(FOLLOW_literal_in_annotation_element3484); - literal205=literal(); + SIMPLE_NAME217=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_annotation_element3671); + pushFollow(FOLLOW_literal_in_annotation_element3673); + literal218=literal(); state._fsp--; match(input, Token.UP, null); - element = new ImmutableAnnotationElement((SIMPLE_NAME204!=null?SIMPLE_NAME204.getText():null), literal205); + element = new ImmutableAnnotationElement((SIMPLE_NAME217!=null?SIMPLE_NAME217.getText():null), literal218); } @@ -6842,54 +7169,54 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "subannotation" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1259:1: subannotation returns [String annotationType, List<AnnotationElement> elements] : ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) ; + // /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 )* ) ; public final smaliTreeWalker.subannotation_return subannotation() throws RecognitionException { smaliTreeWalker.subannotation_return retval = new smaliTreeWalker.subannotation_return(); retval.start = input.LT(1); - CommonTree CLASS_DESCRIPTOR207=null; - AnnotationElement annotation_element206 =null; + CommonTree CLASS_DESCRIPTOR220=null; + AnnotationElement annotation_element219 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1260:3: ( ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1260:5: ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1333:3: ( ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1333:5: ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) { ArrayList<AnnotationElement> elements = Lists.newArrayList(); - match(input,I_SUBANNOTATION,FOLLOW_I_SUBANNOTATION_in_subannotation3511); + match(input,I_SUBANNOTATION,FOLLOW_I_SUBANNOTATION_in_subannotation3700); match(input, Token.DOWN, null); - CLASS_DESCRIPTOR207=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation3521); - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1263:9: ( annotation_element )* - loop42: + CLASS_DESCRIPTOR220=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation3710); + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1336:9: ( annotation_element )* + loop43: while (true) { - int alt42=2; - int LA42_0 = input.LA(1); - if ( (LA42_0==I_ANNOTATION_ELEMENT) ) { - alt42=1; + int alt43=2; + int LA43_0 = input.LA(1); + if ( (LA43_0==I_ANNOTATION_ELEMENT) ) { + alt43=1; } - switch (alt42) { + switch (alt43) { case 1 : - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1263:10: annotation_element + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1336:10: annotation_element { - pushFollow(FOLLOW_annotation_element_in_subannotation3532); - annotation_element206=annotation_element(); + pushFollow(FOLLOW_annotation_element_in_subannotation3721); + annotation_element219=annotation_element(); state._fsp--; - elements.add(annotation_element206); + elements.add(annotation_element219); } break; default : - break loop42; + break loop43; } } match(input, Token.UP, null); - retval.annotationType = (CLASS_DESCRIPTOR207!=null?CLASS_DESCRIPTOR207.getText():null); + retval.annotationType = (CLASS_DESCRIPTOR220!=null?CLASS_DESCRIPTOR220.getText():null); retval.elements = elements; } @@ -6909,27 +7236,27 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "field_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1273:1: field_literal returns [FieldReference value] : ^( I_ENCODED_FIELD field_reference ) ; + // /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 ) ; public final FieldReference field_literal() throws RecognitionException { FieldReference value = null; - ImmutableFieldReference field_reference208 =null; + ImmutableFieldReference field_reference221 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1274:3: ( ^( I_ENCODED_FIELD field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1274:5: ^( I_ENCODED_FIELD field_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1347:3: ( ^( I_ENCODED_FIELD field_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1347:5: ^( I_ENCODED_FIELD field_reference ) { - match(input,I_ENCODED_FIELD,FOLLOW_I_ENCODED_FIELD_in_field_literal3571); + match(input,I_ENCODED_FIELD,FOLLOW_I_ENCODED_FIELD_in_field_literal3760); match(input, Token.DOWN, null); - pushFollow(FOLLOW_field_reference_in_field_literal3573); - field_reference208=field_reference(); + pushFollow(FOLLOW_field_reference_in_field_literal3762); + field_reference221=field_reference(); state._fsp--; match(input, Token.UP, null); - value = field_reference208; + value = field_reference221; } @@ -6948,27 +7275,27 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "method_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1279:1: method_literal returns [MethodReference value] : ^( I_ENCODED_METHOD method_reference ) ; + // /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 ) ; public final MethodReference method_literal() throws RecognitionException { MethodReference value = null; - ImmutableMethodReference method_reference209 =null; + ImmutableMethodReference method_reference222 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1280:3: ( ^( I_ENCODED_METHOD method_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1280:5: ^( I_ENCODED_METHOD method_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1353:3: ( ^( I_ENCODED_METHOD method_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1353:5: ^( I_ENCODED_METHOD method_reference ) { - match(input,I_ENCODED_METHOD,FOLLOW_I_ENCODED_METHOD_in_method_literal3594); + match(input,I_ENCODED_METHOD,FOLLOW_I_ENCODED_METHOD_in_method_literal3783); match(input, Token.DOWN, null); - pushFollow(FOLLOW_method_reference_in_method_literal3596); - method_reference209=method_reference(); + pushFollow(FOLLOW_method_reference_in_method_literal3785); + method_reference222=method_reference(); state._fsp--; match(input, Token.UP, null); - value = method_reference209; + value = method_reference222; } @@ -6987,27 +7314,27 @@ public class smaliTreeWalker extends TreeParser { // $ANTLR start "enum_literal" - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1285:1: enum_literal returns [FieldReference value] : ^( I_ENCODED_ENUM field_reference ) ; + // /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 ) ; public final FieldReference enum_literal() throws RecognitionException { FieldReference value = null; - ImmutableFieldReference field_reference210 =null; + ImmutableFieldReference field_reference223 =null; try { - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1286:3: ( ^( I_ENCODED_ENUM field_reference ) ) - // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1286:5: ^( I_ENCODED_ENUM field_reference ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1359:3: ( ^( I_ENCODED_ENUM field_reference ) ) + // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1359:5: ^( I_ENCODED_ENUM field_reference ) { - match(input,I_ENCODED_ENUM,FOLLOW_I_ENCODED_ENUM_in_enum_literal3617); + match(input,I_ENCODED_ENUM,FOLLOW_I_ENCODED_ENUM_in_enum_literal3806); match(input, Token.DOWN, null); - pushFollow(FOLLOW_field_reference_in_enum_literal3619); - field_reference210=field_reference(); + pushFollow(FOLLOW_field_reference_in_enum_literal3808); + field_reference223=field_reference(); state._fsp--; match(input, Token.UP, null); - value = field_reference210; + value = field_reference223; } @@ -7028,35 +7355,35 @@ public class smaliTreeWalker extends TreeParser { public static final BitSet FOLLOW_I_CLASS_DEF_in_smali_file52 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_header_in_smali_file54 = new BitSet(new long[]{0x0000000000000000L,0x0004000000000000L}); - public static final BitSet FOLLOW_methods_in_smali_file56 = new BitSet(new long[]{0x0000000000000000L,0x0000020000000000L}); - public static final BitSet FOLLOW_fields_in_smali_file58 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000000L}); + public static final BitSet FOLLOW_header_in_smali_file54 = new BitSet(new long[]{0x0000000000000000L,0x0040000000000000L}); + public static final BitSet FOLLOW_methods_in_smali_file56 = new BitSet(new long[]{0x0000000000000000L,0x0000200000000000L}); + public static final BitSet FOLLOW_fields_in_smali_file58 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L}); public static final BitSet FOLLOW_annotations_in_smali_file60 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_class_spec_in_header85 = new BitSet(new long[]{0x0000000000000000L,0x0000100000000000L,0x0000002000000001L}); - public static final BitSet FOLLOW_super_spec_in_header87 = new BitSet(new long[]{0x0000000000000000L,0x0000100000000000L,0x0000000000000001L}); - public static final BitSet FOLLOW_implements_list_in_header90 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_class_spec_in_header85 = new BitSet(new long[]{0x0000000000000000L,0x0001000000000000L,0x0000200000000010L}); + public static final BitSet FOLLOW_super_spec_in_header87 = new BitSet(new long[]{0x0000000000000000L,0x0001000000000000L,0x0000000000000010L}); + public static final BitSet FOLLOW_implements_list_in_header90 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000010L}); public static final BitSet FOLLOW_source_spec_in_header92 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec110 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec110 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_access_list_in_class_spec112 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_I_SUPER_in_super_spec130 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_super_spec132 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_IMPLEMENTS_in_implements_spec152 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_implements_spec154 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_implements_spec_in_implements_list184 = new BitSet(new long[]{0x0000000000000002L,0x0000100000000000L}); + public static final BitSet FOLLOW_implements_spec_in_implements_list184 = new BitSet(new long[]{0x0000000000000002L,0x0001000000000000L}); public static final BitSet FOLLOW_I_SOURCE_in_source_spec213 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_string_literal_in_source_spec215 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_ACCESS_LIST_in_access_list248 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_ACCESS_SPEC_in_access_list266 = new BitSet(new long[]{0x0000000000000018L}); public static final BitSet FOLLOW_I_FIELDS_in_fields308 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_field_in_fields317 = new BitSet(new long[]{0x0000000000000008L,0x0000010000000000L}); + public static final BitSet FOLLOW_field_in_fields317 = new BitSet(new long[]{0x0000000000000008L,0x0000100000000000L}); public static final BitSet FOLLOW_I_METHODS_in_methods349 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_method_in_methods358 = new BitSet(new long[]{0x0000000000000008L,0x0002000000000000L}); + public static final BitSet FOLLOW_method_in_methods358 = new BitSet(new long[]{0x0000000000000008L,0x0020000000000000L}); public static final BitSet FOLLOW_I_FIELD_in_field383 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_SIMPLE_NAME_in_field385 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L}); - public static final BitSet FOLLOW_access_list_in_field387 = new BitSet(new long[]{0x0000000000000000L,0x0000080000000000L}); + public static final BitSet FOLLOW_SIMPLE_NAME_in_field385 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); + public static final BitSet FOLLOW_access_list_in_field387 = new BitSet(new long[]{0x0000000000000000L,0x0000800000000000L}); public static final BitSet FOLLOW_I_FIELD_TYPE_in_field390 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field392 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_field_initial_value_in_field395 = new BitSet(new long[]{0x0000000000000008L,0x0000000004000000L}); + public static final BitSet FOLLOW_field_initial_value_in_field395 = new BitSet(new long[]{0x0000000000000008L,0x0000000040000000L}); public static final BitSet FOLLOW_annotations_in_field397 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_FIELD_INITIAL_VALUE_in_field_initial_value418 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_literal_in_field_initial_value420 = new BitSet(new long[]{0x0000000000000008L}); @@ -7100,32 +7427,32 @@ public class smaliTreeWalker extends TreeParser { public static final BitSet FOLLOW_char_literal_in_fixed_32bit_literal762 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_bool_literal_in_fixed_32bit_literal770 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_I_ARRAY_ELEMENTS_in_array_elements792 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_fixed_64bit_literal_number_in_array_elements801 = new BitSet(new long[]{0x0000004000404C08L,0x0000000000400000L,0x2000040000000000L}); + public static final BitSet FOLLOW_fixed_64bit_literal_number_in_array_elements801 = new BitSet(new long[]{0x0000004000404C08L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); public static final BitSet FOLLOW_I_PACKED_SWITCH_ELEMENTS_in_packed_switch_elements837 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_label_ref_in_packed_switch_elements846 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x4000000000000000L}); + public static final BitSet FOLLOW_label_ref_in_packed_switch_elements846 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_I_SPARSE_SWITCH_ELEMENTS_in_sparse_switch_elements881 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_sparse_switch_elements891 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_sparse_switch_elements893 = new BitSet(new long[]{0x0000004000004C08L,0x0000000000400000L,0x2000040000000000L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_sparse_switch_elements891 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_sparse_switch_elements893 = new BitSet(new long[]{0x0000004000004C08L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); public static final BitSet FOLLOW_I_METHOD_in_method945 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_method_name_and_prototype_in_method953 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L}); - public static final BitSet FOLLOW_access_list_in_method961 = new BitSet(new long[]{0x0000000000000000L,0x1021000000000000L}); - public static final BitSet FOLLOW_registers_directive_in_method988 = new BitSet(new long[]{0x0000000000000000L,0x0020000000000000L}); - public static final BitSet FOLLOW_ordered_method_items_in_method1045 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L}); - public static final BitSet FOLLOW_catches_in_method1053 = new BitSet(new long[]{0x0000000000000000L,0x0200000000000000L}); - public static final BitSet FOLLOW_parameters_in_method1061 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000000L}); + public static final BitSet FOLLOW_method_name_and_prototype_in_method953 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); + public static final BitSet FOLLOW_access_list_in_method961 = new BitSet(new long[]{0x0000000000000000L,0x0210000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_registers_directive_in_method988 = new BitSet(new long[]{0x0000000000000000L,0x0200000000000000L}); + public static final BitSet FOLLOW_ordered_method_items_in_method1045 = new BitSet(new long[]{0x0000000000000000L,0x0000001000000000L}); + public static final BitSet FOLLOW_catches_in_method1053 = new BitSet(new long[]{0x0000000000000000L,0x2000000000000000L}); + public static final BitSet FOLLOW_parameters_in_method1061 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L}); public static final BitSet FOLLOW_annotations_in_method1070 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_METHOD_PROTOTYPE_in_method_prototype1094 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_I_METHOD_RETURN_TYPE_in_method_prototype1097 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_type_descriptor_in_method_prototype1099 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_method_type_list_in_method_prototype1102 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120 = new BitSet(new long[]{0x0000000000000000L,0x0008000000000000L}); + public static final BitSet FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120 = new BitSet(new long[]{0x0000000000000000L,0x0080000000000000L}); public static final BitSet FOLLOW_method_prototype_in_method_name_and_prototype1122 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_method_type_list1156 = new BitSet(new long[]{0x0000000000008102L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_method_reference1185 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_SIMPLE_NAME_in_method_reference1188 = new BitSet(new long[]{0x0000000000000000L,0x0008000000000000L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_method_type_list1156 = new BitSet(new long[]{0x0000000000008102L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_method_reference1185 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_SIMPLE_NAME_in_method_reference1188 = new BitSet(new long[]{0x0000000000000000L,0x0080000000000000L}); public static final BitSet FOLLOW_method_prototype_in_method_reference1190 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_reference_type_descriptor_in_field_reference1207 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_SIMPLE_NAME_in_field_reference1210 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); + public static final BitSet FOLLOW_reference_type_descriptor_in_field_reference1207 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_SIMPLE_NAME_in_field_reference1210 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field_reference1212 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_I_REGISTERS_in_registers_directive1238 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_I_LOCALS_in_registers_directive1250 = new BitSet(new long[]{0x0000000000000004L}); @@ -7133,22 +7460,22 @@ public class smaliTreeWalker extends TreeParser { public static final BitSet FOLLOW_I_LABEL_in_label_def1288 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_SIMPLE_NAME_in_label_def1290 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_CATCHES_in_catches1316 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_catch_directive_in_catches1318 = new BitSet(new long[]{0x0000000000000008L,0x00000000C0000000L}); - public static final BitSet FOLLOW_catchall_directive_in_catches1321 = new BitSet(new long[]{0x0000000000000008L,0x0000000080000000L}); + public static final BitSet FOLLOW_catch_directive_in_catches1318 = new BitSet(new long[]{0x0000000000000008L,0x0000000C00000000L}); + public static final BitSet FOLLOW_catchall_directive_in_catches1321 = new BitSet(new long[]{0x0000000000000008L,0x0000000800000000L}); public static final BitSet FOLLOW_I_CATCH_in_catch_directive1334 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_catch_directive1336 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_catch_directive1340 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_catch_directive1344 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_catch_directive1336 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_catch_directive1340 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_catch_directive1344 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_label_ref_in_catch_directive1348 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_CATCHALL_in_catchall_directive1364 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_label_ref_in_catchall_directive1368 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_catchall_directive1372 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); + public static final BitSet FOLLOW_label_ref_in_catchall_directive1368 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_catchall_directive1372 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_label_ref_in_catchall_directive1376 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_PARAMETERS_in_parameters1393 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_parameter_in_parameters1396 = new BitSet(new long[]{0x0000000000000008L,0x0100000000000000L}); + public static final BitSet FOLLOW_parameter_in_parameters1396 = new BitSet(new long[]{0x0000000000000008L,0x1000000000000000L}); public static final BitSet FOLLOW_I_PARAMETER_in_parameter1412 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_REGISTER_in_parameter1414 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_string_literal_in_parameter1416 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000000L}); + public static final BitSet FOLLOW_REGISTER_in_parameter1414 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_string_literal_in_parameter1416 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L}); public static final BitSet FOLLOW_annotations_in_parameter1419 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_line_in_debug_directive1436 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_local_in_debug_directive1442 = new BitSet(new long[]{0x0000000000000002L}); @@ -7160,10 +7487,10 @@ public class smaliTreeWalker extends TreeParser { public static final BitSet FOLLOW_I_LINE_in_line1483 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_integral_literal_in_line1485 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_LOCAL_in_local1503 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_REGISTER_in_local1505 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000400000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_NULL_LITERAL_in_local1509 = new BitSet(new long[]{0x0000000000008108L,0x0000000000000000L,0x0100000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_string_literal_in_local1515 = new BitSet(new long[]{0x0000000000008108L,0x0000000000000000L,0x0100000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_local1518 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); + public static final BitSet FOLLOW_REGISTER_in_local1505 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0040000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_NULL_LITERAL_in_local1509 = new BitSet(new long[]{0x0000000000008108L,0x0000000000000000L,0x0000000000000000L,0x0000000000000201L}); + public static final BitSet FOLLOW_string_literal_in_local1515 = new BitSet(new long[]{0x0000000000008108L,0x0000000000000000L,0x0000000000000000L,0x0000000000000201L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_local1518 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); public static final BitSet FOLLOW_string_literal_in_local1523 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_END_LOCAL_in_end_local1544 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_REGISTER_in_end_local1546 = new BitSet(new long[]{0x0000000000000008L}); @@ -7174,226 +7501,249 @@ public class smaliTreeWalker extends TreeParser { public static final BitSet FOLLOW_I_SOURCE_in_source1616 = new BitSet(new long[]{0x0000000000000004L}); public static final BitSet FOLLOW_string_literal_in_source1618 = new BitSet(new long[]{0x0000000000000008L}); public static final BitSet FOLLOW_I_ORDERED_METHOD_ITEMS_in_ordered_method_items1637 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_label_def_in_ordered_method_items1640 = new BitSet(new long[]{0x0000000000000008L,0x8800E0C000000000L,0x0000000FFFFFFFFDL}); - public static final BitSet FOLLOW_instruction_in_ordered_method_items1644 = new BitSet(new long[]{0x0000000000000008L,0x8800E0C000000000L,0x0000000FFFFFFFFDL}); - public static final BitSet FOLLOW_debug_directive_in_ordered_method_items1648 = new BitSet(new long[]{0x0000000000000008L,0x8800E0C000000000L,0x0000000FFFFFFFFDL}); + public static final BitSet FOLLOW_label_def_in_ordered_method_items1640 = new BitSet(new long[]{0x0000000000000008L,0x800E0C0000000000L,0x00000FFFFFFFFFD8L}); + public static final BitSet FOLLOW_instruction_in_ordered_method_items1644 = new BitSet(new long[]{0x0000000000000008L,0x800E0C0000000000L,0x00000FFFFFFFFFD8L}); + public static final BitSet FOLLOW_debug_directive_in_ordered_method_items1648 = new BitSet(new long[]{0x0000000000000008L,0x800E0C0000000000L,0x00000FFFFFFFFFD8L}); public static final BitSet FOLLOW_SIMPLE_NAME_in_label_ref1664 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_I_REGISTER_LIST_in_register_list1689 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_REGISTER_in_register_list1698 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_I_REGISTER_RANGE_in_register_range1723 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_REGISTER_in_register_range1728 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_register_range1732 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1755 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_field_reference_in_verification_error_reference1765 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_method_reference_in_verification_error_reference1775 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1792 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format10t_in_instruction1806 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format10x_in_instruction1812 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format11n_in_instruction1818 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format11x_in_instruction1824 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format12x_in_instruction1830 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format20bc_in_instruction1836 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format20t_in_instruction1842 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21c_field_in_instruction1848 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21c_string_in_instruction1854 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21c_type_in_instruction1860 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21ih_in_instruction1866 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21lh_in_instruction1872 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21s_in_instruction1878 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format21t_in_instruction1884 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22b_in_instruction1890 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22c_field_in_instruction1896 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22c_type_in_instruction1902 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22s_in_instruction1908 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22t_in_instruction1914 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format22x_in_instruction1920 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format23x_in_instruction1926 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format30t_in_instruction1932 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format31c_in_instruction1938 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format31i_in_instruction1944 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format31t_in_instruction1950 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format32x_in_instruction1956 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format35c_method_in_instruction1962 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format35c_type_in_instruction1968 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format3rc_method_in_instruction1974 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format3rc_type_in_instruction1980 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_format51l_type_in_instruction1986 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_array_data_directive_in_instruction1992 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_packed_switch_directive_in_instruction1998 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_insn_sparse_switch_directive_in_instruction2004 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2028 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2030 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format10t2032 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2055 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2057 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2080 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2082 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format11n2084 = new BitSet(new long[]{0x0000000000004800L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_short_integral_literal_in_insn_format11n2086 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2109 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2111 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format11x2113 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2136 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2138 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format12x2142 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format12x2146 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2169 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2171 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000010L}); - public static final BitSet FOLLOW_verification_error_type_in_insn_format20bc2173 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_verification_error_reference_in_insn_format20bc2175 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2198 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2200 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format20t2202 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2225 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_set_in_insn_format21c_field2229 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field2237 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_field_reference_in_insn_format21c_field2239 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2262 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2264 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21c_string2266 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_string_literal_in_insn_format21c_string2268 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2291 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2293 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21c_type2295 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2297 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2320 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2322 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21ih2324 = new BitSet(new long[]{0x0000004000004C00L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21ih2326 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2349 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2351 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21lh2353 = new BitSet(new long[]{0x0000004000404C00L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format21lh2355 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2378 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2380 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21s2382 = new BitSet(new long[]{0x0000000000004800L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_short_integral_literal_in_insn_format21s2384 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2407 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2409 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format21t2411 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format21t2413 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2436 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2438 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22b2442 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22b2446 = new BitSet(new long[]{0x0000000000004800L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_short_integral_literal_in_insn_format22b2448 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2471 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_set_in_insn_format22c_field2475 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2485 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2489 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_field_reference_in_insn_format22c_field2491 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2514 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2516 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2520 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2524 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2526 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2549 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2551 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22s2555 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22s2559 = new BitSet(new long[]{0x0000000000004800L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_short_integral_literal_in_insn_format22s2561 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2584 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2586 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22t2590 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22t2594 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format22t2596 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2619 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2621 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22x2625 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format22x2629 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2652 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2654 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format23x2658 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format23x2662 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format23x2666 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2689 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2691 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format30t2693 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2716 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2718 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format31c2720 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); - public static final BitSet FOLLOW_string_literal_in_insn_format31c2722 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2745 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2747 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format31i2749 = new BitSet(new long[]{0x0000004000004C00L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format31i2751 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2774 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2776 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format31t2778 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_label_ref_in_insn_format31t2780 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2803 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2805 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format32x2809 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format32x2813 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method2836 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method2838 = new BitSet(new long[]{0x0000000000000000L,0x2000000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format35c_method2840 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_method_reference_in_insn_format35c_method2842 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type2865 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type2867 = new BitSet(new long[]{0x0000000000000000L,0x2000000000000000L}); - public static final BitSet FOLLOW_register_list_in_insn_format35c_type2869 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type2871 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method2894 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method2896 = new BitSet(new long[]{0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_register_range_in_insn_format3rc_method2898 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_method_reference_in_insn_format3rc_method2900 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type2923 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type2925 = new BitSet(new long[]{0x0000000000000000L,0x4000000000000000L}); - public static final BitSet FOLLOW_register_range_in_insn_format3rc_type2927 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0100000000000000L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type2929 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type2952 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type2954 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0400000000000000L}); - public static final BitSet FOLLOW_REGISTER_in_insn_format51l_type2956 = new BitSet(new long[]{0x0000004000404C00L,0x0000000000400000L,0x2000040000000000L}); - public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format51l_type2958 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive2981 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive2984 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_short_integral_literal_in_insn_array_data_directive2986 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_array_elements_in_insn_array_data_directive2989 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3011 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3014 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3016 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3019 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3043 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3045 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_set_in_nonvoid_type_descriptor3066 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_set_in_reference_type_descriptor3098 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_VOID_TYPE_in_type_descriptor3124 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_nonvoid_type_descriptor_in_type_descriptor3132 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_long_literal_in_short_integral_literal3150 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_integer_literal_in_short_integral_literal3162 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_short_literal_in_short_integral_literal3174 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_char_literal_in_short_integral_literal3182 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_byte_literal_in_short_integral_literal3190 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_long_literal_in_integral_literal3205 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_integer_literal_in_integral_literal3217 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_short_literal_in_integral_literal3225 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_byte_literal_in_integral_literal3233 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INTEGER_LITERAL_in_integer_literal3249 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LONG_LITERAL_in_long_literal3264 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SHORT_LITERAL_in_short_literal3279 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BYTE_LITERAL_in_byte_literal3294 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FLOAT_LITERAL_in_float_literal3309 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DOUBLE_LITERAL_in_double_literal3324 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CHAR_LITERAL_in_char_literal3339 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_string_literal3354 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BOOL_LITERAL_in_bool_literal3373 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_I_ENCODED_ARRAY_in_array_literal3395 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_literal_in_array_literal3398 = new BitSet(new long[]{0x000000400040CD08L,0x0000003C00400000L,0x2100441000000000L,0x0000000000000022L}); - public static final BitSet FOLLOW_I_ANNOTATIONS_in_annotations3423 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_annotation_in_annotations3426 = new BitSet(new long[]{0x0000000000000008L,0x0000000002000000L}); - public static final BitSet FOLLOW_I_ANNOTATION_in_annotation3455 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_annotation3457 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000001000000000L}); - public static final BitSet FOLLOW_subannotation_in_annotation3459 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3480 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_SIMPLE_NAME_in_annotation_element3482 = new BitSet(new long[]{0x000000400040CD00L,0x0000003C00400000L,0x2100441000000000L,0x0000000000000022L}); - public static final BitSet FOLLOW_literal_in_annotation_element3484 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_SUBANNOTATION_in_subannotation3511 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_subannotation3521 = new BitSet(new long[]{0x0000000000000008L,0x0000000008000000L}); - public static final BitSet FOLLOW_annotation_element_in_subannotation3532 = new BitSet(new long[]{0x0000000000000008L,0x0000000008000000L}); - public static final BitSet FOLLOW_I_ENCODED_FIELD_in_field_literal3571 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_field_reference_in_field_literal3573 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_ENCODED_METHOD_in_method_literal3594 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_method_reference_in_method_literal3596 = new BitSet(new long[]{0x0000000000000008L}); - public static final BitSet FOLLOW_I_ENCODED_ENUM_in_enum_literal3617 = new BitSet(new long[]{0x0000000000000004L}); - public static final BitSet FOLLOW_field_reference_in_enum_literal3619 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_REGISTER_in_register_list1698 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_I_REGISTER_LIST_in_register_list41732 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_register_list41741 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_I_REGISTER_RANGE_in_register_range1766 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_register_range1771 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_register_range1775 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1798 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_field_reference_in_verification_error_reference1808 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_method_reference_in_verification_error_reference1818 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1835 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format10t_in_instruction1849 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format10x_in_instruction1855 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format11n_in_instruction1861 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format11x_in_instruction1867 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format12x_in_instruction1873 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format20bc_in_instruction1879 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format20t_in_instruction1885 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_field_in_instruction1891 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_string_in_instruction1897 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_type_in_instruction1903 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_lambda_in_instruction1909 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21c_method_in_instruction1915 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21ih_in_instruction1921 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21lh_in_instruction1927 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21s_in_instruction1933 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format21t_in_instruction1939 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22b_in_instruction1945 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22c_field_in_instruction1951 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22c_type_in_instruction1957 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22c_string_in_instruction1963 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22s_in_instruction1969 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22t_in_instruction1975 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format22x_in_instruction1981 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format23x_in_instruction1987 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format25x_in_instruction1993 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format30t_in_instruction1999 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format31c_in_instruction2005 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format31i_in_instruction2011 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format31t_in_instruction2017 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format32x_in_instruction2023 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format35c_method_in_instruction2029 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format35c_type_in_instruction2035 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format3rc_method_in_instruction2041 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format3rc_type_in_instruction2047 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_format51l_type_in_instruction2053 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_array_data_directive_in_instruction2059 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_packed_switch_directive_in_instruction2065 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_insn_sparse_switch_directive_in_instruction2071 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2095 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2097 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_insn_format10t2099 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2122 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2124 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2147 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2149 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format11n2151 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_short_integral_literal_in_insn_format11n2153 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2176 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2178 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format11x2180 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2203 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2205 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format12x2209 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format12x2213 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2236 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2238 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000001000L}); + public static final BitSet FOLLOW_verification_error_type_in_insn_format20bc2240 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_verification_error_reference_in_insn_format20bc2242 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2265 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2267 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_insn_format20t2269 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2292 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_set_in_insn_format21c_field2296 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field2304 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_field_reference_in_insn_format21c_field2306 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2329 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2331 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_string2333 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_string_literal_in_insn_format21c_string2335 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2358 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2360 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_type2362 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2364 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_LAMBDA_in_insn_format21c_lambda2387 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_insn_format21c_lambda2389 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_lambda2391 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_string_literal_in_insn_format21c_lambda2393 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_METHOD_in_insn_format21c_method2416 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_insn_format21c_method2418 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21c_method2420 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_method_reference_in_insn_format21c_method2422 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2445 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2447 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21ih2449 = new BitSet(new long[]{0x0000004000004C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21ih2451 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2474 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2476 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21lh2478 = new BitSet(new long[]{0x0000004000404C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format21lh2480 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2503 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2505 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21s2507 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_short_integral_literal_in_insn_format21s2509 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2532 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2534 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format21t2536 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_insn_format21t2538 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2561 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2563 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22b2567 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22b2571 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_short_integral_literal_in_insn_format22b2573 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2596 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_set_in_insn_format22c_field2600 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2610 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2614 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_field_reference_in_insn_format22c_field2616 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2639 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2641 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2645 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2649 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2651 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_STRING_in_insn_format22c_string2674 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_insn_format22c_string2676 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_string2680 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22c_string2684 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_string_literal_in_insn_format22c_string2686 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2709 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2711 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22s2715 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22s2719 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_short_integral_literal_in_insn_format22s2721 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2744 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2746 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22t2750 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22t2754 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_insn_format22t2756 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2779 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2781 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22x2785 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format22x2789 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2812 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2814 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format23x2818 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format23x2822 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format23x2826 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT25x_in_insn_format25x2849 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT25x_in_insn_format25x2851 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format25x2853 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); + public static final BitSet FOLLOW_register_list4_in_insn_format25x2855 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2878 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2880 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_insn_format30t2882 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2905 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2907 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format31c2909 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_string_literal_in_insn_format31c2911 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2934 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2936 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format31i2938 = new BitSet(new long[]{0x0000004000004C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format31i2940 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2963 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2965 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format31t2967 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_label_ref_in_insn_format31t2969 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2992 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2994 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format32x2998 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format32x3002 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method3025 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method3027 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); + public static final BitSet FOLLOW_register_list_in_insn_format35c_method3029 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_method_reference_in_insn_format35c_method3031 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type3054 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type3056 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); + public static final BitSet FOLLOW_register_list_in_insn_format35c_type3058 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type3060 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method3083 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method3085 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_range_in_insn_format3rc_method3087 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L}); + public static final BitSet FOLLOW_method_reference_in_insn_format3rc_method3089 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type3112 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type3114 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_register_range_in_insn_format3rc_type3116 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type3118 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type3141 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type3143 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_REGISTER_in_insn_format51l_type3145 = new BitSet(new long[]{0x0000004000404C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L}); + public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format51l_type3147 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive3170 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive3173 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_short_integral_literal_in_insn_array_data_directive3175 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_array_elements_in_insn_array_data_directive3178 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3200 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3203 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3205 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3208 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3232 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3234 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_set_in_nonvoid_type_descriptor3255 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_set_in_reference_type_descriptor3287 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_VOID_TYPE_in_type_descriptor3313 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_nonvoid_type_descriptor_in_type_descriptor3321 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_long_literal_in_short_integral_literal3339 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_integer_literal_in_short_integral_literal3351 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_short_literal_in_short_integral_literal3363 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_char_literal_in_short_integral_literal3371 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_byte_literal_in_short_integral_literal3379 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_long_literal_in_integral_literal3394 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_integer_literal_in_integral_literal3406 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_short_literal_in_integral_literal3414 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_byte_literal_in_integral_literal3422 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INTEGER_LITERAL_in_integer_literal3438 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LONG_LITERAL_in_long_literal3453 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SHORT_LITERAL_in_short_literal3468 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BYTE_LITERAL_in_byte_literal3483 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FLOAT_LITERAL_in_float_literal3498 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DOUBLE_LITERAL_in_double_literal3513 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CHAR_LITERAL_in_char_literal3528 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_string_literal3543 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BOOL_LITERAL_in_bool_literal3562 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_I_ENCODED_ARRAY_in_array_literal3584 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_literal_in_array_literal3587 = new BitSet(new long[]{0x000000400040CD08L,0x000003C004000000L,0x0044100000000000L,0x0000000000002221L}); + public static final BitSet FOLLOW_I_ANNOTATIONS_in_annotations3612 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_annotation_in_annotations3615 = new BitSet(new long[]{0x0000000000000008L,0x0000000020000000L}); + public static final BitSet FOLLOW_I_ANNOTATION_in_annotation3644 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_annotation3646 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000100000000000L}); + public static final BitSet FOLLOW_subannotation_in_annotation3648 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3669 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_SIMPLE_NAME_in_annotation_element3671 = new BitSet(new long[]{0x000000400040CD00L,0x000003C004000000L,0x0044100000000000L,0x0000000000002221L}); + public static final BitSet FOLLOW_literal_in_annotation_element3673 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_SUBANNOTATION_in_subannotation3700 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_subannotation3710 = new BitSet(new long[]{0x0000000000000008L,0x0000000080000000L}); + public static final BitSet FOLLOW_annotation_element_in_subannotation3721 = new BitSet(new long[]{0x0000000000000008L,0x0000000080000000L}); + public static final BitSet FOLLOW_I_ENCODED_FIELD_in_field_literal3760 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_field_reference_in_field_literal3762 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_ENCODED_METHOD_in_method_literal3783 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_method_reference_in_method_literal3785 = new BitSet(new long[]{0x0000000000000008L}); + public static final BitSet FOLLOW_I_ENCODED_ENUM_in_enum_literal3806 = new BitSet(new long[]{0x0000000000000004L}); + public static final BitSet FOLLOW_field_reference_in_enum_literal3808 = new BitSet(new long[]{0x0000000000000008L}); } diff --git a/smali/src/main/jflex/smaliLexer.flex b/smali/src/main/jflex/smaliLexer.jflex index df571e66..bc17362f 100644 --- a/smali/src/main/jflex/smaliLexer.flex +++ b/smali/src/main/jflex/smaliLexer.jflex @@ -461,6 +461,14 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor} return newToken(INSTRUCTION_FORMAT21c_TYPE); } + "capture-variable" { // e.g. 'capture-variable vB, <string id>' + return newToken(INSTRUCTION_FORMAT21c_LAMBDA); + } + + "create-lambda" { // e.g. 'create-lambda vClosure, <method id>' + return newToken(INSTRUCTION_FORMAT21c_METHOD); + } + "const/high16" { return newToken(INSTRUCTION_FORMAT21ih); } @@ -492,10 +500,13 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor} return newToken(INSTRUCTION_FORMAT22c_FIELD_ODEX); } - "instance-of" | "new-array" { + "instance-of" | "new-array" | "unbox-lambda" { return newToken(INSTRUCTION_FORMAT22c_TYPE); } + "liberate-variable" { + return newToken(INSTRUCTION_FORMAT22c_STRING); + } "iget-quick" | "iget-wide-quick" | "iget-object-quick" | "iput-quick" | "iput-wide-quick" | "iput-object-quick" { return newToken(INSTRUCTION_FORMAT22cs_FIELD); } @@ -513,7 +524,7 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor} return newToken(INSTRUCTION_FORMAT22t); } - "move/from16" | "move-wide/from16" | "move-object/from16" { + "move/from16" | "move-wide/from16" | "move-object/from16" | "box-lambda" { return newToken(INSTRUCTION_FORMAT22x); } @@ -527,6 +538,10 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor} return newToken(INSTRUCTION_FORMAT23x); } + "invoke-lambda" { // e.g. invoke-lambda vClosure, {vD, vE, vF, vG} -- at most 4 params + return newToken(INSTRUCTION_FORMAT25x); + } + "goto/32" { return newToken(INSTRUCTION_FORMAT30t); } @@ -640,5 +655,5 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor} "." { return invalidToken("Invalid directive"); } "." [a-zA-z\-_] { return invalidToken("Invalid directive"); } "." [a-zA-z\-_] [a-zA-z0-9\-_]* { return invalidToken("Invalid directive"); } - . { return invalidToken("Invalid text"); } + [^] { return invalidToken("Invalid text"); } } diff --git a/smali/src/test/antlr3/org/jf/smali/expectedTokensTestGrammar.g b/smali/src/test/antlr/org/jf/smali/expectedTokensTestGrammar.g index 6780b970..6780b970 100644 --- a/smali/src/test/antlr3/org/jf/smali/expectedTokensTestGrammar.g +++ b/smali/src/test/antlr/org/jf/smali/expectedTokensTestGrammar.g diff --git a/smali/src/test/java/LexerTest.java b/smali/src/test/java/LexerTest.java index c1b70435..d156015a 100644 --- a/smali/src/test/java/LexerTest.java +++ b/smali/src/test/java/LexerTest.java @@ -40,6 +40,7 @@ import org.junit.Test; import java.io.File; import java.io.IOException; import java.io.InputStream; +import java.io.InputStreamReader; import java.util.HashMap; import java.util.List; @@ -158,7 +159,7 @@ public class LexerTest { if (smaliStream == null) { Assert.fail("Could not load " + smaliFile); } - smaliFlexLexer lexer = new smaliFlexLexer(smaliStream); + smaliFlexLexer lexer = new smaliFlexLexer(new InputStreamReader(smaliStream)); lexer.setSourceFile(new File(test + ".smali")); lexer.setSuppressErrors(true); diff --git a/smali/src/test/resources/LexerTest/InstructionTest.smali b/smali/src/test/resources/LexerTest/InstructionTest.smali index 2247adc0..f6dcbb1e 100644 --- a/smali/src/test/resources/LexerTest/InstructionTest.smali +++ b/smali/src/test/resources/LexerTest/InstructionTest.smali @@ -84,6 +84,8 @@ const-string check-cast new-instance const-class +capture-variable +create-lambda const/high16 const-wide/high16 const/16 @@ -122,6 +124,8 @@ iput-wide-volatile iput-object-volatile instance-of new-array +unbox-lambda +liberate-variable iget-quick iget-wide-quick iget-object-quick @@ -144,6 +148,7 @@ if-le move/from16 move-wide/from16 move-object/from16 +box-lambda cmpl-float cmpg-float cmpl-double @@ -194,6 +199,7 @@ add-double sub-double mul-double div-double +invoke-lambda goto/32 const-string/jumbo const diff --git a/smali/src/test/resources/LexerTest/InstructionTest.tokens b/smali/src/test/resources/LexerTest/InstructionTest.tokens index a5574ab4..fb5503b5 100644 --- a/smali/src/test/resources/LexerTest/InstructionTest.tokens +++ b/smali/src/test/resources/LexerTest/InstructionTest.tokens @@ -84,6 +84,8 @@ INSTRUCTION_FORMAT21c_STRING("const-string") INSTRUCTION_FORMAT21c_TYPE("check-cast") INSTRUCTION_FORMAT21c_TYPE("new-instance") INSTRUCTION_FORMAT21c_TYPE("const-class") +INSTRUCTION_FORMAT21c_LAMBDA("capture-variable") +INSTRUCTION_FORMAT21c_METHOD("create-lambda") INSTRUCTION_FORMAT21ih("const/high16") INSTRUCTION_FORMAT21lh("const-wide/high16") INSTRUCTION_FORMAT21s("const/16") @@ -122,6 +124,8 @@ INSTRUCTION_FORMAT22c_FIELD_ODEX("iput-wide-volatile") INSTRUCTION_FORMAT22c_FIELD_ODEX("iput-object-volatile") INSTRUCTION_FORMAT22c_TYPE("instance-of") INSTRUCTION_FORMAT22c_TYPE("new-array") +INSTRUCTION_FORMAT22c_TYPE("unbox-lambda") +INSTRUCTION_FORMAT22c_STRING("liberate-variable") INSTRUCTION_FORMAT22cs_FIELD("iget-quick") INSTRUCTION_FORMAT22cs_FIELD("iget-wide-quick") INSTRUCTION_FORMAT22cs_FIELD("iget-object-quick") @@ -144,6 +148,7 @@ INSTRUCTION_FORMAT22t("if-le") INSTRUCTION_FORMAT22x("move/from16") INSTRUCTION_FORMAT22x("move-wide/from16") INSTRUCTION_FORMAT22x("move-object/from16") +INSTRUCTION_FORMAT22x("box-lambda") INSTRUCTION_FORMAT23x("cmpl-float") INSTRUCTION_FORMAT23x("cmpg-float") INSTRUCTION_FORMAT23x("cmpl-double") @@ -194,6 +199,7 @@ INSTRUCTION_FORMAT23x("add-double") INSTRUCTION_FORMAT23x("sub-double") INSTRUCTION_FORMAT23x("mul-double") INSTRUCTION_FORMAT23x("div-double") +INSTRUCTION_FORMAT25x("invoke-lambda") INSTRUCTION_FORMAT30t("goto/32") INSTRUCTION_FORMAT31c("const-string/jumbo") INSTRUCTION_FORMAT31i_OR_ID("const") diff --git a/util/src/main/java/org/jf/util/ClassFileNameHandler.java b/util/src/main/java/org/jf/util/ClassFileNameHandler.java index 67037817..a223d30e 100644 --- a/util/src/main/java/org/jf/util/ClassFileNameHandler.java +++ b/util/src/main/java/org/jf/util/ClassFileNameHandler.java @@ -68,7 +68,7 @@ public class ClassFileNameHandler { public ClassFileNameHandler(File path, String fileExtension) { this.top = new DirectoryEntry(path); this.fileExtension = fileExtension; - this.modifyWindowsReservedFilenames = testForWindowsReservedFileNames(path); + this.modifyWindowsReservedFilenames = isWindows(); } // for testing @@ -229,27 +229,8 @@ public class ClassFileNameHandler { return sb.toString(); } - private static boolean testForWindowsReservedFileNames(File path) { - String[] reservedNames = new String[]{"aux", "con", "com1", "com9", "lpt1", "com9"}; - - for (String reservedName: reservedNames) { - File f = new File(path, reservedName + ".smali"); - if (f.exists()) { - continue; - } - - try { - FileWriter writer = new FileWriter(f); - writer.write("test"); - writer.flush(); - writer.close(); - f.delete(); //doesn't throw IOException - } catch (IOException ex) { - //if an exception occurred, it's likely that we're on a windows system. - return true; - } - } - return false; + private static boolean isWindows() { + return System.getProperty("os.name").startsWith("Windows"); } private static Pattern reservedFileNameRegex = Pattern.compile("^(CON|PRN|AUX|NUL|COM[1-9]|LPT[1-9])(\\..*)?$", diff --git a/util/src/main/java/org/jf/util/IndentingWriter.java b/util/src/main/java/org/jf/util/IndentingWriter.java index 95d6c320..8e4ca628 100644 --- a/util/src/main/java/org/jf/util/IndentingWriter.java +++ b/util/src/main/java/org/jf/util/IndentingWriter.java @@ -120,7 +120,7 @@ public class IndentingWriter extends Writer { int pos = start; while (pos < end) { pos = str.indexOf('\n', start); - if (pos == -1) { + if (pos == -1 || pos >= end) { writeLine(str, start, end-start); return; } else { diff --git a/util/src/main/java/org/jf/util/TextUtils.java b/util/src/main/java/org/jf/util/TextUtils.java index a01e68e7..66a1082d 100644 --- a/util/src/main/java/org/jf/util/TextUtils.java +++ b/util/src/main/java/org/jf/util/TextUtils.java @@ -50,10 +50,33 @@ public class TextUtils { @Nonnull public static String normalizeWhitespace(@Nonnull String source) { + // Go to native system new lines so that ^/$ work correctly + source = normalizeNewlines(source); + + // Remove all suffix/prefix whitespace + Pattern pattern = Pattern.compile("((^[ \t]+)|([ \t]+$))", Pattern.MULTILINE); + Matcher matcher = pattern.matcher(source); + source = matcher.replaceAll(""); + + // Remove all empty lines + Pattern pattern2 = Pattern.compile("^\r?\n?", Pattern.MULTILINE); + Matcher matcher2 = pattern2.matcher(source); + source = matcher2.replaceAll(""); + + // Remove a trailing new line, if present + Pattern pattern3 = Pattern.compile("\r?\n?$"); + Matcher matcher3 = pattern3.matcher(source); + source = matcher3.replaceAll(""); + + // Go back to unix-style \n newlines source = normalizeNewlines(source, "\n"); + return source; + } - Pattern pattern = Pattern.compile("(\n[ \t]*)+"); + @Nonnull + public static String stripComments(@Nonnull String source) { + Pattern pattern = Pattern.compile("#(.*)"); Matcher matcher = pattern.matcher(source); - return matcher.replaceAll("\n"); + return matcher.replaceAll(""); } } diff --git a/util/src/test/java/org/jf/util/TextUtilsTest.java b/util/src/test/java/org/jf/util/TextUtilsTest.java new file mode 100644 index 00000000..ef14e03a --- /dev/null +++ b/util/src/test/java/org/jf/util/TextUtilsTest.java @@ -0,0 +1,53 @@ +/* + * Copyright 2015, Google Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.jf.util; + +import org.junit.Assert; +import org.junit.Test; + +public class TextUtilsTest { + @Test + public void testStripComments() { + Assert.assertEquals("", TextUtils.stripComments("#world")); + Assert.assertEquals("hello", TextUtils.stripComments("hello#world")); + Assert.assertEquals("multi\nline", TextUtils.stripComments("multi#hello world\nline#world")); + } + + @Test + public void testNormalizeWhitespace() { + Assert.assertEquals("", TextUtils.normalizeWhitespace(" ")); + Assert.assertEquals("hello", TextUtils.normalizeWhitespace("hello ")); + Assert.assertEquals("hello", TextUtils.normalizeWhitespace(" hello")); + Assert.assertEquals("hello", TextUtils.normalizeWhitespace(" hello ")); + Assert.assertEquals("hello\nworld", TextUtils.normalizeWhitespace("hello \n \n world")); + } +}
\ No newline at end of file |