aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Murashkin <iam@google.com>2015-02-20 21:05:23 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-02-20 21:05:23 +0000
commit15284127c9ed241f1de20fdd8cdb24cb12cd2119 (patch)
tree3ae746bc1c03ce9c30bcfac15c6d64be922dad75
parent5fd395796e215a80c722815bf180728948868f18 (diff)
parent3480113314134807cae160cd33f780a34b104999 (diff)
downloadsmali-marshmallow-dr-dev.tar.gz
Merge changes I845798af,Ib5d741e9android-wear-5.1.1_r1android-wear-5.1.0_r1android-cts-6.0_r9android-cts-6.0_r8android-cts-6.0_r7android-cts-6.0_r6android-cts-6.0_r5android-cts-6.0_r4android-cts-6.0_r32android-cts-6.0_r31android-cts-6.0_r30android-cts-6.0_r3android-cts-6.0_r29android-cts-6.0_r28android-cts-6.0_r27android-cts-6.0_r26android-cts-6.0_r25android-cts-6.0_r24android-cts-6.0_r23android-cts-6.0_r22android-cts-6.0_r21android-cts-6.0_r20android-cts-6.0_r2android-cts-6.0_r19android-cts-6.0_r18android-cts-6.0_r17android-cts-6.0_r16android-cts-6.0_r15android-cts-6.0_r14android-cts-6.0_r13android-cts-6.0_r12android-cts-6.0_r1android-6.0.1_r9android-6.0.1_r81android-6.0.1_r80android-6.0.1_r8android-6.0.1_r79android-6.0.1_r78android-6.0.1_r77android-6.0.1_r74android-6.0.1_r73android-6.0.1_r72android-6.0.1_r70android-6.0.1_r7android-6.0.1_r69android-6.0.1_r68android-6.0.1_r67android-6.0.1_r66android-6.0.1_r65android-6.0.1_r63android-6.0.1_r62android-6.0.1_r61android-6.0.1_r60android-6.0.1_r59android-6.0.1_r58android-6.0.1_r57android-6.0.1_r56android-6.0.1_r55android-6.0.1_r54android-6.0.1_r53android-6.0.1_r52android-6.0.1_r51android-6.0.1_r50android-6.0.1_r5android-6.0.1_r49android-6.0.1_r48android-6.0.1_r47android-6.0.1_r46android-6.0.1_r45android-6.0.1_r43android-6.0.1_r42android-6.0.1_r41android-6.0.1_r40android-6.0.1_r4android-6.0.1_r33android-6.0.1_r32android-6.0.1_r31android-6.0.1_r30android-6.0.1_r3android-6.0.1_r28android-6.0.1_r27android-6.0.1_r26android-6.0.1_r25android-6.0.1_r24android-6.0.1_r22android-6.0.1_r21android-6.0.1_r20android-6.0.1_r18android-6.0.1_r17android-6.0.1_r16android-6.0.1_r13android-6.0.1_r12android-6.0.1_r11android-6.0.1_r10android-6.0.1_r1android-6.0.0_r7android-6.0.0_r6android-6.0.0_r5android-6.0.0_r41android-6.0.0_r4android-6.0.0_r3android-6.0.0_r26android-6.0.0_r25android-6.0.0_r24android-6.0.0_r23android-6.0.0_r2android-6.0.0_r13android-6.0.0_r12android-6.0.0_r11android-6.0.0_r1master-soongmarshmallow-releasemarshmallow-mr3-releasemarshmallow-mr2-releasemarshmallow-mr1-releasemarshmallow-mr1-devmarshmallow-dr1.6-releasemarshmallow-dr1.5-releasemarshmallow-dr1.5-devmarshmallow-dr-releasemarshmallow-dr-dragon-releasemarshmallow-dr-devmarshmallow-devmarshmallow-cts-release
* changes: Regenerate lexer/parser/treewalker for smali 2.0.5 Merge remote-tracking branch 'remotes/aosp/upstream-master' into HEAD
-rw-r--r--NOTICE51
-rw-r--r--baksmali/build.gradle10
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/AnnotationFormatter.java14
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/ClassDefinition.java16
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java16
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java10
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java33
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/FieldDefinition.java20
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/ArrayDataMethodItem.java9
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/InstructionMethodItem.java79
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/PackedSwitchMethodItem.java2
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/SparseSwitchMethodItem.java2
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/Adaptors/MethodDefinition.java30
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/baksmali.java8
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java4
-rw-r--r--baksmali/src/main/java/org/jf/baksmali/main.java39
-rw-r--r--baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java7
-rw-r--r--baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java322
-rw-r--r--build.gradle115
-rw-r--r--deodexerant/deodexerant.c18
-rw-r--r--dexlib2/accessorTestGenerator/build.gradle6
-rw-r--r--dexlib2/build.gradle9
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java17
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java30
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java2
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/analysis/MethodAnalyzer.java18
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/builder/MutableMethodImplementation.java8
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/dexbacked/BaseDexReader.java1
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java8
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java20
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java13
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java3
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java2
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java30
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/iface/debug/DebugItem.java3
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationElementRewriter.java66
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationRewriter.java71
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/ClassDefRewriter.java128
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/DebugItemRewriter.java137
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/DexRewriter.java136
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/EncodedValueRewriter.java147
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/ExceptionHandlerRewriter.java66
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldReferenceRewriter.java69
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldRewriter.java85
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/InstructionRewriter.java205
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodImplementationRewriter.java80
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodParameterRewriter.java76
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodReferenceRewriter.java82
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodRewriter.java100
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriter.java39
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterModule.java103
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterUtils.java118
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriters.java63
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/TryBlockRewriter.java72
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/rewriter/TypeRewriter.java40
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/util/AnnotatedBytes.java3
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/util/ReferenceUtil.java68
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java18
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassDef.java12
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java1
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java2
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java9
-rw-r--r--dexlib2/src/main/java/org/jf/dexlib2/writer/util/TryListBuilder.java8
-rw-r--r--dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java90
-rw-r--r--dexlib2/src/test/java/org/jf/dexlib2/writer/util/TryListBuilderTest.java8
-rw-r--r--examples/AnnotationTypes/Main.smali4
-rw-r--r--examples/AnnotationValues/10.smali1
-rw-r--r--gradle/wrapper/gradle-wrapper.jarbin46670 -> 50557 bytes
-rw-r--r--gradle/wrapper/gradle-wrapper.properties4
-rwxr-xr-xgradlew4
-rw-r--r--smali/build.gradle10
-rwxr-xr-xsmali/runantlr.sh111
-rw-r--r--smali/src/main/antlr3/smaliParser.g85
-rw-r--r--smali/src/main/antlr3/smaliTreeWalker.g66
-rw-r--r--smali/src/main/java/org/jf/smali/SmaliTestUtils.java94
-rw-r--r--smali/src/main/java/org/jf/smali/smaliFlexLexer.java5851
-rw-r--r--smali/src/main/java/org/jf/smali/smaliParser.java12825
-rw-r--r--smali/src/main/java/org/jf/smali/smaliTreeWalker.java3789
-rw-r--r--smali/src/main/jflex/smaliLexer.flex31
-rw-r--r--smali/src/test/java/ImplicitReferenceTest.java242
-rw-r--r--smali/src/test/resources/LexerTest/RealSmaliFileTest.tokens24
-rw-r--r--smali/src/test/resources/LexerTest/TypeAndIdentifierTest.smali4
-rw-r--r--smali/src/test/resources/LexerTest/TypeAndIdentifierTest.tokens61
-rw-r--r--util/build.gradle9
-rw-r--r--util/src/main/java/ds/tree/DuplicateKeyException.java41
-rw-r--r--util/src/main/java/ds/tree/RadixTree.java115
-rw-r--r--util/src/main/java/ds/tree/RadixTreeImpl.java462
-rw-r--r--util/src/main/java/ds/tree/RadixTreeNode.java103
-rw-r--r--util/src/main/java/ds/tree/Visitor.java56
-rw-r--r--util/src/main/java/ds/tree/VisitorImpl.java27
-rw-r--r--util/src/main/java/org/jf/util/ClassFileNameHandler.java410
-rw-r--r--util/src/main/java/org/jf/util/ConsoleUtil.java2
-rw-r--r--util/src/main/java/org/jf/util/TextUtils.java59
-rw-r--r--util/src/test/java/org/jf/util/ClassFileNameHandlerTest.java204
94 files changed, 13997 insertions, 13774 deletions
diff --git a/NOTICE b/NOTICE
index b4375d58..4ce4514b 100644
--- a/NOTICE
+++ b/NOTICE
@@ -82,53 +82,4 @@ distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-*******************************************************************************
-
-
-The smali mojo plugin is (very loosely) based on an unknown mojo plugin with
-the following license:
-
-*******************************************************************************
-Copyright 2001-2005 The Apache Software Foundation.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*******************************************************************************
-
-
-The RadixTree implementation in the "util" project is taken from
-http://code.google.com/p/radixtree/ (version .3), and is used with minor
-modifications in accordance with the following license:
-
-*******************************************************************************
-The MIT License
-
-Copyright (c) 2008 Tahseen Ur Rehman
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*******************************************************************************
+******************************************************************************* \ No newline at end of file
diff --git a/baksmali/build.gradle b/baksmali/build.gradle
index f12d3ba2..150eb6fd 100644
--- a/baksmali/build.gradle
+++ b/baksmali/build.gradle
@@ -40,6 +40,7 @@ dependencies {
compile depends.guava
testCompile depends.junit
+ testCompile project(':smali')
proguard depends.proguard
}
@@ -80,15 +81,6 @@ uploadArchives {
}
}
-task sourcesJar(type: Jar) {
- classifier = 'sources'
- from sourceSets.main.allJava
-}
-
-artifacts {
- archives sourcesJar
-}
-
task proguard(type: JavaExec, dependsOn: fatJar) {
def outFile = fatJar.destinationDir.getPath() + '/' + fatJar.baseName + '-' + fatJar.version + '-small' + '.' + fatJar.extension
inputs.file fatJar.archivePath
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/AnnotationFormatter.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/AnnotationFormatter.java
index 2b9614f1..1310f191 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/AnnotationFormatter.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/AnnotationFormatter.java
@@ -33,13 +33,16 @@ import org.jf.dexlib2.AnnotationVisibility;
import org.jf.dexlib2.iface.Annotation;
import org.jf.util.IndentingWriter;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.io.IOException;
import java.util.Collection;
public class AnnotationFormatter {
- public static void writeTo(IndentingWriter writer,
- Collection<? extends Annotation> annotations) throws IOException {
+ public static void writeTo(@Nonnull IndentingWriter writer,
+ @Nonnull Collection<? extends Annotation> annotations,
+ @Nullable String containingClass) throws IOException {
boolean first = true;
for (Annotation annotation: annotations) {
if (!first) {
@@ -47,18 +50,19 @@ public class AnnotationFormatter {
}
first = false;
- writeTo(writer, annotation);
+ writeTo(writer, annotation, containingClass);
}
}
- public static void writeTo(IndentingWriter writer, Annotation annotation) throws IOException {
+ public static void writeTo(@Nonnull IndentingWriter writer, @Nonnull Annotation annotation,
+ @Nullable String containingClass) throws IOException {
writer.write(".annotation ");
writer.write(AnnotationVisibility.getVisibility(annotation.getVisibility()));
writer.write(' ');
writer.write(annotation.getType());
writer.write('\n');
- AnnotationEncodedValueAdaptor.writeElementsTo(writer, annotation.getElements());
+ AnnotationEncodedValueAdaptor.writeElementsTo(writer, annotation.getElements(), containingClass);
writer.write(".end annotation\n");
}
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/ClassDefinition.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/ClassDefinition.java
index a4eb6913..9c171f49 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/ClassDefinition.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/ClassDefinition.java
@@ -165,7 +165,13 @@ public class ClassDefinition {
if (classAnnotations.size() != 0) {
writer.write("\n\n");
writer.write("# annotations\n");
- AnnotationFormatter.writeTo(writer, classAnnotations);
+
+ String containingClass = null;
+ if (options.useImplicitReferences) {
+ containingClass = classDef.getType();
+ }
+
+ AnnotationFormatter.writeTo(writer, classAnnotations, containingClass);
}
}
@@ -199,7 +205,7 @@ public class ClassDefinition {
} else {
setInStaticConstructor = fieldsSetInStaticConstructor.contains(fieldString);
}
- FieldDefinition.writeTo(fieldWriter, field, setInStaticConstructor);
+ FieldDefinition.writeTo(options, fieldWriter, field, setInStaticConstructor);
}
return writtenFields;
}
@@ -237,7 +243,7 @@ public class ClassDefinition {
writer.write("# There is both a static and instance field with this signature.\n" +
"# You will need to rename one of these fields, including all references.\n");
}
- FieldDefinition.writeTo(fieldWriter, field, false);
+ FieldDefinition.writeTo(options, fieldWriter, field, false);
}
}
@@ -261,7 +267,7 @@ public class ClassDefinition {
writer.write('\n');
// TODO: check for method validation errors
- String methodString = ReferenceUtil.getShortMethodDescriptor(method);
+ String methodString = ReferenceUtil.getMethodDescriptor(method, true);
IndentingWriter methodWriter = writer;
if (!writtenMethods.add(methodString)) {
@@ -300,7 +306,7 @@ public class ClassDefinition {
writer.write('\n');
// TODO: check for method validation errors
- String methodString = ReferenceUtil.getShortMethodDescriptor(method);
+ String methodString = ReferenceUtil.getMethodDescriptor(method, true);
IndentingWriter methodWriter = writer;
if (!writtenMethods.add(methodString)) {
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
index 66cd506c..e8f12a29 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
@@ -32,28 +32,32 @@ import org.jf.dexlib2.iface.AnnotationElement;
import org.jf.dexlib2.iface.value.AnnotationEncodedValue;
import org.jf.util.IndentingWriter;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.io.IOException;
import java.util.Collection;
public abstract class AnnotationEncodedValueAdaptor {
- public static void writeTo(IndentingWriter writer, AnnotationEncodedValue annotationEncodedValue)
- throws IOException {
+ public static void writeTo(@Nonnull IndentingWriter writer,
+ @Nonnull AnnotationEncodedValue annotationEncodedValue,
+ @Nullable String containingClass) throws IOException {
writer.write(".subannotation ");
writer.write(annotationEncodedValue.getType());
writer.write('\n');
- writeElementsTo(writer, annotationEncodedValue.getElements());
+ writeElementsTo(writer, annotationEncodedValue.getElements(), containingClass);
writer.write(".end subannotation");
}
- public static void writeElementsTo(IndentingWriter writer,
- Collection<? extends AnnotationElement> annotationElements) throws IOException {
+ public static void writeElementsTo(@Nonnull IndentingWriter writer,
+ @Nonnull Collection<? extends AnnotationElement> annotationElements,
+ @Nullable String containingClass) throws IOException {
writer.indent(4);
for (AnnotationElement annotationElement: annotationElements) {
writer.write(annotationElement.getName());
writer.write(" = ");
- EncodedValueAdaptor.writeTo(writer, annotationElement.getValue());
+ EncodedValueAdaptor.writeTo(writer, annotationElement.getValue(), containingClass);
writer.write('\n');
}
writer.deindent(4);
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
index 8da1b044..eb079b30 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
@@ -28,15 +28,19 @@
package org.jf.baksmali.Adaptors.EncodedValue;
-import org.jf.util.IndentingWriter;
import org.jf.dexlib2.iface.value.ArrayEncodedValue;
import org.jf.dexlib2.iface.value.EncodedValue;
+import org.jf.util.IndentingWriter;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.io.IOException;
import java.util.Collection;
public class ArrayEncodedValueAdaptor {
- public static void writeTo(IndentingWriter writer, ArrayEncodedValue arrayEncodedValue) throws IOException {
+ public static void writeTo(@Nonnull IndentingWriter writer,
+ @Nonnull ArrayEncodedValue arrayEncodedValue,
+ @Nullable String containingClass) throws IOException {
writer.write('{');
Collection<? extends EncodedValue> values = arrayEncodedValue.getValue();
if (values.size() == 0) {
@@ -53,7 +57,7 @@ public class ArrayEncodedValueAdaptor {
}
first = false;
- EncodedValueAdaptor.writeTo(writer, encodedValue);
+ EncodedValueAdaptor.writeTo(writer, encodedValue, containingClass);
}
writer.deindent(4);
writer.write("\n}");
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
index f4d442e0..bce1ff7a 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
@@ -29,22 +29,26 @@
package org.jf.baksmali.Adaptors.EncodedValue;
import org.jf.baksmali.Adaptors.ReferenceFormatter;
+import org.jf.baksmali.Renderers.*;
import org.jf.dexlib2.ValueType;
import org.jf.dexlib2.iface.value.*;
import org.jf.dexlib2.util.ReferenceUtil;
import org.jf.util.IndentingWriter;
-import org.jf.baksmali.Renderers.*;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.io.IOException;
public abstract class EncodedValueAdaptor {
- public static void writeTo(IndentingWriter writer, EncodedValue encodedValue) throws IOException {
+ public static void writeTo(@Nonnull IndentingWriter writer, @Nonnull EncodedValue encodedValue,
+ @Nullable String containingClass)
+ throws IOException {
switch (encodedValue.getValueType()) {
case ValueType.ANNOTATION:
- AnnotationEncodedValueAdaptor.writeTo(writer, (AnnotationEncodedValue)encodedValue);
+ AnnotationEncodedValueAdaptor.writeTo(writer, (AnnotationEncodedValue)encodedValue, containingClass);
return;
case ValueType.ARRAY:
- ArrayEncodedValueAdaptor.writeTo(writer, (ArrayEncodedValue)encodedValue);
+ ArrayEncodedValueAdaptor.writeTo(writer, (ArrayEncodedValue)encodedValue, containingClass);
return;
case ValueType.BOOLEAN:
BooleanRenderer.writeTo(writer, ((BooleanEncodedValue)encodedValue).getValue());
@@ -59,11 +63,21 @@ public abstract class EncodedValueAdaptor {
DoubleRenderer.writeTo(writer, ((DoubleEncodedValue)encodedValue).getValue());
return;
case ValueType.ENUM:
+ EnumEncodedValue enumEncodedValue = (EnumEncodedValue)encodedValue;
+ boolean useImplicitReference = false;
+ if (enumEncodedValue.getValue().getDefiningClass().equals(containingClass)) {
+ useImplicitReference = true;
+ }
writer.write(".enum ");
- ReferenceUtil.writeFieldDescriptor(writer, ((EnumEncodedValue)encodedValue).getValue());
+ ReferenceUtil.writeFieldDescriptor(writer, enumEncodedValue.getValue(), useImplicitReference);
return;
case ValueType.FIELD:
- ReferenceUtil.writeFieldDescriptor(writer, ((FieldEncodedValue)encodedValue).getValue());
+ FieldEncodedValue fieldEncodedValue = (FieldEncodedValue)encodedValue;
+ useImplicitReference = false;
+ if (fieldEncodedValue.getValue().getDefiningClass().equals(containingClass)) {
+ useImplicitReference = true;
+ }
+ ReferenceUtil.writeFieldDescriptor(writer, fieldEncodedValue.getValue(), useImplicitReference);
return;
case ValueType.FLOAT:
FloatRenderer.writeTo(writer, ((FloatEncodedValue)encodedValue).getValue());
@@ -75,7 +89,12 @@ public abstract class EncodedValueAdaptor {
LongRenderer.writeTo(writer, ((LongEncodedValue)encodedValue).getValue());
return;
case ValueType.METHOD:
- ReferenceUtil.writeMethodDescriptor(writer, ((MethodEncodedValue)encodedValue).getValue());
+ MethodEncodedValue methodEncodedValue = (MethodEncodedValue)encodedValue;
+ useImplicitReference = false;
+ if (methodEncodedValue.getValue().getDefiningClass().equals(containingClass)) {
+ useImplicitReference = true;
+ }
+ ReferenceUtil.writeMethodDescriptor(writer, methodEncodedValue.getValue(), useImplicitReference);
return;
case ValueType.NULL:
writer.write("null");
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/FieldDefinition.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/FieldDefinition.java
index a71089d8..ae017914 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/FieldDefinition.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/FieldDefinition.java
@@ -29,6 +29,7 @@
package org.jf.baksmali.Adaptors;
import org.jf.baksmali.Adaptors.EncodedValue.EncodedValueAdaptor;
+import org.jf.baksmali.baksmaliOptions;
import org.jf.dexlib2.AccessFlags;
import org.jf.dexlib2.iface.Annotation;
import org.jf.dexlib2.iface.Field;
@@ -40,7 +41,8 @@ import java.io.IOException;
import java.util.Collection;
public class FieldDefinition {
- public static void writeTo(IndentingWriter writer, Field field, boolean setInStaticConstructor) throws IOException {
+ public static void writeTo(baksmaliOptions options, IndentingWriter writer, Field field,
+ boolean setInStaticConstructor) throws IOException {
EncodedValue initialValue = field.getInitialValue();
int accessFlags = field.getAccessFlags();
@@ -64,7 +66,13 @@ public class FieldDefinition {
writer.write(field.getType());
if (initialValue != null) {
writer.write(" = ");
- EncodedValueAdaptor.writeTo(writer, initialValue);
+
+ String containingClass = null;
+ if (options.useImplicitReferences) {
+ containingClass = field.getDefiningClass();
+ }
+
+ EncodedValueAdaptor.writeTo(writer, initialValue, containingClass);
}
writer.write('\n');
@@ -72,7 +80,13 @@ public class FieldDefinition {
Collection<? extends Annotation> annotations = field.getAnnotations();
if (annotations.size() > 0) {
writer.indent(4);
- AnnotationFormatter.writeTo(writer, annotations);
+
+ String containingClass = null;
+ if (options.useImplicitReferences) {
+ containingClass = field.getDefiningClass();
+ }
+
+ AnnotationFormatter.writeTo(writer, annotations, containingClass);
writer.deindent(4);
writer.write(".end field\n");
}
diff --git a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/ArrayDataMethodItem.java b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/ArrayDataMethodItem.java
index 1d4957ec..9c7b658c 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/ArrayDataMethodItem.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/Format/ArrayDataMethodItem.java
@@ -65,8 +65,13 @@ public class ArrayDataMethodItem extends InstructionMethodItem<ArrayPayload> {
for (Number number: elements) {
LongRenderer.writeSignedIntOrLongTo(writer, number.longValue());
writer.write(suffix);
- if (elementWidth == 4)
- writeResourceId(writer, number.intValue());
+ if (elementWidth == 8) {
+ writeCommentIfLikelyDouble(writer, number.longValue());
+ } else if (elementWidth == 4) {
+ int value = number.intValue();
+ boolean isResourceId = writeCommentIfResourceId(writer, value);
+ if (!isResourceId) writeCommentIfLikelyFloat(writer, value);
+ }
writer.write("\n");
}
writer.deindent(4);
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 300efd81..12acd791 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,10 +41,13 @@ 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;
import org.jf.util.IndentingWriter;
+import org.jf.util.NumberUtils;
import javax.annotation.Nonnull;
import java.io.IOException;
@@ -102,7 +105,13 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem {
ReferenceInstruction referenceInstruction = (ReferenceInstruction)instruction;
try {
Reference reference = referenceInstruction.getReference();
- referenceString = ReferenceUtil.getReferenceString(reference);
+
+ String classContext = null;
+ if (methodDef.classDef.options.useImplicitReferences) {
+ classContext = methodDef.method.getDefiningClass();
+ }
+
+ referenceString = ReferenceUtil.getReferenceString(reference, classContext);
assert referenceString != null;
} catch (InvalidItemIndex ex) {
writer.write("#");
@@ -222,8 +231,12 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem {
writeFirstRegister(writer);
writer.write(", ");
writeLiteral(writer);
- if (instruction.getOpcode().setsWideRegister() == false)
- writeResourceId(writer);
+ if (instruction.getOpcode().setsWideRegister()) {
+ writeCommentIfLikelyDouble(writer);
+ } else {
+ boolean isResourceId = writeCommentIfResourceId(writer);
+ if (!isResourceId) writeCommentIfLikelyFloat(writer);
+ }
break;
case Format21t:
case Format31t:
@@ -428,17 +441,71 @@ public class InstructionMethodItem<T extends Instruction> extends MethodItem {
LongRenderer.writeSignedIntOrLongTo(writer, ((WideLiteralInstruction)instruction).getWideLiteral());
}
- protected void writeResourceId(IndentingWriter writer) throws IOException {
- writeResourceId(writer, ((NarrowLiteralInstruction)instruction).getNarrowLiteral());
+ protected void writeCommentIfLikelyFloat(IndentingWriter writer) throws IOException {
+ writeCommentIfLikelyFloat(writer, ((NarrowLiteralInstruction)instruction).getNarrowLiteral());
+ }
+
+ protected void writeCommentIfLikelyFloat(IndentingWriter writer, int val) throws IOException {
+ if (NumberUtils.isLikelyFloat(val)) {
+ writer.write(" # ");
+ float fval = Float.intBitsToFloat(val);
+ if (fval == Float.POSITIVE_INFINITY)
+ writer.write("Float.POSITIVE_INFINITY");
+ else if (fval == Float.NEGATIVE_INFINITY)
+ writer.write("Float.NEGATIVE_INFINITY");
+ else if (fval == Float.NaN)
+ writer.write("Float.NaN");
+ else if (fval == Float.MAX_VALUE)
+ writer.write("Float.MAX_VALUE");
+ else if (fval == (float)Math.PI)
+ writer.write("(float)Math.PI");
+ else if (fval == (float)Math.E)
+ writer.write("(float)Math.E");
+ else {
+ writer.write(Float.toString(fval));
+ writer.write('f');
+ }
+ }
+ }
+
+ protected void writeCommentIfLikelyDouble(IndentingWriter writer) throws IOException {
+ writeCommentIfLikelyDouble(writer, ((WideLiteralInstruction)instruction).getWideLiteral());
}
- protected void writeResourceId(IndentingWriter writer, int val) throws IOException {
+ protected void writeCommentIfLikelyDouble(IndentingWriter writer, long val) throws IOException {
+ if (NumberUtils.isLikelyDouble(val)) {
+ writer.write(" # ");
+ double dval = Double.longBitsToDouble(val);
+ if (dval == Double.POSITIVE_INFINITY)
+ writer.write("Double.POSITIVE_INFINITY");
+ else if (dval == Double.NEGATIVE_INFINITY)
+ writer.write("Double.NEGATIVE_INFINITY");
+ else if (dval == Double.NaN)
+ writer.write("Double.NaN");
+ else if (dval == Double.MAX_VALUE)
+ writer.write("Double.MAX_VALUE");
+ else if (dval == Math.PI)
+ writer.write("Math.PI");
+ else if (dval == Math.E)
+ writer.write("Math.E");
+ else
+ writer.write(Double.toString(dval));
+ }
+ }
+
+ protected boolean writeCommentIfResourceId(IndentingWriter writer) throws IOException {
+ return writeCommentIfResourceId(writer, ((NarrowLiteralInstruction)instruction).getNarrowLiteral());
+ }
+
+ protected boolean writeCommentIfResourceId(IndentingWriter writer, int val) throws IOException {
Map<Integer,String> resourceIds = methodDef.classDef.options.resourceIds;
String resource = resourceIds.get(Integer.valueOf(val));
if (resource != null) {
writer.write(" # ");
writer.write(resource);
+ return true;
}
+ return false;
}
protected void writeFieldOffset(IndentingWriter writer) throws IOException {
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 5d7dea7e..f0dd656b 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
@@ -85,7 +85,7 @@ public class PackedSwitchMethodItem extends InstructionMethodItem<PackedSwitchPa
int key = firstKey;
for (PackedSwitchTarget target: targets) {
target.writeTargetTo(writer);
- writeResourceId(writer, key);
+ writeCommentIfResourceId(writer, key);
writer.write('\n');
key++;
}
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 0dee84ab..0e01f41b 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
@@ -71,7 +71,7 @@ public class SparseSwitchMethodItem extends InstructionMethodItem<SparseSwitchPa
IntegerRenderer.writeTo(writer, target.getKey());
writer.write(" -> ");
target.writeTargetTo(writer);
- writeResourceId(writer, target.getKey());
+ writeCommentIfResourceId(writer, target.getKey());
writer.write('\n');
}
writer.deindent(4);
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 5ce971f5..eb5caa67 100644
--- a/baksmali/src/main/java/org/jf/baksmali/Adaptors/MethodDefinition.java
+++ b/baksmali/src/main/java/org/jf/baksmali/Adaptors/MethodDefinition.java
@@ -56,6 +56,7 @@ import org.jf.util.IndentingWriter;
import org.jf.util.SparseIntArray;
import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.io.IOException;
import java.util.*;
@@ -148,7 +149,13 @@ public class MethodDefinition {
writer.indent(4);
writeParameters(writer, method, methodParameters, options);
- AnnotationFormatter.writeTo(writer, method.getAnnotations());
+
+ String containingClass = null;
+ if (options.useImplicitReferences) {
+ containingClass = method.getDefiningClass();
+ }
+ AnnotationFormatter.writeTo(writer, method.getAnnotations(), containingClass);
+
writer.deindent(4);
writer.write(".end method\n");
}
@@ -191,7 +198,11 @@ public class MethodDefinition {
parameterRegisterCount);
}
- AnnotationFormatter.writeTo(writer, method.getAnnotations());
+ String containingClass = null;
+ if (classDef.options.useImplicitReferences) {
+ containingClass = method.getDefiningClass();
+ }
+ AnnotationFormatter.writeTo(writer, method.getAnnotations(), containingClass);
writer.write('\n');
@@ -264,7 +275,12 @@ public class MethodDefinition {
writer.write("\n");
if (annotations.size() > 0) {
writer.indent(4);
- AnnotationFormatter.writeTo(writer, annotations);
+
+ String containingClass = null;
+ if (options.useImplicitReferences) {
+ containingClass = method.getDefiningClass();
+ }
+ AnnotationFormatter.writeTo(writer, annotations, containingClass);
writer.deindent(4);
writer.write(".end param\n");
}
@@ -519,6 +535,14 @@ public class MethodDefinition {
}
}
+ @Nullable
+ private String getContainingClassForImplicitReference() {
+ if (classDef.options.useImplicitReferences) {
+ return classDef.classDef.getType();
+ }
+ return null;
+ }
+
public static class LabelCache {
protected HashMap<LabelMethodItem, LabelMethodItem> labels = new HashMap<LabelMethodItem, LabelMethodItem>();
diff --git a/baksmali/src/main/java/org/jf/baksmali/baksmali.java b/baksmali/src/main/java/org/jf/baksmali/baksmali.java
index fcc89d7a..765e77ec 100644
--- a/baksmali/src/main/java/org/jf/baksmali/baksmali.java
+++ b/baksmali/src/main/java/org/jf/baksmali/baksmali.java
@@ -34,6 +34,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Ordering;
import org.jf.baksmali.Adaptors.ClassDefinition;
import org.jf.dexlib2.analysis.ClassPath;
+import org.jf.dexlib2.analysis.CustomInlineMethodResolver;
import org.jf.dexlib2.iface.ClassDef;
import org.jf.dexlib2.iface.DexFile;
import org.jf.dexlib2.util.SyntheticAccessorResolver;
@@ -66,7 +67,12 @@ public class baksmali {
options.classPath = ClassPath.fromClassPath(options.bootClassPathDirs,
Iterables.concat(options.bootClassPathEntries, extraClassPathEntries), dexFile,
- options.apiLevel);
+ options.apiLevel, options.checkPackagePrivateAccess);
+
+ if (options.customInlineDefinitions != null) {
+ options.inlineResolver = new CustomInlineMethodResolver(options.classPath,
+ options.customInlineDefinitions);
+ }
} catch (Exception ex) {
System.err.println("\n\nError occurred while loading boot class path files. Aborting.");
ex.printStackTrace(System.err);
diff --git a/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java b/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java
index 48a9146b..ada28239 100644
--- a/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java
+++ b/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java
@@ -36,6 +36,7 @@ import org.jf.dexlib2.analysis.ClassPath;
import org.jf.dexlib2.analysis.InlineMethodResolver;
import org.jf.dexlib2.util.SyntheticAccessorResolver;
+import java.io.File;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
@@ -53,6 +54,7 @@ public class baksmaliOptions {
public int apiLevel = 15;
public String outputDirectory = "out";
+ public String dexEntry = "classes.dex";
public List<String> bootClassPathDirs = Lists.newArrayList();
public List<String> bootClassPathEntries = Lists.newArrayList();
@@ -71,6 +73,8 @@ public class baksmaliOptions {
public boolean deodex = false;
public boolean ignoreErrors = false;
public boolean checkPackagePrivateAccess = false;
+ public boolean useImplicitReferences = false;
+ public File customInlineDefinitions = null;
public InlineMethodResolver inlineResolver = null;
public int registerInfo = 0;
public ClassPath classPath = null;
diff --git a/baksmali/src/main/java/org/jf/baksmali/main.java b/baksmali/src/main/java/org/jf/baksmali/main.java
index db059f8c..28c42030 100644
--- a/baksmali/src/main/java/org/jf/baksmali/main.java
+++ b/baksmali/src/main/java/org/jf/baksmali/main.java
@@ -31,7 +31,6 @@ package org.jf.baksmali;
import com.google.common.collect.Lists;
import org.apache.commons.cli.*;
import org.jf.dexlib2.DexFileFactory;
-import org.jf.dexlib2.analysis.CustomInlineMethodResolver;
import org.jf.dexlib2.analysis.InlineMethodResolver;
import org.jf.dexlib2.dexbacked.DexBackedDexFile;
import org.jf.dexlib2.dexbacked.DexBackedOdexFile;
@@ -206,6 +205,15 @@ public class main {
String rif = commandLine.getOptionValue("i");
options.setResourceIdFiles(rif);
break;
+ case 't':
+ options.useImplicitReferences = true;
+ break;
+ case 'e':
+ options.dexEntry = commandLine.getOptionValue("e");
+ break;
+ case 'k':
+ options.checkPackagePrivateAccess = true;
+ break;
case 'N':
disassemble = false;
break;
@@ -217,7 +225,7 @@ public class main {
options.ignoreErrors = true;
break;
case 'T':
- options.inlineResolver = new CustomInlineMethodResolver(options.classPath, new File(commandLine.getOptionValue("T")));
+ options.customInlineDefinitions = new File(commandLine.getOptionValue("T"));
break;
default:
assert false;
@@ -236,10 +244,6 @@ public class main {
}
}
- if (options.apiLevel >= 17) {
- options.checkPackagePrivateAccess = true;
- }
-
String inputDexFileName = remainingArgs[0];
File dexFileFile = new File(inputDexFileName);
@@ -249,7 +253,7 @@ public class main {
}
//Read in and parse the dex file
- DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, options.apiLevel);
+ DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, options.dexEntry, options.apiLevel);
if (dexFile.isOdexFile()) {
if (!options.deodex) {
@@ -270,7 +274,7 @@ public class main {
}
}
- if (options.inlineResolver == null && dexFile instanceof DexBackedOdexFile) {
+ if (options.customInlineDefinitions == null && dexFile instanceof DexBackedOdexFile) {
options.inlineResolver =
InlineMethodResolver.createInlineMethodResolver(((DexBackedOdexFile)dexFile).getOdexVersion());
}
@@ -421,6 +425,16 @@ public class main {
.withArgName("FILES")
.create("i");
+ Option noImplicitReferencesOption = OptionBuilder.withLongOpt("implicit-references")
+ .withDescription("Use implicit (type-less) method and field references")
+ .create("t");
+
+ Option checkPackagePrivateAccessOption = OptionBuilder.withLongOpt("check-package-private-access")
+ .withDescription("When deodexing, use the package-private access check when calculating vtable " +
+ "indexes. It should only be needed for 4.2.0 odexes. The functionality was reverted for " +
+ "4.2.1.")
+ .create("k");
+
Option dumpOption = OptionBuilder.withLongOpt("dump-to")
.withDescription("dumps the given dex file into a single annotated dump file named FILE" +
" (<dexfile>.dump by default), along with the normal disassembly")
@@ -444,6 +458,12 @@ public class main {
.withArgName("FILE")
.create("T");
+ Option dexEntryOption = OptionBuilder.withLongOpt("dex-file")
+ .withDescription("looks for dex file named DEX_FILE, defaults to classes.dex")
+ .withArgName("DEX_FILE")
+ .hasArg()
+ .create("e");
+
basicOptions.addOption(versionOption);
basicOptions.addOption(helpOption);
basicOptions.addOption(outputDirOption);
@@ -460,6 +480,9 @@ public class main {
basicOptions.addOption(apiLevelOption);
basicOptions.addOption(jobsOption);
basicOptions.addOption(resourceIdFilesOption);
+ basicOptions.addOption(noImplicitReferencesOption);
+ basicOptions.addOption(dexEntryOption);
+ basicOptions.addOption(checkPackagePrivateAccessOption);
debugOptions.addOption(dumpOption);
debugOptions.addOption(ignoreErrorsOption);
diff --git a/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java b/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java
index 38219491..bf353e83 100644
--- a/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java
+++ b/baksmali/src/test/java/org/jf/baksmali/AnalysisTest.java
@@ -40,6 +40,7 @@ import org.jf.dexlib2.analysis.ClassPath;
import org.jf.dexlib2.iface.ClassDef;
import org.jf.dexlib2.iface.DexFile;
import org.jf.util.IndentingWriter;
+import org.jf.util.TextUtils;
import org.junit.Test;
import javax.annotation.Nonnull;
@@ -91,6 +92,7 @@ public class AnalysisTest {
options.registerInfo = baksmaliOptions.ALL | baksmaliOptions.FULLMERGE;
options.classPath = new ClassPath();
}
+ options.useImplicitReferences = false;
for (ClassDef classDef: dexFile.getClasses()) {
StringWriter stringWriter = new StringWriter();
@@ -104,9 +106,8 @@ public class AnalysisTest {
className.substring(1, className.length() - 1));
String smaliContents = readResource(smaliPath);
- String newline = System.getProperty("line.separator");
- Assert.assertEquals(smaliContents.replace("\r", "").replace("\n", newline),
- stringWriter.toString().replace("\r", "").replace("\n", newline));
+ Assert.assertEquals(TextUtils.normalizeNewlines(smaliContents),
+ TextUtils.normalizeNewlines(stringWriter.toString()));
}
}
diff --git a/baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java b/baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java
new file mode 100644
index 00000000..0cda27a1
--- /dev/null
+++ b/baksmali/src/test/java/org/jf/baksmali/ImplicitReferenceTest.java
@@ -0,0 +1,322 @@
+/*
+ * Copyright 2014, 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 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("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " invoke-static {p0}, LHelloWorld;->toString()V\n" +
+ " invoke-static {p0}, LHelloWorld;->V()V\n" +
+ " invoke-static {p0}, LHelloWorld;->I()V\n" +
+ " return-void\n" +
+ ".end method");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# direct methods\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ ".registers 1\n" +
+ "invoke-static {p0}, toString()V\n" +
+ "invoke-static {p0}, V()V\n" +
+ "invoke-static {p0}, I()V\n" +
+ "return-void\n" +
+ ".end method\n";
+
+ 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()));
+ }
+
+ @Test
+ public void testExplicitMethodReferences() throws IOException, RecognitionException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " invoke-static {p0}, LHelloWorld;->toString()V\n" +
+ " invoke-static {p0}, LHelloWorld;->V()V\n" +
+ " invoke-static {p0}, LHelloWorld;->I()V\n" +
+ " return-void\n" +
+ ".end method");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# direct methods\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " invoke-static {p0}, LHelloWorld;->toString()V\n" +
+ " invoke-static {p0}, LHelloWorld;->V()V\n" +
+ " invoke-static {p0}, LHelloWorld;->I()V\n" +
+ " return-void\n" +
+ ".end method\n";
+
+ 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()));
+ }
+
+ @Test
+ public void testImplicitMethodLiterals() throws IOException, RecognitionException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".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");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# static fields\n" +
+ ".field public static field1:Ljava/lang/reflect/Method; = toString()V\n" +
+ ".field public static field2:Ljava/lang/reflect/Method; = V()V\n" +
+ ".field public static field3:Ljava/lang/reflect/Method; = I()V\n" +
+ ".field public static field4:Ljava/lang/Class; = I\n";
+
+ 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()));
+ }
+
+ @Test
+ public void testExplicitMethodLiterals() throws IOException, RecognitionException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".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");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# static fields\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\n";
+
+ 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()));
+ }
+
+ @Test
+ public void testImplicitFieldReferences() throws IOException, RecognitionException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " sget v0, LHelloWorld;->someField:I\n" +
+ " sget v0, LHelloWorld;->I:I\n" +
+ " sget v0, LHelloWorld;->V:I\n" +
+ " return-void\n" +
+ ".end method");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# direct methods\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " sget p0, someField:I\n" +
+ " sget p0, I:I\n" +
+ " sget p0, V:I\n" +
+ " return-void\n" +
+ ".end method\n";
+
+ 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()));
+ }
+
+ @Test
+ public void testExplicitFieldReferences() throws IOException, RecognitionException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " sget v0, LHelloWorld;->someField:I\n" +
+ " sget v0, LHelloWorld;->I:I\n" +
+ " sget v0, LHelloWorld;->V:I\n" +
+ " return-void\n" +
+ ".end method");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# direct methods\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " sget p0, LHelloWorld;->someField:I\n" +
+ " sget p0, LHelloWorld;->I:I\n" +
+ " sget p0, LHelloWorld;->V:I\n" +
+ " return-void\n" +
+ ".end method\n";
+
+ 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()));
+ }
+
+ @Test
+ public void testImplicitFieldLiterals() throws IOException, RecognitionException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".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");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# static fields\n" +
+ ".field public static field1:Ljava/lang/reflect/Field; = someField:I\n" +
+ ".field public static field2:Ljava/lang/reflect/Field; = V:I\n" +
+ ".field public static field3:Ljava/lang/reflect/Field; = I:I\n";
+
+ 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()));
+ }
+
+ @Test
+ public void testExplicitFieldLiterals() throws IOException, RecognitionException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".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");
+
+ String expected = "" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ "# static fields\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\n";
+
+ 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()));
+ }
+}
diff --git a/build.gradle b/build.gradle
index 0a489998..a9ee7e0e 100644
--- a/build.gradle
+++ b/build.gradle
@@ -31,7 +31,7 @@
apply plugin: 'idea'
-version = '2.0.3'
+version = '2.0.5'
def jarVersion = version
@@ -64,21 +64,30 @@ if (!('release' in gradle.startParameter.taskNames)) {
task release() {
}
+// The projects that get pushed to maven
+def maven_release_projects = ['smali', 'baksmali', 'dexlib2', 'util']
+
subprojects {
apply plugin: 'java'
apply plugin: 'idea'
- apply plugin: 'maven'
- apply plugin: 'signing'
- group = 'org.smali'
+ if (JavaVersion.current().isJava8Compatible()) {
+ allprojects {
+ tasks.withType(Javadoc) {
+ options.addStringOption('Xdoclint:none', '-quiet')
+ }
+ }
+ }
+
version = parent.version
ext {
- depends = [guava: 'com.google.guava:guava:14.0',
+ depends = [guava: 'com.google.guava:guava:18.0',
findbugs: 'com.google.code.findbugs:jsr305:1.3.9',
junit: 'junit:junit:4.6',
- antlr_runtime: 'org.antlr:antlr-runtime:3.5',
- antlr: 'org.antlr:antlr:3.5',
+ antlr_runtime: 'org.antlr:antlr-runtime:3.5.2',
+ antlr: 'org.antlr:antlr:3.5.2',
+ 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'
@@ -93,50 +102,74 @@ subprojects {
mavenCentral()
}
- signing {
- required { gradle.taskGraph.hasTask("uploadArchives") }
- sign configurations.archives
- }
+ if (project.name in maven_release_projects) {
+ apply plugin: 'maven'
+ apply plugin: 'signing'
- uploadArchives {
- repositories.mavenDeployer {
- configuration = configurations.archives
+ group = 'org.smali'
- beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
+ task javadocJar(type: Jar, dependsOn: javadoc) {
+ classifier = 'javadoc'
+ from 'build/docs/javadoc'
+ }
- repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
- authentication(userName: sonatypeUsername, password: sonatypePassword)
- }
+ task sourcesJar(type: Jar) {
+ classifier = 'sources'
+ from sourceSets.main.allJava
+ }
+
+ artifacts {
+ archives javadocJar
+ archives sourcesJar
+ }
- pom.artifactId = project.name
-
- pom.project {
- name project.name
- url 'http://smali.org'
- packaging 'jar'
- licenses {
- license {
- name 'The BSD 3-Clause License'
- url 'http://opensource.org/licenses/BSD-3-Clause'
- distribution 'repo'
+ signing {
+ required { gradle.taskGraph.hasTask("uploadArchives") }
+ sign configurations.archives
+ }
+
+ uploadArchives {
+ repositories.mavenDeployer {
+ configuration = configurations.archives
+
+ beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
+
+ if (rootProject.hasProperty('sonatypeUsername') && rootProject.hasProperty('sonatypePassword')) {
+ repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
+ authentication(userName: sonatypeUsername, password: sonatypePassword)
}
}
- scm {
- connection 'scm:git:git://github.com/JesusFreke/smali.git'
- developerConnection 'scm:git:git@github.com:JesusFreke/smali.git'
- }
- developers {
- developer {
- id 'jesusfreke'
- name 'Ben Gruver'
- email 'jesusfreke@jesusfreke.com'
+
+ pom.artifactId = project.name
+
+ pom.project {
+ name project.name
+ url 'http://smali.org'
+ packaging 'jar'
+ licenses {
+ license {
+ name 'The BSD 3-Clause License'
+ url 'http://opensource.org/licenses/BSD-3-Clause'
+ distribution 'repo'
+ }
+ }
+ scm {
+ connection 'scm:git:git://github.com/JesusFreke/smali.git'
+ developerConnection 'scm:git:git@github.com:JesusFreke/smali.git'
+ }
+ developers {
+ developer {
+ id 'jesusfreke'
+ name 'Ben Gruver'
+ email 'jesusfreke@jesusfreke.com'
+ }
}
}
}
}
- }
- tasks.getByPath(':release').dependsOn(uploadArchives)
+ tasks.getByPath(':release').dependsOn(uploadArchives)
+ }
}
buildscript {
@@ -149,5 +182,5 @@ buildscript {
}
task wrapper(type: Wrapper) {
- gradleVersion = '1.8'
+ gradleVersion = '1.10'
} \ No newline at end of file
diff --git a/deodexerant/deodexerant.c b/deodexerant/deodexerant.c
index 108db76a..1cadee92 100644
--- a/deodexerant/deodexerant.c
+++ b/deodexerant/deodexerant.c
@@ -48,14 +48,20 @@ void main(int argc, char **argv) {
void *libdvm = dlopen("libdvm.so", RTLD_LAZY);
if (libdvm == NULL) {
- printf("Failed to load libdvm\n");
+ printf("Failed to load libdvm: %s\n", dlerror());
return;
}
dvmGetInlineOpsTablePtr dvmGetInlineOpsTable = dlsym(libdvm, "dvmGetInlineOpsTable");
if (dvmGetInlineOpsTable == NULL) {
- printf("Failed to load dvmGetInlineOpsTable\n");
+ // clear the error, and retry with the c++ mangled name
+ dlerror();
+ dvmGetInlineOpsTable = dlsym(libdvm, "_Z20dvmGetInlineOpsTablev");
+ }
+
+ if (dvmGetInlineOpsTable == NULL) {
+ printf("Failed to load dvmGetInlineOpsTable: %s\n", dlerror());
dlclose(libdvm);
return;
}
@@ -63,7 +69,13 @@ void main(int argc, char **argv) {
dvmGetInlineOpsTableLengthPtr dvmGetInlineOpsTableLength = dlsym(libdvm, "dvmGetInlineOpsTableLength");
if (dvmGetInlineOpsTableLength == NULL) {
- printf("Failed to load dvmGetInlineOpsTableLength\n");
+ // clear the error, and retry with the c++ mangled name
+ dlerror();
+ dvmGetInlineOpsTableLength = dlsym(libdvm, "_Z26dvmGetInlineOpsTableLengthv");
+ }
+
+ if (dvmGetInlineOpsTableLength == NULL) {
+ printf("Failed to load dvmGetInlineOpsTableLength: %s\n", dlerror());
dlclose(libdvm);
return;
}
diff --git a/dexlib2/accessorTestGenerator/build.gradle b/dexlib2/accessorTestGenerator/build.gradle
index 606fa0ac..e50bdc0a 100644
--- a/dexlib2/accessorTestGenerator/build.gradle
+++ b/dexlib2/accessorTestGenerator/build.gradle
@@ -36,8 +36,4 @@ dependencies {
compile 'org.antlr:ST4:4.0.7'
testCompile 'junit:junit:4.6'
-}
-
-// this is a test-only project that we don't need to upload to maven
-signArchives.enabled = false
-uploadArchives.enabled = false \ No newline at end of file
+} \ No newline at end of file
diff --git a/dexlib2/build.gradle b/dexlib2/build.gradle
index bcecb19d..d39c5db9 100644
--- a/dexlib2/build.gradle
+++ b/dexlib2/build.gradle
@@ -118,15 +118,6 @@ task accessorTest(type: Test, dependsOn: generateAccessorTestDex) {
classpath = project.sourceSets.accessorTest.runtimeClasspath
}
-task sourcesJar(type: Jar) {
- classifier = 'sources'
- from sourceSets.main.allJava
-}
-
-artifacts {
- archives sourcesJar
-}
-
uploadArchives {
repositories.mavenDeployer {
pom.project {
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java b/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java
index 5987d7ce..d08da036 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/DexFileFactory.java
@@ -46,16 +46,21 @@ 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), new Opcodes(api));
+ return loadDexFile(new File(path), "classes.dex", new Opcodes(api));
}
@Nonnull
public static DexBackedDexFile loadDexFile(File dexFile, int api) throws IOException {
- return loadDexFile(dexFile, new Opcodes(api));
+ return loadDexFile(dexFile, "classes.dex", new Opcodes(api));
}
@Nonnull
- public static DexBackedDexFile loadDexFile(File dexFile, @Nonnull Opcodes opcodes) throws IOException {
+ public static DexBackedDexFile loadDexFile(File dexFile, String dexEntry, int api) throws IOException {
+ return loadDexFile(dexFile, dexEntry, new Opcodes(api));
+ }
+
+ @Nonnull
+ public static DexBackedDexFile loadDexFile(File dexFile, String dexEntry, @Nonnull Opcodes opcodes) throws IOException {
ZipFile zipFile = null;
boolean isZipFile = false;
try {
@@ -63,16 +68,16 @@ public final class DexFileFactory {
// if we get here, it's safe to assume we have a zip file
isZipFile = true;
- ZipEntry zipEntry = zipFile.getEntry("classes.dex");
+ ZipEntry zipEntry = zipFile.getEntry(dexEntry);
if (zipEntry == null) {
throw new NoClassesDexException("zip file %s does not contain a classes.dex file", dexFile.getName());
}
long fileLength = zipEntry.getSize();
if (fileLength < 40) {
throw new ExceptionWithContext(
- "The classes.dex file in %s is too small to be a valid dex file", dexFile.getName());
+ "The " + dexEntry + " file in %s is too small to be a valid dex file", dexFile.getName());
} else if (fileLength > Integer.MAX_VALUE) {
- throw new ExceptionWithContext("The classes.dex file in %s is too large to read in", dexFile.getName());
+ throw new ExceptionWithContext("The " + dexEntry + " file in %s is too large to read in", dexFile.getName());
}
byte[] dexBytes = new byte[(int)fileLength];
ByteStreams.readFully(zipFile.getInputStream(zipEntry), dexBytes);
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 e7081523..7efeb408 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java
@@ -57,7 +57,7 @@ import java.util.regex.Pattern;
public class ClassPath {
@Nonnull private final TypeProto unknownClass;
@Nonnull private HashMap<String, ClassDef> availableClasses = Maps.newHashMap();
- private int api;
+ private boolean checkPackagePrivateAccess;
/**
* Creates a new ClassPath instance that can load classes from the given dex files
@@ -75,12 +75,22 @@ public class ClassPath {
* @param api API level
*/
public ClassPath(@Nonnull Iterable<DexFile> classPath, int api) {
+ this(Lists.newArrayList(classPath), api == 17);
+ }
+
+ /**
+ * Creates a new ClassPath instance that can load classes from the given dex files
+ *
+ * @param classPath An iterable of DexFile objects. When loading a class, these dex files will be searched in order
+ * @param checkPackagePrivateAccess Whether checkPackagePrivateAccess is needed, enabled for ONLY early API 17 by default
+ */
+ public ClassPath(@Nonnull Iterable<DexFile> classPath, boolean checkPackagePrivateAccess) {
// add fallbacks for certain special classes that must be present
Iterable<DexFile> dexFiles = Iterables.concat(classPath, Lists.newArrayList(getBasicClasses()));
unknownClass = new UnknownClassProto(this);
loadedClasses.put(unknownClass.getType(), unknownClass);
- this.api = api;
+ this.checkPackagePrivateAccess = checkPackagePrivateAccess;
loadPrimitiveType("Z");
loadPrimitiveType("B");
@@ -148,20 +158,28 @@ public class ClassPath {
return unknownClass;
}
- public int getApi() {
- return api;
+ public boolean shouldCheckPackagePrivateAccess() {
+ return checkPackagePrivateAccess;
}
@Nonnull
public static ClassPath fromClassPath(Iterable<String> classPathDirs, Iterable<String> classPath, DexFile dexFile,
int api) {
+ return fromClassPath(classPathDirs, classPath, dexFile, api, api == 17);
+ }
+
+ @Nonnull
+ public static ClassPath fromClassPath(Iterable<String> classPathDirs, Iterable<String> classPath, DexFile dexFile,
+ int api, boolean checkPackagePrivateAccess) {
ArrayList<DexFile> dexFiles = Lists.newArrayList();
for (String classPathEntry: classPath) {
- dexFiles.add(loadClassPathEntry(classPathDirs, classPathEntry, api));
+ try {
+ dexFiles.add(loadClassPathEntry(classPathDirs, classPathEntry, api));
+ } catch (ExceptionWithContext e){}
}
dexFiles.add(dexFile);
- return new ClassPath(dexFiles, api);
+ return new ClassPath(dexFiles, checkPackagePrivateAccess);
}
private static final Pattern dalvikCacheOdexPattern = Pattern.compile("@([^@]+)@classes.dex$");
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java b/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java
index 6506cf21..f4f1dc7b 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassProto.java
@@ -627,7 +627,7 @@ public class ClassProto implements TypeProto {
for (int i=0; i<vtable.size(); i++) {
Method superMethod = vtable.get(i);
if (methodSignaturesMatch(superMethod, virtualMethod)) {
- if (classPath.getApi() < 17 || canAccess(superMethod)) {
+ if (!classPath.shouldCheckPackagePrivateAccess() || canAccess(superMethod)) {
if (replaceExisting) {
vtable.set(i, virtualMethod);
}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/analysis/MethodAnalyzer.java b/dexlib2/src/main/java/org/jf/dexlib2/analysis/MethodAnalyzer.java
index 2a779efa..4402c624 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/analysis/MethodAnalyzer.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/analysis/MethodAnalyzer.java
@@ -1493,8 +1493,11 @@ public class MethodAnalyzer {
Instruction deodexedInstruction;
int startRegister = instruction.getStartRegister();
- int registerCount = instruction.getRegisterCount();
- if (registerCount == 1 && startRegister < 16) {
+ // hack: we should be using instruction.getRegisterCount, but some tweaked versions of dalvik appear
+ // to generate invoke-object-init/range instructions with an invalid register count. We know it should
+ // always be 1, so just use that.
+ int registerCount = 1;
+ if (startRegister < 16) {
deodexedInstruction = new ImmutableInstruction35c(Opcode.INVOKE_DIRECT,
registerCount, startRegister, 0, 0, 0, 0, instruction.getReference());
} else {
@@ -1634,7 +1637,7 @@ public class MethodAnalyzer {
String superclass = methodClass.getSuperclass();
if (superclass == null) {
throw new ExceptionWithContext("Couldn't find accessible class while resolving method %s",
- ReferenceUtil.getShortMethodDescriptor(resolvedMethod));
+ ReferenceUtil.getMethodDescriptor(resolvedMethod, true));
}
methodClass = classPath.getClassDef(superclass);
@@ -1642,11 +1645,14 @@ public class MethodAnalyzer {
// methodClass is now the first accessible class found. Now. we need to make sure that the method is
// actually valid for this class
- resolvedMethod = classPath.getClass(methodClass.getType()).getMethodByVtableIndex(methodIndex);
- if (resolvedMethod == null) {
+ MethodReference newResolvedMethod =
+ classPath.getClass(methodClass.getType()).getMethodByVtableIndex(methodIndex);
+ if (newResolvedMethod == null) {
+ // TODO: fix NPE here
throw new ExceptionWithContext("Couldn't find accessible class while resolving method %s",
- ReferenceUtil.getShortMethodDescriptor(resolvedMethod));
+ ReferenceUtil.getMethodDescriptor(resolvedMethod, true));
}
+ resolvedMethod = newResolvedMethod;
resolvedMethod = new ImmutableMethodReference(methodClass.getType(), resolvedMethod.getName(),
resolvedMethod.getParameterTypes(), resolvedMethod.getReturnType());
}
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 a3bfbd89..f734e018 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/builder/MutableMethodImplementation.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/builder/MutableMethodImplementation.java
@@ -96,8 +96,8 @@ public class MutableMethodImplementation implements MethodImplementation {
index++;
}
- // the switch instructions must be converted last, so that any switch statements that refer to them have
- // created the referring labels that we look for
+ // the switch payload instructions must be converted last, so that any switch statements that refer to them
+ // have created the referring labels that we look for
for (Task switchPayloadTask: switchPayloadTasks) {
switchPayloadTask.perform();
}
@@ -213,8 +213,10 @@ public class MutableMethodImplementation implements MethodImplementation {
return;
}
int codeAddress = instructionList.get(index).getCodeAddress();
+ MethodLocation newLoc = new MethodLocation(instruction, codeAddress, index);
+ instructionList.add(index, newLoc);
+ instruction.location = newLoc;
- instructionList.add(index, new MethodLocation(instruction, codeAddress, index));
codeAddress += instruction.getCodeUnits();
for (int i=index+1; i<instructionList.size(); i++) {
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/BaseDexReader.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/BaseDexReader.java
index 262fb546..96645b8c 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/BaseDexReader.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/BaseDexReader.java
@@ -48,7 +48,6 @@ public class BaseDexReader<T extends BaseDexBuffer> {
public int getOffset() { return offset; }
public void setOffset(int offset) { this.offset = offset; }
- /** {@inheritDoc} */
public int readSleb128() {
int end = offset;
int currentByteValue;
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java
index 06f07796..9596a278 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedClassDef.java
@@ -173,7 +173,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef {
while (true) {
if (++count > staticFieldCount) {
instanceFieldsOffset = reader.getOffset();
- return null;
+ return endOfData();
}
DexBackedField item = new DexBackedField(reader, DexBackedClassDef.this,
@@ -232,7 +232,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef {
while (true) {
if (++count > instanceFieldCount) {
directMethodsOffset = reader.getOffset();
- return null;
+ return endOfData();
}
DexBackedField item = new DexBackedField(reader, DexBackedClassDef.this,
@@ -301,7 +301,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef {
while (true) {
if (++count > directMethodCount) {
virtualMethodsOffset = reader.getOffset();
- return null;
+ return endOfData();
}
DexBackedMethod item = new DexBackedMethod(reader, DexBackedClassDef.this,
@@ -357,7 +357,7 @@ public class DexBackedClassDef extends BaseTypeReference implements ClassDef {
protected DexBackedMethod readNextItem(@Nonnull DexReader reader) {
while (true) {
if (++count > virtualMethodCount) {
- return null;
+ return endOfData();
}
DexBackedMethod item = new DexBackedMethod(reader, DexBackedClassDef.this,
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java
index b1a13396..1774096e 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedDexFile.java
@@ -207,6 +207,26 @@ public class DexBackedDexFile extends BaseDexBuffer implements DexFile {
return classCount;
}
+ public int getStringCount() {
+ return stringCount;
+ }
+
+ public int getTypeCount() {
+ return typeCount;
+ }
+
+ public int getProtoCount() {
+ return protoCount;
+ }
+
+ public int getFieldCount() {
+ return fieldCount;
+ }
+
+ public int getMethodCount() {
+ return methodCount;
+ }
+
@Nonnull
public String getString(int stringIndex) {
int stringOffset = getStringIdItemOffset(stringIndex);
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java
index a9c22661..0c06b1d7 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/DexBackedMethodImplementation.java
@@ -41,6 +41,7 @@ import org.jf.dexlib2.iface.MethodImplementation;
import org.jf.dexlib2.iface.debug.DebugItem;
import org.jf.dexlib2.iface.instruction.Instruction;
import org.jf.util.AlignmentUtils;
+import org.jf.util.ExceptionWithContext;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
@@ -75,9 +76,17 @@ public class DexBackedMethodImplementation implements MethodImplementation {
@Override
protected Instruction readNextItem(@Nonnull DexReader reader) {
if (reader.getOffset() >= endOffset) {
- return null;
+ return endOfData();
}
- return DexBackedInstruction.readFrom(reader);
+
+ Instruction instruction = DexBackedInstruction.readFrom(reader);
+
+ // Does the instruction extend past the end of the method?
+ int offset = reader.getOffset();
+ if (offset > endOffset || offset < 0) {
+ throw new ExceptionWithContext("The last instruction in the method is truncated");
+ }
+ return instruction;
}
};
}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java
index 24a49600..0edd5316 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/instruction/DexBackedArrayPayload.java
@@ -56,6 +56,9 @@ public class DexBackedArrayPayload extends DexBackedInstruction implements Array
elementWidth = dexFile.readUshort(instructionStart + ELEMENT_WIDTH_OFFSET);
elementCount = dexFile.readSmallUint(instructionStart + ELEMENT_COUNT_OFFSET);
+ if (((long)elementWidth) * elementCount > Integer.MAX_VALUE) {
+ throw new ExceptionWithContext("Invalid array-payload instruction: element width*count overflows");
+ }
}
@Override public int getElementWidth() { return elementWidth; }
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java
index ffa4c20d..6759820e 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/DebugInfo.java
@@ -160,7 +160,7 @@ public abstract class DebugInfo implements Iterable<DebugItem> {
int next = reader.readUbyte();
switch (next) {
case DebugItemType.END_SEQUENCE: {
- return null;
+ return endOfData();
}
case DebugItemType.ADVANCE_PC: {
int addressDiff = reader.readSmallUleb128();
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java
index d330094f..1f4259ff 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/dexbacked/util/VariableSizeLookaheadIterator.java
@@ -31,46 +31,32 @@
package org.jf.dexlib2.dexbacked.util;
+import com.google.common.collect.AbstractIterator;
import org.jf.dexlib2.dexbacked.DexBackedDexFile;
import org.jf.dexlib2.dexbacked.DexReader;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.util.Iterator;
-import java.util.NoSuchElementException;
-public abstract class VariableSizeLookaheadIterator<T> implements Iterator<T> {
+public abstract class VariableSizeLookaheadIterator<T> extends AbstractIterator<T> implements Iterator<T> {
@Nonnull private final DexReader reader;
- private T cachedItem = null;
-
protected VariableSizeLookaheadIterator(@Nonnull DexBackedDexFile dexFile, int offset) {
this.reader = dexFile.readerAt(offset);
- cachedItem = readNextItem(reader);
}
/**
- * Reads the next item from reader. If the end of the list has been reached, it should return null.
+ * Reads the next item from reader. If the end of the list has been reached, it should call endOfData.
+ *
+ * endOfData has a return value of T, so you can simply {@code return endOfData()}
*
- * @return The item that was read, or null if the end of the list has been reached.
+ * @return The item that was read. If endOfData was called, the return value is ignored.
*/
@Nullable protected abstract T readNextItem(@Nonnull DexReader reader);
@Override
- public boolean hasNext() {
- return cachedItem != null;
- }
-
- @Override
- @Nonnull
- public T next() {
- if (cachedItem == null) {
- throw new NoSuchElementException();
- }
- T ret = cachedItem;
- cachedItem = readNextItem(reader);
- return ret;
+ protected T computeNext() {
+ return readNextItem(reader);
}
-
- @Override public void remove() { throw new UnsupportedOperationException(); }
}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/debug/DebugItem.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/debug/DebugItem.java
index ea3f5ffb..6cf4dbbc 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/iface/debug/DebugItem.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/debug/DebugItem.java
@@ -48,8 +48,7 @@ public interface DebugItem {
int getDebugItemType();
/**
- * The code address
- * @return
+ * @return The code address
*/
int getCodeAddress();
}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationElementRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationElementRewriter.java
new file mode 100644
index 00000000..945f022f
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationElementRewriter.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.BaseAnnotationElement;
+import org.jf.dexlib2.iface.AnnotationElement;
+import org.jf.dexlib2.iface.value.EncodedValue;
+
+import javax.annotation.Nonnull;
+
+public class AnnotationElementRewriter implements Rewriter<AnnotationElement> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public AnnotationElementRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public AnnotationElement rewrite(@Nonnull AnnotationElement annotationElement) {
+ return new RewrittenAnnotationElement(annotationElement);
+ }
+
+ protected class RewrittenAnnotationElement extends BaseAnnotationElement {
+ @Nonnull protected AnnotationElement annotationElement;
+
+ public RewrittenAnnotationElement(@Nonnull AnnotationElement annotationElement) {
+ this.annotationElement = annotationElement;
+ }
+
+ @Nonnull @Override public String getName() {
+ return annotationElement.getName();
+ }
+
+ @Nonnull @Override public EncodedValue getValue() {
+ return rewriters.getEncodedValueRewriter().rewrite(annotationElement.getValue());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationRewriter.java
new file mode 100644
index 00000000..725d2f28
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/AnnotationRewriter.java
@@ -0,0 +1,71 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.BaseAnnotation;
+import org.jf.dexlib2.iface.Annotation;
+import org.jf.dexlib2.iface.AnnotationElement;
+
+import javax.annotation.Nonnull;
+import java.util.Set;
+
+public class AnnotationRewriter implements Rewriter<Annotation> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public AnnotationRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public Annotation rewrite(@Nonnull Annotation value) {
+ return new RewrittenAnnotation(value);
+ }
+
+ protected class RewrittenAnnotation extends BaseAnnotation {
+ @Nonnull protected Annotation annotation;
+
+ public RewrittenAnnotation(@Nonnull Annotation annotation) {
+ this.annotation = annotation;
+ }
+
+ @Override public int getVisibility() {
+ return annotation.getVisibility();
+ }
+
+ @Override @Nonnull public String getType() {
+ return rewriters.getTypeRewriter().rewrite(annotation.getType());
+ }
+
+ @Override @Nonnull public Set<? extends AnnotationElement> getElements() {
+ return RewriterUtils.rewriteSet(rewriters.getAnnotationElementRewriter(), annotation.getElements());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/ClassDefRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/ClassDefRewriter.java
new file mode 100644
index 00000000..ad246e5b
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/ClassDefRewriter.java
@@ -0,0 +1,128 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import com.google.common.collect.Iterators;
+import org.jf.dexlib2.base.reference.BaseTypeReference;
+import org.jf.dexlib2.iface.Annotation;
+import org.jf.dexlib2.iface.ClassDef;
+import org.jf.dexlib2.iface.Field;
+import org.jf.dexlib2.iface.Method;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+import java.util.Iterator;
+import java.util.Set;
+
+public class ClassDefRewriter implements Rewriter<ClassDef> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public ClassDefRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public ClassDef rewrite(@Nonnull ClassDef classDef) {
+ return new RewrittenClassDef(classDef);
+ }
+
+ protected class RewrittenClassDef extends BaseTypeReference implements ClassDef {
+ @Nonnull protected ClassDef classDef;
+
+ public RewrittenClassDef(@Nonnull ClassDef classdef) {
+ this.classDef = classdef;
+ }
+
+ @Override @Nonnull public String getType() {
+ return rewriters.getTypeRewriter().rewrite(classDef.getType());
+ }
+
+ @Override public int getAccessFlags() {
+ return classDef.getAccessFlags();
+ }
+
+ @Override @Nullable public String getSuperclass() {
+ return RewriterUtils.rewriteNullable(rewriters.getTypeRewriter(), classDef.getSuperclass());
+ }
+
+ @Override @Nonnull public Set<String> getInterfaces() {
+ return RewriterUtils.rewriteSet(rewriters.getTypeRewriter(), classDef.getInterfaces());
+ }
+
+ @Override @Nullable public String getSourceFile() {
+ return classDef.getSourceFile();
+ }
+
+ @Override @Nonnull public Set<? extends Annotation> getAnnotations() {
+ return RewriterUtils.rewriteSet(rewriters.getAnnotationRewriter(), classDef.getAnnotations());
+ }
+
+ @Override @Nonnull public Iterable<? extends Field> getStaticFields() {
+ return RewriterUtils.rewriteIterable(rewriters.getFieldRewriter(), classDef.getStaticFields());
+ }
+
+ @Override @Nonnull public Iterable<? extends Field> getInstanceFields() {
+ return RewriterUtils.rewriteIterable(rewriters.getFieldRewriter(), classDef.getInstanceFields());
+ }
+
+ @Nonnull
+ @Override
+ public Iterable<? extends Field> getFields() {
+ return new Iterable<Field>() {
+ @Nonnull
+ @Override
+ public Iterator<Field> iterator() {
+ return Iterators.concat(getStaticFields().iterator(), getInstanceFields().iterator());
+ }
+ };
+ }
+
+ @Override @Nonnull public Iterable<? extends Method> getDirectMethods() {
+ return RewriterUtils.rewriteIterable(rewriters.getMethodRewriter(), classDef.getDirectMethods());
+ }
+
+ @Override @Nonnull public Iterable<? extends Method> getVirtualMethods() {
+ return RewriterUtils.rewriteIterable(rewriters.getMethodRewriter(), classDef.getVirtualMethods());
+ }
+
+ @Nonnull
+ @Override
+ public Iterable<? extends Method> getMethods() {
+ return new Iterable<Method>() {
+ @Nonnull
+ @Override
+ public Iterator<Method> iterator() {
+ return Iterators.concat(getDirectMethods().iterator(), getVirtualMethods().iterator());
+ }
+ };
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/DebugItemRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/DebugItemRewriter.java
new file mode 100644
index 00000000..4fc753a3
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/DebugItemRewriter.java
@@ -0,0 +1,137 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.DebugItemType;
+import org.jf.dexlib2.iface.debug.*;
+import org.jf.dexlib2.iface.reference.StringReference;
+import org.jf.dexlib2.iface.reference.TypeReference;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
+public class DebugItemRewriter implements Rewriter<DebugItem> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public DebugItemRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public DebugItem rewrite(@Nonnull DebugItem value) {
+ switch (value.getDebugItemType()) {
+ case DebugItemType.START_LOCAL:
+ return new RewrittenStartLocal((StartLocal)value);
+ case DebugItemType.END_LOCAL:
+ return new RewrittenEndLocal((EndLocal)value);
+ case DebugItemType.RESTART_LOCAL:
+ return new RewrittenRestartLocal((RestartLocal)value);
+ default:
+ return value;
+ }
+ }
+
+ protected class BaseRewrittenLocalInfoDebugItem<T extends DebugItem & LocalInfo> implements DebugItem, LocalInfo {
+ @Nonnull protected T debugItem;
+
+ public BaseRewrittenLocalInfoDebugItem (@Nonnull T debugItem) {
+ this.debugItem = debugItem;
+ }
+
+ @Override public int getDebugItemType() {
+ return debugItem.getDebugItemType();
+ }
+
+ @Override public int getCodeAddress() {
+ return debugItem.getCodeAddress();
+ }
+
+ @Override @Nullable public String getName() {
+ return debugItem.getName();
+ }
+
+ @Override @Nullable public String getType() {
+ return RewriterUtils.rewriteNullable(rewriters.getTypeRewriter(), debugItem.getType());
+ }
+
+ @Override @Nullable public String getSignature() {
+ return debugItem.getSignature();
+ }
+ }
+
+ protected class RewrittenStartLocal extends BaseRewrittenLocalInfoDebugItem<StartLocal> implements StartLocal {
+ public RewrittenStartLocal(@Nonnull StartLocal debugItem) {
+ super(debugItem);
+ }
+
+ @Override public int getRegister() {
+ return debugItem.getRegister();
+ }
+
+ @Override @Nullable public StringReference getNameReference() {
+ return debugItem.getNameReference();
+ }
+
+ @Override @Nullable public TypeReference getTypeReference() {
+ TypeReference typeReference = debugItem.getTypeReference();
+ if (typeReference == null) {
+ return null;
+ }
+
+ return RewriterUtils.rewriteTypeReference(rewriters.getTypeRewriter(), typeReference);
+ }
+
+ @Override @Nullable public StringReference getSignatureReference() {
+ return debugItem.getSignatureReference();
+ }
+ }
+
+ protected class RewrittenEndLocal extends BaseRewrittenLocalInfoDebugItem<EndLocal> implements EndLocal {
+ public RewrittenEndLocal(@Nonnull EndLocal instruction) {
+ super(instruction);
+ }
+
+ public int getRegister() {
+ return debugItem.getRegister();
+ }
+ }
+
+ protected class RewrittenRestartLocal extends BaseRewrittenLocalInfoDebugItem<RestartLocal>
+ implements RestartLocal {
+ public RewrittenRestartLocal(@Nonnull RestartLocal instruction) {
+ super(instruction);
+ }
+
+ public int getRegister() {
+ return debugItem.getRegister();
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/DexRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/DexRewriter.java
new file mode 100644
index 00000000..e482cd04
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/DexRewriter.java
@@ -0,0 +1,136 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.iface.*;
+import org.jf.dexlib2.iface.debug.DebugItem;
+import org.jf.dexlib2.iface.instruction.Instruction;
+import org.jf.dexlib2.iface.reference.FieldReference;
+import org.jf.dexlib2.iface.reference.MethodReference;
+import org.jf.dexlib2.iface.value.EncodedValue;
+
+import javax.annotation.Nonnull;
+import java.util.Set;
+
+/**
+ * Out-of-the box, this class does nothing except make a picture-perfect copy of a dex file.
+ *
+ * However, it provides many points where you can hook into this process and selectively modify
+ * the dex file. For example, If you want to rename all instances (including definitions and references)
+ * of the class Lorg/blah/MyBlah; to Lorg/blah/YourBlah;
+ *
+ * <pre>
+ * {@code
+ * DexRewriter rewriter = new DexRewriter(new RewriterModule() {
+ * public Rewriter<String> getTypeRewriter(Rewriters rewriters) {
+ * return new Rewriter<String>() {
+ * public String rewrite(String value) {
+ * if (value.equals("Lorg/blah/MyBlah;")) {
+ * return "Lorg/blah/YourBlah;";
+ * }
+ * return value;
+ * }
+ * };
+ * }
+ * });
+ * DexFile rewrittenDexFile = rewriter.rewriteDexFile(dexFile);
+ * }
+ * </pre>
+ */
+public class DexRewriter implements Rewriters {
+ private final Rewriter<ClassDef> classDefRewriter;
+ private final Rewriter<Field> fieldRewriter;
+ private final Rewriter<Method> methodRewriter;
+ private final Rewriter<MethodParameter> methodParameterRewriter;
+ private final Rewriter<MethodImplementation> methodImplementationRewriter;
+ private final Rewriter<Instruction> instructionRewriter;
+ private final Rewriter<TryBlock<? extends ExceptionHandler>> tryBlockRewriter;
+ private final Rewriter<ExceptionHandler> exceptionHandlerRewriter;
+ private final Rewriter<DebugItem> debugItemRewriter;
+ private final Rewriter<String> typeRewriter;
+ private final Rewriter<FieldReference> fieldReferenceRewriter;
+ private final Rewriter<MethodReference> methodReferenceRewriter;
+ private final Rewriter<Annotation> annotationRewriter;
+ private final Rewriter<AnnotationElement> annotationElementRewriter;
+ private final Rewriter<EncodedValue> encodedValueRewriter;
+
+ public DexRewriter(RewriterModule module) {
+ this.classDefRewriter = module.getClassDefRewriter(this);
+ this.fieldRewriter = module.getFieldRewriter(this);
+ this.methodRewriter = module.getMethodRewriter(this);
+ this.methodParameterRewriter = module.getMethodParameterRewriter(this);
+ this.methodImplementationRewriter = module.getMethodImplementationRewriter(this);
+ this.instructionRewriter = module.getInstructionRewriter(this);
+ this.tryBlockRewriter = module.getTryBlockRewriter(this);
+ this.exceptionHandlerRewriter = module.getExceptionHandlerRewriter(this);
+ this.debugItemRewriter = module.getDebugItemRewriter(this);
+ this.typeRewriter = module.getTypeRewriter(this);
+ this.fieldReferenceRewriter = module.getFieldReferenceRewriter(this);
+ this.methodReferenceRewriter = module.getMethodReferenceRewriter(this);
+ this.annotationRewriter = module.getAnnotationRewriter(this);
+ this.annotationElementRewriter = module.getAnnotationElementRewriter(this);
+ this.encodedValueRewriter = module.getEncodedValueRewriter(this);
+ }
+
+ @Nonnull
+ public DexFile rewriteDexFile(@Nonnull DexFile dexFile) {
+ return new RewrittenDexFile(dexFile);
+ }
+
+ protected class RewrittenDexFile implements DexFile {
+ @Nonnull protected final DexFile dexFile;
+
+ public RewrittenDexFile(@Nonnull DexFile dexFile) {
+ this.dexFile = dexFile;
+ }
+
+ @Override @Nonnull public Set<? extends ClassDef> getClasses() {
+ return RewriterUtils.rewriteSet(getClassDefRewriter(), dexFile.getClasses());
+ }
+ }
+
+ @Nonnull @Override public Rewriter<ClassDef> getClassDefRewriter() { return classDefRewriter; }
+ @Nonnull @Override public Rewriter<Field> getFieldRewriter() { return fieldRewriter; }
+ @Nonnull @Override public Rewriter<Method> getMethodRewriter() { return methodRewriter; }
+ @Nonnull @Override public Rewriter<MethodParameter> getMethodParameterRewriter() { return methodParameterRewriter; }
+ @Nonnull @Override public Rewriter<MethodImplementation> getMethodImplementationRewriter() { return methodImplementationRewriter; }
+ @Nonnull @Override public Rewriter<Instruction> getInstructionRewriter() { return instructionRewriter; }
+ @Nonnull @Override public Rewriter<TryBlock<? extends ExceptionHandler>> getTryBlockRewriter() { return tryBlockRewriter; }
+ @Nonnull @Override public Rewriter<ExceptionHandler> getExceptionHandlerRewriter() { return exceptionHandlerRewriter; }
+ @Nonnull @Override public Rewriter<DebugItem> getDebugItemRewriter() { return debugItemRewriter; }
+ @Nonnull @Override public Rewriter<String> getTypeRewriter() { return typeRewriter; }
+ @Nonnull @Override public Rewriter<FieldReference> getFieldReferenceRewriter() { return fieldReferenceRewriter; }
+ @Nonnull @Override public Rewriter<MethodReference> getMethodReferenceRewriter() { return methodReferenceRewriter; }
+ @Nonnull @Override public Rewriter<Annotation> getAnnotationRewriter() { return annotationRewriter; }
+ @Nonnull @Override public Rewriter<AnnotationElement> getAnnotationElementRewriter() { return annotationElementRewriter; }
+ @Nonnull @Override public Rewriter<EncodedValue> getEncodedValueRewriter() { return encodedValueRewriter; }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/EncodedValueRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/EncodedValueRewriter.java
new file mode 100644
index 00000000..9719dcd0
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/EncodedValueRewriter.java
@@ -0,0 +1,147 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.ValueType;
+import org.jf.dexlib2.base.value.*;
+import org.jf.dexlib2.iface.AnnotationElement;
+import org.jf.dexlib2.iface.reference.FieldReference;
+import org.jf.dexlib2.iface.reference.MethodReference;
+import org.jf.dexlib2.iface.value.*;
+
+import javax.annotation.Nonnull;
+import java.util.List;
+import java.util.Set;
+
+public class EncodedValueRewriter implements Rewriter<EncodedValue> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public EncodedValueRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public EncodedValue rewrite(@Nonnull EncodedValue encodedValue) {
+ switch (encodedValue.getValueType()) {
+ case ValueType.TYPE:
+ return new RewrittenTypeEncodedValue((TypeEncodedValue)encodedValue);
+ case ValueType.FIELD:
+ return new RewrittenFieldEncodedValue((FieldEncodedValue)encodedValue);
+ case ValueType.METHOD:
+ return new RewrittenMethodEncodedValue((MethodEncodedValue)encodedValue);
+ case ValueType.ENUM:
+ return new RewrittenEnumEncodedValue((EnumEncodedValue)encodedValue);
+ case ValueType.ARRAY:
+ return new RewrittenArrayEncodedValue((ArrayEncodedValue)encodedValue);
+ case ValueType.ANNOTATION:
+ return new RewrittenAnnotationEncodedValue((AnnotationEncodedValue)encodedValue);
+ default:
+ return encodedValue;
+ }
+ }
+
+ protected class RewrittenTypeEncodedValue extends BaseTypeEncodedValue {
+ @Nonnull protected TypeEncodedValue typeEncodedValue;
+
+ public RewrittenTypeEncodedValue(@Nonnull TypeEncodedValue typeEncodedValue) {
+ this.typeEncodedValue = typeEncodedValue;
+ }
+
+ @Override @Nonnull public String getValue() {
+ return rewriters.getTypeRewriter().rewrite(typeEncodedValue.getValue());
+ }
+ }
+
+ protected class RewrittenFieldEncodedValue extends BaseFieldEncodedValue {
+ @Nonnull protected FieldEncodedValue fieldEncodedValue;
+
+ public RewrittenFieldEncodedValue(@Nonnull FieldEncodedValue fieldEncodedValue) {
+ this.fieldEncodedValue = fieldEncodedValue;
+ }
+
+ @Override @Nonnull public FieldReference getValue() {
+ return rewriters.getFieldReferenceRewriter().rewrite(fieldEncodedValue.getValue());
+ }
+ }
+
+ protected class RewrittenEnumEncodedValue extends BaseEnumEncodedValue {
+ @Nonnull protected EnumEncodedValue enumEncodedValue;
+
+ public RewrittenEnumEncodedValue(@Nonnull EnumEncodedValue enumEncodedValue) {
+ this.enumEncodedValue = enumEncodedValue;
+ }
+
+ @Override @Nonnull public FieldReference getValue() {
+ return rewriters.getFieldReferenceRewriter().rewrite(enumEncodedValue.getValue());
+ }
+ }
+
+ protected class RewrittenMethodEncodedValue extends BaseMethodEncodedValue {
+ @Nonnull protected MethodEncodedValue methodEncodedValue;
+
+ public RewrittenMethodEncodedValue(@Nonnull MethodEncodedValue methodEncodedValue) {
+ this.methodEncodedValue = methodEncodedValue;
+ }
+
+ @Override @Nonnull public MethodReference getValue() {
+ return rewriters.getMethodReferenceRewriter().rewrite(methodEncodedValue.getValue());
+ }
+ }
+
+ protected class RewrittenArrayEncodedValue extends BaseArrayEncodedValue {
+ @Nonnull protected ArrayEncodedValue arrayEncodedValue;
+
+ public RewrittenArrayEncodedValue(@Nonnull ArrayEncodedValue arrayEncodedValue) {
+ this.arrayEncodedValue = arrayEncodedValue;
+ }
+
+ @Override @Nonnull public List<? extends EncodedValue> getValue() {
+ return RewriterUtils.rewriteList(EncodedValueRewriter.this, arrayEncodedValue.getValue());
+ }
+ }
+
+ protected class RewrittenAnnotationEncodedValue extends BaseAnnotationEncodedValue {
+ @Nonnull protected AnnotationEncodedValue annotationEncodedValue;
+
+ public RewrittenAnnotationEncodedValue(@Nonnull AnnotationEncodedValue annotationEncodedValue) {
+ this.annotationEncodedValue = annotationEncodedValue;
+ }
+
+ @Nonnull @Override public String getType() {
+ return rewriters.getTypeRewriter().rewrite(annotationEncodedValue.getType());
+ }
+
+ @Nonnull @Override public Set<? extends AnnotationElement> getElements() {
+ return RewriterUtils.rewriteSet(rewriters.getAnnotationElementRewriter(),
+ annotationEncodedValue.getElements());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/ExceptionHandlerRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/ExceptionHandlerRewriter.java
new file mode 100644
index 00000000..51df68ca
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/ExceptionHandlerRewriter.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.BaseExceptionHandler;
+import org.jf.dexlib2.iface.ExceptionHandler;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
+public class ExceptionHandlerRewriter implements Rewriter<ExceptionHandler> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public ExceptionHandlerRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public ExceptionHandler rewrite(@Nonnull ExceptionHandler value) {
+ return new RewrittenExceptionHandler(value);
+ }
+
+ protected class RewrittenExceptionHandler extends BaseExceptionHandler {
+ @Nonnull protected ExceptionHandler exceptionHandler;
+
+ public RewrittenExceptionHandler(@Nonnull ExceptionHandler exceptionHandler) {
+ this.exceptionHandler = exceptionHandler;
+ }
+
+ @Override @Nullable public String getExceptionType() {
+ return RewriterUtils.rewriteNullable(rewriters.getTypeRewriter(), exceptionHandler.getExceptionType());
+ }
+
+ @Override public int getHandlerCodeAddress() {
+ return exceptionHandler.getHandlerCodeAddress();
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldReferenceRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldReferenceRewriter.java
new file mode 100644
index 00000000..41b5093f
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldReferenceRewriter.java
@@ -0,0 +1,69 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.reference.BaseFieldReference;
+import org.jf.dexlib2.iface.reference.FieldReference;
+
+import javax.annotation.Nonnull;
+
+public class FieldReferenceRewriter implements Rewriter<FieldReference> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public FieldReferenceRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public FieldReference rewrite(@Nonnull FieldReference fieldReference) {
+ return new RewrittenFieldReference(fieldReference);
+ }
+
+ protected class RewrittenFieldReference extends BaseFieldReference {
+ @Nonnull protected FieldReference fieldReference;
+
+ public RewrittenFieldReference(@Nonnull FieldReference fieldReference) {
+ this.fieldReference = fieldReference;
+ }
+
+ @Override @Nonnull public String getDefiningClass() {
+ return rewriters.getTypeRewriter().rewrite(fieldReference.getDefiningClass());
+ }
+
+ @Override @Nonnull public String getName() {
+ return fieldReference.getName();
+ }
+
+ @Override @Nonnull public String getType() {
+ return rewriters.getTypeRewriter().rewrite(fieldReference.getType());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldRewriter.java
new file mode 100644
index 00000000..1e5eb6d6
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/FieldRewriter.java
@@ -0,0 +1,85 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.reference.BaseFieldReference;
+import org.jf.dexlib2.iface.Annotation;
+import org.jf.dexlib2.iface.Field;
+import org.jf.dexlib2.iface.value.EncodedValue;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+import java.util.Set;
+
+public class FieldRewriter implements Rewriter<Field> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public FieldRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public Field rewrite(@Nonnull Field field) {
+ return new RewrittenField(field);
+ }
+
+ protected class RewrittenField extends BaseFieldReference implements Field {
+ @Nonnull protected Field field;
+
+ public RewrittenField(@Nonnull Field field) {
+ this.field = field;
+ }
+
+ @Override @Nonnull public String getDefiningClass() {
+ return rewriters.getFieldReferenceRewriter().rewrite(field).getDefiningClass();
+ }
+
+ @Override @Nonnull public String getName() {
+ return rewriters.getFieldReferenceRewriter().rewrite(field).getName();
+ }
+
+ @Override @Nonnull public String getType() {
+ return rewriters.getFieldReferenceRewriter().rewrite(field).getType();
+ }
+
+ public int getAccessFlags() {
+ return field.getAccessFlags();
+ }
+
+ @Nullable public EncodedValue getInitialValue() {
+ return RewriterUtils.rewriteNullable(rewriters.getEncodedValueRewriter(), field.getInitialValue());
+ }
+
+ @Nonnull public Set<? extends Annotation> getAnnotations() {
+ return RewriterUtils.rewriteSet(rewriters.getAnnotationRewriter(), field.getAnnotations());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/InstructionRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/InstructionRewriter.java
new file mode 100644
index 00000000..c7da8ca9
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/InstructionRewriter.java
@@ -0,0 +1,205 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.Opcode;
+import org.jf.dexlib2.ReferenceType;
+import org.jf.dexlib2.iface.instruction.Instruction;
+import org.jf.dexlib2.iface.instruction.ReferenceInstruction;
+import org.jf.dexlib2.iface.instruction.formats.*;
+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.iface.reference.TypeReference;
+
+import javax.annotation.Nonnull;
+
+public class InstructionRewriter implements Rewriter<Instruction> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public InstructionRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public Instruction rewrite(@Nonnull Instruction instruction) {
+ if (instruction instanceof ReferenceInstruction) {
+ switch (instruction.getOpcode().format) {
+ case Format20bc:
+ return new RewrittenInstruction20bc((Instruction20bc)instruction);
+ case Format21c:
+ return new RewrittenInstruction21c((Instruction21c)instruction);
+ case Format22c:
+ return new RewrittenInstruction22c((Instruction22c)instruction);
+ case Format31c:
+ return new RewrittenInstruction31c((Instruction31c)instruction);
+ case Format35c:
+ return new RewrittenInstruction35c((Instruction35c)instruction);
+ case Format3rc:
+ return new RewrittenInstruction3rc((Instruction3rc)instruction);
+ default:
+ throw new IllegalArgumentException();
+ }
+ }
+ return instruction;
+ }
+
+ protected class BaseRewrittenReferenceInstruction<T extends ReferenceInstruction>
+ implements ReferenceInstruction {
+ @Nonnull protected T instruction;
+
+ protected BaseRewrittenReferenceInstruction(@Nonnull T instruction) {
+ this.instruction = instruction;
+ }
+
+ @Override @Nonnull public Reference getReference() {
+ switch (getReferenceType()) {
+ case ReferenceType.TYPE:
+ return RewriterUtils.rewriteTypeReference(rewriters.getTypeRewriter(),
+ (TypeReference)instruction.getReference());
+ case ReferenceType.FIELD:
+ return rewriters.getFieldReferenceRewriter().rewrite((FieldReference)instruction.getReference());
+ case ReferenceType.METHOD:
+ return rewriters.getMethodReferenceRewriter().rewrite((MethodReference)instruction.getReference());
+ case ReferenceType.STRING:
+ return instruction.getReference();
+ default:
+ throw new IllegalArgumentException();
+ }
+ }
+
+ @Override public int getReferenceType() {
+ return instruction.getReferenceType();
+ }
+
+ @Override public Opcode getOpcode() {
+ return instruction.getOpcode();
+ }
+
+ @Override public int getCodeUnits() {
+ return instruction.getCodeUnits();
+ }
+ }
+
+ protected class RewrittenInstruction20bc extends BaseRewrittenReferenceInstruction<Instruction20bc>
+ implements Instruction20bc {
+ public RewrittenInstruction20bc(@Nonnull Instruction20bc instruction) {
+ super(instruction);
+ }
+
+ @Override public int getVerificationError() {
+ return instruction.getVerificationError();
+ }
+ }
+
+ protected class RewrittenInstruction21c extends BaseRewrittenReferenceInstruction<Instruction21c>
+ implements Instruction21c {
+ public RewrittenInstruction21c(@Nonnull Instruction21c instruction) {
+ super(instruction);
+ }
+
+ public int getRegisterA() {
+ return instruction.getRegisterA();
+ }
+ }
+
+ protected class RewrittenInstruction22c extends BaseRewrittenReferenceInstruction<Instruction22c>
+ implements Instruction22c {
+ public RewrittenInstruction22c(@Nonnull Instruction22c instruction) {
+ super(instruction);
+ }
+
+ public int getRegisterA() {
+ return instruction.getRegisterA();
+ }
+
+ public int getRegisterB() {
+ return instruction.getRegisterB();
+ }
+ }
+
+ protected class RewrittenInstruction31c extends BaseRewrittenReferenceInstruction<Instruction31c>
+ implements Instruction31c {
+ public RewrittenInstruction31c(@Nonnull Instruction31c instruction) {
+ super(instruction);
+ }
+
+ public int getRegisterA() {
+ return instruction.getRegisterA();
+ }
+ }
+
+ protected class RewrittenInstruction35c extends BaseRewrittenReferenceInstruction<Instruction35c>
+ implements Instruction35c {
+ public RewrittenInstruction35c(@Nonnull Instruction35c instruction) {
+ super(instruction);
+ }
+
+ public int getRegisterC() {
+ return instruction.getRegisterC();
+ }
+
+ public int getRegisterE() {
+ return instruction.getRegisterE();
+ }
+
+ public int getRegisterG() {
+ return instruction.getRegisterG();
+ }
+
+ public int getRegisterCount() {
+ return instruction.getRegisterCount();
+ }
+
+ public int getRegisterD() {
+ return instruction.getRegisterD();
+ }
+
+ public int getRegisterF() {
+ return instruction.getRegisterF();
+ }
+ }
+
+ protected class RewrittenInstruction3rc extends BaseRewrittenReferenceInstruction<Instruction3rc>
+ implements Instruction3rc {
+ public RewrittenInstruction3rc(@Nonnull Instruction3rc instruction) {
+ super(instruction);
+ }
+
+ public int getStartRegister() {
+ return instruction.getStartRegister();
+ }
+
+ public int getRegisterCount() {
+ return instruction.getRegisterCount();
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodImplementationRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodImplementationRewriter.java
new file mode 100644
index 00000000..4c90e5a0
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodImplementationRewriter.java
@@ -0,0 +1,80 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.iface.ExceptionHandler;
+import org.jf.dexlib2.iface.MethodImplementation;
+import org.jf.dexlib2.iface.TryBlock;
+import org.jf.dexlib2.iface.debug.DebugItem;
+import org.jf.dexlib2.iface.instruction.Instruction;
+
+import javax.annotation.Nonnull;
+import java.util.List;
+
+public class MethodImplementationRewriter implements Rewriter<MethodImplementation> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public MethodImplementationRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public MethodImplementation rewrite(@Nonnull MethodImplementation methodImplementation) {
+ return new RewrittenMethodImplementation(methodImplementation);
+ }
+
+ protected class RewrittenMethodImplementation implements MethodImplementation {
+ @Nonnull protected MethodImplementation methodImplementation;
+
+ public RewrittenMethodImplementation(@Nonnull MethodImplementation methodImplementation) {
+ this.methodImplementation = methodImplementation;
+ }
+
+ @Override public int getRegisterCount() {
+ return methodImplementation.getRegisterCount();
+ }
+
+ @Override @Nonnull public Iterable<? extends Instruction> getInstructions() {
+ return RewriterUtils.rewriteIterable(rewriters.getInstructionRewriter(),
+ methodImplementation.getInstructions());
+ }
+
+ @Override @Nonnull public List<? extends TryBlock<? extends ExceptionHandler>> getTryBlocks() {
+ return RewriterUtils.rewriteList(rewriters.getTryBlockRewriter(),
+ methodImplementation.getTryBlocks());
+ }
+
+ @Override @Nonnull public Iterable<? extends DebugItem> getDebugItems() {
+ return RewriterUtils.rewriteIterable(rewriters.getDebugItemRewriter(),
+ methodImplementation.getDebugItems());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodParameterRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodParameterRewriter.java
new file mode 100644
index 00000000..1ddc3803
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodParameterRewriter.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.BaseMethodParameter;
+import org.jf.dexlib2.iface.Annotation;
+import org.jf.dexlib2.iface.MethodParameter;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+import java.util.Set;
+
+public class MethodParameterRewriter implements Rewriter<MethodParameter> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public MethodParameterRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public MethodParameter rewrite(@Nonnull MethodParameter methodParameter) {
+ return new RewrittenMethodParameter(methodParameter);
+ }
+
+ protected class RewrittenMethodParameter extends BaseMethodParameter {
+ @Nonnull protected MethodParameter methodParameter;
+
+ public RewrittenMethodParameter(@Nonnull MethodParameter methodParameter) {
+ this.methodParameter = methodParameter;
+ }
+
+ @Override @Nonnull public String getType() {
+ return rewriters.getTypeRewriter().rewrite(methodParameter.getType());
+ }
+
+ @Override @Nonnull public Set<? extends Annotation> getAnnotations() {
+ return RewriterUtils.rewriteSet(rewriters.getAnnotationRewriter(), methodParameter.getAnnotations());
+ }
+
+ @Override @Nullable public String getName() {
+ return methodParameter.getName();
+ }
+
+ @Override @Nullable public String getSignature() {
+ return methodParameter.getSignature();
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodReferenceRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodReferenceRewriter.java
new file mode 100644
index 00000000..83a9f9a0
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodReferenceRewriter.java
@@ -0,0 +1,82 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import com.google.common.base.Function;
+import com.google.common.collect.Lists;
+import org.jf.dexlib2.base.reference.BaseMethodReference;
+import org.jf.dexlib2.iface.reference.MethodReference;
+
+import javax.annotation.Nonnull;
+import java.util.List;
+
+public class MethodReferenceRewriter implements Rewriter<MethodReference> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public MethodReferenceRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public MethodReference rewrite(@Nonnull MethodReference methodReference) {
+ return new RewrittenMethodReference(methodReference);
+ }
+
+ protected class RewrittenMethodReference extends BaseMethodReference {
+ @Nonnull protected MethodReference methodReference;
+
+ public RewrittenMethodReference(@Nonnull MethodReference methodReference) {
+ this.methodReference = methodReference;
+ }
+
+ @Override @Nonnull public String getDefiningClass() {
+ return rewriters.getTypeRewriter().rewrite(methodReference.getDefiningClass());
+ }
+
+ @Override @Nonnull public String getName() {
+ return methodReference.getName();
+ }
+
+ @Override @Nonnull public List<? extends CharSequence> getParameterTypes() {
+ return RewriterUtils.rewriteList(rewriters.getTypeRewriter(),
+ Lists.transform(methodReference.getParameterTypes(),
+ new Function<CharSequence, String>() {
+ @Nonnull @Override public String apply(CharSequence input) {
+ return input.toString();
+ }
+ }));
+ }
+
+ @Override @Nonnull public String getReturnType() {
+ return rewriters.getTypeRewriter().rewrite(methodReference.getReturnType());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodRewriter.java
new file mode 100644
index 00000000..01af6e24
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/MethodRewriter.java
@@ -0,0 +1,100 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.reference.BaseMethodReference;
+import org.jf.dexlib2.iface.Annotation;
+import org.jf.dexlib2.iface.Method;
+import org.jf.dexlib2.iface.MethodImplementation;
+import org.jf.dexlib2.iface.MethodParameter;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+import java.util.List;
+import java.util.Set;
+
+public class MethodRewriter implements Rewriter<Method> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public MethodRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public Method rewrite(@Nonnull Method value) {
+ return new RewrittenMethod(value);
+ }
+
+ protected class RewrittenMethod extends BaseMethodReference implements Method {
+ @Nonnull protected Method method;
+
+ public RewrittenMethod(@Nonnull Method method) {
+ this.method = method;
+ }
+
+ @Override @Nonnull public String getDefiningClass() {
+ return rewriters.getMethodReferenceRewriter().rewrite(method).getDefiningClass();
+ }
+
+ @Override @Nonnull public String getName() {
+ return rewriters.getMethodReferenceRewriter().rewrite(method).getName();
+ }
+
+ @Override @Nonnull public List<? extends CharSequence> getParameterTypes() {
+ return rewriters.getMethodReferenceRewriter().rewrite(method).getParameterTypes();
+ }
+
+ @Override @Nonnull public List<? extends MethodParameter> getParameters() {
+ // We can't use the MethodReferenceRewriter to rewrite the parameters, because we would lose
+ // parameter names and annotations. If a method rewrite involves changing parameters, it needs
+ // to be handled here as well as in the MethodReferenceRewriter
+
+ return RewriterUtils.rewriteList(rewriters.getMethodParameterRewriter(), method.getParameters());
+ }
+
+ @Override @Nonnull public String getReturnType() {
+ return rewriters.getMethodReferenceRewriter().rewrite(method).getReturnType();
+ }
+
+ @Override public int getAccessFlags() {
+ return method.getAccessFlags();
+ }
+
+ @Override @Nonnull public Set<? extends Annotation> getAnnotations() {
+ return RewriterUtils.rewriteSet(rewriters.getAnnotationRewriter(), method.getAnnotations());
+ }
+
+ @Override @Nullable public MethodImplementation getImplementation() {
+ return RewriterUtils.rewriteNullable(rewriters.getMethodImplementationRewriter(),
+ method.getImplementation());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriter.java
new file mode 100644
index 00000000..6fc53346
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriter.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import javax.annotation.Nonnull;
+
+public interface Rewriter<T> {
+ @Nonnull
+ T rewrite(@Nonnull T value);
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterModule.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterModule.java
new file mode 100644
index 00000000..2913a676
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterModule.java
@@ -0,0 +1,103 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.iface.*;
+import org.jf.dexlib2.iface.debug.DebugItem;
+import org.jf.dexlib2.iface.instruction.Instruction;
+import org.jf.dexlib2.iface.reference.FieldReference;
+import org.jf.dexlib2.iface.reference.MethodReference;
+import org.jf.dexlib2.iface.value.EncodedValue;
+
+import javax.annotation.Nonnull;
+
+public class RewriterModule {
+ @Nonnull public Rewriter<ClassDef> getClassDefRewriter(@Nonnull Rewriters rewriters) {
+ return new ClassDefRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<Field> getFieldRewriter(@Nonnull Rewriters rewriters) {
+ return new FieldRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<Method> getMethodRewriter(@Nonnull Rewriters rewriters) {
+ return new MethodRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<MethodParameter> getMethodParameterRewriter(@Nonnull Rewriters rewriters) {
+ return new MethodParameterRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<MethodImplementation> getMethodImplementationRewriter(@Nonnull Rewriters rewriters) {
+ return new MethodImplementationRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<Instruction> getInstructionRewriter(@Nonnull Rewriters rewriters) {
+ return new InstructionRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<TryBlock<? extends ExceptionHandler>> getTryBlockRewriter(@Nonnull Rewriters rewriters) {
+ return new TryBlockRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<ExceptionHandler> getExceptionHandlerRewriter(@Nonnull Rewriters rewriters) {
+ return new ExceptionHandlerRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<DebugItem> getDebugItemRewriter(@Nonnull Rewriters rewriters) {
+ return new DebugItemRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<String> getTypeRewriter(@Nonnull Rewriters rewriters) {
+ return new TypeRewriter();
+ }
+
+ @Nonnull public Rewriter<FieldReference> getFieldReferenceRewriter(@Nonnull Rewriters rewriters) {
+ return new FieldReferenceRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<MethodReference> getMethodReferenceRewriter(@Nonnull Rewriters rewriters) {
+ return new MethodReferenceRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<Annotation> getAnnotationRewriter(@Nonnull Rewriters rewriters) {
+ return new AnnotationRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<AnnotationElement> getAnnotationElementRewriter(@Nonnull Rewriters rewriters) {
+ return new AnnotationElementRewriter(rewriters);
+ }
+
+ @Nonnull public Rewriter<EncodedValue> getEncodedValueRewriter(@Nonnull Rewriters rewriters) {
+ return new EncodedValueRewriter(rewriters);
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterUtils.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterUtils.java
new file mode 100644
index 00000000..d08467ae
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/RewriterUtils.java
@@ -0,0 +1,118 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.reference.BaseTypeReference;
+import org.jf.dexlib2.iface.reference.TypeReference;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+import java.util.*;
+
+public class RewriterUtils {
+ @Nullable
+ public static <T> T rewriteNullable(@Nonnull Rewriter<T> rewriter, @Nullable T value) {
+ return value==null?null:rewriter.rewrite(value);
+ }
+
+ public static <T> Set<T> rewriteSet(@Nonnull final Rewriter<T> rewriter,
+ @Nonnull final Set<? extends T> set) {
+ return new AbstractSet<T>() {
+ @Nonnull @Override public Iterator<T> iterator() {
+ final Iterator<? extends T> iterator = set.iterator();
+ return new Iterator<T>() {
+ @Override public boolean hasNext() {
+ return iterator.hasNext();
+ }
+
+ @Override public T next() {
+ return rewriteNullable(rewriter, iterator.next());
+ }
+
+ @Override public void remove() {
+ iterator.remove();
+ }
+ };
+ }
+
+ @Override public int size() {
+ return set.size();
+ }
+ };
+ }
+
+ public static <T> List<T> rewriteList(@Nonnull final Rewriter<T> rewriter,
+ @Nonnull final List<? extends T> list) {
+ return new AbstractList<T>() {
+ @Override public T get(int i) {
+ return rewriteNullable(rewriter, list.get(i));
+ }
+
+ @Override public int size() {
+ return list.size();
+ }
+ };
+ }
+
+ public static <T> Iterable<T> rewriteIterable(@Nonnull final Rewriter<T> rewriter,
+ @Nonnull final Iterable<? extends T> iterable) {
+ return new Iterable<T>() {
+ @Override public Iterator<T> iterator() {
+ final Iterator<? extends T> iterator = iterable.iterator();
+ return new Iterator<T>() {
+ @Override public boolean hasNext() {
+ return iterator.hasNext();
+ }
+
+ @Override public T next() {
+ return rewriteNullable(rewriter, iterator.next());
+ }
+
+ @Override public void remove() {
+ iterator.remove();
+ }
+ };
+ }
+ };
+ }
+
+ public static TypeReference rewriteTypeReference(@Nonnull final Rewriter<String> typeRewriter,
+ @Nonnull final TypeReference typeReference) {
+ return new BaseTypeReference() {
+ @Nonnull @Override public String getType() {
+ return typeRewriter.rewrite(typeReference.getType());
+ }
+ };
+ }
+}
+
+
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriters.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriters.java
new file mode 100644
index 00000000..97fd8792
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/Rewriters.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.iface.*;
+import org.jf.dexlib2.iface.debug.DebugItem;
+import org.jf.dexlib2.iface.instruction.Instruction;
+import org.jf.dexlib2.iface.reference.FieldReference;
+import org.jf.dexlib2.iface.reference.MethodReference;
+import org.jf.dexlib2.iface.value.EncodedValue;
+
+import javax.annotation.Nonnull;
+
+public interface Rewriters {
+ @Nonnull Rewriter<ClassDef> getClassDefRewriter();
+ @Nonnull Rewriter<Field> getFieldRewriter();
+
+ @Nonnull Rewriter<Method> getMethodRewriter();
+ @Nonnull Rewriter<MethodParameter> getMethodParameterRewriter();
+ @Nonnull Rewriter<MethodImplementation> getMethodImplementationRewriter();
+ @Nonnull Rewriter<Instruction> getInstructionRewriter();
+ @Nonnull Rewriter<TryBlock<? extends ExceptionHandler>> getTryBlockRewriter();
+ @Nonnull Rewriter<ExceptionHandler> getExceptionHandlerRewriter();
+ @Nonnull Rewriter<DebugItem> getDebugItemRewriter();
+
+ @Nonnull Rewriter<String> getTypeRewriter();
+ @Nonnull Rewriter<FieldReference> getFieldReferenceRewriter();
+ @Nonnull Rewriter<MethodReference> getMethodReferenceRewriter();
+
+ @Nonnull Rewriter<Annotation> getAnnotationRewriter();
+ @Nonnull Rewriter<AnnotationElement> getAnnotationElementRewriter();
+
+ @Nonnull Rewriter<EncodedValue> getEncodedValueRewriter();
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/TryBlockRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/TryBlockRewriter.java
new file mode 100644
index 00000000..43fed10a
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/TryBlockRewriter.java
@@ -0,0 +1,72 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import org.jf.dexlib2.base.BaseTryBlock;
+import org.jf.dexlib2.iface.ExceptionHandler;
+import org.jf.dexlib2.iface.TryBlock;
+
+import javax.annotation.Nonnull;
+import java.util.List;
+
+public class TryBlockRewriter implements Rewriter<TryBlock<? extends ExceptionHandler>> {
+ @Nonnull protected final Rewriters rewriters;
+
+ public TryBlockRewriter(@Nonnull Rewriters rewriters) {
+ this.rewriters = rewriters;
+ }
+
+ @Nonnull @Override public TryBlock<? extends ExceptionHandler> rewrite(
+ @Nonnull TryBlock<? extends ExceptionHandler> tryBlock) {
+ return new RewrittenTryBlock(tryBlock);
+ }
+
+ protected class RewrittenTryBlock extends BaseTryBlock<ExceptionHandler> {
+ @Nonnull protected TryBlock<? extends ExceptionHandler> tryBlock;
+
+ public RewrittenTryBlock(@Nonnull TryBlock<? extends ExceptionHandler> tryBlock) {
+ this.tryBlock = tryBlock;
+ }
+
+ @Override public int getStartCodeAddress() {
+ return tryBlock.getStartCodeAddress();
+ }
+
+ @Override public int getCodeUnitCount() {
+ return tryBlock.getCodeUnitCount();
+ }
+
+ @Override @Nonnull public List<? extends ExceptionHandler> getExceptionHandlers() {
+ return RewriterUtils.rewriteList(rewriters.getExceptionHandlerRewriter(), tryBlock.getExceptionHandlers());
+ }
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/rewriter/TypeRewriter.java b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/TypeRewriter.java
new file mode 100644
index 00000000..9731154d
--- /dev/null
+++ b/dexlib2/src/main/java/org/jf/dexlib2/rewriter/TypeRewriter.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2014, 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.rewriter;
+
+import javax.annotation.Nonnull;
+
+public class TypeRewriter implements Rewriter<String> {
+ @Nonnull @Override public String rewrite(@Nonnull String value) {
+ return value;
+ }
+}
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/util/AnnotatedBytes.java b/dexlib2/src/main/java/org/jf/dexlib2/util/AnnotatedBytes.java
index c48bac2d..5b4e3ee8 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/util/AnnotatedBytes.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/util/AnnotatedBytes.java
@@ -268,8 +268,7 @@ public class AnnotatedBytes {
}
/**
- * Gets the width of the right side containing the annotations
- * @return
+ * @return The width of the right side containing the annotations
*/
public int getAnnotationWidth() {
int leftWidth = 8 + (hexCols * 2) + (hexCols / 2);
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/util/ReferenceUtil.java b/dexlib2/src/main/java/org/jf/dexlib2/util/ReferenceUtil.java
index a81facf3..81b042ec 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/util/ReferenceUtil.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/util/ReferenceUtil.java
@@ -34,27 +34,22 @@ package org.jf.dexlib2.util;
import org.jf.dexlib2.iface.reference.*;
import org.jf.util.StringUtils;
+import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.io.IOException;
import java.io.Writer;
public final class ReferenceUtil {
- public static String getShortMethodDescriptor(MethodReference methodReference) {
- StringBuilder sb = new StringBuilder();
- sb.append(methodReference.getName());
- sb.append('(');
- for (CharSequence paramType: methodReference.getParameterTypes()) {
- sb.append(paramType);
- }
- sb.append(')');
- sb.append(methodReference.getReturnType());
- return sb.toString();
+ public static String getMethodDescriptor(MethodReference methodReference) {
+ return getMethodDescriptor(methodReference, false);
}
- public static String getMethodDescriptor(MethodReference methodReference) {
+ public static String getMethodDescriptor(MethodReference methodReference, boolean useImplicitReference) {
StringBuilder sb = new StringBuilder();
- sb.append(methodReference.getDefiningClass());
- sb.append("->");
+ if (!useImplicitReference) {
+ sb.append(methodReference.getDefiningClass());
+ sb.append("->");
+ }
sb.append(methodReference.getName());
sb.append('(');
for (CharSequence paramType: methodReference.getParameterTypes()) {
@@ -66,8 +61,15 @@ public final class ReferenceUtil {
}
public static void writeMethodDescriptor(Writer writer, MethodReference methodReference) throws IOException {
- writer.write(methodReference.getDefiningClass());
- writer.write("->");
+ writeMethodDescriptor(writer, methodReference, false);
+ }
+
+ public static void writeMethodDescriptor(Writer writer, MethodReference methodReference,
+ boolean useImplicitReference) throws IOException {
+ if (!useImplicitReference) {
+ writer.write(methodReference.getDefiningClass());
+ writer.write("->");
+ }
writer.write(methodReference.getName());
writer.write('(');
for (CharSequence paramType: methodReference.getParameterTypes()) {
@@ -78,9 +80,15 @@ public final class ReferenceUtil {
}
public static String getFieldDescriptor(FieldReference fieldReference) {
+ return getFieldDescriptor(fieldReference, false);
+ }
+
+ public static String getFieldDescriptor(FieldReference fieldReference, boolean useImplicitReference) {
StringBuilder sb = new StringBuilder();
- sb.append(fieldReference.getDefiningClass());
- sb.append("->");
+ if (!useImplicitReference) {
+ sb.append(fieldReference.getDefiningClass());
+ sb.append("->");
+ }
sb.append(fieldReference.getName());
sb.append(':');
sb.append(fieldReference.getType());
@@ -96,15 +104,27 @@ public final class ReferenceUtil {
}
public static void writeFieldDescriptor(Writer writer, FieldReference fieldReference) throws IOException {
- writer.write(fieldReference.getDefiningClass());
- writer.write("->");
+ writeFieldDescriptor(writer, fieldReference, false);
+ }
+
+ public static void writeFieldDescriptor(Writer writer, FieldReference fieldReference,
+ boolean implicitReference) throws IOException {
+ if (!implicitReference) {
+ writer.write(fieldReference.getDefiningClass());
+ writer.write("->");
+ }
writer.write(fieldReference.getName());
writer.write(':');
writer.write(fieldReference.getType());
}
@Nullable
- public static String getReferenceString(Reference reference) {
+ public static String getReferenceString(@Nonnull Reference reference) {
+ return getReferenceString(reference, null);
+ }
+
+ @Nullable
+ public static String getReferenceString(@Nonnull Reference reference, @Nullable String containingClass) {
if (reference instanceof StringReference) {
return String.format("\"%s\"", StringUtils.escapeString(((StringReference)reference).getString()));
}
@@ -112,10 +132,14 @@ public final class ReferenceUtil {
return ((TypeReference)reference).getType();
}
if (reference instanceof FieldReference) {
- return getFieldDescriptor((FieldReference)reference);
+ FieldReference fieldReference = (FieldReference)reference;
+ boolean useImplicitReference = fieldReference.getDefiningClass().equals(containingClass);
+ return getFieldDescriptor((FieldReference)reference, useImplicitReference);
}
if (reference instanceof MethodReference) {
- return getMethodDescriptor((MethodReference)reference);
+ MethodReference methodReference = (MethodReference)reference;
+ boolean useImplicitReference = methodReference.getDefiningClass().equals(containingClass);
+ return getMethodDescriptor((MethodReference)reference, useImplicitReference);
}
return null;
}
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 fef28015..87a2ae6b 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/DexWriter.java
@@ -31,11 +31,15 @@
package org.jf.dexlib2.writer;
-import com.google.common.collect.*;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import com.google.common.collect.Ordering;
import org.jf.dexlib2.AccessFlags;
import org.jf.dexlib2.Opcode;
import org.jf.dexlib2.ReferenceType;
import org.jf.dexlib2.base.BaseAnnotation;
+import org.jf.dexlib2.base.BaseAnnotationElement;
import org.jf.dexlib2.builder.MutableMethodImplementation;
import org.jf.dexlib2.builder.instruction.BuilderInstruction31c;
import org.jf.dexlib2.dexbacked.raw.*;
@@ -48,7 +52,10 @@ import org.jf.dexlib2.iface.instruction.Instruction;
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction;
import org.jf.dexlib2.iface.instruction.ReferenceInstruction;
import org.jf.dexlib2.iface.instruction.formats.*;
-import org.jf.dexlib2.iface.reference.*;
+import org.jf.dexlib2.iface.reference.FieldReference;
+import org.jf.dexlib2.iface.reference.MethodReference;
+import org.jf.dexlib2.iface.reference.StringReference;
+import org.jf.dexlib2.iface.reference.TypeReference;
import org.jf.dexlib2.util.InstructionUtil;
import org.jf.dexlib2.util.MethodUtil;
import org.jf.dexlib2.writer.io.DeferredOutputStream;
@@ -81,7 +88,8 @@ public abstract class DexWriter<
AnnotationKey extends Annotation, AnnotationSetKey,
TypeListKey,
FieldKey, MethodKey,
- EncodedValue, AnnotationElement> {
+ EncodedValue,
+ AnnotationElement extends org.jf.dexlib2.iface.AnnotationElement> {
public static final int NO_INDEX = -1;
public static final int NO_OFFSET = 0;
@@ -552,7 +560,9 @@ public abstract class DexWriter<
writer.writeUbyte(annotationSection.getVisibility(key));
writer.writeUleb128(typeSection.getItemIndex(annotationSection.getType(key)));
- Collection<? extends AnnotationElement> elements = annotationSection.getElements(key);
+ Collection<? extends AnnotationElement> elements = Ordering.from(BaseAnnotationElement.BY_NAME)
+ .immutableSortedCopy(annotationSection.getElements(key));
+
writer.writeUleb128(elements.size());
for (AnnotationElement element: elements) {
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassDef.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassDef.java
index 46e75ce0..f19a2e7f 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassDef.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassDef.java
@@ -80,10 +80,14 @@ public class BuilderClassDef extends BaseTypeReference implements ClassDef {
this.interfaces = interfaces;
this.sourceFile = sourceFile;
this.annotations = annotations;
- this.staticFields = ImmutableSortedSet.copyOf(Iterables.filter(fields, FieldUtil.FIELD_IS_STATIC));
- this.instanceFields = ImmutableSortedSet.copyOf(Iterables.filter(fields, FieldUtil.FIELD_IS_INSTANCE));
- this.directMethods = ImmutableSortedSet.copyOf(Iterables.filter(methods, MethodUtil.METHOD_IS_DIRECT));
- this.virtualMethods = ImmutableSortedSet.copyOf(Iterables.filter(methods, MethodUtil.METHOD_IS_VIRTUAL));
+ this.staticFields = ImmutableSortedSet.copyOf(
+ (Iterable<? extends BuilderField>)Iterables.filter(fields, FieldUtil.FIELD_IS_STATIC));
+ this.instanceFields = ImmutableSortedSet.copyOf(
+ (Iterable<? extends BuilderField>)Iterables.filter(fields, FieldUtil.FIELD_IS_INSTANCE));
+ this.directMethods = ImmutableSortedSet.copyOf(
+ (Iterable<? extends BuilderMethod>)Iterables.filter(methods, MethodUtil.METHOD_IS_DIRECT));
+ this.virtualMethods = ImmutableSortedSet.copyOf(
+ (Iterable<? extends BuilderMethod>)Iterables.filter(methods, MethodUtil.METHOD_IS_VIRTUAL));
}
@Nonnull @Override public String getType() { return type.getType(); }
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java
index 79dd6426..8ab53db8 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/builder/BuilderClassPool.java
@@ -417,6 +417,7 @@ public class BuilderClassPool implements ClassSection<BuilderStringReference, Bu
SetSourceFile setSourceFile = (SetSourceFile)debugItem;
writer.writeSetSourceFile(setSourceFile.getCodeAddress(),
checkStringReference(setSourceFile.getSourceFileReference()));
+ break;
}
default:
throw new ExceptionWithContext("Unexpected debug item type: %d", debugItem.getDebugItemType());
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java
index 2bafece1..96eca2ae 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/ClassPool.java
@@ -116,7 +116,7 @@ public class ClassPool implements ClassSection<CharSequence, CharSequence,
HashSet<String> methods = new HashSet<String>();
for (PoolMethod method: poolClassDef.getMethods()) {
- String methodDescriptor = ReferenceUtil.getShortMethodDescriptor(method);
+ String methodDescriptor = ReferenceUtil.getMethodDescriptor(method, true);
if (!methods.add(methodDescriptor)) {
throw new ExceptionWithContext("Multiple definitions for method %s->%s",
poolClassDef.getType(), methodDescriptor);
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java
index 1febead5..d7f63922 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/pool/DexPool.java
@@ -39,6 +39,7 @@ import org.jf.dexlib2.iface.Field;
import org.jf.dexlib2.iface.reference.*;
import org.jf.dexlib2.iface.value.*;
import org.jf.dexlib2.writer.DexWriter;
+import org.jf.dexlib2.writer.io.DexDataStore;
import org.jf.dexlib2.writer.io.FileDataStore;
import org.jf.dexlib2.writer.pool.ProtoPool.Key;
import org.jf.util.ExceptionWithContext;
@@ -82,6 +83,14 @@ public class DexPool extends DexWriter<CharSequence, StringReference, CharSequen
classPool, typeListPool, annotationPool, annotationSetPool);
}
+ public static void writeTo(@Nonnull DexDataStore dataStore, @Nonnull org.jf.dexlib2.iface.DexFile input) throws IOException {
+ DexPool dexPool = makeDexPool();
+ for (ClassDef classDef: input.getClasses()) {
+ ((ClassPool)dexPool.classSection).intern(classDef);
+ }
+ dexPool.writeTo(dataStore);
+ }
+
public static void writeTo(@Nonnull String path, @Nonnull org.jf.dexlib2.iface.DexFile input) throws IOException {
DexPool dexPool = makeDexPool();
for (ClassDef classDef: input.getClasses()) {
diff --git a/dexlib2/src/main/java/org/jf/dexlib2/writer/util/TryListBuilder.java b/dexlib2/src/main/java/org/jf/dexlib2/writer/util/TryListBuilder.java
index eb70371e..9a4c8114 100644
--- a/dexlib2/src/main/java/org/jf/dexlib2/writer/util/TryListBuilder.java
+++ b/dexlib2/src/main/java/org/jf/dexlib2/writer/util/TryListBuilder.java
@@ -166,7 +166,6 @@ public class TryListBuilder<EH extends ExceptionHandler>
String existingType = existingHandler.getExceptionType();
String newType = handler.getExceptionType();
- // Don't add it if we already have a handler of the same type
if (existingType == null) {
if (newType == null) {
if (existingHandler.getHandlerCodeAddress() != handler.getHandlerCodeAddress()) {
@@ -176,10 +175,9 @@ public class TryListBuilder<EH extends ExceptionHandler>
return;
}
} else if (existingType.equals(newType)) {
- if (existingHandler.getHandlerCodeAddress() != handler.getHandlerCodeAddress()) {
- throw new InvalidTryException(
- "Multiple overlapping catches for %s with different handlers", existingType);
- }
+ // dalvik doesn't reject cases when there are multiple catches with the same exception
+ // but different handlers. In practice, the first handler "wins". Since the later
+ // handler will never be used, we don't add it.
return;
}
}
diff --git a/dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java b/dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java
new file mode 100644
index 00000000..b2cc52db
--- /dev/null
+++ b/dexlib2/src/test/java/org/jf/dexlib2/writer/DexWriterTest.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright 2014, 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.writer;
+
+import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
+import junit.framework.Assert;
+import org.jf.dexlib2.AnnotationVisibility;
+import org.jf.dexlib2.Opcodes;
+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.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.ImmutableNullEncodedValue;
+import org.jf.dexlib2.writer.io.MemoryDataStore;
+import org.jf.dexlib2.writer.pool.DexPool;
+import org.junit.Test;
+
+import java.io.IOException;
+import java.util.List;
+
+public class DexWriterTest {
+ @Test
+ public void testAnnotationElementOrder() {
+ // Elements are out of order wrt to the element name
+ ImmutableSet<ImmutableAnnotationElement> elements =
+ ImmutableSet.of(new ImmutableAnnotationElement("zabaglione", ImmutableNullEncodedValue.INSTANCE),
+ new ImmutableAnnotationElement("blah", ImmutableNullEncodedValue.INSTANCE));
+
+ 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), dataStore.getData());
+ ClassDef dbClassDef = Iterables.getFirst(dexFile.getClasses(), null);
+ Assert.assertNotNull(dbClassDef);
+ Annotation dbAnnotation = Iterables.getFirst(dbClassDef.getAnnotations(), null);
+ Assert.assertNotNull(dbAnnotation);
+ List<AnnotationElement> dbElements = Lists.newArrayList(dbAnnotation.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/util/TryListBuilderTest.java b/dexlib2/src/test/java/org/jf/dexlib2/writer/util/TryListBuilderTest.java
index 360b5840..b02a512c 100644
--- a/dexlib2/src/test/java/org/jf/dexlib2/writer/util/TryListBuilderTest.java
+++ b/dexlib2/src/test/java/org/jf/dexlib2/writer/util/TryListBuilderTest.java
@@ -449,12 +449,8 @@ public class TryListBuilderTest {
TryListBuilder tlb = new TryListBuilder();
tlb.addHandler(5, 10, new ImmutableExceptionHandler("LException1;", 5));
- try {
- tlb.addHandler(0, 15, new ImmutableExceptionHandler("LException1;", 6));
- } catch (TryListBuilder.InvalidTryException ex) {
- return;
- }
- Assert.fail();
+ tlb.addHandler(0, 15, new ImmutableExceptionHandler("LException1;", 6));
+ // no exception should be thrown...
}
@Test
diff --git a/examples/AnnotationTypes/Main.smali b/examples/AnnotationTypes/Main.smali
index 293edc4d..3cfcb1d9 100644
--- a/examples/AnnotationTypes/Main.smali
+++ b/examples/AnnotationTypes/Main.smali
@@ -104,10 +104,10 @@
.method public static testParameterAnnotation(Ljava/lang/String;)V
.registers 6
- .parameter
+ .param p0 # Ljava/lang/String;
.annotation runtime LParameterAnnotation;
.end annotation
- .end parameter
+ .end param
sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
diff --git a/examples/AnnotationValues/10.smali b/examples/AnnotationValues/10.smali
index 4460a019..2a382ec7 100644
--- a/examples/AnnotationValues/10.smali
+++ b/examples/AnnotationValues/10.smali
@@ -2,5 +2,6 @@
.super Ljava/lang/Object;
.method public static 11()V
+ .registers 0
return-void
.end method \ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index 7b359d71..58385981 100644
--- a/gradle/wrapper/gradle-wrapper.jar
+++ b/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 246d2425..3f70b064 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Thu Oct 10 20:27:27 PDT 2013
+#Sun Feb 02 12:47:14 PST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.8-bin.zip
+distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip
diff --git a/gradlew b/gradlew
index 3851082a..91a7e269 100755
--- a/gradlew
+++ b/gradlew
@@ -61,9 +61,9 @@ while [ -h "$PRG" ] ; do
fi
done
SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/"
+cd "`dirname \"$PRG\"`/" >&-
APP_HOME="`pwd -P`"
-cd "$SAVED"
+cd "$SAVED" >&-
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
diff --git a/smali/build.gradle b/smali/build.gradle
index 9c16db77..0f43d756 100644
--- a/smali/build.gradle
+++ b/smali/build.gradle
@@ -68,6 +68,7 @@ dependencies {
compile project(':util')
compile project(':dexlib2')
compile depends.antlr_runtime
+ compile depends.stringtemplate
compile depends.commons_cli
testCompile depends.junit
@@ -170,15 +171,6 @@ uploadArchives {
}
}
-task sourcesJar(type: Jar) {
- classifier = 'sources'
- from sourceSets.main.allJava
-}
-
-artifacts {
- archives sourcesJar
-}
-
task proguard(type: JavaExec, dependsOn: fatJar) {
def outFile = fatJar.destinationDir.getPath() + '/' + fatJar.baseName + '-' + fatJar.version + '-small' + '.' + fatJar.extension
inputs.file fatJar.archivePath
diff --git a/smali/runantlr.sh b/smali/runantlr.sh
new file mode 100755
index 00000000..86cfdc1e
--- /dev/null
+++ b/smali/runantlr.sh
@@ -0,0 +1,111 @@
+#!/bin/bash
+#
+# This script runs antlr3 generating java code based on .g (ANLTR3) files.
+# antlr3 tool itself can be downloaded by running the gradle build.
+#
+# The script can be run from anywhere (it does not depend on current working directory)
+# Set $ANTLR to overwrite antlr location, if desired
+#
+# After making any changes to the lexer, the update source file(s) generated by
+# this script should be checked in to the repository
+
+# Update when switching to a different version of antlr
+EXPECTED_ANTLR_VERSION_STR="ANTLR Parser Generator Version 3.5"
+
+# Get the location of this script used to find locations of other things in the tree.
+SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
+
+# Point to the directory which contains the ANTLR jars.
+if [[ -z "$ANTLR" ]]
+then
+ # Best effort to find it inside of the gradle cache
+ ANTLR="$(find $HOME/.gradle/caches/artifacts-* -name 'org.antlr' | head -n 1)"
+fi
+
+# Class that contains the static main function.
+ANTLR_MAIN="org.antlr.Tool"
+
+if ! [[ -d "$ANTLR" ]]; then
+ echo >&2 "ERROR: Could not find ANTLR jars directory"
+ exit 1
+fi
+
+# Build up the classpath by finding all the JARs
+ANTLR_JARS=""
+
+for jar_file_name in $(find "$ANTLR" -name '*.jar'); do
+ if ! [[ -z "$ANTLR_JARS" ]]; then
+ ANTLR_JARS+=":"
+ fi
+ ANTLR_JARS+="$jar_file_name"
+done
+
+if [[ -z "$ANTLR_JARS" ]]; then
+ echo >&2 "Could not find any JARs in the ANTLR directory"
+ echo >&2 "Is '"$ANTLR"' the correct path to the JARs?"
+ exit 1
+fi
+
+function run_antlr() {
+ CLASSPATH="$ANTLR_JARS" java 2>&1 "$ANTLR_MAIN" "$@"
+}
+
+ANTLR_VERSION="$(run_antlr -version)"
+
+if [[ -z "$ANTLR_VERSION" ]]
+then
+ echo >&2 "ERROR: Failed to execute antlr at \"$ANTLR\""
+ exit 1
+fi
+
+if [[ "$EXPECTED_ANTLR_VERSION_STR" != "$ANTLR_VERSION" ]]
+then
+ echo >&2 "ERROR: Wrong version of jflex: \"$ANTLR_VERSION\". Expected: \"$EXPECTED_ANTLR_VERSION_STR\""
+ exit 1
+fi
+
+
+function generate_file {
+ local JAVA_FILE="$1"
+ local G_FILE="$2"
+
+ if ! [[ -f "$JAVA_FILE" ]]; then
+ echo >&2 "ERROR: File \"$JAVA_FILE\" not found"
+ exit 1
+ fi
+
+ echo "Re-generating \"$JAVA_FILE\"..."
+
+ [[ -f "$JAVA_FILE" ]] && rm -f "$JAVA_FILE"
+
+ local JAVA_DIR="$(dirname "$JAVA_FILE")"
+ # Generate the java file from the antlr file
+ run_antlr -verbose -fo "$JAVA_DIR" "$G_FILE"
+
+ # delete trailing space from end of each line to make gerrit happy
+ sed 's/[ ]*$//' "$JAVA_FILE" > "$JAVA_FILE.tmp"
+ [[ -f "$JAVA_FILE" ]] && rm "$JAVA_FILE"
+ mv "$JAVA_FILE.tmp" "$JAVA_FILE"
+
+ echo "DONE"
+ echo ""
+ echo ""
+}
+
+function cleanup_tokens {
+ local JAVA_FILE="$1"
+
+ # delete the tokens file, they are not necessary to actually build from Android.mk
+ local TOKEN_FILE="${JAVA_FILE%%\.java}.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"
+
+# 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"
+cleanup_tokens "$SCRIPT_DIR/src/main/java/org/jf/smali/smaliTreeWalker.java"
+
+# Uncomment to run interactively
+#run_antlr "$@"
diff --git a/smali/src/main/antlr3/smaliParser.g b/smali/src/main/antlr3/smaliParser.g
index 563cda36..d057b4a4 100644
--- a/smali/src/main/antlr3/smaliParser.g
+++ b/smali/src/main/antlr3/smaliParser.g
@@ -41,17 +41,6 @@ tokens {
ARRAY_DATA_DIRECTIVE;
ARRAY_DESCRIPTOR;
ARROW;
- BASE_ARRAY_DESCRIPTOR;
- BASE_CHAR_LITERAL;
- BASE_CLASS_DESCRIPTOR;
- BASE_FLOAT;
- BASE_FLOAT_OR_ID;
- BASE_INTEGER;
- BASE_PRIMITIVE_TYPE;
- BASE_SIMPLE_NAME;
- BASE_STRING_LITERAL;
- BASE_TYPE;
- BINARY_EXPONENT;
BOOL_LITERAL;
BYTE_LITERAL;
CATCH_DIRECTIVE;
@@ -63,7 +52,6 @@ tokens {
CLOSE_PAREN;
COLON;
COMMA;
- DECIMAL_EXPONENT;
DOTDOT;
DOUBLE_LITERAL;
DOUBLE_LITERAL_OR_ID;
@@ -79,14 +67,10 @@ tokens {
ENUM_DIRECTIVE;
EPILOGUE_DIRECTIVE;
EQUAL;
- ESCAPE_SEQUENCE;
FIELD_DIRECTIVE;
FIELD_OFFSET;
FLOAT_LITERAL;
FLOAT_LITERAL_OR_ID;
- HEX_DIGIT;
- HEX_DIGITS;
- HEX_PREFIX;
IMPLEMENTS_DIRECTIVE;
INLINE_INDEX;
INSTRUCTION_FORMAT10t;
@@ -133,7 +117,6 @@ tokens {
INSTRUCTION_FORMAT3rmi_METHOD;
INSTRUCTION_FORMAT3rms_METHOD;
INSTRUCTION_FORMAT51l;
- INVALID_TOKEN;
LINE_COMMENT;
LINE_DIRECTIVE;
LOCAL_DIRECTIVE;
@@ -146,8 +129,10 @@ tokens {
OPEN_BRACE;
OPEN_PAREN;
PACKED_SWITCH_DIRECTIVE;
- PARAM_LIST;
- PARAM_LIST_OR_ID;
+ PARAM_LIST_END;
+ PARAM_LIST_START;
+ PARAM_LIST_OR_ID_END;
+ PARAM_LIST_OR_ID_START;
PARAMETER_DIRECTIVE;
POSITIVE_INTEGER_LITERAL;
PRIMITIVE_TYPE;
@@ -167,9 +152,9 @@ tokens {
VTABLE_INDEX;
WHITE_SPACE;
- //A couple of generated types that we remap other tokens to, to simplify the generated AST
- LABEL;
+ // misc non-lexer tokens
INTEGER_LITERAL;
+ INVALID_TOKEN;
//I_* tokens are imaginary tokens used as parent AST nodes
I_CLASS_DEF;
@@ -547,6 +532,9 @@ registers_directive
$statements_and_directives::hasRegistersDirective=true;
};
+param_list_or_id
+ : PARAM_LIST_OR_ID_START PRIMITIVE_TYPE+ PARAM_LIST_OR_ID_END;
+
/*identifiers are much more general than most languages. Any of the below can either be
the indicated type OR an identifier, depending on the context*/
simple_name
@@ -560,7 +548,7 @@ simple_name
| BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL]
| NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL]
| REGISTER -> SIMPLE_NAME[$REGISTER]
- | PARAM_LIST_OR_ID -> SIMPLE_NAME[$PARAM_LIST_OR_ID]
+ | param_list_or_id -> { adaptor.create(SIMPLE_NAME, $param_list_or_id.text) }
| PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE]
| VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE]
| ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY]
@@ -599,8 +587,8 @@ method_prototype
-> ^(I_METHOD_PROTOTYPE[$start, "I_METHOD_PROTOTYPE"] ^(I_METHOD_RETURN_TYPE type_descriptor) param_list?);
param_list
- : PARAM_LIST -> { parseParamList((CommonToken)$PARAM_LIST) }
- | PARAM_LIST_OR_ID -> { parseParamList((CommonToken)$PARAM_LIST_OR_ID) }
+ : 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*;
type_descriptor
@@ -698,22 +686,21 @@ enum_literal
type_field_method_literal
: 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)
+ | ( (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)
)
- | -> reference_type_descriptor
)
| PRIMITIVE_TYPE
| VOID_TYPE;
-fully_qualified_method
- : reference_type_descriptor ARROW member_name method_prototype
- -> reference_type_descriptor member_name method_prototype;
+method_reference
+ : (reference_type_descriptor ARROW)? member_name method_prototype
+ -> reference_type_descriptor? member_name method_prototype;
-fully_qualified_field
- : reference_type_descriptor ARROW member_name COLON nonvoid_type_descriptor
- -> reference_type_descriptor member_name nonvoid_type_descriptor;
+field_reference
+ : (reference_type_descriptor ARROW)? member_name COLON nonvoid_type_descriptor
+ -> reference_type_descriptor? member_name nonvoid_type_descriptor;
label
: COLON simple_name -> ^(I_LABEL[$COLON, "I_LABEL"] simple_name);
@@ -729,7 +716,7 @@ register_range
: (startreg=REGISTER (DOTDOT endreg=REGISTER)?)? -> ^(I_REGISTER_RANGE[$start, "I_REGISTER_RANGE"] $startreg? $endreg?);
verification_error_reference
- : CLASS_DESCRIPTOR | fully_qualified_field | fully_qualified_method;
+ : CLASS_DESCRIPTOR | field_reference | method_reference;
catch_directive
: CATCH_DIRECTIVE nonvoid_type_descriptor OPEN_BRACE from=label_ref DOTDOT to=label_ref CLOSE_BRACE using=label_ref
@@ -902,18 +889,18 @@ insn_format20t
insn_format21c_field
: //e.g. sget-object v0, java/lang/System/out LJava/io/PrintStream;
- INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA fully_qualified_field
- -> ^(I_STATEMENT_FORMAT21c_FIELD[$start, "I_STATEMENT_FORMAT21c_FIELD"] INSTRUCTION_FORMAT21c_FIELD REGISTER fully_qualified_field);
+ INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA field_reference
+ -> ^(I_STATEMENT_FORMAT21c_FIELD[$start, "I_STATEMENT_FORMAT21c_FIELD"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference);
insn_format21c_field_odex
: //e.g. sget-object-volatile v0, java/lang/System/out LJava/io/PrintStream;
- INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA fully_qualified_field
+ INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA field_reference
{
if (!allowOdex || opcodes.getOpcodeByName($INSTRUCTION_FORMAT21c_FIELD_ODEX.text) == null || apiLevel >= 14) {
throwOdexedInstructionException(input, $INSTRUCTION_FORMAT21c_FIELD_ODEX.text);
}
}
- -> ^(I_STATEMENT_FORMAT21c_FIELD[$start, "I_STATEMENT_FORMAT21c_FIELD"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER fully_qualified_field);
+ -> ^(I_STATEMENT_FORMAT21c_FIELD[$start, "I_STATEMENT_FORMAT21c_FIELD"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference);
insn_format21c_string
: //e.g. const-string v1, "Hello World!"
@@ -952,18 +939,18 @@ insn_format22b
insn_format22c_field
: //e.g. iput-object v1, v0 org/jf/HelloWorld2/HelloWorld2.helloWorld Ljava/lang/String;
- INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA fully_qualified_field
- -> ^(I_STATEMENT_FORMAT22c_FIELD[$start, "I_STATEMENT_FORMAT22c_FIELD"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER fully_qualified_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);
insn_format22c_field_odex
: //e.g. iput-object-volatile v1, v0 org/jf/HelloWorld2/HelloWorld2.helloWorld Ljava/lang/String;
- INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA fully_qualified_field
+ INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA field_reference
{
if (!allowOdex || opcodes.getOpcodeByName($INSTRUCTION_FORMAT22c_FIELD_ODEX.text) == null || apiLevel >= 14) {
throwOdexedInstructionException(input, $INSTRUCTION_FORMAT22c_FIELD_ODEX.text);
}
}
- -> ^(I_STATEMENT_FORMAT22c_FIELD[$start, "I_STATEMENT_FORMAT22c_FIELD"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER fully_qualified_field);
+ -> ^(I_STATEMENT_FORMAT22c_FIELD[$start, "I_STATEMENT_FORMAT22c_FIELD"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference);
insn_format22c_type
: //e.g. instance-of v0, v1, Ljava/lang/String;
@@ -1024,8 +1011,8 @@ insn_format32x
insn_format35c_method
: //e.g. invoke-virtual {v0,v1} java/io/PrintStream/print(Ljava/lang/Stream;)V
- INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method
- -> ^(I_STATEMENT_FORMAT35c_METHOD[$start, "I_STATEMENT_FORMAT35c_METHOD"] INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_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);
insn_format35c_type
: //e.g. filled-new-array {v0,v1}, I
@@ -1034,7 +1021,7 @@ insn_format35c_type
insn_format35c_method_odex
: //e.g. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
- INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method
+ INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference
{
throwOdexedInstructionException(input, $INSTRUCTION_FORMAT35c_METHOD_ODEX.text);
};
@@ -1055,12 +1042,12 @@ insn_format35ms_method
insn_format3rc_method
: //e.g. invoke-virtual/range {v25..v26}, java/lang/StringBuilder/append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA fully_qualified_method
- -> ^(I_STATEMENT_FORMAT3rc_METHOD[$start, "I_STATEMENT_FORMAT3rc_METHOD"] INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_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);
insn_format3rc_method_odex
: //e.g. invoke-object-init/range {p0}, Ljava/lang/Object;-><init>()V
- INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method
+ INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA method_reference
{
throwOdexedInstructionException(input, $INSTRUCTION_FORMAT3rc_METHOD_ODEX.text);
};
diff --git a/smali/src/main/antlr3/smaliTreeWalker.g b/smali/src/main/antlr3/smaliTreeWalker.g
index 89eaf4a9..f49f10ef 100644
--- a/smali/src/main/antlr3/smaliTreeWalker.g
+++ b/smali/src/main/antlr3/smaliTreeWalker.g
@@ -465,10 +465,10 @@ method returns[BuilderMethod ret]
};
method_prototype returns[List<String> parameters, String returnType]
- : ^(I_METHOD_PROTOTYPE ^(I_METHOD_RETURN_TYPE type_descriptor) field_type_list)
+ : ^(I_METHOD_PROTOTYPE ^(I_METHOD_RETURN_TYPE type_descriptor) method_type_list)
{
$returnType = $type_descriptor.type;
- $parameters = $field_type_list.types;
+ $parameters = $method_type_list.types;
};
method_name_and_prototype returns[String name, List<SmaliMethodParameter> parameters, String returnType]
@@ -488,7 +488,7 @@ method_name_and_prototype returns[String name, List<SmaliMethodParameter> parame
$returnType = $method_prototype.returnType;
};
-field_type_list returns[List<String> types]
+method_type_list returns[List<String> types]
@init
{
$types = Lists.newArrayList();
@@ -501,17 +501,29 @@ field_type_list returns[List<String> types]
)*;
-fully_qualified_method returns[ImmutableMethodReference methodReference]
- : reference_type_descriptor SIMPLE_NAME method_prototype
+method_reference returns[ImmutableMethodReference methodReference]
+ : reference_type_descriptor? SIMPLE_NAME method_prototype
{
- $methodReference = new ImmutableMethodReference($reference_type_descriptor.type, $SIMPLE_NAME.text,
+ String type;
+ if ($reference_type_descriptor.type == null) {
+ type = classType;
+ } else {
+ type = $reference_type_descriptor.type;
+ }
+ $methodReference = new ImmutableMethodReference(type, $SIMPLE_NAME.text,
$method_prototype.parameters, $method_prototype.returnType);
};
-fully_qualified_field returns[ImmutableFieldReference fieldReference]
- : reference_type_descriptor SIMPLE_NAME nonvoid_type_descriptor
+field_reference returns[ImmutableFieldReference fieldReference]
+ : reference_type_descriptor? SIMPLE_NAME nonvoid_type_descriptor
{
- $fieldReference = new ImmutableFieldReference($reference_type_descriptor.type, $SIMPLE_NAME.text,
+ String type;
+ if ($reference_type_descriptor.type == null) {
+ type = classType;
+ } else {
+ type = $reference_type_descriptor.type;
+ }
+ $fieldReference = new ImmutableFieldReference(type, $SIMPLE_NAME.text,
$nonvoid_type_descriptor.type);
};
@@ -688,13 +700,13 @@ verification_error_reference returns[ImmutableReference reference]
{
$reference = new ImmutableTypeReference($CLASS_DESCRIPTOR.text);
}
- | fully_qualified_field
+ | field_reference
{
- $reference = $fully_qualified_field.fieldReference;
+ $reference = $field_reference.fieldReference;
}
- | fully_qualified_method
+ | method_reference
{
- $reference = $fully_qualified_method.methodReference;
+ $reference = $method_reference.methodReference;
};
verification_error_type returns[int verificationError]
@@ -816,12 +828,12 @@ insn_format20t
insn_format21c_field
: //e.g. sget_object v0, java/lang/System/out LJava/io/PrintStream;
- ^(I_STATEMENT_FORMAT21c_FIELD inst=(INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX) REGISTER fully_qualified_field)
+ ^(I_STATEMENT_FORMAT21c_FIELD inst=(INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX) REGISTER field_reference)
{
Opcode opcode = opcodes.getOpcodeByName($inst.text);
short regA = parseRegister_byte($REGISTER.text);
- ImmutableFieldReference fieldReference = $fully_qualified_field.fieldReference;
+ ImmutableFieldReference fieldReference = $field_reference.fieldReference;
$method::methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
dexBuilder.internFieldReference(fieldReference)));
@@ -911,13 +923,13 @@ insn_format22b
insn_format22c_field
: //e.g. iput-object v1, v0, org/jf/HelloWorld2/HelloWorld2.helloWorld Ljava/lang/String;
- ^(I_STATEMENT_FORMAT22c_FIELD inst=(INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX) registerA=REGISTER registerB=REGISTER fully_qualified_field)
+ ^(I_STATEMENT_FORMAT22c_FIELD inst=(INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX) registerA=REGISTER registerB=REGISTER field_reference)
{
Opcode opcode = opcodes.getOpcodeByName($inst.text);
byte regA = parseRegister_nibble($registerA.text);
byte regB = parseRegister_nibble($registerB.text);
- ImmutableFieldReference fieldReference = $fully_qualified_field.fieldReference;
+ ImmutableFieldReference fieldReference = $field_reference.fieldReference;
$method::methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB,
dexBuilder.internFieldReference(fieldReference)));
@@ -1038,7 +1050,7 @@ insn_format32x
insn_format35c_method
: //e.g. invoke-virtual {v0,v1} java/io/PrintStream/print(Ljava/lang/Stream;)V
- ^(I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method)
+ ^(I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference)
{
Opcode opcode = opcodes.getOpcodeByName($INSTRUCTION_FORMAT35c_METHOD.text);
@@ -1046,7 +1058,7 @@ insn_format35c_method
byte[] registers = $register_list.registers;
byte registerCount = $register_list.registerCount;
- ImmutableMethodReference methodReference = $fully_qualified_method.methodReference;
+ ImmutableMethodReference methodReference = $method_reference.methodReference;
$method::methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1],
registers[2], registers[3], registers[4], dexBuilder.internMethodReference(methodReference)));
@@ -1068,7 +1080,7 @@ insn_format35c_type
insn_format3rc_method
: //e.g. invoke-virtual/range {v25..v26} java/lang/StringBuilder/append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- ^(I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method)
+ ^(I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference)
{
Opcode opcode = opcodes.getOpcodeByName($INSTRUCTION_FORMAT3rc_METHOD.text);
int startRegister = $register_range.startRegister;
@@ -1076,7 +1088,7 @@ insn_format3rc_method
int registerCount = endRegister-startRegister+1;
- ImmutableMethodReference methodReference = $fully_qualified_method.methodReference;
+ ImmutableMethodReference methodReference = $method_reference.methodReference;
$method::methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount,
dexBuilder.internMethodReference(methodReference)));
@@ -1259,19 +1271,19 @@ subannotation returns[String annotationType, List<AnnotationElement> elements]
};
field_literal returns[FieldReference value]
- : ^(I_ENCODED_FIELD fully_qualified_field)
+ : ^(I_ENCODED_FIELD field_reference)
{
- $value = $fully_qualified_field.fieldReference;
+ $value = $field_reference.fieldReference;
};
method_literal returns[MethodReference value]
- : ^(I_ENCODED_METHOD fully_qualified_method)
+ : ^(I_ENCODED_METHOD method_reference)
{
- $value = $fully_qualified_method.methodReference;
+ $value = $method_reference.methodReference;
};
enum_literal returns[FieldReference value]
- : ^(I_ENCODED_ENUM fully_qualified_field)
+ : ^(I_ENCODED_ENUM field_reference)
{
- $value = $fully_qualified_field.fieldReference;
+ $value = $field_reference.fieldReference;
};
diff --git a/smali/src/main/java/org/jf/smali/SmaliTestUtils.java b/smali/src/main/java/org/jf/smali/SmaliTestUtils.java
new file mode 100644
index 00000000..9fd73473
--- /dev/null
+++ b/smali/src/main/java/org/jf/smali/SmaliTestUtils.java
@@ -0,0 +1,94 @@
+/*
+ * Copyright 2014, 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.smali;
+
+import com.google.common.collect.Iterables;
+import org.antlr.runtime.CommonTokenStream;
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.TokenSource;
+import org.antlr.runtime.tree.CommonTree;
+import org.antlr.runtime.tree.CommonTreeNodeStream;
+import org.jf.dexlib2.Opcodes;
+import org.jf.dexlib2.dexbacked.DexBackedDexFile;
+import org.jf.dexlib2.iface.ClassDef;
+import org.jf.dexlib2.writer.builder.DexBuilder;
+import org.jf.dexlib2.writer.io.MemoryDataStore;
+
+import java.io.IOException;
+import java.io.Reader;
+import java.io.StringReader;
+
+public class SmaliTestUtils {
+ public static ClassDef compileSmali(String smaliText) throws RecognitionException, IOException {
+ CommonTokenStream tokens;
+ LexerErrorInterface lexer;
+ DexBuilder dexBuilder = DexBuilder.makeDexBuilder(15);
+
+ Reader reader = new StringReader(smaliText);
+
+ lexer = new smaliFlexLexer(reader);
+ tokens = new CommonTokenStream((TokenSource)lexer);
+
+ smaliParser parser = new smaliParser(tokens);
+ parser.setVerboseErrors(true);
+ parser.setAllowOdex(false);
+ parser.setApiLevel(15);
+
+ smaliParser.smali_file_return result = parser.smali_file();
+
+ if(parser.getNumberOfSyntaxErrors() > 0 || lexer.getNumberOfSyntaxErrors() > 0) {
+ throw new RuntimeException("Error occured while compiling text");
+ }
+
+ CommonTree t = result.getTree();
+
+ CommonTreeNodeStream treeStream = new CommonTreeNodeStream(t);
+ treeStream.setTokenStream(tokens);
+
+ smaliTreeWalker dexGen = new smaliTreeWalker(treeStream);
+ dexGen.setVerboseErrors(true);
+ dexGen.setDexBuilder(dexBuilder);
+ dexGen.smali_file();
+
+ if (dexGen.getNumberOfSyntaxErrors() > 0) {
+ throw new RuntimeException("Error occured while compiling text");
+ }
+
+ MemoryDataStore dataStore = new MemoryDataStore();
+
+ dexBuilder.writeTo(dataStore);
+
+ DexBackedDexFile dexFile = new DexBackedDexFile(new Opcodes(15), dataStore.getData());
+
+ return Iterables.getFirst(dexFile.getClasses(), null);
+ }
+}
diff --git a/smali/src/main/java/org/jf/smali/smaliFlexLexer.java b/smali/src/main/java/org/jf/smali/smaliFlexLexer.java
index b1a3d433..0e3d3f49 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/12/14 5:39 PM */
+/* The following code was generated by JFlex 1.4.3 on 2/19/15 1:23 PM */
package org.jf.smali;
@@ -9,10 +9,10 @@ import static org.jf.smali.smaliParser.*;
/**
- * This class is a scanner generated by
+ * This class is a scanner generated by
* <a href="http://www.jflex.de/">JFlex</a> 1.4.3
- * on 2/12/14 5:39 PM from the specification file
- * <tt>/usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/jflex/smaliLexer.flex</tt>
+ * on 2/19/15 1:23 PM from the specification file
+ * <tt>./src/main/jflex/smaliLexer.flex</tt>
*/
public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
@@ -23,9 +23,11 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
private static final int ZZ_BUFFERSIZE = 16384;
/** lexical states */
- public static final int STRING = 2;
+ public static final int STRING = 6;
+ public static final int PARAM_LIST_OR_ID = 2;
public static final int YYINITIAL = 0;
- public static final int CHAR = 4;
+ public static final int CHAR = 8;
+ public static final int PARAM_LIST = 4;
/**
* ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l
@@ -33,14 +35,14 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
* at the beginning of a line
* l is of the form l = 2*k, k a non negative integer
*/
- private static final int ZZ_LEXSTATE[] = {
- 0, 0, 1, 1, 2, 2
+ private static final int ZZ_LEXSTATE[] = {
+ 0, 0, 1, 1, 2, 2, 3, 3, 4, 4
};
- /**
+ /**
* Translates characters to character classes
*/
- private static final String ZZ_CMAP_PACKED =
+ private static final String ZZ_CMAP_PACKED =
"\11\0\1\115\1\64\2\0\1\64\22\0\1\50\1\0\1\62\1\72"+
"\1\22\2\0\1\63\1\113\1\114\2\0\1\110\1\7\1\17\1\30"+
"\1\1\1\76\1\75\1\102\1\73\1\5\1\77\1\5\1\101\1\4"+
@@ -53,70 +55,71 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
"\1\67\1\111\1\0\1\112\43\0\u1f5f\22\20\0\30\22\10\0\ub7d0\22"+
"\u0400\20\u0400\21\u1ff0\22\20\0";
- /**
+ /**
* Translates characters to character classes
*/
private static final char [] ZZ_CMAP = zzUnpackCMap(ZZ_CMAP_PACKED);
- /**
+ /**
* Translates DFA states to action switch labels.
*/
private static final int [] ZZ_ACTION = zzUnpackAction();
private static final String ZZ_ACTION_PACKED_0 =
- "\3\0\1\1\1\2\2\3\1\2\4\3\1\4\1\1"+
+ "\5\0\1\1\1\2\2\3\1\2\4\3\1\4\1\1"+
"\2\5\1\3\1\1\15\3\1\6\1\3\1\7\1\10"+
"\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\23\1\24\1\0\1\22"+
- "\1\25\1\26\1\0\1\2\3\3\1\27\1\30\1\31"+
- "\1\0\1\32\1\33\1\34\2\3\2\35\1\3\1\0"+
- "\1\36\12\3\3\4\1\37\10\4\1\40\1\3\1\0"+
- "\1\3\1\0\1\41\2\0\22\3\1\42\31\3\2\0"+
- "\1\43\1\44\1\45\1\46\1\47\1\50\1\51\1\52"+
- "\1\53\1\54\1\55\1\2\1\0\1\34\1\3\1\0"+
- "\1\56\1\31\2\3\1\35\11\3\1\34\5\3\21\4"+
- "\1\3\1\0\1\57\2\0\1\60\2\0\43\3\1\61"+
- "\14\3\1\62\1\46\1\55\1\0\1\31\1\0\2\3"+
- "\1\35\5\3\1\63\11\3\25\4\4\0\7\3\1\64"+
- "\5\3\1\65\11\3\1\66\5\3\1\67\1\3\1\70"+
- "\6\3\1\71\6\3\1\72\3\3\1\46\1\55\1\73"+
- "\2\3\1\74\13\3\4\4\1\75\13\4\1\76\1\0"+
- "\3\4\3\3\1\77\32\3\1\0\11\3\1\100\5\3"+
- "\1\0\3\3\1\46\1\55\1\3\1\101\17\3\1\0"+
- "\1\3\1\4\1\102\1\103\1\104\1\105\3\4\1\106"+
- "\3\4\1\107\13\4\5\3\1\0\34\3\1\100\5\3"+
- "\2\0\12\3\1\64\4\3\2\0\3\3\2\110\12\3"+
- "\1\0\7\3\1\0\1\3\2\4\1\111\4\4\1\112"+
- "\15\4\1\113\7\3\1\0\1\114\1\0\16\3\1\64"+
- "\11\3\1\64\12\3\1\0\1\115\1\67\11\3\1\0"+
- "\3\3\1\116\1\117\1\0\1\55\11\3\1\0\14\3"+
- "\1\0\1\3\24\4\1\3\1\64\5\3\1\0\1\120"+
- "\13\3\1\0\10\3\1\0\3\3\1\121\10\3\1\0"+
- "\4\3\1\122\1\3\2\0\3\3\1\0\4\3\1\63"+
- "\2\3\1\63\2\3\1\0\15\3\1\123\1\3\1\4"+
- "\1\124\5\4\1\125\1\126\11\4\1\0\1\4\6\3"+
- "\1\0\11\3\1\65\2\3\1\65\1\3\1\0\2\3"+
- "\1\0\7\3\1\67\1\0\2\3\1\127\4\3\2\0"+
- "\2\3\1\0\7\3\1\130\1\131\14\3\6\4\1\132"+
- "\1\133\5\4\1\134\2\4\1\135\3\3\1\136\1\0"+
- "\1\3\1\137\7\3\1\0\11\3\1\0\5\3\2\0"+
- "\2\3\1\140\16\3\1\141\1\142\1\143\10\4\1\144"+
- "\1\4\2\3\2\0\5\3\1\0\2\3\1\100\1\61"+
- "\3\3\1\100\1\145\5\3\1\0\1\146\1\0\7\3"+
- "\1\147\6\3\11\4\1\150\2\0\1\151\13\3\1\152"+
- "\1\153\2\3\1\154\2\3\1\0\1\147\1\3\1\147"+
- "\3\3\11\4\2\0\1\155\1\156\1\157\7\3\1\0"+
- "\4\3\1\160\1\161\1\162\5\4\1\163\2\0\1\164"+
- "\5\3\1\0\3\3\1\165\1\166\3\4\3\0\4\3"+
- "\1\0\2\3\1\167\3\4\3\0\4\3\1\0\2\3"+
- "\1\0\3\4\1\0\1\170\1\0\2\3\1\171\1\172"+
- "\2\3\1\0\1\173\1\174\1\175\1\176\1\0\2\3"+
- "\2\0\1\177\2\0\1\200\1\3\3\0\1\201\1\3"+
- "\3\0\1\3\2\0\1\202\1\3\2\0\1\3\1\203"+
- "\1\204\1\205";
+ "\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"+
+ "\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\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\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\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";
private static int [] zzUnpackAction() {
- int [] result = new int[1153];
+ int [] result = new int[1169];
int offset = 0;
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
return result;
@@ -135,7 +138,7 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
}
- /**
+ /**
* Translates a state to a row index in the transition table
*/
private static final int [] ZZ_ROWMAP = zzUnpackRowMap();
@@ -145,150 +148,152 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
"\0\u0270\0\u02be\0\u030c\0\u035a\0\u03a8\0\u03f6\0\u0444\0\u0492"+
"\0\u04e0\0\u052e\0\u057c\0\u05ca\0\u0618\0\u0666\0\u06b4\0\u0702"+
"\0\u0750\0\u079e\0\u07ec\0\u083a\0\u0888\0\u08d6\0\u0924\0\u0972"+
- "\0\u09c0\0\352\0\352\0\u0a0e\0\u0a5c\0\u0aaa\0\u0186\0\u0af8"+
- "\0\352\0\352\0\352\0\352\0\352\0\352\0\352\0\u0b46"+
- "\0\352\0\352\0\u0b94\0\u0be2\0\352\0\352\0\u0c30\0\u0c7e"+
- "\0\u0ccc\0\u0d1a\0\u0d68\0\u0186\0\u0186\0\u0db6\0\u03f6\0\u0186"+
- "\0\u0186\0\u0186\0\u0e04\0\u0e52\0\u0ea0\0\u0eee\0\u0f3c\0\u0f8a"+
- "\0\352\0\u0fd8\0\u1026\0\u1074\0\u10c2\0\u1110\0\u115e\0\u11ac"+
- "\0\u11fa\0\u1248\0\u1296\0\u12e4\0\u1332\0\u1380\0\352\0\u13ce"+
- "\0\u141c\0\u146a\0\u14b8\0\u1506\0\u1554\0\u15a2\0\u15f0\0\u0444"+
- "\0\u163e\0\u168c\0\u16da\0\u1728\0\u168c\0\u1776\0\u052e\0\u17c4"+
- "\0\u1812\0\u1860\0\u18ae\0\u18fc\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\352\0\352\0\352"+
- "\0\u25c8\0\352\0\352\0\352\0\352\0\352\0\352\0\u2616"+
- "\0\u2664\0\u26b2\0\u2700\0\u274e\0\u279c\0\352\0\352\0\u27ea"+
- "\0\u2838\0\u2886\0\u28d4\0\u2922\0\u2970\0\u29be\0\u2a0c\0\u2a5a"+
- "\0\u2aa8\0\u2af6\0\u2b44\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\u168c\0\u3330\0\u337e\0\u168c"+
- "\0\u33cc\0\u341a\0\u3468\0\u34b6\0\u3504\0\u3552\0\u35a0\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\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\u0186\0\u3f12\0\u3f60"+
- "\0\u3fae\0\u3ffc\0\u404a\0\u4098\0\u40e6\0\u4134\0\u4182\0\u41d0"+
- "\0\u421e\0\u426c\0\352\0\u42ba\0\u4308\0\u4356\0\u43a4\0\u43f2"+
- "\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\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\0\u50be\0\u510c\0\u515a\0\u51a8\0\u51f6\0\u5244\0\u5292"+
- "\0\u52e0\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\u0186\0\u585c\0\u58aa\0\u58f8\0\u5946\0\u5994"+
- "\0\u59e2\0\u5a30\0\u0186\0\u5a7e\0\u5acc\0\u5b1a\0\u5b68\0\u5bb6"+
- "\0\u5c04\0\u0186\0\u5c52\0\u5ca0\0\u5cee\0\u5d3c\0\u5d8a\0\u5dd8"+
- "\0\u5e26\0\u5e74\0\u5ec2\0\u5f10\0\u5f5e\0\u5fac\0\u0186\0\u5ffa"+
- "\0\u6048\0\u6096\0\u60e4\0\u6132\0\u6180\0\u61ce\0\u621c\0\u626a"+
- "\0\u62b8\0\u6306\0\u6354\0\u63a2\0\u63f0\0\u643e\0\u648c\0\u64da"+
- "\0\u6528\0\u12e4\0\u6576\0\u65c4\0\u6612\0\u6660\0\u66ae\0\u66fc"+
- "\0\u674a\0\u6798\0\u67e6\0\u6834\0\u6882\0\u12e4\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\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\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\u0186"+
- "\0\u7a2e\0\u7a7c\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\u12e4\0\u12e4\0\u7faa\0\u7ff8\0\u8046\0\u8094"+
- "\0\u80e2\0\u12e4\0\u8130\0\u817e\0\u81cc\0\u12e4\0\u821a\0\u8268"+
- "\0\u82b6\0\u8304\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\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\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\352"+
- "\0\u9858\0\u98a6\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\u12e4"+
- "\0\u9f5a\0\u9fa8\0\u9ff6\0\ua044\0\u12e4\0\ua092\0\ua0e0\0\ua12e"+
- "\0\ua17c\0\ua1ca\0\ua218\0\ua266\0\ua2b4\0\ua302\0\ua350\0\ua39e"+
- "\0\ua3ec\0\ua43a\0\u12e4\0\ua488\0\ua4d6\0\ua524\0\ua572\0\ua5c0"+
- "\0\ua60e\0\ua65c\0\ua6aa\0\352\0\ua6f8\0\ua746\0\ua794\0\ua7e2"+
- "\0\ua830\0\ua87e\0\ua8cc\0\ua91a\0\ua968\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\352\0\u0186\0\ub23e\0\ub28c\0\ub2da\0\ub328\0\ub376"+
- "\0\ub3c4\0\ub412\0\ub460\0\ub4ae\0\ub4fc\0\ub54a\0\ub598\0\ub5e6"+
- "\0\352\0\352\0\ub634\0\u9858\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\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\u0186\0\uc438\0\uc486\0\uc4d4\0\uc522\0\uc570\0\uc5be"+
- "\0\352\0\uc60c\0\uc65a\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\ud152\0\u0186"+
- "\0\ud1a0\0\ud1ee\0\ud23c\0\ud28a\0\ud2d8\0\ud326\0\ud374\0\ud3c2"+
- "\0\ud410\0\ud45e\0\ud4ac\0\u0186\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\ubd36"+
- "\0\udac4\0\udb12\0\u12e4\0\udb60\0\udbae\0\udbfc\0\udc4a\0\udc98"+
- "\0\u12e4\0\u12e4\0\udce6\0\udd34\0\udd82\0\uddd0\0\ude1e\0\ude6c"+
- "\0\udeba\0\udf08\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\ue2fe\0\ue34c"+
- "\0\ue39a\0\ue3e8\0\ue436\0\ue484\0\ue4d2\0\u0186\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\ue916\0\ue964\0\ue9b2\0\uea00\0\uea4e"+
- "\0\uea9c\0\u0186\0\ueaea\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\u0186\0\ud680\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\uf45c\0\uf4aa\0\uf4f8\0\u12e4\0\u12e4"+
- "\0\uf546\0\uf594\0\uf5e2\0\uf630\0\uf67e\0\u12e4\0\uf6cc\0\uf71a"+
- "\0\u12e4\0\uf768\0\uf7b6\0\uf804\0\uf852\0\uf8a0\0\uf8ee\0\u0186"+
- "\0\uf93c\0\uf98a\0\uf9d8\0\ufa26\0\ufa74\0\ufac2\0\ufb10\0\ufb5e"+
- "\0\ufbac\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\0\ued5a\1\u0176\1\u01c4\1\u0212\1\u0260"+
- "\1\u02ae\1\u02fc\1\u034a\1\u0398\1\u03e6\1\u0434\1\u0482\1\u04d0"+
- "\1\u051e\1\u056c\0\u12e4\0\u12e4\0\u12e4\1\u05ba\1\u0608\1\u0656"+
- "\1\u06a4\1\u06f2\1\u0740\1\u078e\1\u07dc\0\u12e4\1\u082a\1\u0878"+
- "\1\u08c6\1\u0914\1\u0962\1\u09b0\1\u09fe\1\u0a4c\1\u0a9a\1\u0ae8"+
- "\1\u0b36\1\u0b84\1\u0bd2\0\u0186\1\u0c20\1\u0c6e\1\u0cbc\1\u0d0a"+
- "\1\u0d58\0\352\1\u0da6\1\u0df4\1\u0e42\1\u0e90\1\u0ede\1\u0f2c"+
- "\0\352\1\u0f7a\1\u0fc8\1\u1016\1\u1064\1\u10b2\1\u1100\1\u114e"+
- "\1\u119c\1\u11ea\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\0\352\1\u17b4\1\u1802\1\u1850"+
- "\1\u189e\1\u18ec\1\u193a\1\u1988\1\u19d6\1\u1a24\1\u1a72\1\u1ac0"+
- "\0\352\0\352\1\u1b0e\1\u1b5c\0\u0186\1\u1baa\1\u1bf8\1\u1c46"+
- "\1\u1c94\1\u1ce2\1\u1d30\1\u1d7e\1\u1dcc\1\u1e1a\1\u1e68\1\u1eb6"+
- "\1\u1f04\1\u1f52\1\u1fa0\1\u1fee\1\u203c\1\u208a\1\u20d8\1\u2126"+
- "\1\u2174\0\352\0\u0186\0\u0186\1\u21c2\1\u2210\1\u225e\1\u22ac"+
- "\1\u22fa\1\u2348\1\u2396\1\u23e4\1\u2432\1\u2480\1\u24ce\1\u251c"+
- "\0\u12e4\0\u12e4\0\u12e4\1\u256a\1\u25b8\1\u2606\1\u2654\1\u26a2"+
- "\0\u12e4\1\u26f0\1\u273e\1\u278c\1\u27da\1\u2828\1\u2876\1\u28c4"+
- "\1\u2912\1\u2960\1\u29ae\1\u29fc\1\u2a4a\0\u12e4\0\u12e4\1\u2a98"+
- "\1\u2ae6\1\u2b34\1\u2b82\1\u2bd0\1\u2c1e\1\u2c6c\1\u2cba\1\u2d08"+
- "\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\0\352"+
- "\1\u3458\1\u34a6\1\u34f4\1\u3542\0\352\1\u3590\1\u35de\1\u362c"+
- "\0\u12e4\0\u12e4\0\u12e4\0\352\1\u367a\1\u36c8\1\u3716\1\u3764"+
- "\1\u37b2\0\u0186\1\u3800\1\u384e\0\u0186\1\u389c\1\u38ea\1\u3938"+
- "\1\u3986\0\352\1\u39d4\1\u3a22\1\u3a70\1\u3abe\1\u3b0c\1\u3b5a"+
- "\1\u3ba8\0\352\1\u3bf6\1\u3c44\1\u3c92\1\u3ce0\0\352\0\352"+
- "\0\u0186";
+ "\0\u09c0\0\u0a0e\0\u0a5c\0\u0186\0\u0186\0\u0aaa\0\u0af8\0\u0b46"+
+ "\0\u0222\0\u0b94\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186\0\u0186"+
+ "\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\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\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\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\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"+
+ "\0\u50be\0\u510c\0\u515a\0\u51a8\0\u51f6\0\u5244\0\u5292\0\u52e0"+
+ "\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\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\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\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\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";
private static int [] zzUnpackRowMap() {
- int [] result = new int[1153];
+ int [] result = new int[1169];
int offset = 0;
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
return result;
@@ -305,2397 +310,2409 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
return j;
}
- /**
+ /**
* The transition table of the DFA
*/
private static final int [] ZZ_TRANS = zzUnpackTrans();
private static final String ZZ_TRANS_PACKED_0 =
- "\1\4\1\5\1\6\1\7\2\10\1\6\1\11\1\6"+
- "\1\12\1\13\1\14\3\6\1\15\1\16\1\4\1\6"+
- "\1\17\1\20\2\17\1\21\2\4\1\22\1\23\1\24"+
- "\1\25\1\26\1\27\1\30\1\31\1\32\1\33\1\34"+
- "\1\35\1\36\1\37\1\40\1\6\1\41\3\6\1\4"+
- "\1\6\2\17\1\42\1\43\1\40\1\4\1\44\1\6"+
- "\1\4\1\45\1\46\1\10\1\6\3\10\1\6\2\10"+
- "\1\47\1\50\1\4\1\51\1\52\1\53\1\54\1\55"+
- "\1\56\1\57\1\40\62\60\1\61\1\60\1\62\1\63"+
- "\30\60\63\64\1\65\1\66\1\67\30\64\117\0\1\70"+
- "\1\71\1\6\1\72\1\70\1\73\4\6\1\74\1\75"+
- "\2\6\1\76\1\77\1\0\3\6\1\74\1\6\1\100"+
- "\3\0\1\6\1\100\1\6\1\101\2\6\1\73\3\6"+
- "\1\75\1\6\1\102\1\0\5\6\1\0\1\6\1\101"+
- "\1\102\4\0\2\6\1\0\1\71\1\0\1\70\1\6"+
- "\3\70\1\6\1\72\1\70\1\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\4\6\1\103"+
- "\2\6\1\104\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\1\10\2\6"+
- "\2\10\1\73\4\6\1\74\1\75\2\6\1\76\1\77"+
- "\1\0\3\6\1\74\1\6\1\100\3\0\1\6\1\100"+
- "\1\6\1\101\2\6\1\73\3\6\1\75\1\6\1\102"+
- "\1\0\5\6\1\0\1\6\1\101\1\102\4\0\2\6"+
- "\1\0\1\6\1\0\1\10\1\6\3\10\1\6\2\10"+
- "\1\6\13\0\1\105\2\6\2\106\3\6\1\107\5\6"+
- "\1\110\1\77\1\0\2\6\1\107\3\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\1\106\1\6\3\106\1\6\2\106\1\6\1\0"+
- "\1\111\11\0\11\6\1\112\1\113\3\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\6\1\114\3\6\1\115\3\6"+
- "\1\116\3\6\1\0\1\6\1\117\3\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\15\6"+
- "\1\120\1\0\1\77\1\0\6\6\3\0\2\6\1\120"+
- "\12\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\10\6\1\121\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\122\1\123\12\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\1\76\2\124\2\76\3\124\1\125"+
- "\1\124\1\126\3\124\1\127\3\0\5\124\2\0\1\124"+
- "\1\130\1\131\1\132\1\133\1\124\1\134\1\135\1\136"+
- "\1\137\4\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\1\76\1\124\3\76\1\124\2\76\1\124\33\0"+
- "\1\6\75\0\16\6\1\0\1\77\1\0\1\6\4\140"+
- "\1\141\2\0\1\142\15\6\1\0\5\6\1\0\1\6"+
- "\2\140\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\11\6\1\112\4\6\1\0\1\77\1\0\1\6\4\140"+
- "\1\141\2\0\1\142\11\6\1\112\3\6\1\0\5\6"+
- "\1\0\1\6\2\140\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\143\1\0\1\144\1\0\6\143\3\0"+
- "\15\143\1\0\5\143\1\0\3\143\4\0\2\143\1\0"+
- "\1\143\1\0\11\143\35\0\4\145\1\146\2\0\1\147"+
- "\25\0\2\145\35\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\150\6\6\1\151\2\6\1\152\1\6"+
- "\1\0\1\153\4\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\13\6\1\154\1\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\2\6\1\155\13\6\1\0\1\77\1\0\6\6\3\0"+
- "\5\6\1\156\1\6\1\157\1\6\1\160\2\6\1\161"+
- "\1\0\1\6\1\162\3\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\4\6\1\163\1\164\4\6\1\165"+
- "\2\6\1\0\1\166\1\167\1\170\2\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\3\6\1\171\11\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\1\172\2\6\2\172\11\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\173\1\6\1\174"+
- "\2\6\1\175\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\1\172\1\6\3\172\1\6"+
- "\2\172\1\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\11\6\1\176\3\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\177\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\3\6\1\200\1\201"+
- "\1\6\1\202\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\4\6\1\203\6\6\1\204"+
- "\1\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\15\6\1\120\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\205\1\6\1\206\1\6"+
- "\1\207\4\6\1\210\1\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\7\6\1\211\5\6"+
- "\1\0\1\212\4\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\7\6\1\213\5\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\10\6\1\214\5\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\215\4\6\1\216\1\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\62\0"+
- "\1\40\13\0\1\40\30\0\1\40\1\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\6\6\1\217\4\6\1\220"+
- "\1\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\1\172\2\6\2\172\11\6"+
- "\1\0\1\77\1\0\6\6\3\0\2\6\1\221\7\6"+
- "\1\222\1\223\1\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\1\172\1\6\3\172\1\6"+
- "\2\172\1\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\13\6\1\36\1\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\12\0\64\46"+
- "\1\0\31\46\1\0\16\224\1\0\1\225\1\0\6\224"+
- "\3\0\15\224\1\0\5\224\1\0\3\224\4\0\2\224"+
- "\1\0\1\224\1\0\11\224\12\0\62\60\1\0\1\60"+
- "\2\0\30\60\3\226\1\227\7\226\1\230\23\226\1\231"+
- "\2\226\1\232\1\226\1\233\1\234\14\226\1\235\1\236"+
- "\1\226\1\237\30\226\63\64\3\0\30\64\3\226\1\227"+
- "\7\226\1\230\23\226\1\240\2\226\1\232\1\226\1\233"+
- "\1\234\14\226\1\235\1\236\1\226\1\237\30\226\1\0"+
- "\1\70\2\6\1\72\1\70\1\73\4\6\1\74\1\75"+
- "\2\6\1\76\1\77\1\0\3\6\1\74\1\6\1\100"+
- "\3\0\1\6\1\100\1\6\1\101\2\6\1\73\3\6"+
- "\1\75\1\6\1\102\1\0\5\6\1\0\1\6\1\101"+
- "\1\102\4\0\2\6\1\0\1\6\1\0\1\70\1\6"+
- "\3\70\1\6\1\72\1\70\1\6\13\0\1\241\1\6"+
- "\4\241\4\6\1\241\2\6\1\241\1\242\1\77\1\0"+
- "\1\6\1\241\1\6\1\241\2\6\3\0\1\241\1\6"+
- "\1\241\3\6\1\241\5\6\1\241\1\0\5\6\1\0"+
- "\2\6\1\241\4\0\2\6\1\0\1\6\1\0\1\241"+
- "\1\6\3\241\1\6\2\241\1\6\13\0\1\72\2\6"+
- "\2\72\1\73\4\6\1\74\3\6\1\76\1\77\1\0"+
- "\3\6\1\74\2\6\3\0\6\6\1\73\5\6\1\102"+
- "\1\0\5\6\1\0\2\6\1\102\4\0\2\6\1\0"+
- "\1\6\1\0\1\72\1\6\3\72\1\6\2\72\1\6"+
- "\13\0\1\243\2\6\2\243\1\6\1\244\7\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\1\243\1\6"+
- "\3\243\1\6\2\243\1\6\13\0\1\76\2\0\2\76"+
- "\1\245\4\0\1\246\11\0\1\246\13\0\1\245\5\0"+
- "\1\247\11\0\1\247\11\0\1\76\1\0\3\76\1\0"+
- "\2\76\14\0\10\6\1\250\5\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\251"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\1\252\1\253\1\6\1\72\1\252\1\73"+
- "\4\6\1\74\1\75\2\6\1\76\1\77\1\0\3\6"+
- "\1\74\1\6\1\100\3\0\1\6\1\100\1\6\1\101"+
- "\2\6\1\73\3\6\1\75\1\6\1\102\1\0\5\6"+
- "\1\0\1\6\1\101\1\102\4\0\2\6\1\0\1\253"+
- "\1\0\1\252\1\6\3\252\1\6\1\72\1\252\1\6"+
- "\13\0\1\106\2\6\2\106\1\73\4\6\1\74\1\75"+
- "\2\6\1\76\1\77\1\0\3\6\1\74\1\6\1\100"+
- "\3\0\1\6\1\100\1\6\1\101\2\6\1\73\3\6"+
- "\1\75\1\6\1\102\1\0\5\6\1\0\1\6\1\101"+
- "\1\102\4\0\2\6\1\0\1\6\1\0\1\106\1\6"+
- "\3\106\1\6\2\106\1\6\13\0\11\6\1\112\4\6"+
- "\1\0\1\77\1\0\6\6\3\0\11\6\1\112\3\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\1\76\2\0\2\76\65\0\1\76"+
- "\1\0\3\76\1\0\2\76\14\0\12\6\1\254\3\6"+
- "\1\0\1\77\1\0\3\6\1\254\2\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\255\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\256\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\4\6\1\257\10\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\12\6"+
- "\1\254\3\6\1\0\1\77\1\0\3\6\1\254\2\6"+
- "\3\0\1\6\1\260\1\6\1\261\6\6\1\262\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\1\263\1\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\6\6\1\257\6\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\11\6\1\264\4\6\1\0\1\77\1\0\6\6\3\0"+
- "\11\6\1\264\3\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\265\4\6\1\266"+
- "\2\6\1\267\3\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\13\6\1\270\1\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\6\1\271\13\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\124\4\0"+
- "\5\124\2\0\16\124\1\0\11\124\3\0\3\124\1\0"+
- "\1\124\1\0\11\124\13\0\16\124\4\0\5\124\2\0"+
- "\11\124\1\272\4\124\1\0\11\124\3\0\3\124\1\0"+
- "\1\124\1\0\11\124\13\0\10\124\1\273\5\124\4\0"+
- "\5\124\2\0\16\124\1\0\11\124\3\0\3\124\1\0"+
- "\1\124\1\0\11\124\13\0\16\124\4\0\5\124\2\0"+
- "\2\124\1\274\1\275\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\10\124\1\276\5\124"+
- "\4\0\5\124\2\0\14\124\1\277\1\124\1\0\11\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\13\0\16\124"+
- "\4\0\5\124\2\0\10\124\1\300\1\124\1\301\3\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\5\124\1\302\1\303"+
- "\5\124\1\304\1\124\1\0\11\124\3\0\3\124\1\0"+
- "\1\124\1\0\11\124\13\0\16\124\4\0\5\124\2\0"+
- "\3\124\1\305\4\124\1\306\5\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\6\124\1\307\3\124\1\310\3\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\7\124\1\311\6\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\7\124\1\312\6\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\313\1\0\1\314\1\0\6\313\3\0\15\313\1\0"+
- "\5\313\1\0\3\313\4\0\2\313\1\0\1\313\1\0"+
- "\11\313\35\0\4\315\1\316\2\0\1\142\25\0\2\315"+
- "\35\0\16\143\1\0\1\144\1\0\6\143\1\317\1\320"+
- "\1\0\15\143\1\0\5\143\1\0\3\143\4\0\2\143"+
- "\1\0\1\143\1\0\11\143\33\0\1\143\75\0\16\321"+
- "\1\0\1\322\1\0\6\321\3\0\15\321\1\0\5\321"+
- "\1\0\3\321\4\0\2\321\1\0\1\321\1\0\11\321"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\323\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\5\6\1\324\7\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\325\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\326\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\327\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\3\6\1\330\11\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\4\6"+
- "\1\331\10\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\7\6\1\332\5\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\333\2\6\1\213\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\14\6\1\334\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\331\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\2\6\1\335\13\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\336\1\6\1\337\10\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\2\6\1\340\4\6"+
- "\1\341\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\6\1\342\5\6\1\342\5\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\337\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\3\6\1\343\5\6"+
- "\1\344\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\1\345\4\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\1\172\2\6\2\172\11\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\1\172\1\6\3\172\1\6\2\172"+
- "\1\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\346\14\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\2\6\1\347\13\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\10\6\1\350\5\6\1\0\1\77\1\0\6\6"+
- "\3\0\13\6\1\351\1\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\4\6\1\352\10\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\353\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\4\6\1\354\10\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\11\6\1\355\3\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\10\6\1\334\1\6"+
- "\1\356\2\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\6\1\334\13\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\357\3\6\1\0\5\6\1\0\3\6\4\0\1\360"+
- "\1\6\1\0\1\6\1\0\11\6\13\0\11\6\1\264"+
- "\4\6\1\0\1\77\1\0\6\6\3\0\11\6\1\264"+
- "\1\361\2\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\6\1\362\13\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\1\6\1\363\2\6\1\364\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\6\6\1\365"+
- "\7\6\1\0\1\77\1\0\6\6\3\0\5\6\1\366"+
- "\4\6\1\367\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\370\1\6\1\371"+
- "\10\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\7\6\1\372\5\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\6\6\1\373\7\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\1\334\1\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\374\14\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\4\6\1\375\10\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\11\6\1\376\3\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\377\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\7\6\1\u0100\5\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u0101\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\u0102\13\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\224\1\0\1\225\1\0\6\224\3\0"+
- "\15\224\1\0\5\224\1\0\3\224\4\0\2\224\1\0"+
- "\1\224\1\0\11\224\1\0\1\u0103\31\0\1\224\75\0"+
- "\1\u0104\1\0\4\u0104\4\0\1\u0104\2\0\1\u0104\4\0"+
- "\1\u0104\1\0\1\u0104\5\0\1\u0104\1\0\1\u0104\3\0"+
- "\1\u0104\5\0\1\u0104\11\0\1\u0104\11\0\1\u0104\1\0"+
- "\3\u0104\1\0\2\u0104\14\0\1\u0105\1\0\4\u0105\4\0"+
- "\1\u0105\2\0\1\u0105\4\0\1\u0105\1\0\1\u0105\5\0"+
- "\1\u0105\1\0\1\u0105\3\0\1\u0105\5\0\1\u0105\11\0"+
- "\1\u0105\11\0\1\u0105\1\0\3\u0105\1\0\2\u0105\14\0"+
- "\1\241\1\6\4\241\1\6\1\73\2\6\1\241\1\75"+
- "\1\6\1\241\1\u0106\1\77\1\0\1\6\1\241\1\6"+
- "\1\241\1\6\1\100\3\0\1\241\1\100\1\241\1\101"+
- "\1\6\1\73\1\241\3\6\1\75\1\6\1\241\1\0"+
- "\5\6\1\0\1\6\1\101\1\241\4\0\2\6\1\0"+
- "\1\6\1\0\1\241\1\6\3\241\1\6\2\241\1\6"+
- "\13\0\1\u0106\1\0\4\u0106\4\0\1\u0106\2\0\1\u0106"+
- "\4\0\1\u0106\1\0\1\u0106\5\0\1\u0106\1\0\1\u0106"+
- "\3\0\1\u0106\5\0\1\u0106\11\0\1\u0106\11\0\1\u0106"+
- "\1\0\3\u0106\1\0\2\u0106\14\0\1\243\2\6\2\243"+
- "\5\6\1\74\3\6\1\0\1\77\1\0\3\6\1\74"+
- "\2\6\3\0\14\6\1\102\1\0\5\6\1\0\2\6"+
- "\1\102\4\0\2\6\1\0\1\6\1\0\1\243\1\6"+
- "\3\243\1\6\2\243\1\6\13\0\1\243\2\6\2\243"+
- "\11\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\1\243\1\6\3\243\1\6\2\243\1\6\13\0\1\u0107"+
- "\2\0\2\u0107\1\0\1\u0108\63\0\1\u0107\1\0\3\u0107"+
- "\1\0\2\u0107\14\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u0109\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\14\6\1\u010a\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\1\252\2\6\1\72\1\252\1\73\4\6"+
- "\1\74\1\75\2\6\1\76\1\77\1\0\3\6\1\74"+
- "\1\6\1\100\3\0\1\6\1\100\1\6\1\101\2\6"+
- "\1\73\3\6\1\75\1\6\1\102\1\0\5\6\1\0"+
- "\1\6\1\101\1\102\4\0\2\6\1\0\1\6\1\0"+
- "\1\252\1\6\3\252\1\6\1\72\1\252\1\6\13\0"+
- "\1\u010b\1\6\4\u010b\4\6\1\u010b\2\6\1\u010b\1\242"+
- "\1\77\1\0\1\6\1\u010b\1\6\1\u010b\2\6\3\0"+
- "\1\u010b\1\6\1\u010b\3\6\1\u010b\5\6\1\u010b\1\0"+
- "\5\6\1\0\2\6\1\u010b\4\0\2\6\1\0\1\6"+
- "\1\0\1\u010b\1\6\3\u010b\1\6\2\u010b\1\6\13\0"+
- "\10\6\1\u010c\5\6\1\0\1\77\1\0\2\6\1\u010c"+
- "\3\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\u010d\4\6\1\u010e"+
- "\2\6\1\u010f\3\6\1\0\1\6\1\u010d\3\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u0110"+
- "\6\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\12\6\1\u0111\2\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\10\6\1\u0112\5\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\12\6\1\u0113\2\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\6\6\1\u0114\7\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u0115\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\13\6\1\u0116\1\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\12\6\1\74\3\6\1\0\1\77\1\0"+
- "\3\6\1\74\2\6\3\0\14\6\1\102\1\0\5\6"+
- "\1\0\2\6\1\102\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\6\1\u0117\13\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\u0118\13\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u0119\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\u011a\12\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\3\6\1\371\11\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\124\4\0"+
- "\5\124\2\0\6\124\1\u011b\7\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\7\124\1\u011c\6\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\3\124\1\u011d\12\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\13\124\1\u011e\2\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\12\124\1\u011f\3\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\1\124\1\u0120\14\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\10\124\1\u0121\5\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\12\124\1\u0122\3\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\2\124\1\u0123"+
- "\13\124\4\0\5\124\2\0\6\124\1\u0124\7\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\3\124\1\u0125\12\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\5\124\1\u0126\10\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\1\124\1\u0127\6\124\1\u0128"+
- "\5\124\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\124\4\0\5\124\2\0\14\124\1\u0129"+
- "\1\124\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\10\124\1\u012a\5\124\4\0\5\124\2\0"+
- "\16\124\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\124\4\0\5\124\2\0\5\124\1\u012b"+
- "\7\124\1\u012c\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\4\124"+
- "\1\u012d\11\124\1\0\1\124\1\u012e\7\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\13\124\1\u012f\2\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\313\1\0\1\314"+
- "\1\0\6\313\1\316\1\315\1\0\15\313\1\0\5\313"+
- "\1\0\3\313\4\0\2\313\1\0\1\313\1\0\11\313"+
- "\33\0\1\313\75\0\16\u0130\1\0\1\u0131\1\0\6\u0130"+
- "\3\0\15\u0130\1\0\5\u0130\1\0\3\u0130\4\0\2\u0130"+
- "\1\0\1\u0130\1\0\11\u0130\13\0\16\u0132\1\0\1\u0133"+
- "\1\0\6\u0132\3\0\15\u0132\1\0\5\u0132\1\0\3\u0132"+
- "\4\0\2\u0132\1\0\1\u0132\1\0\11\u0132\13\0\16\321"+
- "\1\0\1\322\1\0\6\321\1\146\1\145\1\0\15\321"+
- "\1\0\5\321\1\0\3\321\4\0\2\321\1\0\1\321"+
- "\1\0\11\321\33\0\1\321\75\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\3\6\1\u0134\11\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\6\6\1\u0135\7\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u0136\13\6\1\0\1\6\1\u0136\3\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\3\6"+
- "\1\u0137\11\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\u0138\14\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\1\6\1\u0139\3\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\12\6\1\u013a\2\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u013b"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\2\6\1\u013c\12\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\13\6\1\u013d"+
- "\1\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\6\6\1\u013e\7\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\6\6\1\u013f\7\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\7\6\1\u0140\5\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u0141"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\12\6\1\u0142\2\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\10\6\1\u0143\5\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\6\6\1\u0144\7\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u0145"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\u0146\11\6\1\u0147\2\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\7\6"+
- "\1\342\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\3\6\1\u0148\1\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\1\6"+
- "\1\u0142\13\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\1\u0149\1\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u014a"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\10\6\1\u014b\4\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\u014c\14\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\2\6\1\u014d\13\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u014e\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\4\6\1\u014f\10\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\10\6"+
- "\1\u0150\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u0151\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\10\6"+
- "\1\u0152\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u0153\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u0154\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\u0155\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\3\6\1\u0156\2\6"+
- "\1\u0157\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\6\6\1\u0158\7\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\u0159\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u015a\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\13\6"+
- "\1\u015b\1\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u015c\5\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\u015d\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u015e\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\2\6"+
- "\1\u015f\13\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u0160\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u0161\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\2\6\1\u0162\12\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\2\6"+
- "\1\u0163\13\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\2\6\1\u0164\12\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\1\u0165"+
- "\1\0\4\u0165\4\0\1\u0165\2\0\1\u0165\4\0\1\u0165"+
- "\1\0\1\u0165\5\0\1\u0165\1\0\1\u0165\3\0\1\u0165"+
- "\5\0\1\u0165\11\0\1\u0165\11\0\1\u0165\1\0\3\u0165"+
- "\1\0\2\u0165\14\0\1\u0166\1\0\4\u0166\4\0\1\u0166"+
- "\2\0\1\u0166\4\0\1\u0166\1\0\1\u0166\5\0\1\u0166"+
- "\1\0\1\u0166\3\0\1\u0166\5\0\1\u0166\11\0\1\u0166"+
- "\11\0\1\u0166\1\0\3\u0166\1\0\2\u0166\14\0\1\u0106"+
- "\1\0\4\u0106\1\0\1\245\2\0\1\u0106\2\0\1\u0106"+
- "\4\0\1\u0106\1\0\1\u0106\5\0\1\u0106\1\0\1\u0106"+
- "\2\0\1\245\1\u0106\5\0\1\u0106\11\0\1\u0106\11\0"+
- "\1\u0106\1\0\3\u0106\1\0\2\u0106\14\0\1\u0107\2\0"+
- "\2\u0107\5\0\1\246\11\0\1\246\21\0\1\247\11\0"+
- "\1\247\11\0\1\u0107\1\0\3\u0107\1\0\2\u0107\14\0"+
- "\1\u0107\2\0\2\u0107\65\0\1\u0107\1\0\3\u0107\1\0"+
- "\2\u0107\14\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\14\6\1\u0167\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\1\6\1\u0168\3\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\1\u010b\1\6\4\u010b\1\6\1\73\2\6\1\u010b"+
- "\1\75\1\6\1\u010b\1\u0106\1\77\1\0\1\6\1\u010b"+
- "\1\6\1\u010b\1\6\1\100\3\0\1\u010b\1\100\1\u010b"+
- "\1\101\1\6\1\73\1\u010b\3\6\1\75\1\6\1\u010b"+
- "\1\0\5\6\1\0\1\6\1\101\1\u010b\4\0\2\6"+
- "\1\0\1\6\1\0\1\u010b\1\6\3\u010b\1\6\2\u010b"+
- "\1\6\13\0\11\6\1\u0169\4\6\1\0\1\77\1\0"+
- "\6\6\3\0\11\6\1\u0169\3\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u016a"+
- "\3\6\1\u016a\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\5\6\1\u016a"+
- "\3\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u016a\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\1\6\1\u016b"+
- "\3\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\6\6\1\u016c\7\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\11\6\1\u016d\3\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u016e\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u016f\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\7\6\1\u0170\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\3\6\1\u0171"+
- "\1\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\6\6\1\u0172\7\6\1\0\1\77\1\0"+
- "\6\6\3\0\6\6\1\u0173\6\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\14\6\1\u0174"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u014b\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u0175\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\124\4\0\5\124\2\0\2\124"+
- "\1\u0176\13\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\2\124"+
- "\1\u0177\13\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\4\124"+
- "\1\u0178\11\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\1\124"+
- "\1\u0179\14\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\7\124"+
- "\1\u017a\6\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\3\124"+
- "\1\u017b\12\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\3\124"+
- "\1\u017c\12\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\14\124"+
- "\1\u017d\1\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\3\124"+
- "\1\u017e\12\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\7\124"+
- "\1\u017f\6\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\10\124"+
- "\1\u0180\5\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\10\124"+
- "\1\u0181\5\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\16\124"+
- "\1\0\3\124\1\u0182\5\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\3\124"+
- "\1\u0183\12\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\2\124"+
- "\1\u0184\13\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\2\124"+
- "\1\u0185\13\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\11\124"+
- "\1\u0186\4\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\16\124"+
- "\1\u0187\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\13\124\1\u0188\2\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\10\124\1\u0189\5\124\4\0\5\124\2\0\16\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\16\124\1\0\1\u018a"+
- "\10\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\u0130\1\0\1\u0131\1\0\6\u0130\1\316\1\315\1\0"+
- "\15\u0130\1\0\5\u0130\1\0\3\u0130\4\0\2\u0130\1\0"+
- "\1\u0130\1\0\11\u0130\33\0\1\u0130\75\0\16\u0132\1\0"+
- "\1\u0133\1\0\6\u0132\1\317\1\320\1\0\15\u0132\1\0"+
- "\5\u0132\1\0\3\u0132\4\0\2\u0132\1\0\1\u0132\1\0"+
- "\11\u0132\33\0\1\u0132\75\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\3\6\1\u018b\11\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\6\1\u018c"+
- "\13\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\6\6\1\u018d\7\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u018e"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\3\6\1\u018f\1\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\6\6\1\u0190\7\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\7\6\1\u0191\5\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\6\6\1\u0192\7\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\2\6\1\u0193\2\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u0194"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\10\6\1\u015c\1\6\1\u0195"+
- "\3\6\1\0\1\77\1\0\6\6\3\0\1\6\1\u015d"+
- "\12\6\1\u0196\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u0197\1\6"+
- "\1\u0195\3\6\1\0\1\77\1\0\6\6\3\0\1\6"+
- "\1\u015d\12\6\1\u0196\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\3\6\1\u0198\11\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\6\6\1\u0199\7\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u019a"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\u019b\14\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u019c\5\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\u015d\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u019d\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\1\u019e"+
- "\4\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\1\u019f\4\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u01a0\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\u01a1\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u01a2\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\4\6"+
- "\1\u01a3\10\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\6\6\1\u01a4\7\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\10\6\1\u01a5\5\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\7\6\1\u01a6\5\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\12\6"+
- "\1\u01a7\2\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\6\6\1\u01a8\7\6"+
- "\1\0\1\77\1\0\6\6\1\u01a9\2\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\1\u0168\1\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u01aa\1\6"+
- "\1\u01ab\3\6\1\0\1\77\1\0\6\6\3\0\1\6"+
- "\1\u01ac\12\6\1\u01ad\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u01ae"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\2\6\1\u01af"+
- "\12\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\4\6\1\u01b0\10\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\7\6\1\u01b1"+
- "\5\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\10\6\1\u01aa\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\u01ac\13\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\3\6\1\u01b2\11\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\4\6\1\u01b3"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\u01b4\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\13\6\1\u01b5\1\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\u01b6\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\6\1\u01b7\13\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\7\6"+
- "\1\u01b8\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\1\u01b9\2\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\7\6\1\u01ba"+
- "\5\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\6\1\u01bb\13\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u01bc"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\1\u01bd\1\0\4\u01bd\4\0"+
- "\1\u01bd\2\0\1\u01bd\4\0\1\u01bd\1\0\1\u01bd\5\0"+
- "\1\u01bd\1\0\1\u01bd\3\0\1\u01bd\5\0\1\u01bd\11\0"+
- "\1\u01bd\11\0\1\u01bd\1\0\3\u01bd\1\0\2\u01bd\14\0"+
- "\1\u01be\1\0\4\u01be\4\0\1\u01be\2\0\1\u01be\4\0"+
- "\1\u01be\1\0\1\u01be\5\0\1\u01be\1\0\1\u01be\3\0"+
- "\1\u01be\5\0\1\u01be\11\0\1\u01be\11\0\1\u01be\1\0"+
- "\3\u01be\1\0\2\u01be\14\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\6\6\1\u014b\6\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\10\6\1\u01bf\5\6\1\0\1\77\1\0\2\6\1\u01bf"+
- "\3\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\1\6\1\u01c0\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\u01c1\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\2\6\1\u01c2\13\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\u01c3\2\6\1\u01c4"+
- "\7\6\1\u01c5\1\6\1\0\4\6\1\u01c6\1\0\3\6"+
- "\4\0\1\u01c7\1\6\1\0\1\6\1\0\5\6\1\u01c8"+
- "\3\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u01c9\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\11\6\1\u01ca\3\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\13\6\1\u01cb\1\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\12\6\1\u01cc"+
- "\3\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u01cd\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\u01ce\12\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\14\6\1\u01cf\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\u01d0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u01d1\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\124\4\0\5\124\2\0\7\124"+
- "\1\u01d2\6\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\15\124"+
- "\1\u01d3\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\124\4\0\5\124\2\0\4\124\1\u01d4"+
- "\11\124\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\124\4\0\5\124\2\0\16\124\1\0"+
- "\1\u01d5\10\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\2\124\1\u01d6\13\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\16\124\1\0\2\124"+
- "\1\u01d7\6\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\13\124\1\u01d8\2\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\12\124\1\u01d9\3\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\10\124\1\u01da\5\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\4\124\1\u01db\11\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\1\124\1\u01dc\14\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\7\124\1\u01dd\6\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\11\124\1\u01de\4\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\14\124\1\u01df\1\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\14\124\1\u01e0\1\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\12\124\1\u01e1\3\124\4\0\5\124\2\0\2\124"+
- "\1\u01e2\1\u01e3\1\u01e4\1\124\1\u01e5\2\124\1\u01e6\4\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\3\124\1\u01e7\12\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\4\124\1\u01e8\11\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\14\124\1\u01e9\1\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\6\6\1\u01ea\7\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\13\6\1\u01eb\1\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\12\6\1\u01ec\3\6\1\0\1\77\1\0\6\6"+
- "\3\0\14\6\1\u01ed\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\6\6\1\u01ee"+
- "\7\6\1\0\1\77\1\0\6\6\1\u01ef\2\0\7\6"+
- "\1\u01f0\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\6\6\1\u01f1\7\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\12\6"+
- "\1\u01f2\2\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u01f3\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\2\6\1\u01f4\13\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\u01f5\2\6\1\u01f6\7\6\1\u01f7\1\6\1\0"+
- "\4\6\1\u01f8\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\u01f9\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\2\6\1\u01fa\12\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u01fb\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u01fc\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\11\6\1\u01fd\3\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u01fe\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\2\6\1\u01ff\13\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\u0200\2\6\1\u0201\7\6\1\u0202"+
- "\1\6\1\0\4\6\1\u0203\1\0\3\6\4\0\1\u0204"+
- "\1\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\u014b\14\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\12\6"+
- "\1\u0205\2\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\11\6\1\u0206\3\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\10\6"+
- "\1\u0167\4\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\7\6\1\u0207\5\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\340\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\14\6\1\u01fe\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u0168"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\u0208\14\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u0209\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\10\6\1\u020a\5\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\10\6\1\u020b\4\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\11\6\1\u020c\3\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u020d\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u020e\1\u020f\3\6\1\u0210\1\6\1\0"+
- "\4\6\1\u0211\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\25\0\1\u0212\62\0\1\u0213\20\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\11\6\1\u0214\3\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u0215\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u0216\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\13\6\1\u0217\1\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\11\6\1\u0218\3\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u0219\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\u021a\14\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\7\6\1\u021b\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u021c"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\6\6\1\u021d\7\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u021e\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\11\6\1\u021f\3\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\7\6\1\u0220\5\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u0221\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u0222"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\110\0\1\u0223\3\0\1\u0224\14\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\1\6\1\u0225"+
- "\3\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u0226\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u0227"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\1\u0228\1\0\4\u0228\4\0\1\u0228\2\0"+
- "\1\u0228\4\0\1\u0228\1\0\1\u0228\5\0\1\u0228\1\0"+
- "\1\u0228\3\0\1\u0228\5\0\1\u0228\11\0\1\u0228\11\0"+
- "\1\u0228\1\0\3\u0228\1\0\2\u0228\14\0\1\u0229\1\0"+
- "\4\u0229\4\0\1\u0229\2\0\1\u0229\4\0\1\u0229\1\0"+
- "\1\u0229\5\0\1\u0229\1\0\1\u0229\3\0\1\u0229\5\0"+
- "\1\u0229\11\0\1\u0229\11\0\1\u0229\1\0\3\u0229\1\0"+
- "\2\u0229\14\0\13\6\1\u022a\2\6\1\0\1\77\1\0"+
- "\6\6\3\0\12\6\1\u022a\2\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\6\1\u022b"+
- "\13\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\13\6\1\u022c\1\6\1\0\2\6\1\u022d"+
- "\2\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\1\u022e\4\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\1\u022f\4\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\2\6\1\u0230\13\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\10\6\1\u0231\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\13\6\1\u0232"+
- "\1\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\4\6\1\u0233\10\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\u0234\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\u0235\11\6\1\u0236\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u0237\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\2\6\1\u0238\12\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u0239\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u023a\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u023b\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\1\u023c\115\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\12\6\1\u023d\2\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\124\4\0\5\124\2\0\11\124\1\u023e\4\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\3\124\1\u023f\12\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\4\124\1\u0240\11\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\6\124\1\u0241\7\124\4\0\5\124\2\0\16\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\3\124\1\u0242\12\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\12\124\1\u0243\3\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\7\124\1\u0244\6\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\7\124\1\u0245\6\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\15\124\1\u0246\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\16\124\1\0\1\124\1\u0247"+
- "\7\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\16\124\1\0\1\124\1\u0248"+
- "\7\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\10\124\1\u0249\5\124\4\0\5\124\2\0\16\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\14\124\1\u024a\1\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\10\124\1\u024b\1\124\1\u024c"+
- "\3\124\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\124\4\0\5\124\2\0\5\124\1\u024d"+
- "\1\u024e\7\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\3\124"+
- "\1\u024f\12\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\7\124"+
- "\1\u0250\6\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\10\124"+
- "\1\u0251\5\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\13\124"+
- "\1\u0252\2\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\15\124"+
- "\1\u0253\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\u0254\14\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\11\6\1\u0255\3\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\1\6"+
- "\1\u0256\13\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\13\6\1\u0257\1\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\1\u0258"+
- "\2\6\1\u0259\11\6\1\0\4\6\1\u025a\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\63\0\1\u025b"+
- "\21\0\1\u025c\2\0\1\u025d\20\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\4\6\1\u025e\10\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\1\u025f"+
- "\14\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\13\6\1\u0260\1\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\u0261\14\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\13\6\1\u0262\1\6\1\0\2\6\1\u0263\2\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\1\u0264\4\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\1\u0265\4\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\2\6"+
- "\1\u0266\13\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\10\6\1\u0267\5\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\u0268\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u0269\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u026a\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\4\6\1\u026b\10\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u026c\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\u026d\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u026e\1\6"+
- "\1\0\2\6\1\u026f\2\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\1\u0270\4\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\1\u0271\4\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\2\6\1\u0272\13\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\10\6"+
- "\1\u0273\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\13\6\1\u0274\1\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\12\6"+
- "\1\u0275\3\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u0276\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u0277\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u0278\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u0279\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\11\6\1\u027a\3\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u0167\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\u027b\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\7\6\1\u027c\5\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\u027d\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u027e\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\2\6\1\u027f\13\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u0280\5\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\54\0\1\u0281\152\0\1\u0282\17\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\12\6\1\u0283\2\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\13\6"+
- "\1\u0284\1\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\11\6\1\u0285\3\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\4\6"+
- "\1\u0286\10\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\3\6\1\u0287\11\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\7\6"+
- "\1\u0288\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\1\u0289\4\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\13\6\1\u028a"+
- "\1\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\6\6\1\u028b\6\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\1\u028c\1\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\1\u028d\2\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\1\6\1\u026c"+
- "\3\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u028e\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\6\6\1\u028f"+
- "\7\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\u0290\14\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\111\0\1\u0291\113\0\1\u0292"+
- "\21\0\16\6\1\0\1\77\1\0\6\6\3\0\3\6"+
- "\1\u014b\11\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\u0293\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\u0168\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\1\u0294\1\0\4\u0294\4\0\1\u0294"+
- "\2\0\1\u0294\4\0\1\u0294\1\0\1\u0294\5\0\1\u0294"+
- "\1\0\1\u0294\3\0\1\u0294\5\0\1\u0294\11\0\1\u0294"+
- "\11\0\1\u0294\1\0\3\u0294\1\0\2\u0294\14\0\14\6"+
- "\1\264\1\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\2\6\1\264\2\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\6\6\1\u0295\7\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\13\6"+
- "\1\u0296\1\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\12\6\1\u0297\2\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\u0298\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\13\6\1\u0299\1\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\1\6\1\u029a\7\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\14\6\1\u029b\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\6\1\u029c"+
- "\13\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\10\6\1\u029d\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\1\u029e\115\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u029f\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u02a0"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\2\6\1\u02a1\7\6\1\u01ab\3\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\u02a2\1\u01ac\1\6\1\u02a3"+
- "\10\6\1\u01ad\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\u0168\14\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\10\6\1\u02a4\5\6\1\0\1\77\1\0\6\6\3\0"+
- "\3\6\1\u02a5\7\6\1\u02a6\1\u02a7\1\0\5\6\1\0"+
- "\3\6\4\0\1\u02a8\1\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\7\6"+
- "\1\u02a9\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\11\6\1\u02aa\3\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\103\0\1\u02ab\25\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\13\6\1\u02ac\1\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\124"+
- "\4\0\5\124\2\0\7\124\1\u02ad\6\124\1\0\11\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\13\0\16\124"+
- "\4\0\5\124\2\0\2\124\1\u02ae\13\124\1\0\11\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\13\0\16\124"+
- "\4\0\5\124\2\0\15\124\1\u02af\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\13\124\1\u02b0\2\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\14\124\1\u02b1\1\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\6\124\1\u02b2"+
- "\7\124\4\0\5\124\2\0\16\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\6\124\1\u02b3"+
- "\7\124\4\0\5\124\2\0\16\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\5\124\1\u02b4\10\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\5\124\1\u02b5\10\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\7\124\1\u02b6\6\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\1\124\1\u02b7\14\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\10\124\1\u02b8\5\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\12\124\1\u02b9\3\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\2\124\1\u02ba"+
- "\13\124\4\0\5\124\2\0\16\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\3\124\1\u02bb\12\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\1\124\1\u02bc\6\124\1\u02bd\5\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\13\124\1\u02be\2\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\13\124\1\u02bf\2\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\7\124\1\u02c0\6\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\1\u02c1\4\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\1\6\1\u02c2\3\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u02c3\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\4\6\1\u02c4\10\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\u02c5\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u02c6\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\10\6"+
- "\1\u02c7\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\23\0\1\u02c8\203\0\1\u02c9\17\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\u02ca\14\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u02cb\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\6\6\1\u02cc"+
- "\7\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\u014b\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\13\6\1\u02cd\1\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\u02ce\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\u02cf\12\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\13\6\1\u02d0\1\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\1\6\1\u02d1"+
- "\7\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\14\6\1\u02ce\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u02d2\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\10\6\1\u02d3\5\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u01fd\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\2\6\1\u02d4\13\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\1\u02d5\2\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\3\6\1\u02d6"+
- "\11\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\13\6\1\u02d7\1\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u02d8"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\2\6\1\u02d9\12\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\13\6\1\u02da"+
- "\1\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\1\6\1\u02db\7\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\14\6\1\u02dc"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u02dd\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\5\6\1\u014b\7\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\1\u02de\2\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\11\6\1\u02df\3\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u02e0\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\6\6\1\u02e1"+
- "\7\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\u02e2\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\13\6\1\u02e3\1\6\1\0"+
- "\4\6\1\u02e4\1\0\3\6\4\0\1\u02e5\1\6\1\0"+
- "\1\6\1\0\11\6\13\0\6\6\1\u02e6\7\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\u02e7\14\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\3\6\1\u02e8\11\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\1\6"+
- "\1\u02e9\7\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\14\6\1\u02ea\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\60\0\1\u02eb\50\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\2\6\1\u0214"+
- "\12\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\1\6\1\u0283\3\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\2\6\1\u02ec\13\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\12\6\1\u02ed\2\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\2\6\1\u02ee"+
- "\12\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\6\6\1\u02ef\7\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\7\6\1\u02f0"+
- "\5\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\11\6\1\u0261\3\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u02f1"+
- "\6\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\46\0\1\u02f2\40\0\1\u02f3\21\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\14\6\1\u02f4"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u02f5\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u02f6\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\1\u02f7\115\0\12\6\1\u02f8\3\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\u02f9\7\6\1\u02fa"+
- "\4\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\6\1\u02fb\13\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u02fc"+
- "\6\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\7\6\1\u02fc\5\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\7\6\1\u02fd"+
- "\5\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\6\6\1\u02fe\6\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u02ff"+
- "\6\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\2\6\1\u0300\12\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\u0301\14\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\103\0\1\u0302\25\0\6\6\1\u0303\7\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\u0304\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\2\6\1\u0305\2\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\1\u0306\4\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\1\u0307\4\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\11\6\1\u0308\3\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\4\6\1\u0309\5\6\1\u030a\2\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\2\6\1\u030b\13\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u030c\5\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\10\6\1\u030d\5\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u030e\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\u030f\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\1\u0310\1\0\4\u0310"+
- "\4\0\1\u0310\2\0\1\u0310\4\0\1\u0310\1\0\1\u0310"+
- "\5\0\1\u0310\1\0\1\u0310\3\0\1\u0310\5\0\1\u0310"+
- "\11\0\1\u0310\11\0\1\u0310\1\0\3\u0310\1\0\2\u0310"+
- "\14\0\6\6\1\u0311\7\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\124\4\0\5\124"+
- "\2\0\12\124\1\u0312\3\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\2\124\1\u0313\13\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u0314\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\10\124\1\u0315\5\124"+
- "\4\0\5\124\2\0\16\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\13\124\1\u0316\2\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\4\124\1\u0317\11\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\4\124\1\u0318\11\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\7\124\1\u0319\6\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\7\124\1\u031a\6\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\2\124\1\u031b\13\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u031c\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u031d\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\14\124\1\u031e\1\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u031f\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\10\124\1\u0320\5\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\16\124\1\0\3\124\1\u0321\5\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u0322\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\16\124\1\0\1\u0323\10\124\3\0\3\124\1\0"+
- "\1\124\1\0\11\124\13\0\16\124\4\0\5\124\2\0"+
- "\16\124\1\u0324\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\124\4\0\5\124\2\0\10\124\1\u0325"+
- "\5\124\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u0326\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\u0327\12\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\2\6\1\u0328\13\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\u0329\12\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\7\6\1\u032a\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\14\6\1\u032b\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\64\0\1\u032c\44\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u032d\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\3\6\1\u032e\11\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\10\6\1\u01aa\1\6\1\u01ab\3\6"+
- "\1\0\1\77\1\0\6\6\3\0\14\6\1\u01ad\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\6\1\u032f\13\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\6\6\1\u02c2\6\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\7\6\1\u02c2\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\7\6\1\u0327\5\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u0330\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\11\6\1\u0331\3\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\13\6\1\u0332\1\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\u0333\13\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\107\0\1\u02f3\21\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\4\6\1\u0334\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\u0335\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u0336\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\7\6\1\u0336\5\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u0337\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u0338\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u0339\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\2\6\1\u033a\12\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\46\0\1\u033b\40\0\1\u02f3\21\0\10\6"+
- "\1\u033c\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\14\6\1\u014b\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u033d"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\1\u033e"+
- "\2\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\2\6\1\u033f\13\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\10\6\1\u0340\5\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\13\6\1\u0341\1\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\u0342\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u0343\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\4\6"+
- "\1\u0344\10\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u0345\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\u0346\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\55\0\1\u0347\53\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\6\1\u0348\13\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\2\6\1\u0349\12\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\2\6"+
- "\1\u034a\2\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\12\6\1\u034b\3\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\u034c\7\6\1\u034d\4\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\7\6\1\u034e\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\23\0\1\u034f\141\0"+
- "\1\u0350\61\0\6\6\1\u0351\7\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\13\6\1\u0352\1\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u0157\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\103\0\1\u0353\25\0"+
- "\10\6\1\u0354\5\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\6\1\u0355\13\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u0356"+
- "\6\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\6\6\1\u0357\6\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u02fc"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\u0358\14\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u0359\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u035a\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\3\6"+
- "\1\u035b\1\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\1\u035c\1\0\4\u035c\4\0\1\u035c"+
- "\2\0\1\u035c\4\0\1\u035c\1\0\1\u035c\5\0\1\u035c"+
- "\1\0\1\u035c\3\0\1\u035c\5\0\1\u035c\11\0\1\u035c"+
- "\11\0\1\u035c\1\0\3\u035c\1\0\2\u035c\14\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u035d\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u035e\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u0348\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\2\6\1\u035f\12\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u0360\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u0361\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\5\6\1\u0362\7\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\2\6\1\u0363\12\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\1\6"+
- "\1\u0364\7\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u0365\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\7\6\1\u0366\5\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\2\6\1\u0367\2\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\4\6"+
- "\1\u0368\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\10\6\1\u01aa\5\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\6\1\u01ac\12\6\1\u01ad\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\124\4\0\5\124\2\0\13\124\1\u0369\2\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\13\124\1\u036a\2\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\14\124\1\u036b\1\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\3\124\1\u036c\12\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\16\124\1\0\4\124"+
- "\1\u036d\4\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\16\124\1\0\4\124"+
- "\1\u036e\4\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\15\124\1\u036f\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\2\124\1\u0370\13\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\16\124\1\0\2\124\1\u0371"+
- "\6\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\13\124\1\u0372\2\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\12\124\1\u0373\3\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\4\124\1\u0374\11\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\7\124\1\u0375\6\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\11\124\1\u0376\4\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\14\124\1\u0377\1\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\2\124\1\u0378\13\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\4\124\1\u0379\11\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\11\6\1\u037a"+
- "\3\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\12\6\1\u02c2\2\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\6\1\u02ce"+
- "\13\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\3\6\1\u037b\11\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\10\6\1\u037c\5\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\6\6\1\u037d\6\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\63\0"+
- "\1\u037e\45\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\13\6\1\u037f\1\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u0380\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u0381\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\u0327\14\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\1\6\1\u0382\3\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\11\6\1\u014b\3\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\u026c\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u0383\5\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\u0384\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\12\6\1\u0336\2\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\1\u0385"+
- "\14\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\6\6\1\u0386\7\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\12\6\1\u0387"+
- "\2\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\23\0\1\u0388\105\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\1\6\1\u0278\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\u0389\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\46\0\1\u033b\62\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\1\6"+
- "\1\u038a\7\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\14\6\1\u038b\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u038c"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\11\6\1\u038d\3\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\u038e\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\5\6\1\u038f\7\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\6\1\u0390\13\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\u0391\14\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\1\u01a9\2\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\110\0\1\u0392\20\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\6\6\1\u0283\6\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\11\6\1\u0393\3\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u0394"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\1\6\1\u0395\13\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\6\6\1\u0396\6\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\10\6\1\u0397\5\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\57\0\1\u0398\117\0"+
- "\1\u0399\47\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\3\6\1\u039a\11\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\6\6\1\u039b"+
- "\7\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\1\u039c\1\0\4\u039c\4\0\1\u039c\2\0"+
- "\1\u039c\4\0\1\u039c\1\0\1\u039c\5\0\1\u039c\1\0"+
- "\1\u039c\3\0\1\u039c\5\0\1\u039c\11\0\1\u039c\11\0"+
- "\1\u039c\1\0\3\u039c\1\0\2\u039c\14\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\6\6\1\u039d\6\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u039e\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u039f\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u03a0\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u02ff\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\1\u01c7\1\6"+
- "\1\0\1\6\1\0\5\6\1\u01c8\3\6\13\0\10\6"+
- "\1\u03a1\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\12\6\1\u034a\3\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\10\6"+
- "\1\u03a2\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u0283\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\7\6\1\u0214\5\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u03a3\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u03a4\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u03a5\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u03a6\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u03a7\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u03a8\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\u03a9\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\6\6"+
- "\1\u03aa\7\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\124\4\0\5\124\2\0\4\124"+
- "\1\u03ab\11\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\3\124"+
- "\1\u03ac\12\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\12\124"+
- "\1\u03ad\3\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\13\124"+
- "\1\u03ae\2\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\10\124\1\u03af\5\124\4\0\5\124"+
- "\2\0\16\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\10\124\1\u03b0\5\124\4\0\5\124"+
- "\2\0\16\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\6\124\1\u03b1\7\124\4\0\5\124"+
- "\2\0\16\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\3\124"+
- "\1\u03b2\12\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\12\124"+
- "\1\u03b3\3\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\7\124"+
- "\1\u03b4\6\124\1\0\11\124\3\0\3\124\1\0\1\124"+
- "\1\0\11\124\13\0\16\124\4\0\5\124\2\0\15\124"+
- "\1\u03b5\1\0\11\124\3\0\3\124\1\0\1\124\1\0"+
- "\11\124\13\0\16\124\4\0\5\124\2\0\15\124\1\u03b6"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\14\124\1\u03b7\1\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\1\6\1\u03b8\3\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\3\6\1\u0380\11\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\u03b9\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\1\u03ba\2\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\110\0"+
- "\1\u03bb\20\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\7\6\1\u014b\5\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\u03bc\12\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\u03bd\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u03be\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u03bf\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u0339\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\1\u0204\1\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u03c0\5\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\57\0\1\u03c1\51\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u03c2\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u03c3\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u03c4\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\14\6\1\u03c5\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\u03c6\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u03c7"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\u03c8\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\12\6\1\u03c9\2\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\12\6\1\u0346\2\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\111\0\1\u03ca\17\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\u03cb\14\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u03cc\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\2\6\1\u03cd\12\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u03ce\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\12\6"+
- "\1\u03cf\3\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\110\0\1\u03d0\2\0\1\u03d1\63\0\1\u03d2"+
- "\47\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\2\6\1\u03d3\2\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\10\6\1\u01aa\1\6"+
- "\1\u01ab\3\6\1\0\1\77\1\0\6\6\3\0\1\6"+
- "\1\u01ac\13\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\6\1\u03d4\13\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\3\6"+
- "\1\u03d5\11\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\1\u03d6\4\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\11\6\1\u02fc"+
- "\3\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\6\1\u03d7\13\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\13\6\1\u03d8"+
- "\1\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\7\6\1\u03d9\5\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\7\6\1\u03da"+
- "\5\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\10\6\1\u03db\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\u03dc\14\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\u03dd\14\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\4\6\1\u03de\10\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\14\6\1\u03df\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u03e0\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\10\124\1\u03e1\5\124\4\0\5\124\2\0\16\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\13\124\1\u03e2\2\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\13\124\1\u03e3\2\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\15\124\1\u03e4\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\13\124\1\u03e5\2\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\14\124\1\u03e6\1\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\6\124\1\u03e7\7\124\4\0\5\124\2\0\16\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\6\124\1\u03e8\7\124\4\0\5\124\2\0\16\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\1\124\1\u03e9\14\124\1\0"+
- "\11\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u0290"+
- "\6\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\1\6\1\u03ea\3\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\63\0"+
- "\1\u03eb\24\0\1\u025d\3\0\1\u03ec\112\0\1\u03ed\17\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\11\6\1\u02c2"+
- "\3\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\1\u0283\4\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\u03ee\14\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\11\6\1\u0336\3\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\6\1\u03ef\13\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\113\0\1\u03d1\15\0\10\6\1\u03f0\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\1\u03c7\14\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\u03f1\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u03f2\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u03c4\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\10\6"+
- "\1\u03f3\5\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\6\6\1\u03f4\7\6\1\0\1\77"+
- "\1\0\6\6\3\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u0380\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u03f5\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\3\6\1\u03f6\11\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\1\u03f7\4\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\6\1\u03f8"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\111\0\1\u03f9\60\0\1\u03fa\54\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\11\6\1\u03fb\3\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\14\6\1\u03fc\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\3\6\1\u03fc\11\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\13\6"+
- "\1\u03d4\1\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u03fd\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\u0290\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\12\6\1\u03fe\3\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\6\6\1\u03ff\7\6\1\0\1\77\1\0\6\6"+
- "\1\u0400\2\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\u0401\14\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\12\6"+
- "\1\u0402\2\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\12\6\1\u0403\2\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\u0404\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u0405\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\7\6"+
- "\1\u0406\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\124\4\0\5\124"+
- "\2\0\14\124\1\u0407\1\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\1\124\1\u0408\14\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\1\124\1\u0409\14\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u040a\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\10\124\1\u040b\5\124"+
- "\4\0\5\124\2\0\16\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\13\124\1\u040c\2\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\4\124\1\u040d\11\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\4\124\1\u040e\11\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u040f\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\1\u0410\2\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\23\0"+
- "\1\u0411\201\0\1\u0412\21\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\1\u0413\4\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\6\6\1\u0414\6\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\11\6\1\u0415\3\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\2\6"+
- "\1\u0416\13\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u03c4\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u0417\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\13\6\1\u02e3\1\6\1\0\4\6\1\u02e4\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\14\6\1\u02f0"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\3\6\1\u02f0\11\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\13\6\1\u03f5\1\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\u0418\14\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\1\u0146\14\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\6\6\1\u0419\7\6\1\0\1\77\1\0\6\6"+
- "\3\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u041a\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\5\6\1\u041b\3\6\54\0\1\u041c\54\0\16\6"+
- "\1\0\1\77\1\0\6\6\1\u0400\2\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\6\6\1\u041d\7\6\1\0\1\77\1\0"+
- "\6\6\3\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\6\6\1\u041e"+
- "\7\6\1\0\1\77\1\0\6\6\1\u0400\2\0\15\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\1\6\1\u03da\13\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u041f\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u0420\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\124"+
- "\4\0\5\124\2\0\12\124\1\u0421\3\124\1\0\11\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\13\0\16\124"+
- "\4\0\5\124\2\0\16\124\1\0\1\u0422\10\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\16\124\1\0\1\u0423\10\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\13\124\1\u0424\2\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\14\124\1\u0425\1\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\3\124\1\u0426\12\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\16\124\1\0\4\124\1\u0427\4\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\16\124\1\0\4\124\1\u0428\4\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\13\0\16\124\4\0\5\124"+
- "\2\0\2\124\1\u0429\13\124\1\0\11\124\3\0\3\124"+
- "\1\0\1\124\1\0\11\124\106\0\1\u042a\73\0\1\u042b"+
- "\44\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\u042c\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u042d\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\11\6"+
- "\1\u03c4\3\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\2\6\1\u042e\12\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\2\6"+
- "\1\u042f\12\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\u0430\14\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\4\6\1\u0431"+
- "\10\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\47\0\1\u0432\61\0\10\6\1\u0433"+
- "\5\6\1\0\1\77\1\0\6\6\3\0\15\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\6\6\1\u0434\6\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\2\6\1\u0413\12\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\2\6\1\u0435\12\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\124\4\0"+
- "\5\124\2\0\3\124\1\u0436\12\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\12\124\1\u0437\3\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\13\124\1\u0438\2\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\10\124\1\u0439"+
- "\5\124\4\0\5\124\2\0\16\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\10\124\1\u043a"+
- "\5\124\4\0\5\124\2\0\16\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\51\0\1\u043b\127\0"+
- "\1\u043c\45\0\16\6\1\0\1\77\1\0\6\6\1\u043d"+
- "\2\0\15\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\7\6\1\u043e\5\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\12\6"+
- "\1\u043f\2\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\1\u0440\14\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\6\6\1\u0401"+
- "\6\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\10\6\1\u0441\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\56\0"+
- "\1\u0442\52\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\11\6\1\u0443\3\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\3\0\10\6\1\u0444\4\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\13\0\16\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\2\6\1\u0445\2\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\10\124\1\u0446"+
- "\5\124\4\0\5\124\2\0\16\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\13\124\1\u0447\2\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\13\0\16\124\4\0"+
- "\5\124\2\0\13\124\1\u0448\2\124\1\0\11\124\3\0"+
- "\3\124\1\0\1\124\1\0\11\124\55\0\1\u0449\150\0"+
- "\1\u044a\61\0\1\u044b\54\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\7\6\1\u044c\5\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\10\6\1\u044d\5\6\1\0\1\77\1\0\6\6\3\0"+
- "\15\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\3\0\1\u044e\14\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\1\u044f\14\6\1\0"+
- "\5\6\1\0\3\6\4\0\2\6\1\0\1\6\1\0"+
- "\11\6\64\0\1\u0450\44\0\10\6\1\u0451\5\6\1\0"+
- "\1\77\1\0\6\6\3\0\15\6\1\0\5\6\1\0"+
- "\3\6\4\0\2\6\1\0\1\6\1\0\11\6\13\0"+
- "\16\6\1\0\1\77\1\0\6\6\3\0\5\6\1\u0452"+
- "\7\6\1\0\5\6\1\0\3\6\4\0\2\6\1\0"+
- "\1\6\1\0\11\6\13\0\16\6\1\0\1\77\1\0"+
- "\6\6\1\u0453\2\0\15\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\124"+
- "\4\0\5\124\2\0\14\124\1\u0454\1\124\1\0\11\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\13\0\16\124"+
- "\4\0\5\124\2\0\1\124\1\u0455\14\124\1\0\11\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\13\0\16\124"+
- "\4\0\5\124\2\0\1\124\1\u0456\14\124\1\0\11\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\15\0\1\u0457"+
- "\211\0\1\u0458\53\0\1\u0459\61\0\10\6\1\u045a\5\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\13\6"+
- "\1\u045b\1\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\6\6\1\u03cd\6\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\3\6\1\u045c\1\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\53\0\1\u045d\55\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\12\6\1\u045e\2\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\12\6\1\u045f\2\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\54\0\1\u0460"+
- "\54\0\16\124\4\0\5\124\2\0\12\124\1\u0461\3\124"+
- "\1\0\11\124\3\0\3\124\1\0\1\124\1\0\11\124"+
- "\13\0\16\124\4\0\5\124\2\0\16\124\1\0\1\u0462"+
- "\10\124\3\0\3\124\1\0\1\124\1\0\11\124\13\0"+
- "\16\124\4\0\5\124\2\0\16\124\1\0\1\u0463\10\124"+
- "\3\0\3\124\1\0\1\124\1\0\11\124\60\0\1\u0464"+
- "\113\0\1\u0465\52\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\6\6\1\u0466\6\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\13\0\16\6"+
- "\1\0\1\77\1\0\6\6\3\0\11\6\1\u0467\3\6"+
- "\1\0\5\6\1\0\3\6\4\0\2\6\1\0\1\6"+
- "\1\0\11\6\13\0\16\6\1\0\1\77\1\0\6\6"+
- "\1\u0468\2\0\15\6\1\0\5\6\1\0\3\6\4\0"+
- "\2\6\1\0\1\6\1\0\11\6\13\0\16\6\1\0"+
- "\1\77\1\0\6\6\1\u0469\2\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\13\0\16\6\1\0\1\77\1\0\6\6\3\0\15\6"+
- "\1\0\2\6\1\u046a\2\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\47\0\1\u046b\132\0\1\u046c"+
- "\44\0\16\6\1\0\1\77\1\0\6\6\3\0\7\6"+
- "\1\u046d\5\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\13\0\6\6\1\u046e\7\6"+
- "\1\0\1\77\1\0\6\6\3\0\15\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\54\0\1\u046f\115\0\1\u0470\117\0\1\u0471\112\0\1\u0472"+
- "\55\0\16\6\1\0\1\77\1\0\6\6\3\0\6\6"+
- "\1\u0473\6\6\1\0\5\6\1\0\3\6\4\0\2\6"+
- "\1\0\1\6\1\0\11\6\47\0\1\u0474\115\0\1\u0475"+
- "\132\0\1\u0476\44\0\16\6\1\0\1\77\1\0\6\6"+
- "\3\0\7\6\1\u0477\5\6\1\0\5\6\1\0\3\6"+
- "\4\0\2\6\1\0\1\6\1\0\11\6\56\0\1\u0478"+
- "\115\0\1\u0479\112\0\1\u047a\55\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\7\6\1\u047b\5\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\64\0\1\u047c\115\0\1\u047d\44\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\13\6\1\u047e\1\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\53\0\1\u047f\115\0\1\u0480\55\0\16\6\1\0\1\77"+
- "\1\0\6\6\3\0\7\6\1\u0481\5\6\1\0\5\6"+
- "\1\0\3\6\4\0\2\6\1\0\1\6\1\0\11\6"+
- "\12\0";
+ "\1\6\1\7\1\10\1\11\2\12\1\10\1\13\1\10"+
+ "\1\14\1\15\1\16\3\10\1\17\1\20\1\6\1\10"+
+ "\1\21\1\22\2\21\1\23\2\6\1\24\1\25\1\26"+
+ "\1\27\1\30\1\31\1\32\1\33\1\34\1\35\1\36"+
+ "\1\37\1\40\1\41\1\42\1\10\1\43\3\10\1\6"+
+ "\1\10\2\21\1\44\1\45\1\42\1\6\1\46\1\10"+
+ "\1\6\1\47\1\50\1\12\1\10\3\12\1\10\2\12"+
+ "\1\51\1\52\1\6\1\53\1\54\1\55\1\56\1\57"+
+ "\1\60\1\61\1\42\23\62\4\63\31\62\2\63\34\62"+
+ "\23\64\4\63\1\65\2\64\1\66\25\64\2\63\34\64"+
+ "\62\67\1\70\1\67\1\71\1\72\30\67\63\73\1\74"+
+ "\1\75\1\76\30\73\117\0\1\77\1\100\1\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\100\1\0\1\77\1\10\3\77\1\10\1\101"+
+ "\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"+
+ "\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\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\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"+
+ "\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\0\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\1\0\3\10\4\0\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\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"+
+ "\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"+
+ "\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\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\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\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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\3\10\4\0\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\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\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\3\10\4\0\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"+
+ "\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\3\10\4\0\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"+
+ "\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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\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\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\3\10\4\0\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"+
+ "\1\0\3\10\4\0\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"+
+ "\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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\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\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\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\3\10\4\0\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"+
+ "\1\0\3\10\4\0\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\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\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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\0\3\10\4\0\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\u01b0\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\3\10\4\0\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\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\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"+
+ "\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\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\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\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"+
+ "\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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\3\10\4\0\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\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\3\10\4\0\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\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\3\10\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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\3\10\4\0\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"+
+ "\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\0\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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\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\3\10\4\0\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\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\3\10\4\0\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\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\3\10\4\0\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"+
+ "\3\10\4\0\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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\0\3\10\4\0\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\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\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\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\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\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\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\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"+
+ "\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\0\3\10\4\0\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\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\3\10\4\0\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\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"+
+ "\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\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\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\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\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\u0286\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\u0287\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\u0288\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\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\0\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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"+
+ "\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\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"+
+ "\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"+
+ "\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\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\3\10\4\0\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\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\3\10\4\0\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\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\3\10\4\0\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\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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\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"+
+ "\1\0\3\10\4\0\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\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"+
+ "\1\0\3\10\4\0\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"+
+ "\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\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\1\0\3\10\4\0\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"+
+ "\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\3\10\4\0\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"+
+ "\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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\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"+
+ "\5\10\1\0\3\10\4\0\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\0\3\10\4\0\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"+
+ "\1\0\3\10\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\3\10\4\0\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\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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\3\10\4\0\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"+
+ "\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\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"+
+ "\1\0\3\10\4\0\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\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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\7\10\1\u033a\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\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\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\3\10\4\0\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\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\3\10\4\0\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"+
+ "\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\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\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"+
+ "\3\10\4\0\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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\3\10\4\0\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\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\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"+
+ "\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\3\10\4\0\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"+
+ "\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\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\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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\3\10\4\0\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"+
+ "\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"+
+ "\13\0\16\10\1\0\1\106\1\0\6\10\1\u03ca\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\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\1\0\3\10\4\0\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"+
+ "\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"+
+ "\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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\0\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\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\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\0\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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"+
+ "\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"+
+ "\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\13\0\16\10\1\0"+
+ "\1\106\1\0\6\10\3\0\14\10\1\u040c\1\0\5\10"+
+ "\1\0\3\10\4\0\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\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\3\10\4\0\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\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\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"+
+ "\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\3\10\4\0\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\16\10\1\0\1\106"+
+ "\1\0\6\10\3\0\2\10\1\u0414\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\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"+
+ "\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\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"+
+ "\4\0\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\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\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\4\0\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"+
+ "\5\10\1\0\3\10\4\0\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\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\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"+
+ "\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"+
+ "\4\0\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\5\10\1\0\3\10\4\0\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"+
+ "\1\0\3\10\4\0\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\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\3\10\4\0\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\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\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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"+
+ "\5\10\1\0\3\10\4\0\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\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\0\3\10\4\0\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\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\3\10\4\0\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"+
+ "\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"+
+ "\10\10\1\u0451\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"+
+ "\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\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"+
+ "\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\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\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"+
+ "\1\0\3\10\4\0\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"+
+ "\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\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"+
+ "\1\0\5\10\1\0\3\10\4\0\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"+
+ "\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\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"+
+ "\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";
private static int [] zzUnpackTrans() {
- int [] result = new int[81198];
+ int [] result = new int[81900];
int offset = 0;
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
return result;
@@ -2733,33 +2750,33 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute();
private static final String ZZ_ATTRIBUTE_PACKED_0 =
- "\3\0\1\11\35\1\2\11\5\1\7\11\1\1\2\11"+
+ "\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\11\15\1\1\11\12\1\1\0\1\1\1\0\1\1"+
- "\2\0\54\1\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\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\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";
private static int [] zzUnpackAttribute() {
- int [] result = new int[1153];
+ int [] result = new int[1169];
int offset = 0;
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
return result;
@@ -2810,12 +2827,12 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
private int yychar;
/**
- * the number of characters from the last newline up to the start of the
+ * the number of characters from the last newline up to the start of the
* matched text
*/
private int yycolumn;
- /**
+ /**
* zzAtBOL == true <=> the scanner is currently at the beginning of a line
*/
private boolean zzAtBOL = true;
@@ -3003,7 +3020,7 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
this(new java.io.InputStreamReader(in));
}
- /**
+ /**
* Unpacks the compressed character translation table.
*
* @param packed the packed character translation table
@@ -3026,7 +3043,7 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
* Refills the input buffer.
*
* @return <code>false</code>, iff there was new input.
- *
+ *
* @exception java.io.IOException if any I/O-Error occurs
*/
private boolean zzRefill() throws java.io.IOException {
@@ -3060,7 +3077,7 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
zzEndRead+= numRead;
return false;
}
- // unlikely but not impossible: read 0 characters, but not at end of stream
+ // unlikely but not impossible: read 0 characters, but not at end of stream
if (numRead == 0) {
int c = zzReader.read();
if (c == -1) {
@@ -3068,14 +3085,14 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
} else {
zzBuffer[zzEndRead++] = (char) c;
return false;
- }
+ }
}
// numRead < 0
return true;
}
-
+
/**
* Closes the input stream.
*/
@@ -3092,11 +3109,11 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
* Resets the scanner to read from a new input stream.
* Does not close the old reader.
*
- * All internal variables are reset, the old input stream
+ * All internal variables are reset, the old input stream
* <b>cannot</b> be reused (internal buffer is discarded and lost).
* Lexical state is set to <tt>ZZ_INITIAL</tt>.
*
- * @param reader the new input stream
+ * @param reader the new input stream
*/
public final void yyreset(java.io.Reader reader) {
zzReader = reader;
@@ -3137,12 +3154,12 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
/**
- * Returns the character at position <tt>pos</tt> from the
- * matched text.
- *
+ * Returns the character at position <tt>pos</tt> from the
+ * matched text.
+ *
* It is equivalent to yytext().charAt(pos), but faster
*
- * @param pos the position of the character to fetch.
+ * @param pos the position of the character to fetch.
* A value from 0 to yylength()-1.
*
* @return the character at position pos
@@ -3163,8 +3180,8 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
/**
* Reports an error that occured while scanning.
*
- * In a wellformed scanner (no or only correct usage of
- * yypushback(int) and a match-all fallback rule) this method
+ * In a wellformed scanner (no or only correct usage of
+ * yypushback(int) and a match-all fallback rule) this method
* will only be called with things that "Can't Possibly Happen".
* If this method is called, something is seriously wrong
* (e.g. a JFlex bug producing a faulty scanner etc.).
@@ -3184,7 +3201,7 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
}
throw new Error(message);
- }
+ }
/**
@@ -3274,9 +3291,9 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
zzEndReadL = zzEndRead;
zzMarkedPosL = zzMarkedPos;
zzBufferL = zzBuffer;
- if (eof)
+ if (eof)
zzPeek = false;
- else
+ else
zzPeek = zzBufferL[zzMarkedPosL] == '\n';
}
if (zzPeek) yyline--;
@@ -3284,13 +3301,13 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
zzAction = -1;
zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
-
+
zzState = ZZ_LEXSTATE[zzLexicalState];
zzForAction: {
while (true) {
-
+
if (zzCurrentPosL < zzEndReadL)
zzInput = zzBufferL[zzCurrentPosL++];
else if (zzAtEOF) {
@@ -3333,366 +3350,382 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
zzMarkedPos = zzMarkedPosL;
switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
- case 102:
+ case 104:
{ return newToken(INSTRUCTION_FORMAT22b);
}
- case 134: break;
- case 96:
- { return newToken(VTABLE_INDEX);
- }
- case 135: break;
- case 85:
- { return newToken(PROLOGUE_DIRECTIVE);
- }
case 136: break;
- case 39:
- { sb.append('\r');
+ case 98:
+ { return newToken(VTABLE_INDEX);
}
case 137: break;
- case 97:
- { return newToken(IMPLEMENTS_DIRECTIVE);
+ case 87:
+ { return newToken(PROLOGUE_DIRECTIVE);
}
case 138: break;
- case 111:
- { return newToken(INSTRUCTION_FORMAT21c_FIELD_ODEX);
+ case 41:
+ { sb.append('\r');
}
case 139: break;
- case 100:
- { return newToken(END_METHOD_DIRECTIVE);
+ case 99:
+ { return newToken(IMPLEMENTS_DIRECTIVE);
}
case 140: break;
- case 119:
- { return newToken(INSTRUCTION_FORMAT35c_TYPE);
+ case 113:
+ { return newToken(INSTRUCTION_FORMAT21c_FIELD_ODEX);
}
case 141: break;
- case 43:
- { sb.append('\'');
+ case 102:
+ { return newToken(END_METHOD_DIRECTIVE);
}
case 142: break;
- case 8:
- { beginStringOrChar(CHAR); sb.append('\'');
+ case 121:
+ { return newToken(INSTRUCTION_FORMAT35c_TYPE);
}
case 143: break;
- case 47:
- { return newToken(PARAM_LIST);
+ case 45:
+ { sb.append('\'');
}
case 144: break;
- case 41:
- { sb.append('\t');
+ case 8:
+ { beginStringOrChar(CHAR); sb.append('\'');
}
case 145: break;
- case 57:
- { return newToken(BOOL_LITERAL);
+ case 43:
+ { sb.append('\t');
}
case 146: break;
- case 121:
- { return newToken(INSTRUCTION_FORMAT35ms_METHOD);
+ case 59:
+ { return newToken(BOOL_LITERAL);
}
case 147: break;
- case 94:
- { return newToken(INSTRUCTION_FORMAT51l);
+ case 123:
+ { return newToken(INSTRUCTION_FORMAT35ms_METHOD);
}
case 148: break;
- case 59:
- { return newToken(ANNOTATION_VISIBILITY);
+ case 96:
+ { return newToken(INSTRUCTION_FORMAT51l);
}
case 149: break;
- case 72:
- { sb.append((char)Integer.parseInt(yytext().substring(2,6), 16));
+ case 61:
+ { return newToken(ANNOTATION_VISIBILITY);
}
case 150: break;
- case 34:
- { return newToken(REGISTER);
+ case 74:
+ { sb.append((char)Integer.parseInt(yytext().substring(2,6), 16));
}
case 151: break;
- case 77:
- { return newToken(INSTRUCTION_FORMAT32x);
+ case 36:
+ { return newToken(REGISTER);
}
case 152: break;
- case 118:
- { return newToken(END_ANNOTATION_DIRECTIVE);
+ case 79:
+ { return newToken(INSTRUCTION_FORMAT32x);
}
case 153: break;
- case 48:
- { return newToken(CLASS_DESCRIPTOR);
+ case 120:
+ { return newToken(END_ANNOTATION_DIRECTIVE);
}
case 154: break;
- case 2:
- { return newToken(POSITIVE_INTEGER_LITERAL);
+ case 50:
+ { return newToken(CLASS_DESCRIPTOR);
}
case 155: break;
- case 11:
- { return newToken(EQUAL);
+ case 2:
+ { return newToken(POSITIVE_INTEGER_LITERAL);
}
case 156: break;
- case 26:
- { return newToken(LONG_LITERAL);
+ case 11:
+ { return newToken(EQUAL);
}
case 157: break;
- case 87:
- { return newToken(INSTRUCTION_FORMAT22c_TYPE);
+ case 28:
+ { return newToken(LONG_LITERAL);
}
case 158: break;
- case 1:
- { return invalidToken("Invalid text");
+ case 89:
+ { return newToken(INSTRUCTION_FORMAT22c_TYPE);
}
case 159: break;
- case 79:
- { return newToken(INSTRUCTION_FORMAT30t);
+ case 1:
+ { return invalidToken("Invalid text");
}
case 160: break;
- case 110:
- { return newToken(INSTRUCTION_FORMAT31t);
+ case 81:
+ { return newToken(INSTRUCTION_FORMAT30t);
}
case 161: break;
- case 25:
- { return newToken(DOUBLE_LITERAL);
+ case 19:
+ { yypushback(1); yybegin(YYINITIAL); return newToken(PARAM_LIST_END);
}
case 162: break;
- case 90:
- { return newToken(END_FIELD_DIRECTIVE);
+ case 112:
+ { return newToken(INSTRUCTION_FORMAT31t);
}
case 163: break;
- case 17:
- { return newToken(CLOSE_PAREN);
+ case 27:
+ { return newToken(DOUBLE_LITERAL);
}
case 164: break;
- case 27:
- { return newToken(SHORT_LITERAL);
+ case 92:
+ { return newToken(END_FIELD_DIRECTIVE);
}
case 165: break;
- case 71:
- { return newToken(PARAMETER_DIRECTIVE);
+ case 17:
+ { return newToken(CLOSE_PAREN);
}
case 166: break;
- case 12:
- { return newToken(COLON);
+ case 73:
+ { return newToken(PARAMETER_DIRECTIVE);
}
case 167: break;
- case 70:
- { return newToken(SUPER_DIRECTIVE);
+ case 29:
+ { return newToken(SHORT_LITERAL);
}
case 168: break;
- case 84:
- { return newToken(CATCHALL_DIRECTIVE);
+ case 12:
+ { return newToken(COLON);
}
case 169: break;
- case 68:
- { return newToken(CATCH_DIRECTIVE);
+ case 72:
+ { return newToken(SUPER_DIRECTIVE);
}
case 170: break;
- case 29:
- { return newToken(NEGATIVE_INTEGER_LITERAL);
+ case 86:
+ { return newToken(CATCHALL_DIRECTIVE);
}
case 171: break;
- case 115:
- { return newToken(RESTART_LOCAL_DIRECTIVE);
+ case 70:
+ { return newToken(CATCH_DIRECTIVE);
}
case 172: break;
- case 35:
+ case 31:
+ { return newToken(NEGATIVE_INTEGER_LITERAL);
+ }
+ case 173: break;
+ case 117:
+ { return newToken(RESTART_LOCAL_DIRECTIVE);
+ }
+ case 174: break;
+ case 37:
{ sb.append(yytext());
setStringOrCharError("Invalid escape sequence " + yytext());
}
- case 173: break;
- case 132:
+ case 175: break;
+ case 134:
{ return newToken(INSTRUCTION_FORMAT3rc_METHOD_ODEX);
}
- case 174: break;
- case 101:
+ case 176: break;
+ case 103:
{ return newToken(INSTRUCTION_FORMAT22x);
}
- case 175: break;
- case 38:
+ case 177: break;
+ case 40:
{ sb.append(yytext());
setStringOrCharError("Invalid \\u sequence. \\u must be followed by 4 hex digits");
}
- case 176: break;
- case 89:
+ case 178: break;
+ case 91:
{ return newToken(INLINE_INDEX);
}
- case 177: break;
- case 19:
+ case 179: break;
+ case 21:
{ sb.append('"'); return endStringOrChar(STRING_LITERAL);
}
- case 178: break;
- case 129:
+ case 180: break;
+ case 131:
{ return newToken(INSTRUCTION_FORMAT3rmi_METHOD);
}
- case 179: break;
- case 52:
+ case 181: break;
+ case 54:
{ return newToken(INSTRUCTION_FORMAT23x);
}
- case 180: break;
- case 83:
+ case 182: break;
+ case 85:
{ return newToken(FIELD_OFFSET);
}
- case 181: break;
- case 31:
+ case 183: break;
+ case 33:
{ return newToken(DOTDOT);
}
- case 182: break;
- case 9:
+ case 184: break;
+ case 9:
{ return newToken(LINE_COMMENT, true);
}
- case 183: break;
- case 78:
+ case 185: break;
+ case 18:
+ { yypushback(1); yybegin(YYINITIAL); return newToken(PARAM_LIST_OR_ID_END);
+ }
+ case 186: break;
+ case 80:
{ return newToken(INSTRUCTION_FORMAT20t);
}
- case 184: break;
- case 28:
+ case 187: break;
+ case 30:
{ return newToken(DOUBLE_LITERAL_OR_ID);
}
- case 185: break;
- case 82:
+ case 188: break;
+ case 84:
{ return newToken(VERIFICATION_ERROR_TYPE);
}
- case 186: break;
- case 65:
+ case 189: break;
+ case 67:
{ return newToken(INSTRUCTION_FORMAT21t);
}
- case 187: break;
- case 6:
+ case 190: break;
+ case 6:
{ return newToken(WHITE_SPACE, true);
}
- case 188: break;
- case 13:
+ case 191: break;
+ case 34:
+ { yypushback(yylength());
+ yybegin(PARAM_LIST_OR_ID);
+ return newToken(PARAM_LIST_OR_ID_START);
+ }
+ case 192: break;
+ case 13:
{ return newToken(COMMA);
}
- case 189: break;
- case 67:
+ case 193: break;
+ case 69:
{ return newToken(CLASS_DIRECTIVE);
}
- case 190: break;
- case 104:
+ case 194: break;
+ case 106:
{ return newToken(INSTRUCTION_FORMAT21c_STRING);
}
- case 191: break;
- case 60:
+ case 195: break;
+ case 62:
{ return newToken(INSTRUCTION_FORMAT22t);
}
- case 192: break;
- case 80:
+ case 196: break;
+ case 82:
{ return newToken(INSTRUCTION_FORMAT21s);
}
- case 193: break;
- case 62:
+ case 197: break;
+ case 64:
{ return newToken(ENUM_DIRECTIVE);
}
- case 194: break;
- case 44:
+ case 198: break;
+ case 46:
{ sb.append('\\');
}
- case 195: break;
- case 49:
+ case 199: break;
+ case 51:
{ return newToken(INSTRUCTION_FORMAT10x);
}
- case 196: break;
- case 16:
+ case 200: break;
+ case 16:
{ return newToken(OPEN_PAREN);
}
- case 197: break;
- case 74:
+ case 201: break;
+ case 76:
{ return newToken(SOURCE_DIRECTIVE);
}
- case 198: break;
- case 106:
+ case 202: break;
+ case 108:
{ return newToken(INSTRUCTION_FORMAT22s);
}
- case 199: break;
- case 64:
+ case 203: break;
+ case 66:
{ return newToken(INSTRUCTION_FORMAT11x);
}
- case 200: break;
- case 127:
+ case 204: break;
+ case 129:
{ return newToken(INSTRUCTION_FORMAT35c_METHOD_ODEX);
}
- case 201: break;
- case 5:
+ case 205: break;
+ case 5:
{ return newToken(PRIMITIVE_TYPE);
}
- case 202: break;
- case 107:
+ case 206: break;
+ case 109:
{ return newToken(INSTRUCTION_FORMAT12x);
}
- case 203: break;
- case 51:
+ case 207: break;
+ case 53:
{ return newToken(INSTRUCTION_FORMAT22c_FIELD);
}
- case 204: break;
- case 42:
+ case 208: break;
+ case 44:
{ sb.append('"');
}
- case 205: break;
- case 10:
+ case 209: break;
+ case 10:
{ return newToken(VOID_TYPE);
}
- case 206: break;
- case 108:
+ case 210: break;
+ case 110:
{ return newToken(INSTRUCTION_FORMAT22c_FIELD_ODEX);
}
- case 207: break;
- case 123:
+ case 211: break;
+ case 125:
{ return newToken(END_SUBANNOTATION_DIRECTIVE);
}
- case 208: break;
- case 66:
+ case 212: break;
+ case 68:
{ return newToken(FIELD_DIRECTIVE);
}
- case 209: break;
- case 4:
+ case 213: break;
+ case 4:
{ return invalidToken("Invalid directive");
}
- case 210: break;
- case 109:
+ case 214: break;
+ case 111:
{ return newToken(INSTRUCTION_FORMAT31i);
}
- case 211: break;
- case 112:
+ case 215: break;
+ case 114:
{ return newToken(SUBANNOTATION_DIRECTIVE);
}
- case 212: break;
- case 58:
+ case 216: break;
+ case 60:
{ return newToken(INSTRUCTION_FORMAT10t);
}
- case 213: break;
- case 91:
+ case 217: break;
+ case 93:
{ return newToken(END_LOCAL_DIRECTIVE);
}
- case 214: break;
- case 36:
+ case 218: break;
+ case 38:
{ sb.append('\b');
}
- case 215: break;
- case 45:
+ case 219: break;
+ case 47:
{ sb.append(yytext());
setStringOrCharError("Invalid \\u sequence. \\u must be followed by exactly 4 hex digits");
}
- case 216: break;
- case 61:
+ case 220: break;
+ case 63:
{ return newToken(LINE_DIRECTIVE);
}
- case 217: break;
- case 75:
+ case 221: break;
+ case 77:
{ return newToken(METHOD_DIRECTIVE);
}
- case 218: break;
- case 131:
+ case 222: break;
+ case 133:
{ return newToken(INSTRUCTION_FORMAT3rms_METHOD);
}
- case 219: break;
- case 113:
+ case 223: break;
+ case 115:
{ return newToken(SPARSE_SWITCH_DIRECTIVE);
}
- case 220: break;
- case 93:
+ case 224: break;
+ case 95:
{ return newToken(REGISTERS_DIRECTIVE);
}
- case 221: break;
- case 30:
+ case 225: break;
+ case 49:
+ { yypushback(yylength());
+ yybegin(PARAM_LIST);
+ return newToken(PARAM_LIST_START);
+ }
+ case 226: break;
+ case 32:
{ return newToken(ARROW);
}
- case 222: break;
- case 21:
+ case 227: break;
+ case 23:
{ sb.append('\'');
if (sb.length() == 2) {
return invalidStringOrChar("Empty character literal");
@@ -3702,199 +3735,203 @@ public class smaliFlexLexer implements TokenSource, LexerErrorInterface {
return endStringOrChar(CHAR_LITERAL);
}
- case 223: break;
- case 92:
+ case 228: break;
+ case 94:
{ return newToken(END_PARAMETER_DIRECTIVE);
}
- case 224: break;
- case 95:
+ case 229: break;
+ case 97:
{ return newToken(INSTRUCTION_FORMAT21c_TYPE);
}
- case 225: break;
- case 37:
+ case 230: break;
+ case 39:
{ sb.append('\f');
}
- case 226: break;
- case 124:
+ case 231: break;
+ case 126:
{ return newToken(END_SPARSE_SWITCH_DIRECTIVE);
}
- case 227: break;
- case 98:
+ case 232: break;
+ case 100:
{ return newToken(ARRAY_DATA_DIRECTIVE);
}
- case 228: break;
- case 130:
+ case 233: break;
+ case 132:
{ return newToken(INSTRUCTION_FORMAT3rc_TYPE);
}
- case 229: break;
- case 88:
+ case 234: break;
+ case 90:
{ return newToken(INSTRUCTION_FORMAT22cs_FIELD);
}
- case 230: break;
- case 24:
+ case 235: break;
+ case 26:
{ return newToken(BYTE_LITERAL);
}
- case 231: break;
- case 56:
+ case 236: break;
+ case 58:
{ return newToken(NULL_LITERAL);
}
- case 232: break;
- case 105:
+ case 237: break;
+ case 107:
{ return newToken(INSTRUCTION_FORMAT21ih);
}
- case 233: break;
- case 126:
+ case 238: break;
+ case 128:
{ return newToken(INSTRUCTION_FORMAT31c);
}
- case 234: break;
- case 33:
+ case 239: break;
+ case 35:
{ return newToken(ARRAY_DESCRIPTOR);
}
- case 235: break;
- case 55:
+ case 240: break;
+ case 57:
{ return newToken(INSTRUCTION_FORMAT12x_OR_ID);
}
- case 236: break;
- case 116:
+ case 241: break;
+ case 118:
{ return newToken(INSTRUCTION_FORMAT35mi_METHOD);
}
- case 237: break;
- case 76:
+ case 242: break;
+ case 78:
{ return newToken(INSTRUCTION_FORMAT11n);
}
- case 238: break;
- case 128:
+ case 243: break;
+ case 130:
{ return newToken(INSTRUCTION_FORMAT10x_ODEX);
}
- case 239: break;
- case 86:
+ case 244: break;
+ case 88:
{ return newToken(EPILOGUE_DIRECTIVE);
}
- case 240: break;
- case 114:
+ case 245: break;
+ case 116:
{ return newToken(PACKED_SWITCH_DIRECTIVE);
}
- case 241: break;
- case 20:
+ case 246: break;
+ case 22:
{ return invalidStringOrChar("Unterminated string literal");
}
- case 242: break;
- case 32:
- { return newToken(PARAM_LIST_OR_ID);
- }
- case 243: break;
- case 120:
+ case 247: break;
+ case 122:
{ return newToken(INSTRUCTION_FORMAT21lh);
}
- case 244: break;
- case 46:
+ case 248: break;
+ case 48:
{ return newToken(FLOAT_LITERAL);
}
- case 245: break;
- case 103:
+ case 249: break;
+ case 105:
{ return newToken(INSTRUCTION_FORMAT35c_METHOD);
}
- case 246: break;
- case 18:
+ case 250: break;
+ case 20:
{ sb.append(yytext());
}
- case 247: break;
- case 73:
+ case 251: break;
+ case 75:
{ return newToken(LOCALS_DIRECTIVE);
}
- case 248: break;
- case 81:
+ case 252: break;
+ case 83:
{ return newToken(INSTRUCTION_FORMAT22s_OR_ID);
}
- case 249: break;
- case 22:
+ case 253: break;
+ case 24:
{ return invalidStringOrChar("Unterminated character literal");
}
- case 250: break;
- case 117:
+ case 254: break;
+ case 119:
{ return newToken(END_ARRAY_DATA_DIRECTIVE);
}
- case 251: break;
- case 99:
+ case 255: break;
+ case 101:
{ return newToken(ANNOTATION_DIRECTIVE);
}
- case 252: break;
- case 15:
+ case 256: break;
+ case 15:
{ return newToken(CLOSE_BRACE);
}
- case 253: break;
- case 125:
+ case 257: break;
+ case 127:
{ return newToken(END_PACKED_SWITCH_DIRECTIVE);
}
- case 254: break;
- case 69:
+ case 258: break;
+ case 71:
{ return newToken(LOCAL_DIRECTIVE);
}
- case 255: break;
- case 133:
+ case 259: break;
+ case 135:
{ return newToken(INSTRUCTION_FORMAT20bc);
}
- case 256: break;
- case 122:
+ case 260: break;
+ case 124:
{ return newToken(INSTRUCTION_FORMAT3rc_METHOD);
}
- case 257: break;
- case 40:
+ case 261: break;
+ case 42:
{ sb.append('\n');
}
- case 258: break;
- case 54:
+ case 262: break;
+ case 56:
{ return newToken(ACCESS_SPEC);
}
- case 259: break;
- case 50:
+ case 263: break;
+ case 52:
{ return newToken(MEMBER_NAME);
}
- case 260: break;
- case 3:
+ case 264: break;
+ case 3:
{ return newToken(SIMPLE_NAME);
}
- case 261: break;
- case 7:
+ case 265: break;
+ case 7:
{ beginStringOrChar(STRING); sb.append('"');
}
- case 262: break;
- case 14:
+ case 266: break;
+ case 14:
{ return newToken(OPEN_BRACE);
}
- case 263: break;
- case 23:
+ case 267: break;
+ case 25:
{ return newToken(FLOAT_LITERAL_OR_ID);
}
- case 264: break;
- case 53:
+ case 268: break;
+ case 55:
{ return newToken(INSTRUCTION_FORMAT21c_FIELD);
}
- case 265: break;
- case 63:
+ case 269: break;
+ case 65:
{ return newToken(INSTRUCTION_FORMAT31i_OR_ID);
}
- case 266: break;
- default:
+ case 270: break;
+ default:
if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
zzAtEOF = true;
switch (zzLexicalState) {
case STRING: {
return invalidStringOrChar("Unterminated string literal");
}
- case 1154: break;
+ case 1170: break;
+ case PARAM_LIST_OR_ID: {
+ yybegin(YYINITIAL); return newToken(PARAM_LIST_OR_ID_END);
+ }
+ case 1171: break;
case YYINITIAL: {
return newToken(EOF);
}
- case 1155: break;
+ case 1172: break;
case CHAR: {
return invalidStringOrChar("Unterminated character literal");
}
- case 1156: break;
+ case 1173: break;
+ case PARAM_LIST: {
+ yybegin(YYINITIAL); return newToken(PARAM_LIST_END);
+ }
+ case 1174: break;
default:
return null;
}
- }
+ }
else {
zzScanError(ZZ_NO_MATCH);
}
diff --git a/smali/src/main/java/org/jf/smali/smaliParser.java b/smali/src/main/java/org/jf/smali/smaliParser.java
index 10a2a0c8..7f132a91 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 /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g 2014-02-12 17:39:16
+// $ANTLR 3.5 /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g 2015-02-19 13:37:38
package org.jf.smali;
@@ -18,65 +18,61 @@ import org.antlr.runtime.tree.*;
@SuppressWarnings("all")
public class smaliParser extends Parser {
public static final String[] tokenNames = new String[] {
- "<invalid>", "<EOR>", "<DOWN>", "<UP>", "ACCESS_SPEC", "ANNOTATION_DIRECTIVE",
- "ANNOTATION_VISIBILITY", "ARRAY_DATA_DIRECTIVE", "ARRAY_DESCRIPTOR", "ARROW",
- "BASE_ARRAY_DESCRIPTOR", "BASE_CHAR_LITERAL", "BASE_CLASS_DESCRIPTOR",
- "BASE_FLOAT", "BASE_FLOAT_OR_ID", "BASE_INTEGER", "BASE_PRIMITIVE_TYPE",
- "BASE_SIMPLE_NAME", "BASE_STRING_LITERAL", "BASE_TYPE", "BINARY_EXPONENT",
- "BOOL_LITERAL", "BYTE_LITERAL", "CATCHALL_DIRECTIVE", "CATCH_DIRECTIVE",
- "CHAR_LITERAL", "CLASS_DESCRIPTOR", "CLASS_DIRECTIVE", "CLOSE_BRACE",
- "CLOSE_PAREN", "COLON", "COMMA", "DECIMAL_EXPONENT", "DOTDOT", "DOUBLE_LITERAL",
- "DOUBLE_LITERAL_OR_ID", "END_ANNOTATION_DIRECTIVE", "END_ARRAY_DATA_DIRECTIVE",
- "END_FIELD_DIRECTIVE", "END_LOCAL_DIRECTIVE", "END_METHOD_DIRECTIVE",
- "END_PACKED_SWITCH_DIRECTIVE", "END_PARAMETER_DIRECTIVE", "END_SPARSE_SWITCH_DIRECTIVE",
- "END_SUBANNOTATION_DIRECTIVE", "ENUM_DIRECTIVE", "EPILOGUE_DIRECTIVE",
- "EQUAL", "ESCAPE_SEQUENCE", "FIELD_DIRECTIVE", "FIELD_OFFSET", "FLOAT_LITERAL",
- "FLOAT_LITERAL_OR_ID", "HEX_DIGIT", "HEX_DIGITS", "HEX_PREFIX", "IMPLEMENTS_DIRECTIVE",
- "INLINE_INDEX", "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_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",
- "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_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", "LABEL", "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", "PARAM_LIST_OR_ID",
- "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"
+ "<invalid>", "<EOR>", "<DOWN>", "<UP>", "ACCESS_SPEC", "ANNOTATION_DIRECTIVE",
+ "ANNOTATION_VISIBILITY", "ARRAY_DATA_DIRECTIVE", "ARRAY_DESCRIPTOR", "ARROW",
+ "BOOL_LITERAL", "BYTE_LITERAL", "CATCHALL_DIRECTIVE", "CATCH_DIRECTIVE",
+ "CHAR_LITERAL", "CLASS_DESCRIPTOR", "CLASS_DIRECTIVE", "CLOSE_BRACE",
+ "CLOSE_PAREN", "COLON", "COMMA", "DOTDOT", "DOUBLE_LITERAL", "DOUBLE_LITERAL_OR_ID",
+ "END_ANNOTATION_DIRECTIVE", "END_ARRAY_DATA_DIRECTIVE", "END_FIELD_DIRECTIVE",
+ "END_LOCAL_DIRECTIVE", "END_METHOD_DIRECTIVE", "END_PACKED_SWITCH_DIRECTIVE",
+ "END_PARAMETER_DIRECTIVE", "END_SPARSE_SWITCH_DIRECTIVE", "END_SUBANNOTATION_DIRECTIVE",
+ "ENUM_DIRECTIVE", "EPILOGUE_DIRECTIVE", "EQUAL", "FIELD_DIRECTIVE", "FIELD_OFFSET",
+ "FLOAT_LITERAL", "FLOAT_LITERAL_OR_ID", "IMPLEMENTS_DIRECTIVE", "INLINE_INDEX",
+ "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_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",
+ "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_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"
};
public static final int EOF=-1;
public static final int ACCESS_SPEC=4;
@@ -85,211 +81,196 @@ public class smaliParser extends Parser {
public static final int ARRAY_DATA_DIRECTIVE=7;
public static final int ARRAY_DESCRIPTOR=8;
public static final int ARROW=9;
- public static final int BASE_ARRAY_DESCRIPTOR=10;
- public static final int BASE_CHAR_LITERAL=11;
- public static final int BASE_CLASS_DESCRIPTOR=12;
- public static final int BASE_FLOAT=13;
- public static final int BASE_FLOAT_OR_ID=14;
- public static final int BASE_INTEGER=15;
- public static final int BASE_PRIMITIVE_TYPE=16;
- public static final int BASE_SIMPLE_NAME=17;
- public static final int BASE_STRING_LITERAL=18;
- public static final int BASE_TYPE=19;
- public static final int BINARY_EXPONENT=20;
- public static final int BOOL_LITERAL=21;
- public static final int BYTE_LITERAL=22;
- public static final int CATCHALL_DIRECTIVE=23;
- public static final int CATCH_DIRECTIVE=24;
- public static final int CHAR_LITERAL=25;
- public static final int CLASS_DESCRIPTOR=26;
- public static final int CLASS_DIRECTIVE=27;
- public static final int CLOSE_BRACE=28;
- public static final int CLOSE_PAREN=29;
- public static final int COLON=30;
- public static final int COMMA=31;
- public static final int DECIMAL_EXPONENT=32;
- public static final int DOTDOT=33;
- public static final int DOUBLE_LITERAL=34;
- public static final int DOUBLE_LITERAL_OR_ID=35;
- public static final int END_ANNOTATION_DIRECTIVE=36;
- public static final int END_ARRAY_DATA_DIRECTIVE=37;
- public static final int END_FIELD_DIRECTIVE=38;
- public static final int END_LOCAL_DIRECTIVE=39;
- public static final int END_METHOD_DIRECTIVE=40;
- public static final int END_PACKED_SWITCH_DIRECTIVE=41;
- public static final int END_PARAMETER_DIRECTIVE=42;
- public static final int END_SPARSE_SWITCH_DIRECTIVE=43;
- public static final int END_SUBANNOTATION_DIRECTIVE=44;
- public static final int ENUM_DIRECTIVE=45;
- public static final int EPILOGUE_DIRECTIVE=46;
- public static final int EQUAL=47;
- public static final int ESCAPE_SEQUENCE=48;
- public static final int FIELD_DIRECTIVE=49;
- public static final int FIELD_OFFSET=50;
- public static final int FLOAT_LITERAL=51;
- public static final int FLOAT_LITERAL_OR_ID=52;
- public static final int HEX_DIGIT=53;
- public static final int HEX_DIGITS=54;
- public static final int HEX_PREFIX=55;
- public static final int IMPLEMENTS_DIRECTIVE=56;
- public static final int INLINE_INDEX=57;
- public static final int INSTRUCTION_FORMAT10t=58;
- public static final int INSTRUCTION_FORMAT10x=59;
- public static final int INSTRUCTION_FORMAT10x_ODEX=60;
- public static final int INSTRUCTION_FORMAT11n=61;
- public static final int INSTRUCTION_FORMAT11x=62;
- public static final int INSTRUCTION_FORMAT12x=63;
- public static final int INSTRUCTION_FORMAT12x_OR_ID=64;
- public static final int INSTRUCTION_FORMAT20bc=65;
- public static final int INSTRUCTION_FORMAT20t=66;
- public static final int INSTRUCTION_FORMAT21c_FIELD=67;
- public static final int INSTRUCTION_FORMAT21c_FIELD_ODEX=68;
- public static final int INSTRUCTION_FORMAT21c_STRING=69;
- public static final int INSTRUCTION_FORMAT21c_TYPE=70;
- public static final int INSTRUCTION_FORMAT21ih=71;
- public static final int INSTRUCTION_FORMAT21lh=72;
- public static final int INSTRUCTION_FORMAT21s=73;
- public static final int INSTRUCTION_FORMAT21t=74;
- public static final int INSTRUCTION_FORMAT22b=75;
- public static final int INSTRUCTION_FORMAT22c_FIELD=76;
- public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=77;
- public static final int INSTRUCTION_FORMAT22c_TYPE=78;
- public static final int INSTRUCTION_FORMAT22cs_FIELD=79;
- public static final int INSTRUCTION_FORMAT22s=80;
- public static final int INSTRUCTION_FORMAT22s_OR_ID=81;
- public static final int INSTRUCTION_FORMAT22t=82;
- public static final int INSTRUCTION_FORMAT22x=83;
- public static final int INSTRUCTION_FORMAT23x=84;
- public static final int INSTRUCTION_FORMAT30t=85;
- public static final int INSTRUCTION_FORMAT31c=86;
- public static final int INSTRUCTION_FORMAT31i=87;
- public static final int INSTRUCTION_FORMAT31i_OR_ID=88;
- public static final int INSTRUCTION_FORMAT31t=89;
- public static final int INSTRUCTION_FORMAT32x=90;
- public static final int INSTRUCTION_FORMAT35c_METHOD=91;
- public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=92;
- public static final int INSTRUCTION_FORMAT35c_TYPE=93;
- public static final int INSTRUCTION_FORMAT35mi_METHOD=94;
- public static final int INSTRUCTION_FORMAT35ms_METHOD=95;
- public static final int INSTRUCTION_FORMAT3rc_METHOD=96;
- public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=97;
- public static final int INSTRUCTION_FORMAT3rc_TYPE=98;
- public static final int INSTRUCTION_FORMAT3rmi_METHOD=99;
- public static final int INSTRUCTION_FORMAT3rms_METHOD=100;
- public static final int INSTRUCTION_FORMAT51l=101;
- public static final int INTEGER_LITERAL=102;
- public static final int INVALID_TOKEN=103;
- public static final int I_ACCESS_LIST=104;
- public static final int I_ANNOTATION=105;
- public static final int I_ANNOTATIONS=106;
- public static final int I_ANNOTATION_ELEMENT=107;
- public static final int I_ARRAY_ELEMENTS=108;
- public static final int I_ARRAY_ELEMENT_SIZE=109;
- public static final int I_CATCH=110;
- public static final int I_CATCHALL=111;
- public static final int I_CATCHES=112;
- public static final int I_CLASS_DEF=113;
- public static final int I_ENCODED_ARRAY=114;
- public static final int I_ENCODED_ENUM=115;
- public static final int I_ENCODED_FIELD=116;
- public static final int I_ENCODED_METHOD=117;
- public static final int I_END_LOCAL=118;
- public static final int I_EPILOGUE=119;
- public static final int I_FIELD=120;
- public static final int I_FIELDS=121;
- public static final int I_FIELD_INITIAL_VALUE=122;
- public static final int I_FIELD_TYPE=123;
- public static final int I_IMPLEMENTS=124;
- public static final int I_LABEL=125;
- public static final int I_LINE=126;
- public static final int I_LOCAL=127;
- public static final int I_LOCALS=128;
- public static final int I_METHOD=129;
- public static final int I_METHODS=130;
- public static final int I_METHOD_PROTOTYPE=131;
- public static final int I_METHOD_RETURN_TYPE=132;
- public static final int I_ORDERED_METHOD_ITEMS=133;
- public static final int I_PACKED_SWITCH_ELEMENTS=134;
- public static final int I_PACKED_SWITCH_START_KEY=135;
- public static final int I_PARAMETER=136;
- public static final int I_PARAMETERS=137;
- public static final int I_PARAMETER_NOT_SPECIFIED=138;
- public static final int I_PROLOGUE=139;
- public static final int I_REGISTERS=140;
- public static final int I_REGISTER_LIST=141;
- public static final int I_REGISTER_RANGE=142;
- public static final int I_RESTART_LOCAL=143;
- public static final int I_SOURCE=144;
- public static final int I_SPARSE_SWITCH_ELEMENTS=145;
- public static final int I_STATEMENT_ARRAY_DATA=146;
- public static final int I_STATEMENT_FORMAT10t=147;
- public static final int I_STATEMENT_FORMAT10x=148;
- public static final int I_STATEMENT_FORMAT11n=149;
- public static final int I_STATEMENT_FORMAT11x=150;
- public static final int I_STATEMENT_FORMAT12x=151;
- public static final int I_STATEMENT_FORMAT20bc=152;
- public static final int I_STATEMENT_FORMAT20t=153;
- public static final int I_STATEMENT_FORMAT21c_FIELD=154;
- public static final int I_STATEMENT_FORMAT21c_STRING=155;
- public static final int I_STATEMENT_FORMAT21c_TYPE=156;
- public static final int I_STATEMENT_FORMAT21ih=157;
- public static final int I_STATEMENT_FORMAT21lh=158;
- public static final int I_STATEMENT_FORMAT21s=159;
- public static final int I_STATEMENT_FORMAT21t=160;
- public static final int I_STATEMENT_FORMAT22b=161;
- public static final int I_STATEMENT_FORMAT22c_FIELD=162;
- public static final int I_STATEMENT_FORMAT22c_TYPE=163;
- public static final int I_STATEMENT_FORMAT22s=164;
- public static final int I_STATEMENT_FORMAT22t=165;
- public static final int I_STATEMENT_FORMAT22x=166;
- public static final int I_STATEMENT_FORMAT23x=167;
- public static final int I_STATEMENT_FORMAT30t=168;
- public static final int I_STATEMENT_FORMAT31c=169;
- public static final int I_STATEMENT_FORMAT31i=170;
- public static final int I_STATEMENT_FORMAT31t=171;
- public static final int I_STATEMENT_FORMAT32x=172;
- public static final int I_STATEMENT_FORMAT35c_METHOD=173;
- public static final int I_STATEMENT_FORMAT35c_TYPE=174;
- public static final int I_STATEMENT_FORMAT3rc_METHOD=175;
- public static final int I_STATEMENT_FORMAT3rc_TYPE=176;
- public static final int I_STATEMENT_FORMAT51l=177;
- public static final int I_STATEMENT_PACKED_SWITCH=178;
- public static final int I_STATEMENT_SPARSE_SWITCH=179;
- public static final int I_SUBANNOTATION=180;
- public static final int I_SUPER=181;
- public static final int LABEL=182;
- public static final int LINE_COMMENT=183;
- public static final int LINE_DIRECTIVE=184;
- public static final int LOCALS_DIRECTIVE=185;
- public static final int LOCAL_DIRECTIVE=186;
- public static final int LONG_LITERAL=187;
- public static final int MEMBER_NAME=188;
- public static final int METHOD_DIRECTIVE=189;
- public static final int NEGATIVE_INTEGER_LITERAL=190;
- public static final int NULL_LITERAL=191;
- public static final int OPEN_BRACE=192;
- public static final int OPEN_PAREN=193;
- public static final int PACKED_SWITCH_DIRECTIVE=194;
- public static final int PARAMETER_DIRECTIVE=195;
- public static final int PARAM_LIST=196;
- public static final int PARAM_LIST_OR_ID=197;
- public static final int POSITIVE_INTEGER_LITERAL=198;
- public static final int PRIMITIVE_TYPE=199;
- public static final int PROLOGUE_DIRECTIVE=200;
- public static final int REGISTER=201;
- public static final int REGISTERS_DIRECTIVE=202;
- public static final int RESTART_LOCAL_DIRECTIVE=203;
- public static final int SHORT_LITERAL=204;
- public static final int SIMPLE_NAME=205;
- public static final int SOURCE_DIRECTIVE=206;
- public static final int SPARSE_SWITCH_DIRECTIVE=207;
- public static final int STRING_LITERAL=208;
- public static final int SUBANNOTATION_DIRECTIVE=209;
- public static final int SUPER_DIRECTIVE=210;
- public static final int VERIFICATION_ERROR_TYPE=211;
- public static final int VOID_TYPE=212;
- public static final int VTABLE_INDEX=213;
- public static final int WHITE_SPACE=214;
+ public static final int BOOL_LITERAL=10;
+ public static final int BYTE_LITERAL=11;
+ public static final int CATCHALL_DIRECTIVE=12;
+ public static final int CATCH_DIRECTIVE=13;
+ public static final int CHAR_LITERAL=14;
+ public static final int CLASS_DESCRIPTOR=15;
+ public static final int CLASS_DIRECTIVE=16;
+ public static final int CLOSE_BRACE=17;
+ public static final int CLOSE_PAREN=18;
+ public static final int COLON=19;
+ public static final int COMMA=20;
+ public static final int DOTDOT=21;
+ public static final int DOUBLE_LITERAL=22;
+ public static final int DOUBLE_LITERAL_OR_ID=23;
+ public static final int END_ANNOTATION_DIRECTIVE=24;
+ public static final int END_ARRAY_DATA_DIRECTIVE=25;
+ public static final int END_FIELD_DIRECTIVE=26;
+ public static final int END_LOCAL_DIRECTIVE=27;
+ public static final int END_METHOD_DIRECTIVE=28;
+ public static final int END_PACKED_SWITCH_DIRECTIVE=29;
+ public static final int END_PARAMETER_DIRECTIVE=30;
+ public static final int END_SPARSE_SWITCH_DIRECTIVE=31;
+ public static final int END_SUBANNOTATION_DIRECTIVE=32;
+ public static final int ENUM_DIRECTIVE=33;
+ public static final int EPILOGUE_DIRECTIVE=34;
+ public static final int EQUAL=35;
+ public static final int FIELD_DIRECTIVE=36;
+ public static final int FIELD_OFFSET=37;
+ public static final int FLOAT_LITERAL=38;
+ public static final int FLOAT_LITERAL_OR_ID=39;
+ public static final int IMPLEMENTS_DIRECTIVE=40;
+ public static final int INLINE_INDEX=41;
+ public static final int INSTRUCTION_FORMAT10t=42;
+ public static final int INSTRUCTION_FORMAT10x=43;
+ public static final int INSTRUCTION_FORMAT10x_ODEX=44;
+ public static final int INSTRUCTION_FORMAT11n=45;
+ public static final int INSTRUCTION_FORMAT11x=46;
+ public static final int INSTRUCTION_FORMAT12x=47;
+ public static final int INSTRUCTION_FORMAT12x_OR_ID=48;
+ public static final int INSTRUCTION_FORMAT20bc=49;
+ 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;
// delegates
public Parser[] getDelegates() {
@@ -315,7 +296,7 @@ public class smaliParser extends Parser {
return adaptor;
}
@Override public String[] getTokenNames() { return smaliParser.tokenNames; }
- @Override public String getGrammarFileName() { return "/usr/local/google/home/bgruv/android/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/antlr3/smaliParser.g"; }
public static final int ERROR_CHANNEL = 100;
@@ -501,7 +482,7 @@ public class smaliParser extends Parser {
// $ANTLR start "smali_file"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:433:1: smali_file : ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ;
+ // /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 )* ) ) ;
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();
@@ -530,12 +511,12 @@ public class smaliParser extends Parser {
smali_file_stack.peek().hasClassSpec = smali_file_stack.peek().hasSuperSpec = smali_file_stack.peek().hasSourceSpec = false;
smali_file_stack.peek().classAnnotations = new ArrayList<CommonTree>();
-
+
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:445:3: ( ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF
+ // /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
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+
+ // /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 )+
int cnt1=0;
loop1:
while (true) {
@@ -565,12 +546,12 @@ public class smaliParser extends Parser {
switch (alt1) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:5: {...}? => class_spec
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:431:5: {...}? => class_spec
{
if ( !((!smali_file_stack.peek().hasClassSpec)) ) {
throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasClassSpec");
}
- pushFollow(FOLLOW_class_spec_in_smali_file1145);
+ pushFollow(FOLLOW_class_spec_in_smali_file1070);
class_spec1=class_spec();
state._fsp--;
@@ -579,12 +560,12 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:447:5: {...}? => super_spec
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:432:5: {...}? => super_spec
{
if ( !((!smali_file_stack.peek().hasSuperSpec)) ) {
throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSuperSpec");
}
- pushFollow(FOLLOW_super_spec_in_smali_file1156);
+ pushFollow(FOLLOW_super_spec_in_smali_file1081);
super_spec2=super_spec();
state._fsp--;
@@ -593,9 +574,9 @@ public class smaliParser extends Parser {
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:448:5: implements_spec
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:433:5: implements_spec
{
- pushFollow(FOLLOW_implements_spec_in_smali_file1164);
+ pushFollow(FOLLOW_implements_spec_in_smali_file1089);
implements_spec3=implements_spec();
state._fsp--;
@@ -603,12 +584,12 @@ public class smaliParser extends Parser {
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:449:5: {...}? => source_spec
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:434:5: {...}? => source_spec
{
if ( !((!smali_file_stack.peek().hasSourceSpec)) ) {
throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSourceSpec");
}
- pushFollow(FOLLOW_source_spec_in_smali_file1173);
+ pushFollow(FOLLOW_source_spec_in_smali_file1098);
source_spec4=source_spec();
state._fsp--;
@@ -617,9 +598,9 @@ public class smaliParser extends Parser {
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:450:5: method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:435:5: method
{
- pushFollow(FOLLOW_method_in_smali_file1181);
+ pushFollow(FOLLOW_method_in_smali_file1106);
method5=method();
state._fsp--;
@@ -627,9 +608,9 @@ public class smaliParser extends Parser {
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:451:5: field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:436:5: field
{
- pushFollow(FOLLOW_field_in_smali_file1187);
+ pushFollow(FOLLOW_field_in_smali_file1112);
field6=field();
state._fsp--;
@@ -637,9 +618,9 @@ public class smaliParser extends Parser {
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:452:5: annotation
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:437:5: annotation
{
- pushFollow(FOLLOW_annotation_in_smali_file1193);
+ pushFollow(FOLLOW_annotation_in_smali_file1118);
annotation7=annotation();
state._fsp--;
@@ -656,7 +637,7 @@ public class smaliParser extends Parser {
cnt1++;
}
- EOF8=(Token)match(input,EOF,FOLLOW_EOF_in_smali_file1204);
+ EOF8=(Token)match(input,EOF,FOLLOW_EOF_in_smali_file1129);
stream_EOF.add(EOF8);
@@ -669,48 +650,48 @@ public class smaliParser extends Parser {
throw new SemanticException(input, "The file must contain a .super directive");
}
}
-
+
// AST REWRITE
- // elements: source_spec, implements_spec, super_spec, field, class_spec, method
- // token labels:
+ // elements: method, field, source_spec, implements_spec, super_spec, class_spec
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 466:3: -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) )
+ // 451:3: -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:466:6: ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) )
+ // /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 )* ) )
{
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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:468:8: ( super_spec )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:453:8: ( super_spec )?
if ( stream_super_spec.hasNext() ) {
adaptor.addChild(root_1, stream_super_spec.nextTree());
}
stream_super_spec.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:469:8: ( implements_spec )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:454:8: ( implements_spec )*
while ( stream_implements_spec.hasNext() ) {
adaptor.addChild(root_1, stream_implements_spec.nextTree());
}
stream_implements_spec.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:470:8: ( source_spec )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:455:8: ( source_spec )?
if ( stream_source_spec.hasNext() ) {
adaptor.addChild(root_1, stream_source_spec.nextTree());
}
stream_source_spec.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:8: ^( I_METHODS ( method )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:8: ^( I_METHODS ( method )* )
{
CommonTree root_2 = (CommonTree)adaptor.nil();
root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHODS, "I_METHODS"), root_2);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:20: ( method )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:20: ( method )*
while ( stream_method.hasNext() ) {
adaptor.addChild(root_2, stream_method.nextTree());
}
@@ -719,11 +700,11 @@ public class smaliParser extends Parser {
adaptor.addChild(root_1, root_2);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:29: ^( I_FIELDS ( field )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:29: ^( I_FIELDS ( field )* )
{
CommonTree root_2 = (CommonTree)adaptor.nil();
root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELDS, "I_FIELDS"), root_2);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:40: ( field )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:456:40: ( field )*
while ( stream_field.hasNext() ) {
adaptor.addChild(root_2, stream_field.nextTree());
}
@@ -772,7 +753,7 @@ public class smaliParser extends Parser {
// $ANTLR start "class_spec"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:473:1: class_spec returns [String className] : CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ;
+ // /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 ;
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);
@@ -790,33 +771,33 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:474:3: ( CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:474:5: CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR
+ // /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
{
- CLASS_DIRECTIVE9=(Token)match(input,CLASS_DIRECTIVE,FOLLOW_CLASS_DIRECTIVE_in_class_spec1291);
+ CLASS_DIRECTIVE9=(Token)match(input,CLASS_DIRECTIVE,FOLLOW_CLASS_DIRECTIVE_in_class_spec1216);
stream_CLASS_DIRECTIVE.add(CLASS_DIRECTIVE9);
- pushFollow(FOLLOW_access_list_in_class_spec1293);
+ pushFollow(FOLLOW_access_list_in_class_spec1218);
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_spec1295);
+ CLASS_DESCRIPTOR11=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec1220);
stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR11);
retval.className = (CLASS_DESCRIPTOR11!=null?CLASS_DESCRIPTOR11.getText():null);
// AST REWRITE
// elements: CLASS_DESCRIPTOR, access_list
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 474:89: -> CLASS_DESCRIPTOR access_list
+ // 459:89: -> CLASS_DESCRIPTOR access_list
{
adaptor.addChild(root_0, stream_CLASS_DESCRIPTOR.nextNode());
adaptor.addChild(root_0, stream_access_list.nextTree());
@@ -854,7 +835,7 @@ public class smaliParser extends Parser {
// $ANTLR start "super_spec"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:476:1: super_spec : SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ;
+ // /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 ) ;
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);
@@ -870,29 +851,29 @@ public class smaliParser extends Parser {
RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:3: ( SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:5: SUPER_DIRECTIVE CLASS_DESCRIPTOR
+ // /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
{
- SUPER_DIRECTIVE12=(Token)match(input,SUPER_DIRECTIVE,FOLLOW_SUPER_DIRECTIVE_in_super_spec1313);
+ SUPER_DIRECTIVE12=(Token)match(input,SUPER_DIRECTIVE,FOLLOW_SUPER_DIRECTIVE_in_super_spec1238);
stream_SUPER_DIRECTIVE.add(SUPER_DIRECTIVE12);
- CLASS_DESCRIPTOR13=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec1315);
+ CLASS_DESCRIPTOR13=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec1240);
stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR13);
// AST REWRITE
// elements: CLASS_DESCRIPTOR
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 477:38: -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR )
+ // 462:38: -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:41: ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:462: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);
@@ -934,7 +915,7 @@ public class smaliParser extends Parser {
// $ANTLR start "implements_spec"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:479:1: implements_spec : IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ;
+ // /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 ) ;
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);
@@ -950,29 +931,29 @@ public class smaliParser extends Parser {
RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:3: ( IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:5: IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR
+ // /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
{
- IMPLEMENTS_DIRECTIVE14=(Token)match(input,IMPLEMENTS_DIRECTIVE,FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1334);
+ IMPLEMENTS_DIRECTIVE14=(Token)match(input,IMPLEMENTS_DIRECTIVE,FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1259);
stream_IMPLEMENTS_DIRECTIVE.add(IMPLEMENTS_DIRECTIVE14);
- CLASS_DESCRIPTOR15=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1336);
+ CLASS_DESCRIPTOR15=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1261);
stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR15);
// AST REWRITE
// elements: CLASS_DESCRIPTOR
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 480:43: -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR )
+ // 465:43: -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:46: ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:465: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);
@@ -1014,7 +995,7 @@ public class smaliParser extends Parser {
// $ANTLR start "source_spec"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:482:1: source_spec : SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ;
+ // /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 ) ;
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);
@@ -1030,29 +1011,29 @@ public class smaliParser extends Parser {
RewriteRuleTokenStream stream_SOURCE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SOURCE_DIRECTIVE");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:3: ( SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:5: SOURCE_DIRECTIVE STRING_LITERAL
+ // /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
{
- SOURCE_DIRECTIVE16=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_spec1355);
+ SOURCE_DIRECTIVE16=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_spec1280);
stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE16);
- STRING_LITERAL17=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_spec1357);
+ STRING_LITERAL17=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_spec1282);
stream_STRING_LITERAL.add(STRING_LITERAL17);
// AST REWRITE
// elements: STRING_LITERAL
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 483:37: -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL )
+ // 468:37: -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:40: ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:468: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);
@@ -1094,7 +1075,7 @@ public class smaliParser extends Parser {
// $ANTLR start "access_list"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:485:1: access_list : ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ;
+ // /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 )* ) ;
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);
@@ -1107,17 +1088,17 @@ public class smaliParser extends Parser {
RewriteRuleTokenStream stream_ACCESS_SPEC=new RewriteRuleTokenStream(adaptor,"token ACCESS_SPEC");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:3: ( ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ( ACCESS_SPEC )*
+ // /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 )*
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ( ACCESS_SPEC )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471: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 && 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_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;
}
@@ -1125,9 +1106,9 @@ public class smaliParser extends Parser {
switch (alt2) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ACCESS_SPEC
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:5: ACCESS_SPEC
{
- ACCESS_SPEC18=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list1376);
+ ACCESS_SPEC18=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list1301);
stream_ACCESS_SPEC.add(ACCESS_SPEC18);
}
@@ -1140,22 +1121,22 @@ public class smaliParser extends Parser {
// AST REWRITE
// elements: ACCESS_SPEC
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 486:18: -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* )
+ // 471:18: -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:21: ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471: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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:61: ( ACCESS_SPEC )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:471:61: ( ACCESS_SPEC )*
while ( stream_ACCESS_SPEC.hasNext() ) {
adaptor.addChild(root_1, stream_ACCESS_SPEC.nextNode());
}
@@ -1198,7 +1179,7 @@ public class smaliParser extends Parser {
// $ANTLR start "field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:493:1: field : FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ;
+ // /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 ) ) ) ) ;
public final smaliParser.field_return field() throws RecognitionException {
smaliParser.field_return retval = new smaliParser.field_return();
retval.start = input.LT(1);
@@ -1231,31 +1212,31 @@ public class smaliParser extends Parser {
List<CommonTree> annotations = new ArrayList<CommonTree>();
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:3: ( FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:5: FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) )
+ // /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 ) ) ) )
{
- FIELD_DIRECTIVE19=(Token)match(input,FIELD_DIRECTIVE,FOLLOW_FIELD_DIRECTIVE_in_field1407);
+ FIELD_DIRECTIVE19=(Token)match(input,FIELD_DIRECTIVE,FOLLOW_FIELD_DIRECTIVE_in_field1332);
stream_FIELD_DIRECTIVE.add(FIELD_DIRECTIVE19);
- pushFollow(FOLLOW_access_list_in_field1409);
+ pushFollow(FOLLOW_access_list_in_field1334);
access_list20=access_list();
state._fsp--;
stream_access_list.add(access_list20.getTree());
- pushFollow(FOLLOW_member_name_in_field1411);
+ pushFollow(FOLLOW_member_name_in_field1336);
member_name21=member_name();
state._fsp--;
stream_member_name.add(member_name21.getTree());
- COLON22=(Token)match(input,COLON,FOLLOW_COLON_in_field1413);
+ COLON22=(Token)match(input,COLON,FOLLOW_COLON_in_field1338);
stream_COLON.add(COLON22);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_field1415);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_field1340);
nonvoid_type_descriptor23=nonvoid_type_descriptor();
state._fsp--;
stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor23.getTree());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:75: ( EQUAL literal )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:480:75: ( EQUAL literal )?
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==EQUAL) ) {
@@ -1263,12 +1244,12 @@ public class smaliParser extends Parser {
}
switch (alt3) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:76: EQUAL literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:480:76: EQUAL literal
{
- EQUAL24=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_field1418);
+ EQUAL24=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_field1343);
stream_EQUAL.add(EQUAL24);
- pushFollow(FOLLOW_literal_in_field1420);
+ pushFollow(FOLLOW_literal_in_field1345);
literal25=literal();
state._fsp--;
@@ -1278,10 +1259,10 @@ public class smaliParser extends Parser {
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:5: ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:7: ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) )
+ // /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 ) ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:7: ({...}? annotation )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:481:7: ({...}? annotation )*
loop4:
while (true) {
int alt4=2;
@@ -1296,12 +1277,12 @@ public class smaliParser extends Parser {
switch (alt4) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:8: {...}? annotation
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:481:8: {...}? annotation
{
if ( !((input.LA(1) == ANNOTATION_DIRECTIVE)) ) {
throw new FailedPredicateException(input, "field", "input.LA(1) == ANNOTATION_DIRECTIVE");
}
- pushFollow(FOLLOW_annotation_in_field1433);
+ pushFollow(FOLLOW_annotation_in_field1358);
annotation26=annotation();
state._fsp--;
@@ -1315,7 +1296,7 @@ public class smaliParser extends Parser {
}
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:497:7: ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) )
+ // /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 ) ) )
int alt5=2;
int LA5_0 = input.LA(1);
if ( (LA5_0==END_FIELD_DIRECTIVE) ) {
@@ -1333,31 +1314,31 @@ public class smaliParser extends Parser {
switch (alt5) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:497:9: END_FIELD_DIRECTIVE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:482:9: END_FIELD_DIRECTIVE
{
- END_FIELD_DIRECTIVE27=(Token)match(input,END_FIELD_DIRECTIVE,FOLLOW_END_FIELD_DIRECTIVE_in_field1447);
+ END_FIELD_DIRECTIVE27=(Token)match(input,END_FIELD_DIRECTIVE,FOLLOW_END_FIELD_DIRECTIVE_in_field1372);
stream_END_FIELD_DIRECTIVE.add(END_FIELD_DIRECTIVE27);
// AST REWRITE
- // elements: access_list, nonvoid_type_descriptor, member_name, literal, annotation
- // token labels:
+ // elements: literal, member_name, access_list, annotation, nonvoid_type_descriptor
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 498:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) )
+ // 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 )* ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) )
+ // /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 )* ) )
{
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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:65: ^( I_FIELD_TYPE nonvoid_type_descriptor )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483: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);
@@ -1365,9 +1346,9 @@ public class smaliParser extends Parser {
adaptor.addChild(root_1, root_2);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )?
if ( stream_literal.hasNext() ) {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:105: ^( I_FIELD_INITIAL_VALUE literal )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483: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);
@@ -1378,11 +1359,11 @@ public class smaliParser extends Parser {
}
stream_literal.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:139: ^( I_ANNOTATIONS ( annotation )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:139: ^( I_ANNOTATIONS ( annotation )* )
{
CommonTree root_2 = (CommonTree)adaptor.nil();
root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:155: ( annotation )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:483:155: ( annotation )*
while ( stream_annotation.hasNext() ) {
adaptor.addChild(root_2, stream_annotation.nextTree());
}
@@ -1402,29 +1383,29 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:499:21:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:484:21:
{
smali_file_stack.peek().classAnnotations.addAll(annotations);
// AST REWRITE
- // elements: access_list, nonvoid_type_descriptor, literal, member_name
- // token labels:
+ // elements: nonvoid_type_descriptor, member_name, literal, access_list
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 500:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) )
+ // 485:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) )
+ // /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 ) )
{
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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:65: ^( I_FIELD_TYPE nonvoid_type_descriptor )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485: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);
@@ -1432,9 +1413,9 @@ public class smaliParser extends Parser {
adaptor.addChild(root_1, root_2);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )?
if ( stream_literal.hasNext() ) {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:105: ^( I_FIELD_INITIAL_VALUE literal )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485: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);
@@ -1445,7 +1426,7 @@ public class smaliParser extends Parser {
}
stream_literal.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:139: ^( I_ANNOTATIONS )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:485:139: ^( I_ANNOTATIONS )
{
CommonTree root_2 = (CommonTree)adaptor.nil();
root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2);
@@ -1496,7 +1477,7 @@ public class smaliParser extends Parser {
// $ANTLR start "method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:504:1: method : METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ;
+ // /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 ) ;
public final smaliParser.method_return method() throws RecognitionException {
smaliParser.method_return retval = new smaliParser.method_return();
retval.start = input.LT(1);
@@ -1520,49 +1501,49 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:505:3: ( METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:505:5: METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE
+ // /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
{
- METHOD_DIRECTIVE28=(Token)match(input,METHOD_DIRECTIVE,FOLLOW_METHOD_DIRECTIVE_in_method1558);
+ METHOD_DIRECTIVE28=(Token)match(input,METHOD_DIRECTIVE,FOLLOW_METHOD_DIRECTIVE_in_method1483);
stream_METHOD_DIRECTIVE.add(METHOD_DIRECTIVE28);
- pushFollow(FOLLOW_access_list_in_method1560);
+ pushFollow(FOLLOW_access_list_in_method1485);
access_list29=access_list();
state._fsp--;
stream_access_list.add(access_list29.getTree());
- pushFollow(FOLLOW_member_name_in_method1562);
+ pushFollow(FOLLOW_member_name_in_method1487);
member_name30=member_name();
state._fsp--;
stream_member_name.add(member_name30.getTree());
- pushFollow(FOLLOW_method_prototype_in_method1564);
+ pushFollow(FOLLOW_method_prototype_in_method1489);
method_prototype31=method_prototype();
state._fsp--;
stream_method_prototype.add(method_prototype31.getTree());
- pushFollow(FOLLOW_statements_and_directives_in_method1566);
+ pushFollow(FOLLOW_statements_and_directives_in_method1491);
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_method1572);
+ END_METHOD_DIRECTIVE33=(Token)match(input,END_METHOD_DIRECTIVE,FOLLOW_END_METHOD_DIRECTIVE_in_method1497);
stream_END_METHOD_DIRECTIVE.add(END_METHOD_DIRECTIVE33);
// AST REWRITE
- // elements: method_prototype, statements_and_directives, access_list, member_name
- // token labels:
+ // elements: member_name, statements_and_directives, access_list, method_prototype
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 507:5: -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives )
+ // 492:5: -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:507:8: ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives )
+ // /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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD, (retval.start), "I_METHOD"), root_1);
@@ -1613,7 +1594,7 @@ public class smaliParser extends Parser {
// $ANTLR start "statements_and_directives"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:509:1: statements_and_directives : ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ;
+ // /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 )* ) ;
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();
@@ -1636,14 +1617,14 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_parameter_directive=new RewriteRuleSubtreeStream(adaptor,"rule parameter_directive");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:515:3: ( ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:515:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )*
+ // /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 )*
{
statements_and_directives_stack.peek().hasRegistersDirective = false;
statements_and_directives_stack.peek().methodAnnotations = new ArrayList<CommonTree>();
-
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:519:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )*
+
+ // /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 )*
loop6:
while (true) {
int alt6=7;
@@ -1736,9 +1717,9 @@ public class smaliParser extends Parser {
}
switch (alt6) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:519:7: ordered_method_item
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:504:7: ordered_method_item
{
- pushFollow(FOLLOW_ordered_method_item_in_statements_and_directives1617);
+ pushFollow(FOLLOW_ordered_method_item_in_statements_and_directives1542);
ordered_method_item34=ordered_method_item();
state._fsp--;
@@ -1746,9 +1727,9 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:520:7: registers_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:505:7: registers_directive
{
- pushFollow(FOLLOW_registers_directive_in_statements_and_directives1625);
+ pushFollow(FOLLOW_registers_directive_in_statements_and_directives1550);
registers_directive35=registers_directive();
state._fsp--;
@@ -1756,9 +1737,9 @@ public class smaliParser extends Parser {
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:521:7: catch_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:506:7: catch_directive
{
- pushFollow(FOLLOW_catch_directive_in_statements_and_directives1633);
+ pushFollow(FOLLOW_catch_directive_in_statements_and_directives1558);
catch_directive36=catch_directive();
state._fsp--;
@@ -1766,9 +1747,9 @@ public class smaliParser extends Parser {
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:522:7: catchall_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:507:7: catchall_directive
{
- pushFollow(FOLLOW_catchall_directive_in_statements_and_directives1641);
+ pushFollow(FOLLOW_catchall_directive_in_statements_and_directives1566);
catchall_directive37=catchall_directive();
state._fsp--;
@@ -1776,9 +1757,9 @@ public class smaliParser extends Parser {
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:523:7: parameter_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:508:7: parameter_directive
{
- pushFollow(FOLLOW_parameter_directive_in_statements_and_directives1649);
+ pushFollow(FOLLOW_parameter_directive_in_statements_and_directives1574);
parameter_directive38=parameter_directive();
state._fsp--;
@@ -1786,9 +1767,9 @@ public class smaliParser extends Parser {
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:524:7: annotation
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:509:7: annotation
{
- pushFollow(FOLLOW_annotation_in_statements_and_directives1657);
+ pushFollow(FOLLOW_annotation_in_statements_and_directives1582);
annotation39=annotation();
state._fsp--;
@@ -1803,29 +1784,29 @@ public class smaliParser extends Parser {
}
// AST REWRITE
- // elements: ordered_method_item, catchall_directive, catch_directive, registers_directive, parameter_directive
- // token labels:
+ // elements: catchall_directive, registers_directive, parameter_directive, catch_directive, ordered_method_item
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 526:5: -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* )
+ // 511:5: -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:526:8: ( registers_directive )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:511:8: ( registers_directive )?
if ( stream_registers_directive.hasNext() ) {
adaptor.addChild(root_0, stream_registers_directive.nextTree());
}
stream_registers_directive.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:527:8: ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:512: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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:527:33: ( ordered_method_item )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:512:33: ( ordered_method_item )*
while ( stream_ordered_method_item.hasNext() ) {
adaptor.addChild(root_1, stream_ordered_method_item.nextTree());
}
@@ -1834,17 +1815,17 @@ public class smaliParser extends Parser {
adaptor.addChild(root_0, root_1);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:8: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:513: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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:20: ( catch_directive )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:513:20: ( catch_directive )*
while ( stream_catch_directive.hasNext() ) {
adaptor.addChild(root_1, stream_catch_directive.nextTree());
}
stream_catch_directive.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:37: ( catchall_directive )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:513:37: ( catchall_directive )*
while ( stream_catchall_directive.hasNext() ) {
adaptor.addChild(root_1, stream_catchall_directive.nextTree());
}
@@ -1853,11 +1834,11 @@ public class smaliParser extends Parser {
adaptor.addChild(root_0, root_1);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:529:8: ^( I_PARAMETERS ( parameter_directive )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:514: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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:529:23: ( parameter_directive )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:514:23: ( parameter_directive )*
while ( stream_parameter_directive.hasNext() ) {
adaptor.addChild(root_1, stream_parameter_directive.nextTree());
}
@@ -1902,7 +1883,7 @@ public class smaliParser extends Parser {
// $ANTLR start "ordered_method_item"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:533:1: ordered_method_item : ( label | instruction | debug_directive );
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:518: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);
@@ -1915,7 +1896,7 @@ public class smaliParser extends Parser {
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:534:3: ( label | instruction | debug_directive )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:519:3: ( label | instruction | debug_directive )
int alt7=3;
switch ( input.LA(1) ) {
case COLON:
@@ -1992,12 +1973,12 @@ public class smaliParser extends Parser {
}
switch (alt7) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:534:5: label
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:519:5: label
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_label_in_ordered_method_item1742);
+ pushFollow(FOLLOW_label_in_ordered_method_item1667);
label40=label();
state._fsp--;
@@ -2006,12 +1987,12 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:535:5: instruction
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:520:5: instruction
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_instruction_in_ordered_method_item1748);
+ pushFollow(FOLLOW_instruction_in_ordered_method_item1673);
instruction41=instruction();
state._fsp--;
@@ -2020,12 +2001,12 @@ public class smaliParser extends Parser {
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:536:5: debug_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:521:5: debug_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_debug_directive_in_ordered_method_item1754);
+ pushFollow(FOLLOW_debug_directive_in_ordered_method_item1679);
debug_directive42=debug_directive();
state._fsp--;
@@ -2062,7 +2043,7 @@ public class smaliParser extends Parser {
// $ANTLR start "registers_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:538:1: registers_directive : (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ;
+ // /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) ) ;
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);
@@ -2079,10 +2060,10 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:3: ( (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) )
+ // /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) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) )
+ // /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) )
int alt8=2;
int LA8_0 = input.LA(1);
if ( (LA8_0==REGISTERS_DIRECTIVE) ) {
@@ -2100,31 +2081,31 @@ public class smaliParser extends Parser {
switch (alt8) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:540:7: directive= REGISTERS_DIRECTIVE regCount= integral_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:525:7: directive= REGISTERS_DIRECTIVE regCount= integral_literal
{
- directive=(Token)match(input,REGISTERS_DIRECTIVE,FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1774);
+ directive=(Token)match(input,REGISTERS_DIRECTIVE,FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1699);
stream_REGISTERS_DIRECTIVE.add(directive);
- pushFollow(FOLLOW_integral_literal_in_registers_directive1778);
+ pushFollow(FOLLOW_integral_literal_in_registers_directive1703);
regCount=integral_literal();
state._fsp--;
stream_integral_literal.add(regCount.getTree());
// AST REWRITE
// elements: regCount
- // token labels:
+ // token labels:
// rule labels: retval, regCount
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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);
RewriteRuleSubtreeStream stream_regCount=new RewriteRuleSubtreeStream(adaptor,"rule regCount",regCount!=null?regCount.getTree():null);
root_0 = (CommonTree)adaptor.nil();
- // 540:63: -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount)
+ // 525:63: -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount)
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:540:66: ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount)
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:525: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);
@@ -2140,31 +2121,31 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:541:7: directive= LOCALS_DIRECTIVE regCount2= integral_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:526:7: directive= LOCALS_DIRECTIVE regCount2= integral_literal
{
- directive=(Token)match(input,LOCALS_DIRECTIVE,FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1798);
+ directive=(Token)match(input,LOCALS_DIRECTIVE,FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1723);
stream_LOCALS_DIRECTIVE.add(directive);
- pushFollow(FOLLOW_integral_literal_in_registers_directive1802);
+ pushFollow(FOLLOW_integral_literal_in_registers_directive1727);
regCount2=integral_literal();
state._fsp--;
stream_integral_literal.add(regCount2.getTree());
// AST REWRITE
// elements: regCount2
- // token labels:
+ // token labels:
// rule labels: retval, regCount2
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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);
RewriteRuleSubtreeStream stream_regCount2=new RewriteRuleSubtreeStream(adaptor,"rule regCount2",regCount2!=null?regCount2.getTree():null);
root_0 = (CommonTree)adaptor.nil();
- // 541:61: -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2)
+ // 526:61: -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2)
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:541:64: ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2)
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:526: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);
@@ -2187,7 +2168,7 @@ public class smaliParser extends Parser {
throw new SemanticException(input, directive, "There can only be a single .registers or .locals directive in a method");
}
statements_and_directives_stack.peek().hasRegistersDirective =true;
-
+
}
retval.stop = input.LT(-1);
@@ -2209,6 +2190,94 @@ public class smaliParser extends Parser {
// $ANTLR end "registers_directive"
+ public static class param_list_or_id_return extends ParserRuleReturnScope {
+ CommonTree tree;
+ @Override
+ public CommonTree getTree() { return tree; }
+ };
+
+
+ // $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 ;
+ 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);
+
+ CommonTree root_0 = null;
+
+ Token PARAM_LIST_OR_ID_START43=null;
+ Token PRIMITIVE_TYPE44=null;
+ Token PARAM_LIST_OR_ID_END45=null;
+
+ CommonTree PARAM_LIST_OR_ID_START43_tree=null;
+ CommonTree PRIMITIVE_TYPE44_tree=null;
+ 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
+ {
+ 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_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 )+
+ int cnt9=0;
+ loop9:
+ while (true) {
+ int alt9=2;
+ int LA9_0 = input.LA(1);
+ if ( (LA9_0==PRIMITIVE_TYPE) ) {
+ alt9=1;
+ }
+
+ switch (alt9) {
+ case 1 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:536:28: PRIMITIVE_TYPE
+ {
+ PRIMITIVE_TYPE44=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_param_list_or_id1761);
+ PRIMITIVE_TYPE44_tree = (CommonTree)adaptor.create(PRIMITIVE_TYPE44);
+ adaptor.addChild(root_0, PRIMITIVE_TYPE44_tree);
+
+ }
+ break;
+
+ default :
+ if ( cnt9 >= 1 ) break loop9;
+ EarlyExitException eee = new EarlyExitException(9, input);
+ throw eee;
+ }
+ 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_tree = (CommonTree)adaptor.create(PARAM_LIST_OR_ID_END45);
+ adaptor.addChild(root_0, PARAM_LIST_OR_ID_END45_tree);
+
+ }
+
+ 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 "param_list_or_id"
+
+
public static class simple_name_return extends ParserRuleReturnScope {
CommonTree tree;
@Override
@@ -2217,92 +2286,91 @@ public class smaliParser extends Parser {
// $ANTLR start "simple_name"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:552:1: simple_name : ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | PARAM_LIST_OR_ID -> SIMPLE_NAME[$PARAM_LIST_OR_ID] | PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] );
+ // /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] );
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);
CommonTree root_0 = null;
- Token SIMPLE_NAME43=null;
- Token ACCESS_SPEC44=null;
- Token VERIFICATION_ERROR_TYPE45=null;
- Token POSITIVE_INTEGER_LITERAL46=null;
- Token NEGATIVE_INTEGER_LITERAL47=null;
- Token FLOAT_LITERAL_OR_ID48=null;
- Token DOUBLE_LITERAL_OR_ID49=null;
- Token BOOL_LITERAL50=null;
- Token NULL_LITERAL51=null;
- Token REGISTER52=null;
- Token PARAM_LIST_OR_ID53=null;
- Token PRIMITIVE_TYPE54=null;
- Token VOID_TYPE55=null;
- Token ANNOTATION_VISIBILITY56=null;
- Token INSTRUCTION_FORMAT10t57=null;
- Token INSTRUCTION_FORMAT10x58=null;
- Token INSTRUCTION_FORMAT10x_ODEX59=null;
- Token INSTRUCTION_FORMAT11x60=null;
- Token INSTRUCTION_FORMAT12x_OR_ID61=null;
- Token INSTRUCTION_FORMAT21c_FIELD62=null;
- Token INSTRUCTION_FORMAT21c_FIELD_ODEX63=null;
- Token INSTRUCTION_FORMAT21c_STRING64=null;
- Token INSTRUCTION_FORMAT21c_TYPE65=null;
- Token INSTRUCTION_FORMAT21t66=null;
- Token INSTRUCTION_FORMAT22c_FIELD67=null;
- Token INSTRUCTION_FORMAT22c_FIELD_ODEX68=null;
- Token INSTRUCTION_FORMAT22c_TYPE69=null;
- Token INSTRUCTION_FORMAT22cs_FIELD70=null;
- Token INSTRUCTION_FORMAT22s_OR_ID71=null;
- Token INSTRUCTION_FORMAT22t72=null;
- Token INSTRUCTION_FORMAT23x73=null;
- Token INSTRUCTION_FORMAT31i_OR_ID74=null;
- Token INSTRUCTION_FORMAT31t75=null;
- Token INSTRUCTION_FORMAT35c_METHOD76=null;
- Token INSTRUCTION_FORMAT35c_METHOD_ODEX77=null;
- Token INSTRUCTION_FORMAT35c_TYPE78=null;
- Token INSTRUCTION_FORMAT35mi_METHOD79=null;
- Token INSTRUCTION_FORMAT35ms_METHOD80=null;
- Token INSTRUCTION_FORMAT51l81=null;
-
- CommonTree SIMPLE_NAME43_tree=null;
- CommonTree ACCESS_SPEC44_tree=null;
- CommonTree VERIFICATION_ERROR_TYPE45_tree=null;
- CommonTree POSITIVE_INTEGER_LITERAL46_tree=null;
- CommonTree NEGATIVE_INTEGER_LITERAL47_tree=null;
- CommonTree FLOAT_LITERAL_OR_ID48_tree=null;
- CommonTree DOUBLE_LITERAL_OR_ID49_tree=null;
- CommonTree BOOL_LITERAL50_tree=null;
- CommonTree NULL_LITERAL51_tree=null;
- CommonTree REGISTER52_tree=null;
- CommonTree PARAM_LIST_OR_ID53_tree=null;
- CommonTree PRIMITIVE_TYPE54_tree=null;
- CommonTree VOID_TYPE55_tree=null;
- CommonTree ANNOTATION_VISIBILITY56_tree=null;
- CommonTree INSTRUCTION_FORMAT10t57_tree=null;
- CommonTree INSTRUCTION_FORMAT10x58_tree=null;
- CommonTree INSTRUCTION_FORMAT10x_ODEX59_tree=null;
- CommonTree INSTRUCTION_FORMAT11x60_tree=null;
- CommonTree INSTRUCTION_FORMAT12x_OR_ID61_tree=null;
- CommonTree INSTRUCTION_FORMAT21c_FIELD62_tree=null;
- CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX63_tree=null;
- CommonTree INSTRUCTION_FORMAT21c_STRING64_tree=null;
- CommonTree INSTRUCTION_FORMAT21c_TYPE65_tree=null;
- CommonTree INSTRUCTION_FORMAT21t66_tree=null;
- CommonTree INSTRUCTION_FORMAT22c_FIELD67_tree=null;
- CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX68_tree=null;
- CommonTree INSTRUCTION_FORMAT22c_TYPE69_tree=null;
- CommonTree INSTRUCTION_FORMAT22cs_FIELD70_tree=null;
- CommonTree INSTRUCTION_FORMAT22s_OR_ID71_tree=null;
- CommonTree INSTRUCTION_FORMAT22t72_tree=null;
- CommonTree INSTRUCTION_FORMAT23x73_tree=null;
- CommonTree INSTRUCTION_FORMAT31i_OR_ID74_tree=null;
- CommonTree INSTRUCTION_FORMAT31t75_tree=null;
- CommonTree INSTRUCTION_FORMAT35c_METHOD76_tree=null;
- CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX77_tree=null;
- CommonTree INSTRUCTION_FORMAT35c_TYPE78_tree=null;
- CommonTree INSTRUCTION_FORMAT35mi_METHOD79_tree=null;
- CommonTree INSTRUCTION_FORMAT35ms_METHOD80_tree=null;
- CommonTree INSTRUCTION_FORMAT51l81_tree=null;
+ Token SIMPLE_NAME46=null;
+ Token ACCESS_SPEC47=null;
+ Token VERIFICATION_ERROR_TYPE48=null;
+ Token POSITIVE_INTEGER_LITERAL49=null;
+ Token NEGATIVE_INTEGER_LITERAL50=null;
+ Token FLOAT_LITERAL_OR_ID51=null;
+ Token DOUBLE_LITERAL_OR_ID52=null;
+ Token BOOL_LITERAL53=null;
+ Token NULL_LITERAL54=null;
+ Token REGISTER55=null;
+ Token PRIMITIVE_TYPE57=null;
+ Token VOID_TYPE58=null;
+ Token ANNOTATION_VISIBILITY59=null;
+ Token INSTRUCTION_FORMAT10t60=null;
+ Token INSTRUCTION_FORMAT10x61=null;
+ Token INSTRUCTION_FORMAT10x_ODEX62=null;
+ Token INSTRUCTION_FORMAT11x63=null;
+ Token INSTRUCTION_FORMAT12x_OR_ID64=null;
+ Token INSTRUCTION_FORMAT21c_FIELD65=null;
+ 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;
+ ParserRuleReturnScope param_list_or_id56 =null;
+
+ CommonTree SIMPLE_NAME46_tree=null;
+ CommonTree ACCESS_SPEC47_tree=null;
+ CommonTree VERIFICATION_ERROR_TYPE48_tree=null;
+ CommonTree POSITIVE_INTEGER_LITERAL49_tree=null;
+ CommonTree NEGATIVE_INTEGER_LITERAL50_tree=null;
+ CommonTree FLOAT_LITERAL_OR_ID51_tree=null;
+ CommonTree DOUBLE_LITERAL_OR_ID52_tree=null;
+ CommonTree BOOL_LITERAL53_tree=null;
+ CommonTree NULL_LITERAL54_tree=null;
+ CommonTree REGISTER55_tree=null;
+ CommonTree PRIMITIVE_TYPE57_tree=null;
+ CommonTree VOID_TYPE58_tree=null;
+ CommonTree ANNOTATION_VISIBILITY59_tree=null;
+ CommonTree INSTRUCTION_FORMAT10t60_tree=null;
+ CommonTree INSTRUCTION_FORMAT10x61_tree=null;
+ CommonTree INSTRUCTION_FORMAT10x_ODEX62_tree=null;
+ CommonTree INSTRUCTION_FORMAT11x63_tree=null;
+ CommonTree INSTRUCTION_FORMAT12x_OR_ID64_tree=null;
+ CommonTree INSTRUCTION_FORMAT21c_FIELD65_tree=null;
+ 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;
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");
@@ -2329,7 +2397,6 @@ public class smaliParser extends Parser {
RewriteRuleTokenStream stream_FLOAT_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token FLOAT_LITERAL_OR_ID");
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22t");
RewriteRuleTokenStream stream_PRIMITIVE_TYPE=new RewriteRuleTokenStream(adaptor,"token PRIMITIVE_TYPE");
- RewriteRuleTokenStream stream_PARAM_LIST_OR_ID=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID");
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10x_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10x_ODEX");
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31t");
RewriteRuleTokenStream stream_DOUBLE_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token DOUBLE_LITERAL_OR_ID");
@@ -2341,244 +2408,245 @@ public class smaliParser extends Parser {
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_TYPE");
RewriteRuleTokenStream stream_POSITIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token POSITIVE_INTEGER_LITERAL");
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD_ODEX");
+ RewriteRuleSubtreeStream stream_param_list_or_id=new RewriteRuleSubtreeStream(adaptor,"rule param_list_or_id");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:553:3: ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | PARAM_LIST_OR_ID -> SIMPLE_NAME[$PARAM_LIST_OR_ID] | PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] )
- int alt9=39;
+ // /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;
switch ( input.LA(1) ) {
case SIMPLE_NAME:
{
- alt9=1;
+ alt10=1;
}
break;
case ACCESS_SPEC:
{
- alt9=2;
+ alt10=2;
}
break;
case VERIFICATION_ERROR_TYPE:
{
- alt9=3;
+ alt10=3;
}
break;
case POSITIVE_INTEGER_LITERAL:
{
- alt9=4;
+ alt10=4;
}
break;
case NEGATIVE_INTEGER_LITERAL:
{
- alt9=5;
+ alt10=5;
}
break;
case FLOAT_LITERAL_OR_ID:
{
- alt9=6;
+ alt10=6;
}
break;
case DOUBLE_LITERAL_OR_ID:
{
- alt9=7;
+ alt10=7;
}
break;
case BOOL_LITERAL:
{
- alt9=8;
+ alt10=8;
}
break;
case NULL_LITERAL:
{
- alt9=9;
+ alt10=9;
}
break;
case REGISTER:
{
- alt9=10;
+ alt10=10;
}
break;
- case PARAM_LIST_OR_ID:
+ case PARAM_LIST_OR_ID_START:
{
- alt9=11;
+ alt10=11;
}
break;
case PRIMITIVE_TYPE:
{
- alt9=12;
+ alt10=12;
}
break;
case VOID_TYPE:
{
- alt9=13;
+ alt10=13;
}
break;
case ANNOTATION_VISIBILITY:
{
- alt9=14;
+ alt10=14;
}
break;
case INSTRUCTION_FORMAT10t:
{
- alt9=15;
+ alt10=15;
}
break;
case INSTRUCTION_FORMAT10x:
{
- alt9=16;
+ alt10=16;
}
break;
case INSTRUCTION_FORMAT10x_ODEX:
{
- alt9=17;
+ alt10=17;
}
break;
case INSTRUCTION_FORMAT11x:
{
- alt9=18;
+ alt10=18;
}
break;
case INSTRUCTION_FORMAT12x_OR_ID:
{
- alt9=19;
+ alt10=19;
}
break;
case INSTRUCTION_FORMAT21c_FIELD:
{
- alt9=20;
+ alt10=20;
}
break;
case INSTRUCTION_FORMAT21c_FIELD_ODEX:
{
- alt9=21;
+ alt10=21;
}
break;
case INSTRUCTION_FORMAT21c_STRING:
{
- alt9=22;
+ alt10=22;
}
break;
case INSTRUCTION_FORMAT21c_TYPE:
{
- alt9=23;
+ alt10=23;
}
break;
case INSTRUCTION_FORMAT21t:
{
- alt9=24;
+ alt10=24;
}
break;
case INSTRUCTION_FORMAT22c_FIELD:
{
- alt9=25;
+ alt10=25;
}
break;
case INSTRUCTION_FORMAT22c_FIELD_ODEX:
{
- alt9=26;
+ alt10=26;
}
break;
case INSTRUCTION_FORMAT22c_TYPE:
{
- alt9=27;
+ alt10=27;
}
break;
case INSTRUCTION_FORMAT22cs_FIELD:
{
- alt9=28;
+ alt10=28;
}
break;
case INSTRUCTION_FORMAT22s_OR_ID:
{
- alt9=29;
+ alt10=29;
}
break;
case INSTRUCTION_FORMAT22t:
{
- alt9=30;
+ alt10=30;
}
break;
case INSTRUCTION_FORMAT23x:
{
- alt9=31;
+ alt10=31;
}
break;
case INSTRUCTION_FORMAT31i_OR_ID:
{
- alt9=32;
+ alt10=32;
}
break;
case INSTRUCTION_FORMAT31t:
{
- alt9=33;
+ alt10=33;
}
break;
case INSTRUCTION_FORMAT35c_METHOD:
{
- alt9=34;
+ alt10=34;
}
break;
case INSTRUCTION_FORMAT35c_METHOD_ODEX:
{
- alt9=35;
+ alt10=35;
}
break;
case INSTRUCTION_FORMAT35c_TYPE:
{
- alt9=36;
+ alt10=36;
}
break;
case INSTRUCTION_FORMAT35mi_METHOD:
{
- alt9=37;
+ alt10=37;
}
break;
case INSTRUCTION_FORMAT35ms_METHOD:
{
- alt9=38;
+ alt10=38;
}
break;
case INSTRUCTION_FORMAT51l:
{
- alt9=39;
+ alt10=39;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 9, 0, input);
+ new NoViableAltException("", 10, 0, input);
throw nvae;
}
- switch (alt9) {
+ switch (alt10) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:553:5: SIMPLE_NAME
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:541:5: SIMPLE_NAME
{
root_0 = (CommonTree)adaptor.nil();
- SIMPLE_NAME43=(Token)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_simple_name1836);
- SIMPLE_NAME43_tree = (CommonTree)adaptor.create(SIMPLE_NAME43);
- adaptor.addChild(root_0, SIMPLE_NAME43_tree);
+ SIMPLE_NAME46=(Token)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_simple_name1776);
+ SIMPLE_NAME46_tree = (CommonTree)adaptor.create(SIMPLE_NAME46);
+ adaptor.addChild(root_0, SIMPLE_NAME46_tree);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:554:5: ACCESS_SPEC
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:542:5: ACCESS_SPEC
{
- ACCESS_SPEC44=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_simple_name1842);
- stream_ACCESS_SPEC.add(ACCESS_SPEC44);
+ ACCESS_SPEC47=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_simple_name1782);
+ stream_ACCESS_SPEC.add(ACCESS_SPEC47);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 554:17: -> SIMPLE_NAME[$ACCESS_SPEC]
+ // 542:17: -> SIMPLE_NAME[$ACCESS_SPEC]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ACCESS_SPEC44));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ACCESS_SPEC47));
}
@@ -2587,25 +2655,25 @@ public class smaliParser extends Parser {
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:555:5: VERIFICATION_ERROR_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:543:5: VERIFICATION_ERROR_TYPE
{
- VERIFICATION_ERROR_TYPE45=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1853);
- stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE45);
+ VERIFICATION_ERROR_TYPE48=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1793);
+ stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE48);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 555:29: -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE]
+ // 543:29: -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VERIFICATION_ERROR_TYPE45));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VERIFICATION_ERROR_TYPE48));
}
@@ -2614,25 +2682,25 @@ public class smaliParser extends Parser {
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:556:5: POSITIVE_INTEGER_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:544:5: POSITIVE_INTEGER_LITERAL
{
- POSITIVE_INTEGER_LITERAL46=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1864);
- stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL46);
+ POSITIVE_INTEGER_LITERAL49=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1804);
+ stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL49);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 556:30: -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL]
+ // 544:30: -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, POSITIVE_INTEGER_LITERAL46));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, POSITIVE_INTEGER_LITERAL49));
}
@@ -2641,25 +2709,25 @@ public class smaliParser extends Parser {
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:557:5: NEGATIVE_INTEGER_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:545:5: NEGATIVE_INTEGER_LITERAL
{
- NEGATIVE_INTEGER_LITERAL47=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1875);
- stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL47);
+ NEGATIVE_INTEGER_LITERAL50=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1815);
+ stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL50);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 557:30: -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL]
+ // 545:30: -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NEGATIVE_INTEGER_LITERAL47));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NEGATIVE_INTEGER_LITERAL50));
}
@@ -2668,25 +2736,25 @@ public class smaliParser extends Parser {
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:558:5: FLOAT_LITERAL_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:546:5: FLOAT_LITERAL_OR_ID
{
- FLOAT_LITERAL_OR_ID48=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1886);
- stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID48);
+ FLOAT_LITERAL_OR_ID51=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1826);
+ stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID51);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 558:25: -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID]
+ // 546:25: -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, FLOAT_LITERAL_OR_ID48));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, FLOAT_LITERAL_OR_ID51));
}
@@ -2695,25 +2763,25 @@ public class smaliParser extends Parser {
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:559:5: DOUBLE_LITERAL_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:547:5: DOUBLE_LITERAL_OR_ID
{
- DOUBLE_LITERAL_OR_ID49=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1897);
- stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID49);
+ DOUBLE_LITERAL_OR_ID52=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1837);
+ stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID52);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 559:26: -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID]
+ // 547:26: -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, DOUBLE_LITERAL_OR_ID49));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, DOUBLE_LITERAL_OR_ID52));
}
@@ -2722,25 +2790,25 @@ public class smaliParser extends Parser {
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:560:5: BOOL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:548:5: BOOL_LITERAL
{
- BOOL_LITERAL50=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_simple_name1908);
- stream_BOOL_LITERAL.add(BOOL_LITERAL50);
+ BOOL_LITERAL53=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_simple_name1848);
+ stream_BOOL_LITERAL.add(BOOL_LITERAL53);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 560:18: -> SIMPLE_NAME[$BOOL_LITERAL]
+ // 548:18: -> SIMPLE_NAME[$BOOL_LITERAL]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, BOOL_LITERAL50));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, BOOL_LITERAL53));
}
@@ -2749,25 +2817,25 @@ public class smaliParser extends Parser {
}
break;
case 9 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:561:5: NULL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:549:5: NULL_LITERAL
{
- NULL_LITERAL51=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_simple_name1919);
- stream_NULL_LITERAL.add(NULL_LITERAL51);
+ NULL_LITERAL54=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_simple_name1859);
+ stream_NULL_LITERAL.add(NULL_LITERAL54);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 561:18: -> SIMPLE_NAME[$NULL_LITERAL]
+ // 549:18: -> SIMPLE_NAME[$NULL_LITERAL]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NULL_LITERAL51));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NULL_LITERAL54));
}
@@ -2776,25 +2844,25 @@ public class smaliParser extends Parser {
}
break;
case 10 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:562:5: REGISTER
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:550:5: REGISTER
{
- REGISTER52=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_simple_name1930);
- stream_REGISTER.add(REGISTER52);
+ REGISTER55=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_simple_name1870);
+ stream_REGISTER.add(REGISTER55);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 562:14: -> SIMPLE_NAME[$REGISTER]
+ // 550:14: -> SIMPLE_NAME[$REGISTER]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, REGISTER52));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, REGISTER55));
}
@@ -2803,25 +2871,27 @@ public class smaliParser extends Parser {
}
break;
case 11 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:563:5: PARAM_LIST_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:551:5: param_list_or_id
{
- PARAM_LIST_OR_ID53=(Token)match(input,PARAM_LIST_OR_ID,FOLLOW_PARAM_LIST_OR_ID_in_simple_name1941);
- stream_PARAM_LIST_OR_ID.add(PARAM_LIST_OR_ID53);
+ pushFollow(FOLLOW_param_list_or_id_in_simple_name1881);
+ param_list_or_id56=param_list_or_id();
+ state._fsp--;
+ stream_param_list_or_id.add(param_list_or_id56.getTree());
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 563:22: -> SIMPLE_NAME[$PARAM_LIST_OR_ID]
+ // 551:22: ->
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PARAM_LIST_OR_ID53));
+ 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)) );
}
@@ -2830,25 +2900,25 @@ public class smaliParser extends Parser {
}
break;
case 12 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:564:5: PRIMITIVE_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:552:5: PRIMITIVE_TYPE
{
- PRIMITIVE_TYPE54=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_simple_name1952);
- stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE54);
+ PRIMITIVE_TYPE57=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_simple_name1891);
+ stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE57);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 564:20: -> SIMPLE_NAME[$PRIMITIVE_TYPE]
+ // 552:20: -> SIMPLE_NAME[$PRIMITIVE_TYPE]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PRIMITIVE_TYPE54));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PRIMITIVE_TYPE57));
}
@@ -2857,25 +2927,25 @@ public class smaliParser extends Parser {
}
break;
case 13 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:565:5: VOID_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:553:5: VOID_TYPE
{
- VOID_TYPE55=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_simple_name1963);
- stream_VOID_TYPE.add(VOID_TYPE55);
+ VOID_TYPE58=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_simple_name1902);
+ stream_VOID_TYPE.add(VOID_TYPE58);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 565:15: -> SIMPLE_NAME[$VOID_TYPE]
+ // 553:15: -> SIMPLE_NAME[$VOID_TYPE]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VOID_TYPE55));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VOID_TYPE58));
}
@@ -2884,25 +2954,25 @@ public class smaliParser extends Parser {
}
break;
case 14 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:566:5: ANNOTATION_VISIBILITY
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:554:5: ANNOTATION_VISIBILITY
{
- ANNOTATION_VISIBILITY56=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1974);
- stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY56);
+ ANNOTATION_VISIBILITY59=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1913);
+ stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY59);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 566:27: -> SIMPLE_NAME[$ANNOTATION_VISIBILITY]
+ // 554:27: -> SIMPLE_NAME[$ANNOTATION_VISIBILITY]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ANNOTATION_VISIBILITY56));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ANNOTATION_VISIBILITY59));
}
@@ -2911,25 +2981,25 @@ public class smaliParser extends Parser {
}
break;
case 15 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:567:5: INSTRUCTION_FORMAT10t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:555:5: INSTRUCTION_FORMAT10t
{
- INSTRUCTION_FORMAT10t57=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1985);
- stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t57);
+ INSTRUCTION_FORMAT10t60=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1924);
+ stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t60);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 567:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t]
+ // 555:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10t57));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10t60));
}
@@ -2938,25 +3008,25 @@ public class smaliParser extends Parser {
}
break;
case 16 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:568:5: INSTRUCTION_FORMAT10x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:556:5: INSTRUCTION_FORMAT10x
{
- INSTRUCTION_FORMAT10x58=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1996);
- stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x58);
+ INSTRUCTION_FORMAT10x61=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1935);
+ stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x61);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 568:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x]
+ // 556:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x58));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x61));
}
@@ -2965,25 +3035,25 @@ public class smaliParser extends Parser {
}
break;
case 17 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:569:5: INSTRUCTION_FORMAT10x_ODEX
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:557:5: INSTRUCTION_FORMAT10x_ODEX
{
- INSTRUCTION_FORMAT10x_ODEX59=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name2007);
- stream_INSTRUCTION_FORMAT10x_ODEX.add(INSTRUCTION_FORMAT10x_ODEX59);
+ INSTRUCTION_FORMAT10x_ODEX62=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name1946);
+ stream_INSTRUCTION_FORMAT10x_ODEX.add(INSTRUCTION_FORMAT10x_ODEX62);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 569:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX]
+ // 557:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x_ODEX59));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x_ODEX62));
}
@@ -2992,25 +3062,25 @@ public class smaliParser extends Parser {
}
break;
case 18 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:570:5: INSTRUCTION_FORMAT11x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:558:5: INSTRUCTION_FORMAT11x
{
- INSTRUCTION_FORMAT11x60=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name2018);
- stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x60);
+ INSTRUCTION_FORMAT11x63=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name1957);
+ stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x63);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 570:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x]
+ // 558:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT11x60));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT11x63));
}
@@ -3019,25 +3089,25 @@ public class smaliParser extends Parser {
}
break;
case 19 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:571:5: INSTRUCTION_FORMAT12x_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:559:5: INSTRUCTION_FORMAT12x_OR_ID
{
- INSTRUCTION_FORMAT12x_OR_ID61=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name2029);
- stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID61);
+ INSTRUCTION_FORMAT12x_OR_ID64=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name1968);
+ stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID64);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 571:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID]
+ // 559:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT12x_OR_ID61));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT12x_OR_ID64));
}
@@ -3046,25 +3116,25 @@ public class smaliParser extends Parser {
}
break;
case 20 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:572:5: INSTRUCTION_FORMAT21c_FIELD
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:560:5: INSTRUCTION_FORMAT21c_FIELD
{
- INSTRUCTION_FORMAT21c_FIELD62=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name2040);
- stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD62);
+ INSTRUCTION_FORMAT21c_FIELD65=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name1979);
+ stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD65);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 572:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD]
+ // 560:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD62));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD65));
}
@@ -3073,25 +3143,25 @@ public class smaliParser extends Parser {
}
break;
case 21 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:573:5: INSTRUCTION_FORMAT21c_FIELD_ODEX
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:561:5: INSTRUCTION_FORMAT21c_FIELD_ODEX
{
- INSTRUCTION_FORMAT21c_FIELD_ODEX63=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name2051);
- stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX63);
+ INSTRUCTION_FORMAT21c_FIELD_ODEX66=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name1990);
+ stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX66);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 573:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX]
+ // 561:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD_ODEX63));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD_ODEX66));
}
@@ -3100,25 +3170,25 @@ public class smaliParser extends Parser {
}
break;
case 22 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:574:5: INSTRUCTION_FORMAT21c_STRING
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:562:5: INSTRUCTION_FORMAT21c_STRING
{
- INSTRUCTION_FORMAT21c_STRING64=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2062);
- stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING64);
+ INSTRUCTION_FORMAT21c_STRING67=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2001);
+ stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING67);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 574:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING]
+ // 562:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_STRING64));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_STRING67));
}
@@ -3127,25 +3197,25 @@ public class smaliParser extends Parser {
}
break;
case 23 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:575:5: INSTRUCTION_FORMAT21c_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:563:5: INSTRUCTION_FORMAT21c_TYPE
{
- INSTRUCTION_FORMAT21c_TYPE65=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2073);
- stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE65);
+ INSTRUCTION_FORMAT21c_TYPE68=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2012);
+ stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE68);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 575:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE]
+ // 563:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_TYPE65));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_TYPE68));
}
@@ -3154,25 +3224,25 @@ public class smaliParser extends Parser {
}
break;
case 24 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:576:5: INSTRUCTION_FORMAT21t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:564:5: INSTRUCTION_FORMAT21t
{
- INSTRUCTION_FORMAT21t66=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2084);
- stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t66);
+ INSTRUCTION_FORMAT21t69=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2023);
+ stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t69);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 576:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t]
+ // 564:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21t66));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21t69));
}
@@ -3181,25 +3251,25 @@ public class smaliParser extends Parser {
}
break;
case 25 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:577:5: INSTRUCTION_FORMAT22c_FIELD
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:565:5: INSTRUCTION_FORMAT22c_FIELD
{
- INSTRUCTION_FORMAT22c_FIELD67=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2095);
- stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD67);
+ INSTRUCTION_FORMAT22c_FIELD70=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2034);
+ stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD70);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 577:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD]
+ // 565:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD67));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD70));
}
@@ -3208,25 +3278,25 @@ public class smaliParser extends Parser {
}
break;
case 26 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:578:5: INSTRUCTION_FORMAT22c_FIELD_ODEX
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:566:5: INSTRUCTION_FORMAT22c_FIELD_ODEX
{
- INSTRUCTION_FORMAT22c_FIELD_ODEX68=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2106);
- stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX68);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 578:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX]
+ // 566:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD_ODEX68));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD_ODEX71));
}
@@ -3235,25 +3305,25 @@ public class smaliParser extends Parser {
}
break;
case 27 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:579:5: INSTRUCTION_FORMAT22c_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:567:5: INSTRUCTION_FORMAT22c_TYPE
{
- INSTRUCTION_FORMAT22c_TYPE69=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2117);
- stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE69);
+ INSTRUCTION_FORMAT22c_TYPE72=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2056);
+ stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE72);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 579:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE]
+ // 567:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_TYPE69));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_TYPE72));
}
@@ -3262,25 +3332,25 @@ public class smaliParser extends Parser {
}
break;
case 28 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:580:5: INSTRUCTION_FORMAT22cs_FIELD
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:568:5: INSTRUCTION_FORMAT22cs_FIELD
{
- INSTRUCTION_FORMAT22cs_FIELD70=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2128);
- stream_INSTRUCTION_FORMAT22cs_FIELD.add(INSTRUCTION_FORMAT22cs_FIELD70);
+ INSTRUCTION_FORMAT22cs_FIELD73=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2067);
+ stream_INSTRUCTION_FORMAT22cs_FIELD.add(INSTRUCTION_FORMAT22cs_FIELD73);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 580:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD]
+ // 568:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22cs_FIELD70));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22cs_FIELD73));
}
@@ -3289,25 +3359,25 @@ public class smaliParser extends Parser {
}
break;
case 29 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:581:5: INSTRUCTION_FORMAT22s_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:569:5: INSTRUCTION_FORMAT22s_OR_ID
{
- INSTRUCTION_FORMAT22s_OR_ID71=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2139);
- stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID71);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 581:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID]
+ // 569:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22s_OR_ID71));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22s_OR_ID74));
}
@@ -3316,25 +3386,25 @@ public class smaliParser extends Parser {
}
break;
case 30 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:582:5: INSTRUCTION_FORMAT22t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:570:5: INSTRUCTION_FORMAT22t
{
- INSTRUCTION_FORMAT22t72=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2150);
- stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t72);
+ INSTRUCTION_FORMAT22t75=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2089);
+ stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t75);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 582:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t]
+ // 570:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22t72));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22t75));
}
@@ -3343,25 +3413,25 @@ public class smaliParser extends Parser {
}
break;
case 31 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:583:5: INSTRUCTION_FORMAT23x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:571:5: INSTRUCTION_FORMAT23x
{
- INSTRUCTION_FORMAT23x73=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2161);
- stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x73);
+ INSTRUCTION_FORMAT23x76=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2100);
+ stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x76);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 583:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x]
+ // 571:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT23x73));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT23x76));
}
@@ -3370,25 +3440,25 @@ public class smaliParser extends Parser {
}
break;
case 32 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:584:5: INSTRUCTION_FORMAT31i_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:572:5: INSTRUCTION_FORMAT31i_OR_ID
{
- INSTRUCTION_FORMAT31i_OR_ID74=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2172);
- stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID74);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 584:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID]
+ // 572:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31i_OR_ID74));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31i_OR_ID77));
}
@@ -3397,25 +3467,25 @@ public class smaliParser extends Parser {
}
break;
case 33 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:585:5: INSTRUCTION_FORMAT31t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:573:5: INSTRUCTION_FORMAT31t
{
- INSTRUCTION_FORMAT31t75=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2183);
- stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t75);
+ INSTRUCTION_FORMAT31t78=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2122);
+ stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t78);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 585:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t]
+ // 573:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31t75));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31t78));
}
@@ -3424,25 +3494,25 @@ public class smaliParser extends Parser {
}
break;
case 34 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:586:5: INSTRUCTION_FORMAT35c_METHOD
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:574:5: INSTRUCTION_FORMAT35c_METHOD
{
- INSTRUCTION_FORMAT35c_METHOD76=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2194);
- stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD76);
+ INSTRUCTION_FORMAT35c_METHOD79=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2133);
+ stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD79);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 586:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD]
+ // 574:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD76));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD79));
}
@@ -3451,25 +3521,25 @@ public class smaliParser extends Parser {
}
break;
case 35 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:587:5: INSTRUCTION_FORMAT35c_METHOD_ODEX
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:575:5: INSTRUCTION_FORMAT35c_METHOD_ODEX
{
- INSTRUCTION_FORMAT35c_METHOD_ODEX77=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2205);
- stream_INSTRUCTION_FORMAT35c_METHOD_ODEX.add(INSTRUCTION_FORMAT35c_METHOD_ODEX77);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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]
+ // 575:39: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD_ODEX77));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD_ODEX80));
}
@@ -3478,25 +3548,25 @@ public class smaliParser extends Parser {
}
break;
case 36 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:588:5: INSTRUCTION_FORMAT35c_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:576:5: INSTRUCTION_FORMAT35c_TYPE
{
- INSTRUCTION_FORMAT35c_TYPE78=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2216);
- stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE78);
+ INSTRUCTION_FORMAT35c_TYPE81=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2155);
+ stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE81);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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]
+ // 576:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_TYPE78));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_TYPE81));
}
@@ -3505,25 +3575,25 @@ public class smaliParser extends Parser {
}
break;
case 37 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:589:5: INSTRUCTION_FORMAT35mi_METHOD
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:577:5: INSTRUCTION_FORMAT35mi_METHOD
{
- INSTRUCTION_FORMAT35mi_METHOD79=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2227);
- stream_INSTRUCTION_FORMAT35mi_METHOD.add(INSTRUCTION_FORMAT35mi_METHOD79);
+ INSTRUCTION_FORMAT35mi_METHOD82=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2166);
+ stream_INSTRUCTION_FORMAT35mi_METHOD.add(INSTRUCTION_FORMAT35mi_METHOD82);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 589:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD]
+ // 577:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35mi_METHOD79));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35mi_METHOD82));
}
@@ -3532,25 +3602,25 @@ public class smaliParser extends Parser {
}
break;
case 38 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:590:5: INSTRUCTION_FORMAT35ms_METHOD
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:578:5: INSTRUCTION_FORMAT35ms_METHOD
{
- INSTRUCTION_FORMAT35ms_METHOD80=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2238);
- stream_INSTRUCTION_FORMAT35ms_METHOD.add(INSTRUCTION_FORMAT35ms_METHOD80);
+ INSTRUCTION_FORMAT35ms_METHOD83=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2177);
+ stream_INSTRUCTION_FORMAT35ms_METHOD.add(INSTRUCTION_FORMAT35ms_METHOD83);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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]
+ // 578:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35ms_METHOD80));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35ms_METHOD83));
}
@@ -3559,25 +3629,25 @@ public class smaliParser extends Parser {
}
break;
case 39 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:591:5: INSTRUCTION_FORMAT51l
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:579:5: INSTRUCTION_FORMAT51l
{
- INSTRUCTION_FORMAT51l81=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2249);
- stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l81);
+ INSTRUCTION_FORMAT51l84=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2188);
+ stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l84);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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]
+ // 579:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT51l81));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT51l84));
}
@@ -3614,71 +3684,71 @@ public class smaliParser extends Parser {
// $ANTLR start "member_name"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:593:1: member_name : ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] );
+ // /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] );
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_NAME83=null;
- ParserRuleReturnScope simple_name82 =null;
+ Token MEMBER_NAME86=null;
+ ParserRuleReturnScope simple_name85 =null;
- CommonTree MEMBER_NAME83_tree=null;
+ CommonTree MEMBER_NAME86_tree=null;
RewriteRuleTokenStream stream_MEMBER_NAME=new RewriteRuleTokenStream(adaptor,"token MEMBER_NAME");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:594:3: ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] )
- int alt10=2;
- int LA10_0 = input.LA(1);
- if ( (LA10_0==ACCESS_SPEC||LA10_0==ANNOTATION_VISIBILITY||LA10_0==BOOL_LITERAL||LA10_0==DOUBLE_LITERAL_OR_ID||LA10_0==FLOAT_LITERAL_OR_ID||(LA10_0 >= INSTRUCTION_FORMAT10t && LA10_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA10_0==INSTRUCTION_FORMAT11x||LA10_0==INSTRUCTION_FORMAT12x_OR_ID||(LA10_0 >= INSTRUCTION_FORMAT21c_FIELD && LA10_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA10_0==INSTRUCTION_FORMAT21t||(LA10_0 >= INSTRUCTION_FORMAT22c_FIELD && LA10_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA10_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA10_0 <= INSTRUCTION_FORMAT22t)||LA10_0==INSTRUCTION_FORMAT23x||(LA10_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA10_0 <= INSTRUCTION_FORMAT31t)||(LA10_0 >= INSTRUCTION_FORMAT35c_METHOD && LA10_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA10_0==INSTRUCTION_FORMAT51l||(LA10_0 >= NEGATIVE_INTEGER_LITERAL && LA10_0 <= NULL_LITERAL)||(LA10_0 >= PARAM_LIST_OR_ID && LA10_0 <= PRIMITIVE_TYPE)||LA10_0==REGISTER||LA10_0==SIMPLE_NAME||(LA10_0 >= VERIFICATION_ERROR_TYPE && LA10_0 <= VOID_TYPE)) ) {
- alt10=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:582: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)) ) {
+ alt11=1;
}
- else if ( (LA10_0==MEMBER_NAME) ) {
- alt10=2;
+ else if ( (LA11_0==MEMBER_NAME) ) {
+ alt11=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 10, 0, input);
+ new NoViableAltException("", 11, 0, input);
throw nvae;
}
- switch (alt10) {
+ switch (alt11) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:594:5: simple_name
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:582:5: simple_name
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_simple_name_in_member_name2264);
- simple_name82=simple_name();
+ pushFollow(FOLLOW_simple_name_in_member_name2203);
+ simple_name85=simple_name();
state._fsp--;
- adaptor.addChild(root_0, simple_name82.getTree());
+ adaptor.addChild(root_0, simple_name85.getTree());
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:595:5: MEMBER_NAME
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:583:5: MEMBER_NAME
{
- MEMBER_NAME83=(Token)match(input,MEMBER_NAME,FOLLOW_MEMBER_NAME_in_member_name2270);
- stream_MEMBER_NAME.add(MEMBER_NAME83);
+ MEMBER_NAME86=(Token)match(input,MEMBER_NAME,FOLLOW_MEMBER_NAME_in_member_name2209);
+ stream_MEMBER_NAME.add(MEMBER_NAME86);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 595:17: -> SIMPLE_NAME[$MEMBER_NAME]
+ // 583:17: -> SIMPLE_NAME[$MEMBER_NAME]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, MEMBER_NAME83));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, MEMBER_NAME86));
}
@@ -3715,63 +3785,63 @@ public class smaliParser extends Parser {
// $ANTLR start "method_prototype"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:597:1: method_prototype : OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ;
+ // /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 )? ) ;
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_PAREN84=null;
- Token CLOSE_PAREN86=null;
- ParserRuleReturnScope param_list85 =null;
- ParserRuleReturnScope type_descriptor87 =null;
+ Token OPEN_PAREN87=null;
+ Token CLOSE_PAREN89=null;
+ ParserRuleReturnScope param_list88 =null;
+ ParserRuleReturnScope type_descriptor90 =null;
- CommonTree OPEN_PAREN84_tree=null;
- CommonTree CLOSE_PAREN86_tree=null;
+ CommonTree OPEN_PAREN87_tree=null;
+ CommonTree CLOSE_PAREN89_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:598:3: ( OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:598:5: OPEN_PAREN param_list CLOSE_PAREN type_descriptor
+ // /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
{
- OPEN_PAREN84=(Token)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_method_prototype2285);
- stream_OPEN_PAREN.add(OPEN_PAREN84);
+ OPEN_PAREN87=(Token)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_method_prototype2224);
+ stream_OPEN_PAREN.add(OPEN_PAREN87);
- pushFollow(FOLLOW_param_list_in_method_prototype2287);
- param_list85=param_list();
+ pushFollow(FOLLOW_param_list_in_method_prototype2226);
+ param_list88=param_list();
state._fsp--;
- stream_param_list.add(param_list85.getTree());
- CLOSE_PAREN86=(Token)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_method_prototype2289);
- stream_CLOSE_PAREN.add(CLOSE_PAREN86);
+ 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);
- pushFollow(FOLLOW_type_descriptor_in_method_prototype2291);
- type_descriptor87=type_descriptor();
+ pushFollow(FOLLOW_type_descriptor_in_method_prototype2230);
+ type_descriptor90=type_descriptor();
state._fsp--;
- stream_type_descriptor.add(type_descriptor87.getTree());
+ stream_type_descriptor.add(type_descriptor90.getTree());
// AST REWRITE
// elements: param_list, type_descriptor
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 599:5: -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? )
+ // 587:5: -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:8: ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? )
+ // /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 )? )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD_PROTOTYPE, (retval.start), "I_METHOD_PROTOTYPE"), root_1);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:59: ^( I_METHOD_RETURN_TYPE type_descriptor )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:587: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);
@@ -3779,7 +3849,7 @@ public class smaliParser extends Parser {
adaptor.addChild(root_1, root_2);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:99: ( param_list )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:587:99: ( param_list )?
if ( stream_param_list.hasNext() ) {
adaptor.addChild(root_1, stream_param_list.nextTree());
}
@@ -3822,34 +3892,45 @@ public class smaliParser extends Parser {
// $ANTLR start "param_list"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:601:1: param_list : ( PARAM_LIST ->| PARAM_LIST_OR_ID ->| ( nonvoid_type_descriptor )* );
+ // /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 )* );
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_LIST88=null;
- Token PARAM_LIST_OR_ID89=null;
- ParserRuleReturnScope nonvoid_type_descriptor90 =null;
-
- CommonTree PARAM_LIST88_tree=null;
- CommonTree PARAM_LIST_OR_ID89_tree=null;
- RewriteRuleTokenStream stream_PARAM_LIST=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST");
- RewriteRuleTokenStream stream_PARAM_LIST_OR_ID=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID");
+ 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;
+ 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");
+ RewriteRuleTokenStream stream_PARAM_LIST_END=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_END");
+ RewriteRuleTokenStream stream_PRIMITIVE_TYPE=new RewriteRuleTokenStream(adaptor,"token PRIMITIVE_TYPE");
+ RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:602:3: ( PARAM_LIST ->| PARAM_LIST_OR_ID ->| ( nonvoid_type_descriptor )* )
- int alt12=3;
+ // /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 )* )
+ int alt15=3;
switch ( input.LA(1) ) {
- case PARAM_LIST:
+ case PARAM_LIST_START:
{
- alt12=1;
+ alt15=1;
}
break;
- case PARAM_LIST_OR_ID:
+ case PARAM_LIST_OR_ID_START:
{
- alt12=2;
+ alt15=2;
}
break;
case ARRAY_DESCRIPTOR:
@@ -3857,35 +3938,69 @@ public class smaliParser extends Parser {
case CLOSE_PAREN:
case PRIMITIVE_TYPE:
{
- alt12=3;
+ alt15=3;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 12, 0, input);
+ new NoViableAltException("", 15, 0, input);
throw nvae;
}
- switch (alt12) {
+ switch (alt15) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:602:5: PARAM_LIST
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:5: PARAM_LIST_START ( nonvoid_type_descriptor )* PARAM_LIST_END
{
- PARAM_LIST88=(Token)match(input,PARAM_LIST,FOLLOW_PARAM_LIST_in_param_list2321);
- stream_PARAM_LIST.add(PARAM_LIST88);
+ PARAM_LIST_START91=(Token)match(input,PARAM_LIST_START,FOLLOW_PARAM_LIST_START_in_param_list2260);
+ stream_PARAM_LIST_START.add(PARAM_LIST_START91);
+
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:22: ( nonvoid_type_descriptor )*
+ loop12:
+ while (true) {
+ int alt12=2;
+ int LA12_0 = input.LA(1);
+ if ( (LA12_0==ARRAY_DESCRIPTOR||LA12_0==CLASS_DESCRIPTOR||LA12_0==PRIMITIVE_TYPE) ) {
+ alt12=1;
+ }
+
+ switch (alt12) {
+ case 1 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:22: nonvoid_type_descriptor
+ {
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2262);
+ nonvoid_type_descriptor92=nonvoid_type_descriptor();
+ state._fsp--;
+
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor92.getTree());
+ }
+ break;
+
+ default :
+ break loop12;
+ }
+ }
+
+ PARAM_LIST_END93=(Token)match(input,PARAM_LIST_END,FOLLOW_PARAM_LIST_END_in_param_list2265);
+ stream_PARAM_LIST_END.add(PARAM_LIST_END93);
// AST REWRITE
- // elements:
- // token labels:
+ // elements: nonvoid_type_descriptor
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 602:16: ->
+ // 590:62: -> ( nonvoid_type_descriptor )*
{
- adaptor.addChild(root_0, parseParamList((CommonToken)PARAM_LIST88) );
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:590:65: ( nonvoid_type_descriptor )*
+ while ( stream_nonvoid_type_descriptor.hasNext() ) {
+ adaptor.addChild(root_0, stream_nonvoid_type_descriptor.nextTree());
+ }
+ stream_nonvoid_type_descriptor.reset();
+
}
@@ -3894,25 +4009,57 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:603:5: PARAM_LIST_OR_ID
+ // /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
{
- PARAM_LIST_OR_ID89=(Token)match(input,PARAM_LIST_OR_ID,FOLLOW_PARAM_LIST_OR_ID_in_param_list2331);
- stream_PARAM_LIST_OR_ID.add(PARAM_LIST_OR_ID89);
+ 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);
+
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:591:28: ( PRIMITIVE_TYPE )*
+ loop13:
+ while (true) {
+ int alt13=2;
+ int LA13_0 = input.LA(1);
+ if ( (LA13_0==PRIMITIVE_TYPE) ) {
+ alt13=1;
+ }
+
+ switch (alt13) {
+ case 1 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:591:28: PRIMITIVE_TYPE
+ {
+ PRIMITIVE_TYPE95=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_param_list2278);
+ stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE95);
+
+ }
+ break;
+
+ default :
+ break loop13;
+ }
+ }
+
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements: PRIMITIVE_TYPE
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 603:22: ->
+ // 591:65: -> ( PRIMITIVE_TYPE )*
{
- adaptor.addChild(root_0, parseParamList((CommonToken)PARAM_LIST_OR_ID89) );
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:591:68: ( PRIMITIVE_TYPE )*
+ while ( stream_PRIMITIVE_TYPE.hasNext() ) {
+ adaptor.addChild(root_0, stream_PRIMITIVE_TYPE.nextNode());
+ }
+ stream_PRIMITIVE_TYPE.reset();
+
}
@@ -3921,35 +4068,35 @@ public class smaliParser extends Parser {
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: ( nonvoid_type_descriptor )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:592:5: ( nonvoid_type_descriptor )*
{
root_0 = (CommonTree)adaptor.nil();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: ( nonvoid_type_descriptor )*
- loop11:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:592:5: ( nonvoid_type_descriptor )*
+ loop14:
while (true) {
- int alt11=2;
- int LA11_0 = input.LA(1);
- if ( (LA11_0==ARRAY_DESCRIPTOR||LA11_0==CLASS_DESCRIPTOR||LA11_0==PRIMITIVE_TYPE) ) {
- alt11=1;
+ int alt14=2;
+ int LA14_0 = input.LA(1);
+ if ( (LA14_0==ARRAY_DESCRIPTOR||LA14_0==CLASS_DESCRIPTOR||LA14_0==PRIMITIVE_TYPE) ) {
+ alt14=1;
}
- switch (alt11) {
+ switch (alt14) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: nonvoid_type_descriptor
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:592:5: nonvoid_type_descriptor
{
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2341);
- nonvoid_type_descriptor90=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2292);
+ nonvoid_type_descriptor97=nonvoid_type_descriptor();
state._fsp--;
- adaptor.addChild(root_0, nonvoid_type_descriptor90.getTree());
+ adaptor.addChild(root_0, nonvoid_type_descriptor97.getTree());
}
break;
default :
- break loop11;
+ break loop14;
}
}
@@ -3984,28 +4131,28 @@ public class smaliParser extends Parser {
// $ANTLR start "type_descriptor"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:606:1: type_descriptor : ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR );
+ // /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 );
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 set91=null;
+ Token set98=null;
- CommonTree set91_tree=null;
+ CommonTree set98_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:607:3: ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:
+ // /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:
{
root_0 = (CommonTree)adaptor.nil();
- set91=input.LT(1);
+ set98=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(set91));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(set98));
state.errorRecovery=false;
}
else {
@@ -4041,28 +4188,28 @@ public class smaliParser extends Parser {
// $ANTLR start "nonvoid_type_descriptor"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:612:1: nonvoid_type_descriptor : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR );
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:600: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 set92=null;
+ Token set99=null;
- CommonTree set92_tree=null;
+ CommonTree set99_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:613:3: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:
+ // /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:
{
root_0 = (CommonTree)adaptor.nil();
- set92=input.LT(1);
+ set99=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(set92));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(set99));
state.errorRecovery=false;
}
else {
@@ -4098,28 +4245,28 @@ public class smaliParser extends Parser {
// $ANTLR start "reference_type_descriptor"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:617:1: reference_type_descriptor : ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR );
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:605: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 set93=null;
+ Token set100=null;
- CommonTree set93_tree=null;
+ CommonTree set100_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:618:3: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:
+ // /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:
{
root_0 = (CommonTree)adaptor.nil();
- set93=input.LT(1);
+ set100=input.LT(1);
if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR ) {
input.consume();
- adaptor.addChild(root_0, (CommonTree)adaptor.create(set93));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(set100));
state.errorRecovery=false;
}
else {
@@ -4155,59 +4302,59 @@ public class smaliParser extends Parser {
// $ANTLR start "integer_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:621:1: integer_literal : ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] );
+ // /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] );
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_LITERAL94=null;
- Token NEGATIVE_INTEGER_LITERAL95=null;
+ Token POSITIVE_INTEGER_LITERAL101=null;
+ Token NEGATIVE_INTEGER_LITERAL102=null;
- CommonTree POSITIVE_INTEGER_LITERAL94_tree=null;
- CommonTree NEGATIVE_INTEGER_LITERAL95_tree=null;
+ CommonTree POSITIVE_INTEGER_LITERAL101_tree=null;
+ CommonTree NEGATIVE_INTEGER_LITERAL102_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:622:3: ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] )
- int alt13=2;
- int LA13_0 = input.LA(1);
- if ( (LA13_0==POSITIVE_INTEGER_LITERAL) ) {
- alt13=1;
+ // /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] )
+ int alt16=2;
+ int LA16_0 = input.LA(1);
+ if ( (LA16_0==POSITIVE_INTEGER_LITERAL) ) {
+ alt16=1;
}
- else if ( (LA13_0==NEGATIVE_INTEGER_LITERAL) ) {
- alt13=2;
+ else if ( (LA16_0==NEGATIVE_INTEGER_LITERAL) ) {
+ alt16=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 13, 0, input);
+ new NoViableAltException("", 16, 0, input);
throw nvae;
}
- switch (alt13) {
+ switch (alt16) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:622:5: POSITIVE_INTEGER_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:610:5: POSITIVE_INTEGER_LITERAL
{
- POSITIVE_INTEGER_LITERAL94=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2418);
- stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL94);
+ POSITIVE_INTEGER_LITERAL101=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2369);
+ stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL101);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 622:30: -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL]
+ // 610:30: -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, POSITIVE_INTEGER_LITERAL94));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, POSITIVE_INTEGER_LITERAL101));
}
@@ -4216,25 +4363,25 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:623:5: NEGATIVE_INTEGER_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:611:5: NEGATIVE_INTEGER_LITERAL
{
- NEGATIVE_INTEGER_LITERAL95=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2429);
- stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL95);
+ NEGATIVE_INTEGER_LITERAL102=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2380);
+ stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL102);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 623:30: -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL]
+ // 611:30: -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, NEGATIVE_INTEGER_LITERAL95));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, NEGATIVE_INTEGER_LITERAL102));
}
@@ -4271,58 +4418,58 @@ public class smaliParser extends Parser {
// $ANTLR start "float_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:625: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/antlr3/smaliParser.g:613: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_ID96=null;
- Token FLOAT_LITERAL97=null;
+ Token FLOAT_LITERAL_OR_ID103=null;
+ Token FLOAT_LITERAL104=null;
- CommonTree FLOAT_LITERAL_OR_ID96_tree=null;
- CommonTree FLOAT_LITERAL97_tree=null;
+ CommonTree FLOAT_LITERAL_OR_ID103_tree=null;
+ CommonTree FLOAT_LITERAL104_tree=null;
RewriteRuleTokenStream stream_FLOAT_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token FLOAT_LITERAL_OR_ID");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:626:3: ( FLOAT_LITERAL_OR_ID -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] | FLOAT_LITERAL )
- int alt14=2;
- int LA14_0 = input.LA(1);
- if ( (LA14_0==FLOAT_LITERAL_OR_ID) ) {
- alt14=1;
+ // /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 )
+ int alt17=2;
+ int LA17_0 = input.LA(1);
+ if ( (LA17_0==FLOAT_LITERAL_OR_ID) ) {
+ alt17=1;
}
- else if ( (LA14_0==FLOAT_LITERAL) ) {
- alt14=2;
+ else if ( (LA17_0==FLOAT_LITERAL) ) {
+ alt17=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 14, 0, input);
+ new NoViableAltException("", 17, 0, input);
throw nvae;
}
- switch (alt14) {
+ switch (alt17) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:626:5: FLOAT_LITERAL_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:614:5: FLOAT_LITERAL_OR_ID
{
- FLOAT_LITERAL_OR_ID96=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_float_literal2444);
- stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID96);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 626:25: -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID]
+ // 614:25: -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(FLOAT_LITERAL, FLOAT_LITERAL_OR_ID96));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(FLOAT_LITERAL, FLOAT_LITERAL_OR_ID103));
}
@@ -4331,14 +4478,14 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:627:5: FLOAT_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:615:5: FLOAT_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- FLOAT_LITERAL97=(Token)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal2455);
- FLOAT_LITERAL97_tree = (CommonTree)adaptor.create(FLOAT_LITERAL97);
- adaptor.addChild(root_0, FLOAT_LITERAL97_tree);
+ 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);
}
break;
@@ -4371,58 +4518,58 @@ public class smaliParser extends Parser {
// $ANTLR start "double_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:629: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/antlr3/smaliParser.g:617: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_ID98=null;
- Token DOUBLE_LITERAL99=null;
+ Token DOUBLE_LITERAL_OR_ID105=null;
+ Token DOUBLE_LITERAL106=null;
- CommonTree DOUBLE_LITERAL_OR_ID98_tree=null;
- CommonTree DOUBLE_LITERAL99_tree=null;
+ CommonTree DOUBLE_LITERAL_OR_ID105_tree=null;
+ CommonTree DOUBLE_LITERAL106_tree=null;
RewriteRuleTokenStream stream_DOUBLE_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token DOUBLE_LITERAL_OR_ID");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:630:3: ( DOUBLE_LITERAL_OR_ID -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] | DOUBLE_LITERAL )
- int alt15=2;
- int LA15_0 = input.LA(1);
- if ( (LA15_0==DOUBLE_LITERAL_OR_ID) ) {
- alt15=1;
+ // /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 )
+ int alt18=2;
+ int LA18_0 = input.LA(1);
+ if ( (LA18_0==DOUBLE_LITERAL_OR_ID) ) {
+ alt18=1;
}
- else if ( (LA15_0==DOUBLE_LITERAL) ) {
- alt15=2;
+ else if ( (LA18_0==DOUBLE_LITERAL) ) {
+ alt18=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 15, 0, input);
+ new NoViableAltException("", 18, 0, input);
throw nvae;
}
- switch (alt15) {
+ switch (alt18) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:630:5: DOUBLE_LITERAL_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:618:5: DOUBLE_LITERAL_OR_ID
{
- DOUBLE_LITERAL_OR_ID98=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_double_literal2465);
- stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID98);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 630:26: -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID]
+ // 618:26: -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(DOUBLE_LITERAL, DOUBLE_LITERAL_OR_ID98));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(DOUBLE_LITERAL, DOUBLE_LITERAL_OR_ID105));
}
@@ -4431,14 +4578,14 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:631:5: DOUBLE_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:619:5: DOUBLE_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- DOUBLE_LITERAL99=(Token)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal2476);
- DOUBLE_LITERAL99_tree = (CommonTree)adaptor.create(DOUBLE_LITERAL99);
- adaptor.addChild(root_0, DOUBLE_LITERAL99_tree);
+ 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);
}
break;
@@ -4471,301 +4618,459 @@ public class smaliParser extends Parser {
// $ANTLR start "literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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 );
+ // /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 );
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_LITERAL100=null;
- Token SHORT_LITERAL102=null;
- Token BYTE_LITERAL103=null;
- Token CHAR_LITERAL106=null;
- Token STRING_LITERAL107=null;
- Token BOOL_LITERAL108=null;
- Token NULL_LITERAL109=null;
- ParserRuleReturnScope integer_literal101 =null;
- ParserRuleReturnScope float_literal104 =null;
- ParserRuleReturnScope double_literal105 =null;
- ParserRuleReturnScope array_literal110 =null;
- ParserRuleReturnScope subannotation111 =null;
- ParserRuleReturnScope type_field_method_literal112 =null;
- ParserRuleReturnScope enum_literal113 =null;
-
- CommonTree LONG_LITERAL100_tree=null;
- CommonTree SHORT_LITERAL102_tree=null;
- CommonTree BYTE_LITERAL103_tree=null;
- CommonTree CHAR_LITERAL106_tree=null;
- CommonTree STRING_LITERAL107_tree=null;
- CommonTree BOOL_LITERAL108_tree=null;
- CommonTree NULL_LITERAL109_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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 alt16=14;
+ // /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 )
+ int alt19=14;
switch ( input.LA(1) ) {
case LONG_LITERAL:
{
- alt16=1;
+ alt19=1;
}
break;
- case NEGATIVE_INTEGER_LITERAL:
case POSITIVE_INTEGER_LITERAL:
{
- alt16=2;
+ 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)) ) {
+ alt19=2;
+ }
+ else if ( (LA19_2==COLON||LA19_2==OPEN_PAREN) ) {
+ alt19=13;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 19, 2, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
+ }
+ break;
+ 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)) ) {
+ alt19=2;
+ }
+ else if ( (LA19_3==COLON||LA19_3==OPEN_PAREN) ) {
+ alt19=13;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 19, 3, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
}
break;
case SHORT_LITERAL:
{
- alt16=3;
+ alt19=3;
}
break;
case BYTE_LITERAL:
{
- alt16=4;
+ alt19=4;
}
break;
- case FLOAT_LITERAL:
case FLOAT_LITERAL_OR_ID:
{
- alt16=5;
+ 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)) ) {
+ alt19=5;
+ }
+ else if ( (LA19_6==COLON||LA19_6==OPEN_PAREN) ) {
+ alt19=13;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 19, 6, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
+ }
+ break;
+ case FLOAT_LITERAL:
+ {
+ alt19=5;
}
break;
- case DOUBLE_LITERAL:
case DOUBLE_LITERAL_OR_ID:
{
- alt16=6;
+ 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)) ) {
+ alt19=6;
+ }
+ else if ( (LA19_8==COLON||LA19_8==OPEN_PAREN) ) {
+ alt19=13;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 19, 8, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
+ }
+ break;
+ case DOUBLE_LITERAL:
+ {
+ alt19=6;
}
break;
case CHAR_LITERAL:
{
- alt16=7;
+ alt19=7;
}
break;
case STRING_LITERAL:
{
- alt16=8;
+ alt19=8;
}
break;
case BOOL_LITERAL:
{
- alt16=9;
+ 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)) ) {
+ alt19=9;
+ }
+ else if ( (LA19_12==COLON||LA19_12==OPEN_PAREN) ) {
+ alt19=13;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 19, 12, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
}
break;
case NULL_LITERAL:
{
- alt16=10;
+ 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)) ) {
+ alt19=10;
+ }
+ else if ( (LA19_13==COLON||LA19_13==OPEN_PAREN) ) {
+ alt19=13;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 19, 13, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
}
break;
case OPEN_BRACE:
{
- alt16=11;
+ alt19=11;
}
break;
case SUBANNOTATION_DIRECTIVE:
{
- alt16=12;
+ alt19=12;
}
break;
+ case ACCESS_SPEC:
+ case ANNOTATION_VISIBILITY:
case ARRAY_DESCRIPTOR:
case CLASS_DESCRIPTOR:
+ case INSTRUCTION_FORMAT10t:
+ case INSTRUCTION_FORMAT10x:
+ case INSTRUCTION_FORMAT10x_ODEX:
+ case INSTRUCTION_FORMAT11x:
+ case INSTRUCTION_FORMAT12x_OR_ID:
+ case INSTRUCTION_FORMAT21c_FIELD:
+ case INSTRUCTION_FORMAT21c_FIELD_ODEX:
+ case INSTRUCTION_FORMAT21c_STRING:
+ case INSTRUCTION_FORMAT21c_TYPE:
+ case INSTRUCTION_FORMAT21t:
+ case INSTRUCTION_FORMAT22c_FIELD:
+ case INSTRUCTION_FORMAT22c_FIELD_ODEX:
+ case INSTRUCTION_FORMAT22c_TYPE:
+ case INSTRUCTION_FORMAT22cs_FIELD:
+ case INSTRUCTION_FORMAT22s_OR_ID:
+ case INSTRUCTION_FORMAT22t:
+ case INSTRUCTION_FORMAT23x:
+ case INSTRUCTION_FORMAT31i_OR_ID:
+ case INSTRUCTION_FORMAT31t:
+ case INSTRUCTION_FORMAT35c_METHOD:
+ case INSTRUCTION_FORMAT35c_METHOD_ODEX:
+ case INSTRUCTION_FORMAT35c_TYPE:
+ case INSTRUCTION_FORMAT35mi_METHOD:
+ case INSTRUCTION_FORMAT35ms_METHOD:
+ case INSTRUCTION_FORMAT51l:
+ case MEMBER_NAME:
+ case PARAM_LIST_OR_ID_START:
case PRIMITIVE_TYPE:
+ case REGISTER:
+ case SIMPLE_NAME:
+ case VERIFICATION_ERROR_TYPE:
case VOID_TYPE:
{
- alt16=13;
+ alt19=13;
}
break;
case ENUM_DIRECTIVE:
{
- alt16=14;
+ alt19=14;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 16, 0, input);
+ new NoViableAltException("", 19, 0, input);
throw nvae;
}
- switch (alt16) {
+ switch (alt19) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:634:5: LONG_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:622:5: LONG_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- LONG_LITERAL100=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_literal2486);
- LONG_LITERAL100_tree = (CommonTree)adaptor.create(LONG_LITERAL100);
- adaptor.addChild(root_0, LONG_LITERAL100_tree);
+ 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);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:635:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:623:5: integer_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_integer_literal_in_literal2492);
- integer_literal101=integer_literal();
+ pushFollow(FOLLOW_integer_literal_in_literal2443);
+ integer_literal108=integer_literal();
state._fsp--;
- adaptor.addChild(root_0, integer_literal101.getTree());
+ adaptor.addChild(root_0, integer_literal108.getTree());
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:636:5: SHORT_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:624:5: SHORT_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- SHORT_LITERAL102=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_literal2498);
- SHORT_LITERAL102_tree = (CommonTree)adaptor.create(SHORT_LITERAL102);
- adaptor.addChild(root_0, SHORT_LITERAL102_tree);
+ 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);
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:637:5: BYTE_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:625:5: BYTE_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- BYTE_LITERAL103=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_literal2504);
- BYTE_LITERAL103_tree = (CommonTree)adaptor.create(BYTE_LITERAL103);
- adaptor.addChild(root_0, BYTE_LITERAL103_tree);
+ 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);
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:638:5: float_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:626:5: float_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_float_literal_in_literal2510);
- float_literal104=float_literal();
+ pushFollow(FOLLOW_float_literal_in_literal2461);
+ float_literal111=float_literal();
state._fsp--;
- adaptor.addChild(root_0, float_literal104.getTree());
+ adaptor.addChild(root_0, float_literal111.getTree());
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:639:5: double_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:627:5: double_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_double_literal_in_literal2516);
- double_literal105=double_literal();
+ pushFollow(FOLLOW_double_literal_in_literal2467);
+ double_literal112=double_literal();
state._fsp--;
- adaptor.addChild(root_0, double_literal105.getTree());
+ adaptor.addChild(root_0, double_literal112.getTree());
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:640:5: CHAR_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:628:5: CHAR_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- CHAR_LITERAL106=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_literal2522);
- CHAR_LITERAL106_tree = (CommonTree)adaptor.create(CHAR_LITERAL106);
- adaptor.addChild(root_0, CHAR_LITERAL106_tree);
+ 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);
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:641:5: STRING_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:629:5: STRING_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- STRING_LITERAL107=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_literal2528);
- STRING_LITERAL107_tree = (CommonTree)adaptor.create(STRING_LITERAL107);
- adaptor.addChild(root_0, STRING_LITERAL107_tree);
+ 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);
}
break;
case 9 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:642:5: BOOL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:630:5: BOOL_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- BOOL_LITERAL108=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_literal2534);
- BOOL_LITERAL108_tree = (CommonTree)adaptor.create(BOOL_LITERAL108);
- adaptor.addChild(root_0, BOOL_LITERAL108_tree);
+ 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);
}
break;
case 10 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:643:5: NULL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:631:5: NULL_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- NULL_LITERAL109=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal2540);
- NULL_LITERAL109_tree = (CommonTree)adaptor.create(NULL_LITERAL109);
- adaptor.addChild(root_0, NULL_LITERAL109_tree);
+ 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);
}
break;
case 11 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:644:5: array_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:632:5: array_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_array_literal_in_literal2546);
- array_literal110=array_literal();
+ pushFollow(FOLLOW_array_literal_in_literal2497);
+ array_literal117=array_literal();
state._fsp--;
- adaptor.addChild(root_0, array_literal110.getTree());
+ adaptor.addChild(root_0, array_literal117.getTree());
}
break;
case 12 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:645:5: subannotation
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:633:5: subannotation
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_subannotation_in_literal2552);
- subannotation111=subannotation();
+ pushFollow(FOLLOW_subannotation_in_literal2503);
+ subannotation118=subannotation();
state._fsp--;
- adaptor.addChild(root_0, subannotation111.getTree());
+ adaptor.addChild(root_0, subannotation118.getTree());
}
break;
case 13 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:646:5: type_field_method_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:634:5: type_field_method_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_type_field_method_literal_in_literal2558);
- type_field_method_literal112=type_field_method_literal();
+ pushFollow(FOLLOW_type_field_method_literal_in_literal2509);
+ type_field_method_literal119=type_field_method_literal();
state._fsp--;
- adaptor.addChild(root_0, type_field_method_literal112.getTree());
+ adaptor.addChild(root_0, type_field_method_literal119.getTree());
}
break;
case 14 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:647:5: enum_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:635:5: enum_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_enum_literal_in_literal2564);
- enum_literal113=enum_literal();
+ pushFollow(FOLLOW_enum_literal_in_literal2515);
+ enum_literal120=enum_literal();
state._fsp--;
- adaptor.addChild(root_0, enum_literal113.getTree());
+ adaptor.addChild(root_0, enum_literal120.getTree());
}
break;
@@ -4799,30 +5104,30 @@ public class smaliParser extends Parser {
// $ANTLR start "parsed_integer_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:649:1: parsed_integer_literal returns [int value] : 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 ;
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_literal114 =null;
+ ParserRuleReturnScope integer_literal121 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:650:3: ( integer_literal )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:650:5: integer_literal
+ // /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
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_integer_literal_in_parsed_integer_literal2577);
- integer_literal114=integer_literal();
+ pushFollow(FOLLOW_integer_literal_in_parsed_integer_literal2528);
+ integer_literal121=integer_literal();
state._fsp--;
- adaptor.addChild(root_0, integer_literal114.getTree());
+ adaptor.addChild(root_0, integer_literal121.getTree());
- retval.value = LiteralTools.parseInt((integer_literal114!=null?input.toString(integer_literal114.start,integer_literal114.stop):null));
+ retval.value = LiteralTools.parseInt((integer_literal121!=null?input.toString(integer_literal121.start,integer_literal121.stop):null));
}
retval.stop = input.LT(-1);
@@ -4852,119 +5157,119 @@ public class smaliParser extends Parser {
// $ANTLR start "integral_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:652:1: integral_literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_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 );
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_LITERAL115=null;
- Token SHORT_LITERAL117=null;
- Token CHAR_LITERAL118=null;
- Token BYTE_LITERAL119=null;
- ParserRuleReturnScope integer_literal116 =null;
+ Token LONG_LITERAL122=null;
+ Token SHORT_LITERAL124=null;
+ Token CHAR_LITERAL125=null;
+ Token BYTE_LITERAL126=null;
+ ParserRuleReturnScope integer_literal123 =null;
- CommonTree LONG_LITERAL115_tree=null;
- CommonTree SHORT_LITERAL117_tree=null;
- CommonTree CHAR_LITERAL118_tree=null;
- CommonTree BYTE_LITERAL119_tree=null;
+ CommonTree LONG_LITERAL122_tree=null;
+ CommonTree SHORT_LITERAL124_tree=null;
+ CommonTree CHAR_LITERAL125_tree=null;
+ CommonTree BYTE_LITERAL126_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:653:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_LITERAL )
- int alt17=5;
+ // /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 )
+ int alt20=5;
switch ( input.LA(1) ) {
case LONG_LITERAL:
{
- alt17=1;
+ alt20=1;
}
break;
case NEGATIVE_INTEGER_LITERAL:
case POSITIVE_INTEGER_LITERAL:
{
- alt17=2;
+ alt20=2;
}
break;
case SHORT_LITERAL:
{
- alt17=3;
+ alt20=3;
}
break;
case CHAR_LITERAL:
{
- alt17=4;
+ alt20=4;
}
break;
case BYTE_LITERAL:
{
- alt17=5;
+ alt20=5;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 17, 0, input);
+ new NoViableAltException("", 20, 0, input);
throw nvae;
}
- switch (alt17) {
+ switch (alt20) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:653:5: LONG_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:641:5: LONG_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- LONG_LITERAL115=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_integral_literal2589);
- LONG_LITERAL115_tree = (CommonTree)adaptor.create(LONG_LITERAL115);
- adaptor.addChild(root_0, LONG_LITERAL115_tree);
+ 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);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:654:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:642:5: integer_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_integer_literal_in_integral_literal2595);
- integer_literal116=integer_literal();
+ pushFollow(FOLLOW_integer_literal_in_integral_literal2546);
+ integer_literal123=integer_literal();
state._fsp--;
- adaptor.addChild(root_0, integer_literal116.getTree());
+ adaptor.addChild(root_0, integer_literal123.getTree());
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:655:5: SHORT_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:643:5: SHORT_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- SHORT_LITERAL117=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_integral_literal2601);
- SHORT_LITERAL117_tree = (CommonTree)adaptor.create(SHORT_LITERAL117);
- adaptor.addChild(root_0, SHORT_LITERAL117_tree);
+ 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);
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:656:5: CHAR_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:644:5: CHAR_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- CHAR_LITERAL118=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_integral_literal2607);
- CHAR_LITERAL118_tree = (CommonTree)adaptor.create(CHAR_LITERAL118);
- adaptor.addChild(root_0, CHAR_LITERAL118_tree);
+ 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);
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:657:5: BYTE_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:645:5: BYTE_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- BYTE_LITERAL119=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_integral_literal2613);
- BYTE_LITERAL119_tree = (CommonTree)adaptor.create(BYTE_LITERAL119);
- adaptor.addChild(root_0, BYTE_LITERAL119_tree);
+ 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);
}
break;
@@ -4997,159 +5302,159 @@ public class smaliParser extends Parser {
// $ANTLR start "fixed_32bit_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:659: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/antlr3/smaliParser.g:647: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_LITERAL120=null;
- Token SHORT_LITERAL122=null;
- Token BYTE_LITERAL123=null;
- Token CHAR_LITERAL125=null;
- Token BOOL_LITERAL126=null;
- ParserRuleReturnScope integer_literal121 =null;
- ParserRuleReturnScope float_literal124 =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;
- CommonTree LONG_LITERAL120_tree=null;
- CommonTree SHORT_LITERAL122_tree=null;
- CommonTree BYTE_LITERAL123_tree=null;
- CommonTree CHAR_LITERAL125_tree=null;
- CommonTree BOOL_LITERAL126_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:660:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | CHAR_LITERAL | BOOL_LITERAL )
- int alt18=7;
+ // /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 )
+ int alt21=7;
switch ( input.LA(1) ) {
case LONG_LITERAL:
{
- alt18=1;
+ alt21=1;
}
break;
case NEGATIVE_INTEGER_LITERAL:
case POSITIVE_INTEGER_LITERAL:
{
- alt18=2;
+ alt21=2;
}
break;
case SHORT_LITERAL:
{
- alt18=3;
+ alt21=3;
}
break;
case BYTE_LITERAL:
{
- alt18=4;
+ alt21=4;
}
break;
case FLOAT_LITERAL:
case FLOAT_LITERAL_OR_ID:
{
- alt18=5;
+ alt21=5;
}
break;
case CHAR_LITERAL:
{
- alt18=6;
+ alt21=6;
}
break;
case BOOL_LITERAL:
{
- alt18=7;
+ alt21=7;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 18, 0, input);
+ new NoViableAltException("", 21, 0, input);
throw nvae;
}
- switch (alt18) {
+ switch (alt21) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:660:5: LONG_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:648:5: LONG_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- LONG_LITERAL120=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_32bit_literal2623);
- LONG_LITERAL120_tree = (CommonTree)adaptor.create(LONG_LITERAL120);
- adaptor.addChild(root_0, LONG_LITERAL120_tree);
+ 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);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:661:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:649:5: integer_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal2629);
- integer_literal121=integer_literal();
+ pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal2580);
+ integer_literal128=integer_literal();
state._fsp--;
- adaptor.addChild(root_0, integer_literal121.getTree());
+ adaptor.addChild(root_0, integer_literal128.getTree());
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:662:5: SHORT_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:650:5: SHORT_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- SHORT_LITERAL122=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_32bit_literal2635);
- SHORT_LITERAL122_tree = (CommonTree)adaptor.create(SHORT_LITERAL122);
- adaptor.addChild(root_0, SHORT_LITERAL122_tree);
+ 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);
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:663:5: BYTE_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:651:5: BYTE_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- BYTE_LITERAL123=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_32bit_literal2641);
- BYTE_LITERAL123_tree = (CommonTree)adaptor.create(BYTE_LITERAL123);
- adaptor.addChild(root_0, BYTE_LITERAL123_tree);
+ 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);
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:664:5: float_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:652:5: float_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal2647);
- float_literal124=float_literal();
+ pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal2598);
+ float_literal131=float_literal();
state._fsp--;
- adaptor.addChild(root_0, float_literal124.getTree());
+ adaptor.addChild(root_0, float_literal131.getTree());
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:665:5: CHAR_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:653:5: CHAR_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- CHAR_LITERAL125=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_32bit_literal2653);
- CHAR_LITERAL125_tree = (CommonTree)adaptor.create(CHAR_LITERAL125);
- adaptor.addChild(root_0, CHAR_LITERAL125_tree);
+ 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);
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:666:5: BOOL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:654:5: BOOL_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- BOOL_LITERAL126=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_32bit_literal2659);
- BOOL_LITERAL126_tree = (CommonTree)adaptor.create(BOOL_LITERAL126);
- adaptor.addChild(root_0, BOOL_LITERAL126_tree);
+ 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);
}
break;
@@ -5182,180 +5487,180 @@ public class smaliParser extends Parser {
// $ANTLR start "fixed_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:668: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/antlr3/smaliParser.g:656: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_LITERAL128=null;
- Token SHORT_LITERAL129=null;
- Token BYTE_LITERAL130=null;
- Token CHAR_LITERAL133=null;
- Token BOOL_LITERAL134=null;
- ParserRuleReturnScope integer_literal127 =null;
- ParserRuleReturnScope float_literal131 =null;
- ParserRuleReturnScope double_literal132 =null;
-
- CommonTree LONG_LITERAL128_tree=null;
- CommonTree SHORT_LITERAL129_tree=null;
- CommonTree BYTE_LITERAL130_tree=null;
- CommonTree CHAR_LITERAL133_tree=null;
- CommonTree BOOL_LITERAL134_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:669:3: ( integer_literal | LONG_LITERAL | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | BOOL_LITERAL )
- int alt19=8;
+ // /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 )
+ int alt22=8;
switch ( input.LA(1) ) {
case NEGATIVE_INTEGER_LITERAL:
case POSITIVE_INTEGER_LITERAL:
{
- alt19=1;
+ alt22=1;
}
break;
case LONG_LITERAL:
{
- alt19=2;
+ alt22=2;
}
break;
case SHORT_LITERAL:
{
- alt19=3;
+ alt22=3;
}
break;
case BYTE_LITERAL:
{
- alt19=4;
+ alt22=4;
}
break;
case FLOAT_LITERAL:
case FLOAT_LITERAL_OR_ID:
{
- alt19=5;
+ alt22=5;
}
break;
case DOUBLE_LITERAL:
case DOUBLE_LITERAL_OR_ID:
{
- alt19=6;
+ alt22=6;
}
break;
case CHAR_LITERAL:
{
- alt19=7;
+ alt22=7;
}
break;
case BOOL_LITERAL:
{
- alt19=8;
+ alt22=8;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 19, 0, input);
+ new NoViableAltException("", 22, 0, input);
throw nvae;
}
- switch (alt19) {
+ switch (alt22) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:669:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:657:5: integer_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_integer_literal_in_fixed_literal2669);
- integer_literal127=integer_literal();
+ pushFollow(FOLLOW_integer_literal_in_fixed_literal2620);
+ integer_literal134=integer_literal();
state._fsp--;
- adaptor.addChild(root_0, integer_literal127.getTree());
+ adaptor.addChild(root_0, integer_literal134.getTree());
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:670:5: LONG_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:658:5: LONG_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- LONG_LITERAL128=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_literal2675);
- LONG_LITERAL128_tree = (CommonTree)adaptor.create(LONG_LITERAL128);
- adaptor.addChild(root_0, LONG_LITERAL128_tree);
+ 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);
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:671:5: SHORT_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:659:5: SHORT_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- SHORT_LITERAL129=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_literal2681);
- SHORT_LITERAL129_tree = (CommonTree)adaptor.create(SHORT_LITERAL129);
- adaptor.addChild(root_0, SHORT_LITERAL129_tree);
+ 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);
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:672:5: BYTE_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:660:5: BYTE_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- BYTE_LITERAL130=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_literal2687);
- BYTE_LITERAL130_tree = (CommonTree)adaptor.create(BYTE_LITERAL130);
- adaptor.addChild(root_0, BYTE_LITERAL130_tree);
+ 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);
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:673:5: float_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:661:5: float_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_float_literal_in_fixed_literal2693);
- float_literal131=float_literal();
+ pushFollow(FOLLOW_float_literal_in_fixed_literal2644);
+ float_literal138=float_literal();
state._fsp--;
- adaptor.addChild(root_0, float_literal131.getTree());
+ adaptor.addChild(root_0, float_literal138.getTree());
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:674:5: double_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:662:5: double_literal
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_double_literal_in_fixed_literal2699);
- double_literal132=double_literal();
+ pushFollow(FOLLOW_double_literal_in_fixed_literal2650);
+ double_literal139=double_literal();
state._fsp--;
- adaptor.addChild(root_0, double_literal132.getTree());
+ adaptor.addChild(root_0, double_literal139.getTree());
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:675:5: CHAR_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:663:5: CHAR_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- CHAR_LITERAL133=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_literal2705);
- CHAR_LITERAL133_tree = (CommonTree)adaptor.create(CHAR_LITERAL133);
- adaptor.addChild(root_0, CHAR_LITERAL133_tree);
+ 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);
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:676:5: BOOL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:664:5: BOOL_LITERAL
{
root_0 = (CommonTree)adaptor.nil();
- BOOL_LITERAL134=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_literal2711);
- BOOL_LITERAL134_tree = (CommonTree)adaptor.create(BOOL_LITERAL134);
- adaptor.addChild(root_0, BOOL_LITERAL134_tree);
+ 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);
}
break;
@@ -5388,119 +5693,119 @@ public class smaliParser extends Parser {
// $ANTLR start "array_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:678: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/antlr3/smaliParser.g:666: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_BRACE135=null;
- Token COMMA137=null;
- Token CLOSE_BRACE139=null;
- ParserRuleReturnScope literal136 =null;
- ParserRuleReturnScope literal138 =null;
+ Token OPEN_BRACE142=null;
+ Token COMMA144=null;
+ Token CLOSE_BRACE146=null;
+ ParserRuleReturnScope literal143 =null;
+ ParserRuleReturnScope literal145 =null;
- CommonTree OPEN_BRACE135_tree=null;
- CommonTree COMMA137_tree=null;
- CommonTree CLOSE_BRACE139_tree=null;
+ CommonTree OPEN_BRACE142_tree=null;
+ CommonTree COMMA144_tree=null;
+ CommonTree CLOSE_BRACE146_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:3: ( OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:5: OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE
+ // /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
{
- OPEN_BRACE135=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_array_literal2721);
- stream_OPEN_BRACE.add(OPEN_BRACE135);
+ OPEN_BRACE142=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_array_literal2672);
+ stream_OPEN_BRACE.add(OPEN_BRACE142);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:16: ( literal ( COMMA literal )* |)
- int alt21=2;
- int LA21_0 = input.LA(1);
- if ( (LA21_0==ARRAY_DESCRIPTOR||(LA21_0 >= BOOL_LITERAL && LA21_0 <= BYTE_LITERAL)||(LA21_0 >= CHAR_LITERAL && LA21_0 <= CLASS_DESCRIPTOR)||(LA21_0 >= DOUBLE_LITERAL && LA21_0 <= DOUBLE_LITERAL_OR_ID)||LA21_0==ENUM_DIRECTIVE||(LA21_0 >= FLOAT_LITERAL && LA21_0 <= FLOAT_LITERAL_OR_ID)||LA21_0==LONG_LITERAL||(LA21_0 >= NEGATIVE_INTEGER_LITERAL && LA21_0 <= OPEN_BRACE)||(LA21_0 >= POSITIVE_INTEGER_LITERAL && LA21_0 <= PRIMITIVE_TYPE)||LA21_0==SHORT_LITERAL||(LA21_0 >= STRING_LITERAL && LA21_0 <= SUBANNOTATION_DIRECTIVE)||LA21_0==VOID_TYPE) ) {
- alt21=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667: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)) ) {
+ alt24=1;
}
- else if ( (LA21_0==CLOSE_BRACE) ) {
- alt21=2;
+ else if ( (LA24_0==CLOSE_BRACE) ) {
+ alt24=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 21, 0, input);
+ new NoViableAltException("", 24, 0, input);
throw nvae;
}
- switch (alt21) {
+ switch (alt24) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:17: literal ( COMMA literal )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:17: literal ( COMMA literal )*
{
- pushFollow(FOLLOW_literal_in_array_literal2724);
- literal136=literal();
+ pushFollow(FOLLOW_literal_in_array_literal2675);
+ literal143=literal();
state._fsp--;
- stream_literal.add(literal136.getTree());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:25: ( COMMA literal )*
- loop20:
+ stream_literal.add(literal143.getTree());
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:25: ( COMMA literal )*
+ loop23:
while (true) {
- int alt20=2;
- int LA20_0 = input.LA(1);
- if ( (LA20_0==COMMA) ) {
- alt20=1;
+ int alt23=2;
+ int LA23_0 = input.LA(1);
+ if ( (LA23_0==COMMA) ) {
+ alt23=1;
}
- switch (alt20) {
+ switch (alt23) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:26: COMMA literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:26: COMMA literal
{
- COMMA137=(Token)match(input,COMMA,FOLLOW_COMMA_in_array_literal2727);
- stream_COMMA.add(COMMA137);
+ COMMA144=(Token)match(input,COMMA,FOLLOW_COMMA_in_array_literal2678);
+ stream_COMMA.add(COMMA144);
- pushFollow(FOLLOW_literal_in_array_literal2729);
- literal138=literal();
+ pushFollow(FOLLOW_literal_in_array_literal2680);
+ literal145=literal();
state._fsp--;
- stream_literal.add(literal138.getTree());
+ stream_literal.add(literal145.getTree());
}
break;
default :
- break loop20;
+ break loop23;
}
}
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:44:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:667:44:
{
}
break;
}
- CLOSE_BRACE139=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_array_literal2737);
- stream_CLOSE_BRACE.add(CLOSE_BRACE139);
+ CLOSE_BRACE146=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_array_literal2688);
+ stream_CLOSE_BRACE.add(CLOSE_BRACE146);
// AST REWRITE
// elements: literal
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 680:5: -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* )
+ // 668:5: -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:680:8: ^( 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 )* )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_ARRAY, (retval.start), "I_ENCODED_ARRAY"), root_1);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:680:53: ( literal )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:668:53: ( literal )*
while ( stream_literal.hasNext() ) {
adaptor.addChild(root_1, stream_literal.nextTree());
}
@@ -5543,53 +5848,53 @@ public class smaliParser extends Parser {
// $ANTLR start "annotation_element"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:682: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/antlr3/smaliParser.g:670: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 EQUAL141=null;
- ParserRuleReturnScope simple_name140 =null;
- ParserRuleReturnScope literal142 =null;
+ Token EQUAL148=null;
+ ParserRuleReturnScope simple_name147 =null;
+ ParserRuleReturnScope literal149 =null;
- CommonTree EQUAL141_tree=null;
+ CommonTree EQUAL148_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:683:3: ( simple_name EQUAL literal -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:683:5: simple_name EQUAL literal
+ // /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
{
- pushFollow(FOLLOW_simple_name_in_annotation_element2761);
- simple_name140=simple_name();
+ pushFollow(FOLLOW_simple_name_in_annotation_element2712);
+ simple_name147=simple_name();
state._fsp--;
- stream_simple_name.add(simple_name140.getTree());
- EQUAL141=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_annotation_element2763);
- stream_EQUAL.add(EQUAL141);
+ stream_simple_name.add(simple_name147.getTree());
+ EQUAL148=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_annotation_element2714);
+ stream_EQUAL.add(EQUAL148);
- pushFollow(FOLLOW_literal_in_annotation_element2765);
- literal142=literal();
+ pushFollow(FOLLOW_literal_in_annotation_element2716);
+ literal149=literal();
state._fsp--;
- stream_literal.add(literal142.getTree());
+ stream_literal.add(literal149.getTree());
// AST REWRITE
- // elements: simple_name, literal
- // token labels:
+ // elements: literal, simple_name
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 684:5: -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal )
+ // 672:5: -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:684:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATION_ELEMENT, (retval.start), "I_ANNOTATION_ELEMENT"), root_1);
@@ -5632,23 +5937,23 @@ public class smaliParser extends Parser {
// $ANTLR start "annotation"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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 )* ) ) ;
+ // /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 )* ) ) ;
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_DIRECTIVE143=null;
- Token ANNOTATION_VISIBILITY144=null;
- Token CLASS_DESCRIPTOR145=null;
- Token END_ANNOTATION_DIRECTIVE147=null;
- ParserRuleReturnScope annotation_element146 =null;
+ Token ANNOTATION_DIRECTIVE150=null;
+ Token ANNOTATION_VISIBILITY151=null;
+ Token CLASS_DESCRIPTOR152=null;
+ Token END_ANNOTATION_DIRECTIVE154=null;
+ ParserRuleReturnScope annotation_element153 =null;
- CommonTree ANNOTATION_DIRECTIVE143_tree=null;
- CommonTree ANNOTATION_VISIBILITY144_tree=null;
- CommonTree CLASS_DESCRIPTOR145_tree=null;
- CommonTree END_ANNOTATION_DIRECTIVE147_tree=null;
+ CommonTree ANNOTATION_DIRECTIVE150_tree=null;
+ CommonTree ANNOTATION_VISIBILITY151_tree=null;
+ CommonTree CLASS_DESCRIPTOR152_tree=null;
+ CommonTree END_ANNOTATION_DIRECTIVE154_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");
@@ -5656,71 +5961,71 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_annotation_element=new RewriteRuleSubtreeStream(adaptor,"rule annotation_element");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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 )* ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:687:5: ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE
+ // /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
{
- ANNOTATION_DIRECTIVE143=(Token)match(input,ANNOTATION_DIRECTIVE,FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2790);
- stream_ANNOTATION_DIRECTIVE.add(ANNOTATION_DIRECTIVE143);
+ ANNOTATION_DIRECTIVE150=(Token)match(input,ANNOTATION_DIRECTIVE,FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2741);
+ stream_ANNOTATION_DIRECTIVE.add(ANNOTATION_DIRECTIVE150);
- ANNOTATION_VISIBILITY144=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation2792);
- stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY144);
+ ANNOTATION_VISIBILITY151=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation2743);
+ stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY151);
- CLASS_DESCRIPTOR145=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_annotation2794);
- stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR145);
+ CLASS_DESCRIPTOR152=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_annotation2745);
+ stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR152);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:688:5: ( annotation_element )*
- loop22:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:676:5: ( annotation_element )*
+ loop25:
while (true) {
- int alt22=2;
- int LA22_0 = input.LA(1);
- if ( (LA22_0==ACCESS_SPEC||LA22_0==ANNOTATION_VISIBILITY||LA22_0==BOOL_LITERAL||LA22_0==DOUBLE_LITERAL_OR_ID||LA22_0==FLOAT_LITERAL_OR_ID||(LA22_0 >= INSTRUCTION_FORMAT10t && LA22_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA22_0==INSTRUCTION_FORMAT11x||LA22_0==INSTRUCTION_FORMAT12x_OR_ID||(LA22_0 >= INSTRUCTION_FORMAT21c_FIELD && LA22_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA22_0==INSTRUCTION_FORMAT21t||(LA22_0 >= INSTRUCTION_FORMAT22c_FIELD && LA22_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA22_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA22_0 <= INSTRUCTION_FORMAT22t)||LA22_0==INSTRUCTION_FORMAT23x||(LA22_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA22_0 <= INSTRUCTION_FORMAT31t)||(LA22_0 >= INSTRUCTION_FORMAT35c_METHOD && LA22_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA22_0==INSTRUCTION_FORMAT51l||(LA22_0 >= NEGATIVE_INTEGER_LITERAL && LA22_0 <= NULL_LITERAL)||(LA22_0 >= PARAM_LIST_OR_ID && LA22_0 <= PRIMITIVE_TYPE)||LA22_0==REGISTER||LA22_0==SIMPLE_NAME||(LA22_0 >= VERIFICATION_ERROR_TYPE && LA22_0 <= VOID_TYPE)) ) {
- alt22=1;
+ 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)) ) {
+ alt25=1;
}
- switch (alt22) {
+ switch (alt25) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:688:5: annotation_element
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:676:5: annotation_element
{
- pushFollow(FOLLOW_annotation_element_in_annotation2800);
- annotation_element146=annotation_element();
+ pushFollow(FOLLOW_annotation_element_in_annotation2751);
+ annotation_element153=annotation_element();
state._fsp--;
- stream_annotation_element.add(annotation_element146.getTree());
+ stream_annotation_element.add(annotation_element153.getTree());
}
break;
default :
- break loop22;
+ break loop25;
}
}
- END_ANNOTATION_DIRECTIVE147=(Token)match(input,END_ANNOTATION_DIRECTIVE,FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2803);
- stream_END_ANNOTATION_DIRECTIVE.add(END_ANNOTATION_DIRECTIVE147);
+ END_ANNOTATION_DIRECTIVE154=(Token)match(input,END_ANNOTATION_DIRECTIVE,FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2754);
+ stream_END_ANNOTATION_DIRECTIVE.add(END_ANNOTATION_DIRECTIVE154);
// AST REWRITE
- // elements: CLASS_DESCRIPTOR, annotation_element, ANNOTATION_VISIBILITY
- // token labels:
+ // elements: CLASS_DESCRIPTOR, ANNOTATION_VISIBILITY, annotation_element
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 689:5: -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) )
+ // 677:5: -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:689: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/antlr3/smaliParser.g:677: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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:689:69: ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:677: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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:689:131: ( annotation_element )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:677:131: ( annotation_element )*
while ( stream_annotation_element.hasNext() ) {
adaptor.addChild(root_2, stream_annotation_element.nextTree());
}
@@ -5766,84 +6071,84 @@ public class smaliParser extends Parser {
// $ANTLR start "subannotation"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:691: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/antlr3/smaliParser.g:679: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_DIRECTIVE148=null;
- Token CLASS_DESCRIPTOR149=null;
- Token END_SUBANNOTATION_DIRECTIVE151=null;
- ParserRuleReturnScope annotation_element150 =null;
+ Token SUBANNOTATION_DIRECTIVE155=null;
+ Token CLASS_DESCRIPTOR156=null;
+ Token END_SUBANNOTATION_DIRECTIVE158=null;
+ ParserRuleReturnScope annotation_element157 =null;
- CommonTree SUBANNOTATION_DIRECTIVE148_tree=null;
- CommonTree CLASS_DESCRIPTOR149_tree=null;
- CommonTree END_SUBANNOTATION_DIRECTIVE151_tree=null;
+ CommonTree SUBANNOTATION_DIRECTIVE155_tree=null;
+ CommonTree CLASS_DESCRIPTOR156_tree=null;
+ CommonTree END_SUBANNOTATION_DIRECTIVE158_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:3: ( SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:5: SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE
+ // /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
{
- SUBANNOTATION_DIRECTIVE148=(Token)match(input,SUBANNOTATION_DIRECTIVE,FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2836);
- stream_SUBANNOTATION_DIRECTIVE.add(SUBANNOTATION_DIRECTIVE148);
+ SUBANNOTATION_DIRECTIVE155=(Token)match(input,SUBANNOTATION_DIRECTIVE,FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2787);
+ stream_SUBANNOTATION_DIRECTIVE.add(SUBANNOTATION_DIRECTIVE155);
- CLASS_DESCRIPTOR149=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation2838);
- stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR149);
+ CLASS_DESCRIPTOR156=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation2789);
+ stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR156);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:46: ( annotation_element )*
- loop23:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:680:46: ( annotation_element )*
+ loop26:
while (true) {
- int alt23=2;
- int LA23_0 = input.LA(1);
- if ( (LA23_0==ACCESS_SPEC||LA23_0==ANNOTATION_VISIBILITY||LA23_0==BOOL_LITERAL||LA23_0==DOUBLE_LITERAL_OR_ID||LA23_0==FLOAT_LITERAL_OR_ID||(LA23_0 >= INSTRUCTION_FORMAT10t && LA23_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA23_0==INSTRUCTION_FORMAT11x||LA23_0==INSTRUCTION_FORMAT12x_OR_ID||(LA23_0 >= INSTRUCTION_FORMAT21c_FIELD && LA23_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA23_0==INSTRUCTION_FORMAT21t||(LA23_0 >= INSTRUCTION_FORMAT22c_FIELD && LA23_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA23_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA23_0 <= INSTRUCTION_FORMAT22t)||LA23_0==INSTRUCTION_FORMAT23x||(LA23_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA23_0 <= INSTRUCTION_FORMAT31t)||(LA23_0 >= INSTRUCTION_FORMAT35c_METHOD && LA23_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA23_0==INSTRUCTION_FORMAT51l||(LA23_0 >= NEGATIVE_INTEGER_LITERAL && LA23_0 <= NULL_LITERAL)||(LA23_0 >= PARAM_LIST_OR_ID && LA23_0 <= PRIMITIVE_TYPE)||LA23_0==REGISTER||LA23_0==SIMPLE_NAME||(LA23_0 >= VERIFICATION_ERROR_TYPE && LA23_0 <= VOID_TYPE)) ) {
- alt23=1;
+ 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)) ) {
+ alt26=1;
}
- switch (alt23) {
+ switch (alt26) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:46: annotation_element
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:680:46: annotation_element
{
- pushFollow(FOLLOW_annotation_element_in_subannotation2840);
- annotation_element150=annotation_element();
+ pushFollow(FOLLOW_annotation_element_in_subannotation2791);
+ annotation_element157=annotation_element();
state._fsp--;
- stream_annotation_element.add(annotation_element150.getTree());
+ stream_annotation_element.add(annotation_element157.getTree());
}
break;
default :
- break loop23;
+ break loop26;
}
}
- END_SUBANNOTATION_DIRECTIVE151=(Token)match(input,END_SUBANNOTATION_DIRECTIVE,FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2843);
- stream_END_SUBANNOTATION_DIRECTIVE.add(END_SUBANNOTATION_DIRECTIVE151);
+ END_SUBANNOTATION_DIRECTIVE158=(Token)match(input,END_SUBANNOTATION_DIRECTIVE,FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2794);
+ stream_END_SUBANNOTATION_DIRECTIVE.add(END_SUBANNOTATION_DIRECTIVE158);
// AST REWRITE
- // elements: CLASS_DESCRIPTOR, annotation_element
- // token labels:
+ // elements: annotation_element, CLASS_DESCRIPTOR
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 693:5: -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* )
+ // 681:5: -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:693:8: ^( 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 )* )
{
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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:693:70: ( annotation_element )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:681:70: ( annotation_element )*
while ( stream_annotation_element.hasNext() ) {
adaptor.addChild(root_1, stream_annotation_element.nextTree());
}
@@ -5886,23 +6191,23 @@ public class smaliParser extends Parser {
// $ANTLR start "enum_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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 ) ;
+ // /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 ) ;
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_DIRECTIVE152=null;
- Token ARROW154=null;
- Token COLON156=null;
- ParserRuleReturnScope reference_type_descriptor153 =null;
- ParserRuleReturnScope simple_name155 =null;
- ParserRuleReturnScope reference_type_descriptor157 =null;
+ Token ENUM_DIRECTIVE159=null;
+ Token ARROW161=null;
+ Token COLON163=null;
+ ParserRuleReturnScope reference_type_descriptor160 =null;
+ ParserRuleReturnScope simple_name162 =null;
+ ParserRuleReturnScope reference_type_descriptor164 =null;
- CommonTree ENUM_DIRECTIVE152_tree=null;
- CommonTree ARROW154_tree=null;
- CommonTree COLON156_tree=null;
+ CommonTree ENUM_DIRECTIVE159_tree=null;
+ CommonTree ARROW161_tree=null;
+ CommonTree COLON163_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");
@@ -5910,47 +6215,47 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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 ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:696:5: ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor
+ // /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
{
- ENUM_DIRECTIVE152=(Token)match(input,ENUM_DIRECTIVE,FOLLOW_ENUM_DIRECTIVE_in_enum_literal2869);
- stream_ENUM_DIRECTIVE.add(ENUM_DIRECTIVE152);
+ ENUM_DIRECTIVE159=(Token)match(input,ENUM_DIRECTIVE,FOLLOW_ENUM_DIRECTIVE_in_enum_literal2820);
+ stream_ENUM_DIRECTIVE.add(ENUM_DIRECTIVE159);
- pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2871);
- reference_type_descriptor153=reference_type_descriptor();
+ pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2822);
+ reference_type_descriptor160=reference_type_descriptor();
state._fsp--;
- stream_reference_type_descriptor.add(reference_type_descriptor153.getTree());
- ARROW154=(Token)match(input,ARROW,FOLLOW_ARROW_in_enum_literal2873);
- stream_ARROW.add(ARROW154);
+ stream_reference_type_descriptor.add(reference_type_descriptor160.getTree());
+ ARROW161=(Token)match(input,ARROW,FOLLOW_ARROW_in_enum_literal2824);
+ stream_ARROW.add(ARROW161);
- pushFollow(FOLLOW_simple_name_in_enum_literal2875);
- simple_name155=simple_name();
+ pushFollow(FOLLOW_simple_name_in_enum_literal2826);
+ simple_name162=simple_name();
state._fsp--;
- stream_simple_name.add(simple_name155.getTree());
- COLON156=(Token)match(input,COLON,FOLLOW_COLON_in_enum_literal2877);
- stream_COLON.add(COLON156);
+ stream_simple_name.add(simple_name162.getTree());
+ COLON163=(Token)match(input,COLON,FOLLOW_COLON_in_enum_literal2828);
+ stream_COLON.add(COLON163);
- pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2879);
- reference_type_descriptor157=reference_type_descriptor();
+ pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2830);
+ reference_type_descriptor164=reference_type_descriptor();
state._fsp--;
- stream_reference_type_descriptor.add(reference_type_descriptor157.getTree());
+ stream_reference_type_descriptor.add(reference_type_descriptor164.getTree());
// AST REWRITE
- // elements: reference_type_descriptor, reference_type_descriptor, simple_name
- // token labels:
+ // elements: simple_name, reference_type_descriptor, reference_type_descriptor
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 697:3: -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor )
+ // 685:3: -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:697:6: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_ENUM, "I_ENCODED_ENUM"), root_1);
@@ -5994,27 +6299,28 @@ public class smaliParser extends Parser {
// $ANTLR start "type_field_method_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:699:1: type_field_method_literal : ( 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 ) ) | -> reference_type_descriptor ) | PRIMITIVE_TYPE | VOID_TYPE );
+ // /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 );
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 ARROW159=null;
- Token COLON161=null;
- Token PRIMITIVE_TYPE165=null;
- Token VOID_TYPE166=null;
- ParserRuleReturnScope reference_type_descriptor158 =null;
- ParserRuleReturnScope member_name160 =null;
- ParserRuleReturnScope nonvoid_type_descriptor162 =null;
- ParserRuleReturnScope member_name163 =null;
- ParserRuleReturnScope method_prototype164 =null;
-
- CommonTree ARROW159_tree=null;
- CommonTree COLON161_tree=null;
- CommonTree PRIMITIVE_TYPE165_tree=null;
- CommonTree VOID_TYPE166_tree=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;
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");
@@ -6023,1142 +6329,269 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:700:3: ( 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 ) ) | -> reference_type_descriptor ) | PRIMITIVE_TYPE | VOID_TYPE )
- int alt26=3;
+ // /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 )
+ int alt29=4;
switch ( input.LA(1) ) {
case ARRAY_DESCRIPTOR:
case CLASS_DESCRIPTOR:
{
- alt26=1;
+ 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)) ) {
+ alt29=1;
+ }
+ else if ( (LA29_1==ARROW) ) {
+ alt29=2;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 29, 1, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
+ }
+ break;
+ case ACCESS_SPEC:
+ case ANNOTATION_VISIBILITY:
+ case BOOL_LITERAL:
+ case DOUBLE_LITERAL_OR_ID:
+ case FLOAT_LITERAL_OR_ID:
+ case INSTRUCTION_FORMAT10t:
+ case INSTRUCTION_FORMAT10x:
+ case INSTRUCTION_FORMAT10x_ODEX:
+ case INSTRUCTION_FORMAT11x:
+ case INSTRUCTION_FORMAT12x_OR_ID:
+ case INSTRUCTION_FORMAT21c_FIELD:
+ case INSTRUCTION_FORMAT21c_FIELD_ODEX:
+ case INSTRUCTION_FORMAT21c_STRING:
+ case INSTRUCTION_FORMAT21c_TYPE:
+ case INSTRUCTION_FORMAT21t:
+ case INSTRUCTION_FORMAT22c_FIELD:
+ case INSTRUCTION_FORMAT22c_FIELD_ODEX:
+ case INSTRUCTION_FORMAT22c_TYPE:
+ case INSTRUCTION_FORMAT22cs_FIELD:
+ case INSTRUCTION_FORMAT22s_OR_ID:
+ case INSTRUCTION_FORMAT22t:
+ case INSTRUCTION_FORMAT23x:
+ case INSTRUCTION_FORMAT31i_OR_ID:
+ case INSTRUCTION_FORMAT31t:
+ case INSTRUCTION_FORMAT35c_METHOD:
+ case INSTRUCTION_FORMAT35c_METHOD_ODEX:
+ case INSTRUCTION_FORMAT35c_TYPE:
+ case INSTRUCTION_FORMAT35mi_METHOD:
+ case INSTRUCTION_FORMAT35ms_METHOD:
+ case INSTRUCTION_FORMAT51l:
+ case MEMBER_NAME:
+ case NEGATIVE_INTEGER_LITERAL:
+ case NULL_LITERAL:
+ case PARAM_LIST_OR_ID_START:
+ case POSITIVE_INTEGER_LITERAL:
+ case REGISTER:
+ case SIMPLE_NAME:
+ case VERIFICATION_ERROR_TYPE:
+ {
+ alt29=2;
}
break;
case PRIMITIVE_TYPE:
{
- alt26=2;
+ int LA29_3 = input.LA(2);
+ 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)) ) {
+ alt29=3;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 29, 3, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
}
break;
case VOID_TYPE:
{
- alt26=3;
+ int LA29_4 = input.LA(2);
+ 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)) ) {
+ alt29=4;
+ }
+
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 29, 4, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 26, 0, input);
+ new NoViableAltException("", 29, 0, input);
throw nvae;
}
- switch (alt26) {
+ switch (alt29) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:700: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 ) ) | -> reference_type_descriptor )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:688:5: reference_type_descriptor
{
- pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2903);
- reference_type_descriptor158=reference_type_descriptor();
+ root_0 = (CommonTree)adaptor.nil();
+
+
+ pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2854);
+ reference_type_descriptor165=reference_type_descriptor();
state._fsp--;
- stream_reference_type_descriptor.add(reference_type_descriptor158.getTree());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:701:5: ( 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 ) ) | -> reference_type_descriptor )
- int alt25=2;
- int LA25_0 = input.LA(1);
- if ( (LA25_0==ARROW) ) {
- alt25=1;
- }
- else if ( (LA25_0==EOF||(LA25_0 >= ACCESS_SPEC && LA25_0 <= ANNOTATION_VISIBILITY)||LA25_0==BOOL_LITERAL||(LA25_0 >= CLASS_DIRECTIVE && LA25_0 <= CLOSE_BRACE)||LA25_0==COMMA||(LA25_0 >= DOUBLE_LITERAL_OR_ID && LA25_0 <= END_ANNOTATION_DIRECTIVE)||LA25_0==END_FIELD_DIRECTIVE||LA25_0==END_SUBANNOTATION_DIRECTIVE||LA25_0==FIELD_DIRECTIVE||LA25_0==FLOAT_LITERAL_OR_ID||LA25_0==IMPLEMENTS_DIRECTIVE||(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 >= METHOD_DIRECTIVE && LA25_0 <= NULL_LITERAL)||(LA25_0 >= PARAM_LIST_OR_ID && LA25_0 <= PRIMITIVE_TYPE)||LA25_0==REGISTER||(LA25_0 >= SIMPLE_NAME && LA25_0 <= SOURCE_DIRECTIVE)||(LA25_0 >= SUPER_DIRECTIVE && LA25_0 <= VOID_TYPE)) ) {
- alt25=2;
- }
+ adaptor.addChild(root_0, reference_type_descriptor165.getTree());
- else {
- NoViableAltException nvae =
- new NoViableAltException("", 25, 0, input);
- throw nvae;
}
-
- switch (alt25) {
+ 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/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/antlr3/smaliParser.g:689:7: ( reference_type_descriptor ARROW )?
+ int alt27=2;
+ int LA27_0 = input.LA(1);
+ if ( (LA27_0==ARRAY_DESCRIPTOR||LA27_0==CLASS_DESCRIPTOR) ) {
+ alt27=1;
+ }
+ switch (alt27) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:701:7: 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:8: reference_type_descriptor ARROW
{
- ARROW159=(Token)match(input,ARROW,FOLLOW_ARROW_in_type_field_method_literal2911);
- stream_ARROW.add(ARROW159);
-
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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 alt24=2;
- switch ( input.LA(1) ) {
- case SIMPLE_NAME:
- {
- int LA24_1 = input.LA(2);
- if ( (LA24_1==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_1==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 1, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case ACCESS_SPEC:
- {
- int LA24_2 = input.LA(2);
- if ( (LA24_2==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_2==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 2, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case VERIFICATION_ERROR_TYPE:
- {
- int LA24_3 = input.LA(2);
- if ( (LA24_3==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_3==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 3, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case POSITIVE_INTEGER_LITERAL:
- {
- int LA24_4 = input.LA(2);
- if ( (LA24_4==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_4==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 4, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case NEGATIVE_INTEGER_LITERAL:
- {
- int LA24_5 = input.LA(2);
- if ( (LA24_5==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_5==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 5, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case FLOAT_LITERAL_OR_ID:
- {
- int LA24_6 = input.LA(2);
- if ( (LA24_6==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_6==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 6, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case DOUBLE_LITERAL_OR_ID:
- {
- int LA24_7 = input.LA(2);
- if ( (LA24_7==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_7==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 7, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case BOOL_LITERAL:
- {
- int LA24_8 = input.LA(2);
- if ( (LA24_8==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_8==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 8, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case NULL_LITERAL:
- {
- int LA24_9 = input.LA(2);
- if ( (LA24_9==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_9==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 9, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case REGISTER:
- {
- int LA24_10 = input.LA(2);
- if ( (LA24_10==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_10==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 10, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case PARAM_LIST_OR_ID:
- {
- int LA24_11 = input.LA(2);
- if ( (LA24_11==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_11==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 11, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case PRIMITIVE_TYPE:
- {
- int LA24_12 = input.LA(2);
- if ( (LA24_12==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_12==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 12, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case VOID_TYPE:
- {
- int LA24_13 = input.LA(2);
- if ( (LA24_13==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_13==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 13, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case ANNOTATION_VISIBILITY:
- {
- int LA24_14 = input.LA(2);
- if ( (LA24_14==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_14==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 14, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10t:
- {
- int LA24_15 = input.LA(2);
- if ( (LA24_15==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_15==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 15, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10x:
- {
- int LA24_16 = input.LA(2);
- if ( (LA24_16==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_16==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 16, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10x_ODEX:
- {
- int LA24_17 = input.LA(2);
- if ( (LA24_17==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_17==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 17, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT11x:
- {
- int LA24_18 = input.LA(2);
- if ( (LA24_18==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_18==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 18, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT12x_OR_ID:
- {
- int LA24_19 = input.LA(2);
- if ( (LA24_19==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_19==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 19, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_FIELD:
- {
- int LA24_20 = input.LA(2);
- if ( (LA24_20==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_20==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 20, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_FIELD_ODEX:
- {
- int LA24_21 = input.LA(2);
- if ( (LA24_21==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_21==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 21, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_STRING:
- {
- int LA24_22 = input.LA(2);
- if ( (LA24_22==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_22==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 22, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_TYPE:
- {
- int LA24_23 = input.LA(2);
- if ( (LA24_23==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_23==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 23, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21t:
- {
- int LA24_24 = input.LA(2);
- if ( (LA24_24==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_24==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 24, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_FIELD:
- {
- int LA24_25 = input.LA(2);
- if ( (LA24_25==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_25==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 25, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_FIELD_ODEX:
- {
- int LA24_26 = input.LA(2);
- if ( (LA24_26==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_26==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 26, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_TYPE:
- {
- int LA24_27 = input.LA(2);
- if ( (LA24_27==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_27==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 27, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22cs_FIELD:
- {
- int LA24_28 = input.LA(2);
- if ( (LA24_28==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_28==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 28, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22s_OR_ID:
- {
- int LA24_29 = input.LA(2);
- if ( (LA24_29==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_29==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 29, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22t:
- {
- int LA24_30 = input.LA(2);
- if ( (LA24_30==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_30==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 30, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT23x:
- {
- int LA24_31 = input.LA(2);
- if ( (LA24_31==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_31==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 31, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT31i_OR_ID:
- {
- int LA24_32 = input.LA(2);
- if ( (LA24_32==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_32==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 32, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT31t:
- {
- int LA24_33 = input.LA(2);
- if ( (LA24_33==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_33==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 33, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_METHOD:
- {
- int LA24_34 = input.LA(2);
- if ( (LA24_34==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_34==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 34, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_METHOD_ODEX:
- {
- int LA24_35 = input.LA(2);
- if ( (LA24_35==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_35==OPEN_PAREN) ) {
- alt24=2;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 35, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_TYPE:
- {
- int LA24_36 = input.LA(2);
- if ( (LA24_36==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_36==OPEN_PAREN) ) {
- alt24=2;
- }
+ pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2863);
+ reference_type_descriptor166=reference_type_descriptor();
+ state._fsp--;
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 36, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
+ 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);
- }
- break;
- case INSTRUCTION_FORMAT35mi_METHOD:
- {
- int LA24_37 = input.LA(2);
- if ( (LA24_37==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_37==OPEN_PAREN) ) {
- alt24=2;
- }
+ }
+ break;
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 37, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
+ }
- }
- break;
- case INSTRUCTION_FORMAT35ms_METHOD:
- {
- int LA24_38 = input.LA(2);
- if ( (LA24_38==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_38==OPEN_PAREN) ) {
- alt24=2;
- }
+ // /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 ) )
+ 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
+ {
+ pushFollow(FOLLOW_member_name_in_type_field_method_literal2877);
+ member_name168=member_name();
+ state._fsp--;
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 38, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
+ stream_member_name.add(member_name168.getTree());
+ COLON169=(Token)match(input,COLON,FOLLOW_COLON_in_type_field_method_literal2879);
+ stream_COLON.add(COLON169);
- }
- break;
- case INSTRUCTION_FORMAT51l:
- {
- int LA24_39 = input.LA(2);
- if ( (LA24_39==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_39==OPEN_PAREN) ) {
- alt24=2;
- }
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2881);
+ nonvoid_type_descriptor170=nonvoid_type_descriptor();
+ state._fsp--;
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 39, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor170.getTree());
+ // AST REWRITE
+ // elements: member_name, nonvoid_type_descriptor, reference_type_descriptor
+ // 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);
- }
- break;
- case MEMBER_NAME:
+ root_0 = (CommonTree)adaptor.nil();
+ // 690: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 )
{
- int LA24_40 = input.LA(2);
- if ( (LA24_40==COLON) ) {
- alt24=1;
- }
- else if ( (LA24_40==OPEN_PAREN) ) {
- alt24=2;
+ 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 )?
+ if ( stream_reference_type_descriptor.hasNext() ) {
+ adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree());
}
+ stream_reference_type_descriptor.reset();
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 24, 40, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
+ adaptor.addChild(root_1, stream_member_name.nextTree());
+ adaptor.addChild(root_1, stream_nonvoid_type_descriptor.nextTree());
+ adaptor.addChild(root_0, root_1);
}
- }
- break;
- default:
- NoViableAltException nvae =
- new NoViableAltException("", 24, 0, input);
- throw nvae;
}
- switch (alt24) {
- case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:702:9: member_name COLON nonvoid_type_descriptor
- {
- pushFollow(FOLLOW_member_name_in_type_field_method_literal2921);
- member_name160=member_name();
- state._fsp--;
-
- stream_member_name.add(member_name160.getTree());
- COLON161=(Token)match(input,COLON,FOLLOW_COLON_in_type_field_method_literal2923);
- stream_COLON.add(COLON161);
-
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2925);
- nonvoid_type_descriptor162=nonvoid_type_descriptor();
- state._fsp--;
-
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor162.getTree());
- // AST REWRITE
- // elements: member_name, nonvoid_type_descriptor, reference_type_descriptor
- // 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();
- // 702:51: -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor )
- {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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);
- adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree());
- adaptor.addChild(root_1, stream_member_name.nextTree());
- adaptor.addChild(root_1, stream_nonvoid_type_descriptor.nextTree());
- adaptor.addChild(root_0, root_1);
- }
-
- }
-
-
- retval.tree = root_0;
-
- }
- break;
- case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:703:9: member_name method_prototype
- {
- pushFollow(FOLLOW_member_name_in_type_field_method_literal2947);
- member_name163=member_name();
- state._fsp--;
-
- stream_member_name.add(member_name163.getTree());
- pushFollow(FOLLOW_method_prototype_in_type_field_method_literal2949);
- method_prototype164=method_prototype();
- state._fsp--;
-
- stream_method_prototype.add(method_prototype164.getTree());
- // AST REWRITE
- // elements: reference_type_descriptor, method_prototype, member_name
- // 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();
- // 703:38: -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype )
- {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/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);
- adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree());
- adaptor.addChild(root_1, stream_member_name.nextTree());
- adaptor.addChild(root_1, stream_method_prototype.nextTree());
- adaptor.addChild(root_0, root_1);
- }
-
- }
-
-
- retval.tree = root_0;
-
- }
- break;
- }
+
+ retval.tree = root_0;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:705:7:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:691:9: member_name method_prototype
{
+ pushFollow(FOLLOW_member_name_in_type_field_method_literal2904);
+ member_name171=member_name();
+ state._fsp--;
+
+ stream_member_name.add(member_name171.getTree());
+ pushFollow(FOLLOW_method_prototype_in_type_field_method_literal2906);
+ method_prototype172=method_prototype();
+ state._fsp--;
+
+ stream_method_prototype.add(method_prototype172.getTree());
// AST REWRITE
- // elements: reference_type_descriptor
- // token labels:
+ // elements: member_name, method_prototype, reference_type_descriptor
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 705:7: -> reference_type_descriptor
+ // 691:38: -> ^( I_ENCODED_METHOD ( reference_type_descriptor )? member_name method_prototype )
{
- adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree());
+ // /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 )
+ {
+ 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 )?
+ if ( stream_reference_type_descriptor.hasNext() ) {
+ adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree());
+ }
+ stream_reference_type_descriptor.reset();
+
+ adaptor.addChild(root_1, stream_member_name.nextTree());
+ adaptor.addChild(root_1, stream_method_prototype.nextTree());
+ adaptor.addChild(root_0, root_1);
+ }
+
}
@@ -7170,28 +6603,30 @@ public class smaliParser extends Parser {
}
}
+
+ }
break;
- case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:707:5: PRIMITIVE_TYPE
+ case 3 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:694:5: PRIMITIVE_TYPE
{
root_0 = (CommonTree)adaptor.nil();
- PRIMITIVE_TYPE165=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_type_field_method_literal2991);
- PRIMITIVE_TYPE165_tree = (CommonTree)adaptor.create(PRIMITIVE_TYPE165);
- adaptor.addChild(root_0, PRIMITIVE_TYPE165_tree);
+ 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);
}
break;
- case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:708:5: VOID_TYPE
+ case 4 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:695:5: VOID_TYPE
{
root_0 = (CommonTree)adaptor.nil();
- VOID_TYPE166=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_field_method_literal2997);
- VOID_TYPE166_tree = (CommonTree)adaptor.create(VOID_TYPE166);
- adaptor.addChild(root_0, VOID_TYPE166_tree);
+ 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);
}
break;
@@ -7216,68 +6651,88 @@ public class smaliParser extends Parser {
// $ANTLR end "type_field_method_literal"
- public static class fully_qualified_method_return extends ParserRuleReturnScope {
+ public static class method_reference_return extends ParserRuleReturnScope {
CommonTree tree;
@Override
public CommonTree getTree() { return tree; }
};
- // $ANTLR start "fully_qualified_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:710:1: fully_qualified_method : reference_type_descriptor ARROW member_name method_prototype -> reference_type_descriptor member_name method_prototype ;
- public final smaliParser.fully_qualified_method_return fully_qualified_method() throws RecognitionException {
- smaliParser.fully_qualified_method_return retval = new smaliParser.fully_qualified_method_return();
+ // $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 ;
+ 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 ARROW168=null;
- ParserRuleReturnScope reference_type_descriptor167 =null;
- ParserRuleReturnScope member_name169 =null;
- ParserRuleReturnScope method_prototype170 =null;
+ Token ARROW176=null;
+ ParserRuleReturnScope reference_type_descriptor175 =null;
+ ParserRuleReturnScope member_name177 =null;
+ ParserRuleReturnScope method_prototype178 =null;
- CommonTree ARROW168_tree=null;
+ CommonTree ARROW176_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:711:3: ( reference_type_descriptor ARROW member_name method_prototype -> reference_type_descriptor member_name method_prototype )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:711:5: reference_type_descriptor ARROW member_name method_prototype
+ // /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
{
- pushFollow(FOLLOW_reference_type_descriptor_in_fully_qualified_method3007);
- reference_type_descriptor167=reference_type_descriptor();
- state._fsp--;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:698:5: ( reference_type_descriptor ARROW )?
+ int alt30=2;
+ int LA30_0 = input.LA(1);
+ if ( (LA30_0==ARRAY_DESCRIPTOR||LA30_0==CLASS_DESCRIPTOR) ) {
+ alt30=1;
+ }
+ switch (alt30) {
+ case 1 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:698:6: reference_type_descriptor ARROW
+ {
+ pushFollow(FOLLOW_reference_type_descriptor_in_method_reference2956);
+ reference_type_descriptor175=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);
+
+ }
+ break;
- stream_reference_type_descriptor.add(reference_type_descriptor167.getTree());
- ARROW168=(Token)match(input,ARROW,FOLLOW_ARROW_in_fully_qualified_method3009);
- stream_ARROW.add(ARROW168);
+ }
- pushFollow(FOLLOW_member_name_in_fully_qualified_method3011);
- member_name169=member_name();
+ pushFollow(FOLLOW_member_name_in_method_reference2962);
+ member_name177=member_name();
state._fsp--;
- stream_member_name.add(member_name169.getTree());
- pushFollow(FOLLOW_method_prototype_in_fully_qualified_method3013);
- method_prototype170=method_prototype();
+ stream_member_name.add(member_name177.getTree());
+ pushFollow(FOLLOW_method_prototype_in_method_reference2964);
+ method_prototype178=method_prototype();
state._fsp--;
- stream_method_prototype.add(method_prototype170.getTree());
+ stream_method_prototype.add(method_prototype178.getTree());
// AST REWRITE
- // elements: method_prototype, member_name, reference_type_descriptor
- // token labels:
+ // elements: member_name, method_prototype, reference_type_descriptor
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 712:3: -> reference_type_descriptor member_name method_prototype
+ // 699:3: -> ( reference_type_descriptor )? member_name method_prototype
{
- adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree());
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:699:6: ( reference_type_descriptor )?
+ if ( stream_reference_type_descriptor.hasNext() ) {
+ adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree());
+ }
+ stream_reference_type_descriptor.reset();
+
adaptor.addChild(root_0, stream_member_name.nextTree());
adaptor.addChild(root_0, stream_method_prototype.nextTree());
}
@@ -7303,32 +6758,32 @@ public class smaliParser extends Parser {
}
return retval;
}
- // $ANTLR end "fully_qualified_method"
+ // $ANTLR end "method_reference"
- public static class fully_qualified_field_return extends ParserRuleReturnScope {
+ public static class field_reference_return extends ParserRuleReturnScope {
CommonTree tree;
@Override
public CommonTree getTree() { return tree; }
};
- // $ANTLR start "fully_qualified_field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:714:1: fully_qualified_field : reference_type_descriptor ARROW member_name COLON nonvoid_type_descriptor -> reference_type_descriptor member_name nonvoid_type_descriptor ;
- public final smaliParser.fully_qualified_field_return fully_qualified_field() throws RecognitionException {
- smaliParser.fully_qualified_field_return retval = new smaliParser.fully_qualified_field_return();
+ // $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 ;
+ 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 ARROW172=null;
- Token COLON174=null;
- ParserRuleReturnScope reference_type_descriptor171 =null;
- ParserRuleReturnScope member_name173 =null;
- ParserRuleReturnScope nonvoid_type_descriptor175 =null;
+ Token ARROW180=null;
+ Token COLON182=null;
+ ParserRuleReturnScope reference_type_descriptor179 =null;
+ ParserRuleReturnScope member_name181 =null;
+ ParserRuleReturnScope nonvoid_type_descriptor183 =null;
- CommonTree ARROW172_tree=null;
- CommonTree COLON174_tree=null;
+ CommonTree ARROW180_tree=null;
+ CommonTree COLON182_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");
@@ -7336,44 +6791,64 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:715:3: ( reference_type_descriptor ARROW member_name COLON nonvoid_type_descriptor -> reference_type_descriptor member_name nonvoid_type_descriptor )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:715: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: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
{
- pushFollow(FOLLOW_reference_type_descriptor_in_fully_qualified_field3033);
- reference_type_descriptor171=reference_type_descriptor();
- state._fsp--;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:702:5: ( reference_type_descriptor ARROW )?
+ int alt31=2;
+ int LA31_0 = input.LA(1);
+ if ( (LA31_0==ARRAY_DESCRIPTOR||LA31_0==CLASS_DESCRIPTOR) ) {
+ alt31=1;
+ }
+ switch (alt31) {
+ case 1 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:702:6: reference_type_descriptor ARROW
+ {
+ pushFollow(FOLLOW_reference_type_descriptor_in_field_reference2986);
+ reference_type_descriptor179=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);
+
+ }
+ break;
- stream_reference_type_descriptor.add(reference_type_descriptor171.getTree());
- ARROW172=(Token)match(input,ARROW,FOLLOW_ARROW_in_fully_qualified_field3035);
- stream_ARROW.add(ARROW172);
+ }
- pushFollow(FOLLOW_member_name_in_fully_qualified_field3037);
- member_name173=member_name();
+ pushFollow(FOLLOW_member_name_in_field_reference2992);
+ member_name181=member_name();
state._fsp--;
- stream_member_name.add(member_name173.getTree());
- COLON174=(Token)match(input,COLON,FOLLOW_COLON_in_fully_qualified_field3039);
- stream_COLON.add(COLON174);
+ stream_member_name.add(member_name181.getTree());
+ COLON182=(Token)match(input,COLON,FOLLOW_COLON_in_field_reference2994);
+ stream_COLON.add(COLON182);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_fully_qualified_field3041);
- nonvoid_type_descriptor175=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_reference2996);
+ nonvoid_type_descriptor183=nonvoid_type_descriptor();
state._fsp--;
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor175.getTree());
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor183.getTree());
// AST REWRITE
- // elements: nonvoid_type_descriptor, reference_type_descriptor, member_name
- // token labels:
+ // elements: nonvoid_type_descriptor, member_name, reference_type_descriptor
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 716:3: -> reference_type_descriptor member_name nonvoid_type_descriptor
+ // 703:3: -> ( reference_type_descriptor )? member_name nonvoid_type_descriptor
{
- adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree());
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:703:6: ( reference_type_descriptor )?
+ if ( stream_reference_type_descriptor.hasNext() ) {
+ adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree());
+ }
+ stream_reference_type_descriptor.reset();
+
adaptor.addChild(root_0, stream_member_name.nextTree());
adaptor.addChild(root_0, stream_nonvoid_type_descriptor.nextTree());
}
@@ -7399,7 +6874,7 @@ public class smaliParser extends Parser {
}
return retval;
}
- // $ANTLR end "fully_qualified_field"
+ // $ANTLR end "field_reference"
public static class label_return extends ParserRuleReturnScope {
@@ -7410,49 +6885,49 @@ public class smaliParser extends Parser {
// $ANTLR start "label"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:718:1: label : COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) ;
+ // /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 ) ;
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 COLON176=null;
- ParserRuleReturnScope simple_name177 =null;
+ Token COLON184=null;
+ ParserRuleReturnScope simple_name185 =null;
- CommonTree COLON176_tree=null;
+ CommonTree COLON184_tree=null;
RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON");
RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:719:3: ( COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:719:5: COLON simple_name
+ // /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
{
- COLON176=(Token)match(input,COLON,FOLLOW_COLON_in_label3061);
- stream_COLON.add(COLON176);
+ COLON184=(Token)match(input,COLON,FOLLOW_COLON_in_label3017);
+ stream_COLON.add(COLON184);
- pushFollow(FOLLOW_simple_name_in_label3063);
- simple_name177=simple_name();
+ pushFollow(FOLLOW_simple_name_in_label3019);
+ simple_name185=simple_name();
state._fsp--;
- stream_simple_name.add(simple_name177.getTree());
+ stream_simple_name.add(simple_name185.getTree());
// AST REWRITE
// elements: simple_name
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 719:23: -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name )
+ // 706:23: -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:719:26: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
- root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LABEL, COLON176, "I_LABEL"), root_1);
+ root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LABEL, COLON184, "I_LABEL"), root_1);
adaptor.addChild(root_1, stream_simple_name.nextTree());
adaptor.addChild(root_0, root_1);
}
@@ -7491,44 +6966,44 @@ public class smaliParser extends Parser {
// $ANTLR start "label_ref"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:721:1: label_ref : COLON simple_name -> simple_name ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:708: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 COLON178=null;
- ParserRuleReturnScope simple_name179 =null;
+ Token COLON186=null;
+ ParserRuleReturnScope simple_name187 =null;
- CommonTree COLON178_tree=null;
+ CommonTree COLON186_tree=null;
RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON");
RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:722:3: ( COLON simple_name -> simple_name )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:722:5: COLON simple_name
+ // /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
{
- COLON178=(Token)match(input,COLON,FOLLOW_COLON_in_label_ref3082);
- stream_COLON.add(COLON178);
+ COLON186=(Token)match(input,COLON,FOLLOW_COLON_in_label_ref3038);
+ stream_COLON.add(COLON186);
- pushFollow(FOLLOW_simple_name_in_label_ref3084);
- simple_name179=simple_name();
+ pushFollow(FOLLOW_simple_name_in_label_ref3040);
+ simple_name187=simple_name();
state._fsp--;
- stream_simple_name.add(simple_name179.getTree());
+ stream_simple_name.add(simple_name187.getTree());
// AST REWRITE
// elements: simple_name
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 722:23: -> simple_name
+ // 709:23: -> simple_name
{
adaptor.addChild(root_0, stream_simple_name.nextTree());
}
@@ -7565,92 +7040,92 @@ public class smaliParser extends Parser {
// $ANTLR start "register_list"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:724: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/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\"] ) );
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 REGISTER180=null;
- Token COMMA181=null;
- Token REGISTER182=null;
+ Token REGISTER188=null;
+ Token COMMA189=null;
+ Token REGISTER190=null;
- CommonTree REGISTER180_tree=null;
- CommonTree COMMA181_tree=null;
- CommonTree REGISTER182_tree=null;
+ CommonTree REGISTER188_tree=null;
+ CommonTree COMMA189_tree=null;
+ CommonTree REGISTER190_tree=null;
RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA");
RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:3: ( REGISTER ( COMMA REGISTER )* -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) | -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) )
- int alt28=2;
- int LA28_0 = input.LA(1);
- if ( (LA28_0==REGISTER) ) {
- alt28=1;
+ // /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\"] ) )
+ int alt33=2;
+ int LA33_0 = input.LA(1);
+ if ( (LA33_0==REGISTER) ) {
+ alt33=1;
}
- else if ( (LA28_0==CLOSE_BRACE) ) {
- alt28=2;
+ else if ( (LA33_0==CLOSE_BRACE) ) {
+ alt33=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 28, 0, input);
+ new NoViableAltException("", 33, 0, input);
throw nvae;
}
- switch (alt28) {
+ switch (alt33) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:5: REGISTER ( COMMA REGISTER )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:5: REGISTER ( COMMA REGISTER )*
{
- REGISTER180=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3098);
- stream_REGISTER.add(REGISTER180);
+ REGISTER188=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3054);
+ stream_REGISTER.add(REGISTER188);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:14: ( COMMA REGISTER )*
- loop27:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:14: ( COMMA REGISTER )*
+ loop32:
while (true) {
- int alt27=2;
- int LA27_0 = input.LA(1);
- if ( (LA27_0==COMMA) ) {
- alt27=1;
+ int alt32=2;
+ int LA32_0 = input.LA(1);
+ if ( (LA32_0==COMMA) ) {
+ alt32=1;
}
- switch (alt27) {
+ switch (alt32) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:15: COMMA REGISTER
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:15: COMMA REGISTER
{
- COMMA181=(Token)match(input,COMMA,FOLLOW_COMMA_in_register_list3101);
- stream_COMMA.add(COMMA181);
+ COMMA189=(Token)match(input,COMMA,FOLLOW_COMMA_in_register_list3057);
+ stream_COMMA.add(COMMA189);
- REGISTER182=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3103);
- stream_REGISTER.add(REGISTER182);
+ REGISTER190=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3059);
+ stream_REGISTER.add(REGISTER190);
}
break;
default :
- break loop27;
+ break loop32;
}
}
// AST REWRITE
// elements: REGISTER
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 725:32: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* )
+ // 712:32: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:35: ^( 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 )* )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_LIST, (retval.start), "I_REGISTER_LIST"), root_1);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:80: ( REGISTER )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:712:80: ( REGISTER )*
while ( stream_REGISTER.hasNext() ) {
adaptor.addChild(root_1, stream_REGISTER.nextNode());
}
@@ -7667,22 +7142,22 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:726:5:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:713:5:
{
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 726:5: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] )
+ // 713:5: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:726:7: ^( 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\"] )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_LIST, (retval.start), "I_REGISTER_LIST"), root_1);
@@ -7725,7 +7200,7 @@ public class smaliParser extends Parser {
// $ANTLR start "register_range"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:728: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/antlr3/smaliParser.g:715: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);
@@ -7734,45 +7209,45 @@ public class smaliParser extends Parser {
Token startreg=null;
Token endreg=null;
- Token DOTDOT183=null;
+ Token DOTDOT191=null;
CommonTree startreg_tree=null;
CommonTree endreg_tree=null;
- CommonTree DOTDOT183_tree=null;
+ CommonTree DOTDOT191_tree=null;
RewriteRuleTokenStream stream_DOTDOT=new RewriteRuleTokenStream(adaptor,"token DOTDOT");
RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:3: ( (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )?
+ // /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 )? )?
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )?
- int alt30=2;
- int LA30_0 = input.LA(1);
- if ( (LA30_0==REGISTER) ) {
- alt30=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )?
+ int alt35=2;
+ int LA35_0 = input.LA(1);
+ if ( (LA35_0==REGISTER) ) {
+ alt35=1;
}
- switch (alt30) {
+ switch (alt35) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:6: startreg= REGISTER ( DOTDOT endreg= REGISTER )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:6: startreg= REGISTER ( DOTDOT endreg= REGISTER )?
{
- startreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3138);
+ startreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3094);
stream_REGISTER.add(startreg);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:24: ( DOTDOT endreg= REGISTER )?
- int alt29=2;
- int LA29_0 = input.LA(1);
- if ( (LA29_0==DOTDOT) ) {
- alt29=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:24: ( DOTDOT endreg= REGISTER )?
+ int alt34=2;
+ int LA34_0 = input.LA(1);
+ if ( (LA34_0==DOTDOT) ) {
+ alt34=1;
}
- switch (alt29) {
+ switch (alt34) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:25: DOTDOT endreg= REGISTER
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:25: DOTDOT endreg= REGISTER
{
- DOTDOT183=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_register_range3141);
- stream_DOTDOT.add(DOTDOT183);
+ DOTDOT191=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_register_range3097);
+ stream_DOTDOT.add(DOTDOT191);
- endreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3145);
+ endreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3101);
stream_REGISTER.add(endreg);
}
@@ -7789,28 +7264,28 @@ public class smaliParser extends Parser {
// elements: endreg, startreg
// token labels: endreg, startreg
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // token list labels:
+ // rule list labels:
+ // wildcard labels:
retval.tree = root_0;
RewriteRuleTokenStream stream_endreg=new RewriteRuleTokenStream(adaptor,"token endreg",endreg);
RewriteRuleTokenStream stream_startreg=new RewriteRuleTokenStream(adaptor,"token startreg",startreg);
RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
root_0 = (CommonTree)adaptor.nil();
- // 729:52: -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? )
+ // 716:52: -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:55: ^( 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)? )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_RANGE, (retval.start), "I_REGISTER_RANGE"), root_1);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:103: ( $startreg)?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:103: ( $startreg)?
if ( stream_startreg.hasNext() ) {
adaptor.addChild(root_1, stream_startreg.nextNode());
}
stream_startreg.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:114: ( $endreg)?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:716:114: ( $endreg)?
if ( stream_endreg.hasNext() ) {
adaptor.addChild(root_1, stream_endreg.nextNode());
}
@@ -7853,2215 +7328,61 @@ public class smaliParser extends Parser {
// $ANTLR start "verification_error_reference"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:731:1: verification_error_reference : ( CLASS_DESCRIPTOR | fully_qualified_field | fully_qualified_method );
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:718: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_DESCRIPTOR184=null;
- ParserRuleReturnScope fully_qualified_field185 =null;
- ParserRuleReturnScope fully_qualified_method186 =null;
+ Token CLASS_DESCRIPTOR192=null;
+ ParserRuleReturnScope field_reference193 =null;
+ ParserRuleReturnScope method_reference194 =null;
- CommonTree CLASS_DESCRIPTOR184_tree=null;
+ CommonTree CLASS_DESCRIPTOR192_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:732:3: ( CLASS_DESCRIPTOR | fully_qualified_field | fully_qualified_method )
- int alt31=3;
- int LA31_0 = input.LA(1);
- if ( (LA31_0==CLASS_DESCRIPTOR) ) {
- int LA31_1 = input.LA(2);
- if ( (LA31_1==ANNOTATION_DIRECTIVE||LA31_1==ARRAY_DATA_DIRECTIVE||(LA31_1 >= CATCHALL_DIRECTIVE && LA31_1 <= CATCH_DIRECTIVE)||LA31_1==COLON||(LA31_1 >= END_LOCAL_DIRECTIVE && LA31_1 <= END_METHOD_DIRECTIVE)||LA31_1==EPILOGUE_DIRECTIVE||(LA31_1 >= INSTRUCTION_FORMAT10t && LA31_1 <= INSTRUCTION_FORMAT51l)||(LA31_1 >= LINE_DIRECTIVE && LA31_1 <= LOCAL_DIRECTIVE)||(LA31_1 >= PACKED_SWITCH_DIRECTIVE && LA31_1 <= PARAMETER_DIRECTIVE)||LA31_1==PROLOGUE_DIRECTIVE||(LA31_1 >= REGISTERS_DIRECTIVE && LA31_1 <= RESTART_LOCAL_DIRECTIVE)||(LA31_1 >= SOURCE_DIRECTIVE && LA31_1 <= SPARSE_SWITCH_DIRECTIVE)) ) {
- alt31=1;
- }
- else if ( (LA31_1==ARROW) ) {
- switch ( input.LA(3) ) {
- case SIMPLE_NAME:
- {
- int LA31_5 = input.LA(4);
- if ( (LA31_5==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_5==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 5, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case ACCESS_SPEC:
- {
- int LA31_6 = input.LA(4);
- if ( (LA31_6==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_6==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 6, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case VERIFICATION_ERROR_TYPE:
- {
- int LA31_7 = input.LA(4);
- if ( (LA31_7==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_7==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 7, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case POSITIVE_INTEGER_LITERAL:
- {
- int LA31_8 = input.LA(4);
- if ( (LA31_8==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_8==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 8, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case NEGATIVE_INTEGER_LITERAL:
- {
- int LA31_9 = input.LA(4);
- if ( (LA31_9==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_9==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 9, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case FLOAT_LITERAL_OR_ID:
- {
- int LA31_10 = input.LA(4);
- if ( (LA31_10==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_10==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 10, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case DOUBLE_LITERAL_OR_ID:
- {
- int LA31_11 = input.LA(4);
- if ( (LA31_11==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_11==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 11, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case BOOL_LITERAL:
- {
- int LA31_12 = input.LA(4);
- if ( (LA31_12==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_12==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 12, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case NULL_LITERAL:
- {
- int LA31_13 = input.LA(4);
- if ( (LA31_13==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_13==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 13, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case REGISTER:
- {
- int LA31_14 = input.LA(4);
- if ( (LA31_14==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_14==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 14, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case PARAM_LIST_OR_ID:
- {
- int LA31_15 = input.LA(4);
- if ( (LA31_15==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_15==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 15, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case PRIMITIVE_TYPE:
- {
- int LA31_16 = input.LA(4);
- if ( (LA31_16==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_16==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 16, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case VOID_TYPE:
- {
- int LA31_17 = input.LA(4);
- if ( (LA31_17==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_17==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 17, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case ANNOTATION_VISIBILITY:
- {
- int LA31_18 = input.LA(4);
- if ( (LA31_18==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_18==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 18, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10t:
- {
- int LA31_19 = input.LA(4);
- if ( (LA31_19==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_19==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 19, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10x:
- {
- int LA31_20 = input.LA(4);
- if ( (LA31_20==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_20==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 20, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10x_ODEX:
- {
- int LA31_21 = input.LA(4);
- if ( (LA31_21==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_21==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 21, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT11x:
- {
- int LA31_22 = input.LA(4);
- if ( (LA31_22==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_22==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 22, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT12x_OR_ID:
- {
- int LA31_23 = input.LA(4);
- if ( (LA31_23==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_23==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 23, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_FIELD:
- {
- int LA31_24 = input.LA(4);
- if ( (LA31_24==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_24==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 24, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_FIELD_ODEX:
- {
- int LA31_25 = input.LA(4);
- if ( (LA31_25==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_25==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 25, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_STRING:
- {
- int LA31_26 = input.LA(4);
- if ( (LA31_26==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_26==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 26, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_TYPE:
- {
- int LA31_27 = input.LA(4);
- if ( (LA31_27==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_27==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 27, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21t:
- {
- int LA31_28 = input.LA(4);
- if ( (LA31_28==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_28==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 28, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_FIELD:
- {
- int LA31_29 = input.LA(4);
- if ( (LA31_29==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_29==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 29, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_FIELD_ODEX:
- {
- int LA31_30 = input.LA(4);
- if ( (LA31_30==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_30==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 30, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_TYPE:
- {
- int LA31_31 = input.LA(4);
- if ( (LA31_31==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_31==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 31, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22cs_FIELD:
- {
- int LA31_32 = input.LA(4);
- if ( (LA31_32==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_32==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 32, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22s_OR_ID:
- {
- int LA31_33 = input.LA(4);
- if ( (LA31_33==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_33==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 33, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22t:
- {
- int LA31_34 = input.LA(4);
- if ( (LA31_34==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_34==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 34, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT23x:
- {
- int LA31_35 = input.LA(4);
- if ( (LA31_35==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_35==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 35, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT31i_OR_ID:
- {
- int LA31_36 = input.LA(4);
- if ( (LA31_36==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_36==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 36, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT31t:
- {
- int LA31_37 = input.LA(4);
- if ( (LA31_37==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_37==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 37, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_METHOD:
- {
- int LA31_38 = input.LA(4);
- if ( (LA31_38==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_38==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 38, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_METHOD_ODEX:
- {
- int LA31_39 = input.LA(4);
- if ( (LA31_39==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_39==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 39, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_TYPE:
- {
- int LA31_40 = input.LA(4);
- if ( (LA31_40==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_40==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 40, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35mi_METHOD:
- {
- int LA31_41 = input.LA(4);
- if ( (LA31_41==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_41==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 41, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35ms_METHOD:
- {
- int LA31_42 = input.LA(4);
- if ( (LA31_42==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_42==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 42, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT51l:
- {
- int LA31_43 = input.LA(4);
- if ( (LA31_43==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_43==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 43, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case MEMBER_NAME:
- {
- int LA31_44 = input.LA(4);
- if ( (LA31_44==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_44==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 44, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- default:
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 4, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 31, 1, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- else if ( (LA31_0==ARRAY_DESCRIPTOR) ) {
- int LA31_2 = input.LA(2);
- if ( (LA31_2==ARROW) ) {
- switch ( input.LA(3) ) {
- case SIMPLE_NAME:
- {
- int LA31_5 = input.LA(4);
- if ( (LA31_5==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_5==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 5, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case ACCESS_SPEC:
- {
- int LA31_6 = input.LA(4);
- if ( (LA31_6==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_6==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 6, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case VERIFICATION_ERROR_TYPE:
- {
- int LA31_7 = input.LA(4);
- if ( (LA31_7==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_7==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 7, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case POSITIVE_INTEGER_LITERAL:
- {
- int LA31_8 = input.LA(4);
- if ( (LA31_8==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_8==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 8, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case NEGATIVE_INTEGER_LITERAL:
- {
- int LA31_9 = input.LA(4);
- if ( (LA31_9==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_9==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 9, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case FLOAT_LITERAL_OR_ID:
- {
- int LA31_10 = input.LA(4);
- if ( (LA31_10==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_10==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 10, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case DOUBLE_LITERAL_OR_ID:
- {
- int LA31_11 = input.LA(4);
- if ( (LA31_11==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_11==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 11, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case BOOL_LITERAL:
- {
- int LA31_12 = input.LA(4);
- if ( (LA31_12==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_12==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 12, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case NULL_LITERAL:
- {
- int LA31_13 = input.LA(4);
- if ( (LA31_13==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_13==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 13, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case REGISTER:
- {
- int LA31_14 = input.LA(4);
- if ( (LA31_14==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_14==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 14, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case PARAM_LIST_OR_ID:
- {
- int LA31_15 = input.LA(4);
- if ( (LA31_15==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_15==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 15, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case PRIMITIVE_TYPE:
- {
- int LA31_16 = input.LA(4);
- if ( (LA31_16==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_16==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 16, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case VOID_TYPE:
- {
- int LA31_17 = input.LA(4);
- if ( (LA31_17==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_17==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 17, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case ANNOTATION_VISIBILITY:
- {
- int LA31_18 = input.LA(4);
- if ( (LA31_18==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_18==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 18, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10t:
- {
- int LA31_19 = input.LA(4);
- if ( (LA31_19==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_19==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 19, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10x:
- {
- int LA31_20 = input.LA(4);
- if ( (LA31_20==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_20==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 20, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT10x_ODEX:
- {
- int LA31_21 = input.LA(4);
- if ( (LA31_21==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_21==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 21, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT11x:
- {
- int LA31_22 = input.LA(4);
- if ( (LA31_22==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_22==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 22, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT12x_OR_ID:
- {
- int LA31_23 = input.LA(4);
- if ( (LA31_23==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_23==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 23, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_FIELD:
- {
- int LA31_24 = input.LA(4);
- if ( (LA31_24==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_24==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 24, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_FIELD_ODEX:
- {
- int LA31_25 = input.LA(4);
- if ( (LA31_25==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_25==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 25, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_STRING:
- {
- int LA31_26 = input.LA(4);
- if ( (LA31_26==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_26==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 26, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21c_TYPE:
- {
- int LA31_27 = input.LA(4);
- if ( (LA31_27==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_27==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 27, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT21t:
- {
- int LA31_28 = input.LA(4);
- if ( (LA31_28==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_28==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 28, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_FIELD:
- {
- int LA31_29 = input.LA(4);
- if ( (LA31_29==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_29==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 29, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_FIELD_ODEX:
- {
- int LA31_30 = input.LA(4);
- if ( (LA31_30==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_30==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 30, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22c_TYPE:
- {
- int LA31_31 = input.LA(4);
- if ( (LA31_31==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_31==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 31, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22cs_FIELD:
- {
- int LA31_32 = input.LA(4);
- if ( (LA31_32==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_32==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 32, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22s_OR_ID:
- {
- int LA31_33 = input.LA(4);
- if ( (LA31_33==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_33==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 33, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT22t:
- {
- int LA31_34 = input.LA(4);
- if ( (LA31_34==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_34==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 34, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT23x:
- {
- int LA31_35 = input.LA(4);
- if ( (LA31_35==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_35==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 35, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT31i_OR_ID:
- {
- int LA31_36 = input.LA(4);
- if ( (LA31_36==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_36==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 36, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT31t:
- {
- int LA31_37 = input.LA(4);
- if ( (LA31_37==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_37==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 37, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_METHOD:
- {
- int LA31_38 = input.LA(4);
- if ( (LA31_38==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_38==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 38, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_METHOD_ODEX:
- {
- int LA31_39 = input.LA(4);
- if ( (LA31_39==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_39==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 39, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35c_TYPE:
- {
- int LA31_40 = input.LA(4);
- if ( (LA31_40==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_40==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 40, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35mi_METHOD:
- {
- int LA31_41 = input.LA(4);
- if ( (LA31_41==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_41==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 41, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT35ms_METHOD:
- {
- int LA31_42 = input.LA(4);
- if ( (LA31_42==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_42==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 42, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case INSTRUCTION_FORMAT51l:
- {
- int LA31_43 = input.LA(4);
- if ( (LA31_43==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_43==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 43, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- case MEMBER_NAME:
- {
- int LA31_44 = input.LA(4);
- if ( (LA31_44==COLON) ) {
- alt31=2;
- }
- else if ( (LA31_44==OPEN_PAREN) ) {
- alt31=3;
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 44, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
- break;
- default:
- int nvaeMark = input.mark();
- try {
- for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) {
- input.consume();
- }
- NoViableAltException nvae =
- new NoViableAltException("", 31, 4, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
- }
-
- else {
- int nvaeMark = input.mark();
- try {
- input.consume();
- NoViableAltException nvae =
- new NoViableAltException("", 31, 2, input);
- throw nvae;
- } finally {
- input.rewind(nvaeMark);
- }
- }
-
- }
-
- else {
- NoViableAltException nvae =
- new NoViableAltException("", 31, 0, input);
- throw nvae;
- }
-
- switch (alt31) {
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:3: ( CLASS_DESCRIPTOR | field_reference | method_reference )
+ int alt36=3;
+ alt36 = dfa36.predict(input);
+ switch (alt36) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:732:5: CLASS_DESCRIPTOR
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:5: CLASS_DESCRIPTOR
{
root_0 = (CommonTree)adaptor.nil();
- CLASS_DESCRIPTOR184=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference3174);
- CLASS_DESCRIPTOR184_tree = (CommonTree)adaptor.create(CLASS_DESCRIPTOR184);
- adaptor.addChild(root_0, CLASS_DESCRIPTOR184_tree);
+ 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);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:732:24: fully_qualified_field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:24: field_reference
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_fully_qualified_field_in_verification_error_reference3178);
- fully_qualified_field185=fully_qualified_field();
+ pushFollow(FOLLOW_field_reference_in_verification_error_reference3134);
+ field_reference193=field_reference();
state._fsp--;
- adaptor.addChild(root_0, fully_qualified_field185.getTree());
+ adaptor.addChild(root_0, field_reference193.getTree());
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:732:48: fully_qualified_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:719:42: method_reference
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_fully_qualified_method_in_verification_error_reference3182);
- fully_qualified_method186=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_verification_error_reference3138);
+ method_reference194=method_reference();
state._fsp--;
- adaptor.addChild(root_0, fully_qualified_method186.getTree());
+ adaptor.addChild(root_0, method_reference194.getTree());
}
break;
@@ -10094,26 +7415,26 @@ public class smaliParser extends Parser {
// $ANTLR start "catch_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:734: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/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) ;
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_DIRECTIVE187=null;
- Token OPEN_BRACE189=null;
- Token DOTDOT190=null;
- Token CLOSE_BRACE191=null;
+ Token CATCH_DIRECTIVE195=null;
+ Token OPEN_BRACE197=null;
+ Token DOTDOT198=null;
+ Token CLOSE_BRACE199=null;
ParserRuleReturnScope from =null;
ParserRuleReturnScope to =null;
ParserRuleReturnScope using =null;
- ParserRuleReturnScope nonvoid_type_descriptor188 =null;
+ ParserRuleReturnScope nonvoid_type_descriptor196 =null;
- CommonTree CATCH_DIRECTIVE187_tree=null;
- CommonTree OPEN_BRACE189_tree=null;
- CommonTree DOTDOT190_tree=null;
- CommonTree CLOSE_BRACE191_tree=null;
+ CommonTree CATCH_DIRECTIVE195_tree=null;
+ CommonTree OPEN_BRACE197_tree=null;
+ CommonTree DOTDOT198_tree=null;
+ CommonTree CLOSE_BRACE199_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");
@@ -10122,48 +7443,48 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:735: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) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:735: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/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
{
- CATCH_DIRECTIVE187=(Token)match(input,CATCH_DIRECTIVE,FOLLOW_CATCH_DIRECTIVE_in_catch_directive3192);
- stream_CATCH_DIRECTIVE.add(CATCH_DIRECTIVE187);
+ CATCH_DIRECTIVE195=(Token)match(input,CATCH_DIRECTIVE,FOLLOW_CATCH_DIRECTIVE_in_catch_directive3148);
+ stream_CATCH_DIRECTIVE.add(CATCH_DIRECTIVE195);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive3194);
- nonvoid_type_descriptor188=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive3150);
+ nonvoid_type_descriptor196=nonvoid_type_descriptor();
state._fsp--;
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor188.getTree());
- OPEN_BRACE189=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_catch_directive3196);
- stream_OPEN_BRACE.add(OPEN_BRACE189);
+ 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);
- pushFollow(FOLLOW_label_ref_in_catch_directive3200);
+ pushFollow(FOLLOW_label_ref_in_catch_directive3156);
from=label_ref();
state._fsp--;
stream_label_ref.add(from.getTree());
- DOTDOT190=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catch_directive3202);
- stream_DOTDOT.add(DOTDOT190);
+ DOTDOT198=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catch_directive3158);
+ stream_DOTDOT.add(DOTDOT198);
- pushFollow(FOLLOW_label_ref_in_catch_directive3206);
+ pushFollow(FOLLOW_label_ref_in_catch_directive3162);
to=label_ref();
state._fsp--;
stream_label_ref.add(to.getTree());
- CLOSE_BRACE191=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catch_directive3208);
- stream_CLOSE_BRACE.add(CLOSE_BRACE191);
+ CLOSE_BRACE199=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catch_directive3164);
+ stream_CLOSE_BRACE.add(CLOSE_BRACE199);
- pushFollow(FOLLOW_label_ref_in_catch_directive3212);
+ pushFollow(FOLLOW_label_ref_in_catch_directive3168);
using=label_ref();
state._fsp--;
stream_label_ref.add(using.getTree());
// AST REWRITE
- // elements: to, nonvoid_type_descriptor, from, using
- // token labels:
+ // elements: using, from, to, nonvoid_type_descriptor
+ // token labels:
// rule labels: to, retval, using, from
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // token list labels:
+ // rule list labels:
+ // wildcard labels:
retval.tree = root_0;
RewriteRuleSubtreeStream stream_to=new RewriteRuleSubtreeStream(adaptor,"rule to",to!=null?to.getTree():null);
RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
@@ -10171,9 +7492,9 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_from=new RewriteRuleSubtreeStream(adaptor,"rule from",from!=null?from.getTree():null);
root_0 = (CommonTree)adaptor.nil();
- // 736:5: -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using)
+ // 723:5: -> ^( I_CATCH[$start, \"I_CATCH\"] nonvoid_type_descriptor $from $to $using)
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:736:8: ^( 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)
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CATCH, (retval.start), "I_CATCH"), root_1);
@@ -10218,25 +7539,25 @@ public class smaliParser extends Parser {
// $ANTLR start "catchall_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:738: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/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) ;
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_DIRECTIVE192=null;
- Token OPEN_BRACE193=null;
- Token DOTDOT194=null;
- Token CLOSE_BRACE195=null;
+ Token CATCHALL_DIRECTIVE200=null;
+ Token OPEN_BRACE201=null;
+ Token DOTDOT202=null;
+ Token CLOSE_BRACE203=null;
ParserRuleReturnScope from =null;
ParserRuleReturnScope to =null;
ParserRuleReturnScope using =null;
- CommonTree CATCHALL_DIRECTIVE192_tree=null;
- CommonTree OPEN_BRACE193_tree=null;
- CommonTree DOTDOT194_tree=null;
- CommonTree CLOSE_BRACE195_tree=null;
+ CommonTree CATCHALL_DIRECTIVE200_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");
@@ -10244,43 +7565,43 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:739: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) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:739: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/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
{
- CATCHALL_DIRECTIVE192=(Token)match(input,CATCHALL_DIRECTIVE,FOLLOW_CATCHALL_DIRECTIVE_in_catchall_directive3244);
- stream_CATCHALL_DIRECTIVE.add(CATCHALL_DIRECTIVE192);
+ CATCHALL_DIRECTIVE200=(Token)match(input,CATCHALL_DIRECTIVE,FOLLOW_CATCHALL_DIRECTIVE_in_catchall_directive3200);
+ stream_CATCHALL_DIRECTIVE.add(CATCHALL_DIRECTIVE200);
- OPEN_BRACE193=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_catchall_directive3246);
- stream_OPEN_BRACE.add(OPEN_BRACE193);
+ OPEN_BRACE201=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_catchall_directive3202);
+ stream_OPEN_BRACE.add(OPEN_BRACE201);
- pushFollow(FOLLOW_label_ref_in_catchall_directive3250);
+ pushFollow(FOLLOW_label_ref_in_catchall_directive3206);
from=label_ref();
state._fsp--;
stream_label_ref.add(from.getTree());
- DOTDOT194=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catchall_directive3252);
- stream_DOTDOT.add(DOTDOT194);
+ DOTDOT202=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_catchall_directive3208);
+ stream_DOTDOT.add(DOTDOT202);
- pushFollow(FOLLOW_label_ref_in_catchall_directive3256);
+ pushFollow(FOLLOW_label_ref_in_catchall_directive3212);
to=label_ref();
state._fsp--;
stream_label_ref.add(to.getTree());
- CLOSE_BRACE195=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catchall_directive3258);
- stream_CLOSE_BRACE.add(CLOSE_BRACE195);
+ CLOSE_BRACE203=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_catchall_directive3214);
+ stream_CLOSE_BRACE.add(CLOSE_BRACE203);
- pushFollow(FOLLOW_label_ref_in_catchall_directive3262);
+ pushFollow(FOLLOW_label_ref_in_catchall_directive3218);
using=label_ref();
state._fsp--;
stream_label_ref.add(using.getTree());
// AST REWRITE
- // elements: using, to, from
- // token labels:
+ // elements: from, to, using
+ // token labels:
// rule labels: to, retval, using, from
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // token list labels:
+ // rule list labels:
+ // wildcard labels:
retval.tree = root_0;
RewriteRuleSubtreeStream stream_to=new RewriteRuleSubtreeStream(adaptor,"rule to",to!=null?to.getTree():null);
RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
@@ -10288,9 +7609,9 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_from=new RewriteRuleSubtreeStream(adaptor,"rule from",from!=null?from.getTree():null);
root_0 = (CommonTree)adaptor.nil();
- // 740:5: -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using)
+ // 727:5: -> ^( I_CATCHALL[$start, \"I_CATCHALL\"] $from $to $using)
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:740:8: ^( 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)
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CATCHALL, (retval.start), "I_CATCHALL"), root_1);
@@ -10334,25 +7655,25 @@ public class smaliParser extends Parser {
// $ANTLR start "parameter_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:746: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/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 ) ) ) ;
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_DIRECTIVE196=null;
- Token REGISTER197=null;
- Token COMMA198=null;
- Token STRING_LITERAL199=null;
- Token END_PARAMETER_DIRECTIVE201=null;
- ParserRuleReturnScope annotation200 =null;
-
- CommonTree PARAMETER_DIRECTIVE196_tree=null;
- CommonTree REGISTER197_tree=null;
- CommonTree COMMA198_tree=null;
- CommonTree STRING_LITERAL199_tree=null;
- CommonTree END_PARAMETER_DIRECTIVE201_tree=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;
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");
@@ -10362,114 +7683,114 @@ public class smaliParser extends Parser {
List<CommonTree> annotations = new ArrayList<CommonTree>();
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:748: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 ) ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:748: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/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 ) ) )
{
- PARAMETER_DIRECTIVE196=(Token)match(input,PARAMETER_DIRECTIVE,FOLLOW_PARAMETER_DIRECTIVE_in_parameter_directive3301);
- stream_PARAMETER_DIRECTIVE.add(PARAMETER_DIRECTIVE196);
+ PARAMETER_DIRECTIVE204=(Token)match(input,PARAMETER_DIRECTIVE,FOLLOW_PARAMETER_DIRECTIVE_in_parameter_directive3257);
+ stream_PARAMETER_DIRECTIVE.add(PARAMETER_DIRECTIVE204);
- REGISTER197=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_parameter_directive3303);
- stream_REGISTER.add(REGISTER197);
+ REGISTER205=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_parameter_directive3259);
+ stream_REGISTER.add(REGISTER205);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:748:34: ( COMMA STRING_LITERAL )?
- int alt32=2;
- int LA32_0 = input.LA(1);
- if ( (LA32_0==COMMA) ) {
- alt32=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:735:34: ( COMMA STRING_LITERAL )?
+ int alt37=2;
+ int LA37_0 = input.LA(1);
+ if ( (LA37_0==COMMA) ) {
+ alt37=1;
}
- switch (alt32) {
+ switch (alt37) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:748:35: COMMA STRING_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:735:35: COMMA STRING_LITERAL
{
- COMMA198=(Token)match(input,COMMA,FOLLOW_COMMA_in_parameter_directive3306);
- stream_COMMA.add(COMMA198);
+ COMMA206=(Token)match(input,COMMA,FOLLOW_COMMA_in_parameter_directive3262);
+ stream_COMMA.add(COMMA206);
- STRING_LITERAL199=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_parameter_directive3308);
- stream_STRING_LITERAL.add(STRING_LITERAL199);
+ STRING_LITERAL207=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_parameter_directive3264);
+ stream_STRING_LITERAL.add(STRING_LITERAL207);
}
break;
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:749:5: ({...}? annotation )*
- loop33:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:736:5: ({...}? annotation )*
+ loop38:
while (true) {
- int alt33=2;
- alt33 = dfa33.predict(input);
- switch (alt33) {
+ int alt38=2;
+ alt38 = dfa38.predict(input);
+ switch (alt38) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:749:6: {...}? annotation
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:736:6: {...}? annotation
{
if ( !((input.LA(1) == ANNOTATION_DIRECTIVE)) ) {
throw new FailedPredicateException(input, "parameter_directive", "input.LA(1) == ANNOTATION_DIRECTIVE");
}
- pushFollow(FOLLOW_annotation_in_parameter_directive3319);
- annotation200=annotation();
+ pushFollow(FOLLOW_annotation_in_parameter_directive3275);
+ annotation208=annotation();
state._fsp--;
- stream_annotation.add(annotation200.getTree());
- annotations.add((annotation200!=null?((CommonTree)annotation200.getTree()):null));
+ stream_annotation.add(annotation208.getTree());
+ annotations.add((annotation208!=null?((CommonTree)annotation208.getTree()):null));
}
break;
default :
- break loop33;
+ break loop38;
}
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:751: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 alt34=2;
- int LA34_0 = input.LA(1);
- if ( (LA34_0==END_PARAMETER_DIRECTIVE) ) {
- alt34=1;
+ // /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 ) ) )
+ int alt39=2;
+ int LA39_0 = input.LA(1);
+ if ( (LA39_0==END_PARAMETER_DIRECTIVE) ) {
+ alt39=1;
}
- else if ( (LA34_0==ANNOTATION_DIRECTIVE||LA34_0==ARRAY_DATA_DIRECTIVE||(LA34_0 >= CATCHALL_DIRECTIVE && LA34_0 <= CATCH_DIRECTIVE)||LA34_0==COLON||(LA34_0 >= END_LOCAL_DIRECTIVE && LA34_0 <= END_METHOD_DIRECTIVE)||LA34_0==EPILOGUE_DIRECTIVE||(LA34_0 >= INSTRUCTION_FORMAT10t && LA34_0 <= INSTRUCTION_FORMAT51l)||(LA34_0 >= LINE_DIRECTIVE && LA34_0 <= LOCAL_DIRECTIVE)||(LA34_0 >= PACKED_SWITCH_DIRECTIVE && LA34_0 <= PARAMETER_DIRECTIVE)||LA34_0==PROLOGUE_DIRECTIVE||(LA34_0 >= REGISTERS_DIRECTIVE && LA34_0 <= RESTART_LOCAL_DIRECTIVE)||(LA34_0 >= SOURCE_DIRECTIVE && LA34_0 <= SPARSE_SWITCH_DIRECTIVE)) ) {
- alt34=2;
+ else if ( (LA39_0==ANNOTATION_DIRECTIVE||LA39_0==ARRAY_DATA_DIRECTIVE||(LA39_0 >= CATCHALL_DIRECTIVE && LA39_0 <= CATCH_DIRECTIVE)||LA39_0==COLON||(LA39_0 >= END_LOCAL_DIRECTIVE && LA39_0 <= END_METHOD_DIRECTIVE)||LA39_0==EPILOGUE_DIRECTIVE||(LA39_0 >= INSTRUCTION_FORMAT10t && LA39_0 <= INSTRUCTION_FORMAT51l)||(LA39_0 >= LINE_DIRECTIVE && LA39_0 <= LOCAL_DIRECTIVE)||(LA39_0 >= PACKED_SWITCH_DIRECTIVE && LA39_0 <= PARAMETER_DIRECTIVE)||LA39_0==PROLOGUE_DIRECTIVE||(LA39_0 >= REGISTERS_DIRECTIVE && LA39_0 <= RESTART_LOCAL_DIRECTIVE)||(LA39_0 >= SOURCE_DIRECTIVE && LA39_0 <= SPARSE_SWITCH_DIRECTIVE)) ) {
+ alt39=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 34, 0, input);
+ new NoViableAltException("", 39, 0, input);
throw nvae;
}
- switch (alt34) {
+ switch (alt39) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:751:7: END_PARAMETER_DIRECTIVE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:738:7: END_PARAMETER_DIRECTIVE
{
- END_PARAMETER_DIRECTIVE201=(Token)match(input,END_PARAMETER_DIRECTIVE,FOLLOW_END_PARAMETER_DIRECTIVE_in_parameter_directive3332);
- stream_END_PARAMETER_DIRECTIVE.add(END_PARAMETER_DIRECTIVE201);
+ END_PARAMETER_DIRECTIVE209=(Token)match(input,END_PARAMETER_DIRECTIVE,FOLLOW_END_PARAMETER_DIRECTIVE_in_parameter_directive3288);
+ stream_END_PARAMETER_DIRECTIVE.add(END_PARAMETER_DIRECTIVE209);
// AST REWRITE
- // elements: annotation, REGISTER, STRING_LITERAL
- // token labels:
+ // elements: STRING_LITERAL, annotation, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 752:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) )
+ // 739:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ( annotation )* ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:752:10: ^( 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 )* ) )
{
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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:752:56: ( STRING_LITERAL )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:739:56: ( STRING_LITERAL )?
if ( stream_STRING_LITERAL.hasNext() ) {
adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode());
}
stream_STRING_LITERAL.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:752:72: ^( I_ANNOTATIONS ( annotation )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:739:72: ^( I_ANNOTATIONS ( annotation )* )
{
CommonTree root_2 = (CommonTree)adaptor.nil();
root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:752:88: ( annotation )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:739:88: ( annotation )*
while ( stream_annotation.hasNext() ) {
adaptor.addChild(root_2, stream_annotation.nextTree());
}
@@ -10489,34 +7810,34 @@ public class smaliParser extends Parser {
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:753:19:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:740:19:
{
statements_and_directives_stack.peek().methodAnnotations.addAll(annotations);
// AST REWRITE
// elements: STRING_LITERAL, REGISTER
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 754:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) )
+ // 741:7: -> ^( I_PARAMETER[$start, \"I_PARAMETER\"] REGISTER ( STRING_LITERAL )? ^( I_ANNOTATIONS ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:754:10: ^( 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 ) )
{
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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:754:56: ( STRING_LITERAL )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:741:56: ( STRING_LITERAL )?
if ( stream_STRING_LITERAL.hasNext() ) {
adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode());
}
stream_STRING_LITERAL.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:754:72: ^( I_ANNOTATIONS )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:741:72: ^( I_ANNOTATIONS )
{
CommonTree root_2 = (CommonTree)adaptor.nil();
root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2);
@@ -10565,162 +7886,162 @@ public class smaliParser extends Parser {
// $ANTLR start "debug_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:757: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/antlr3/smaliParser.g:744: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_directive202 =null;
- ParserRuleReturnScope local_directive203 =null;
- ParserRuleReturnScope end_local_directive204 =null;
- ParserRuleReturnScope restart_local_directive205 =null;
- ParserRuleReturnScope prologue_directive206 =null;
- ParserRuleReturnScope epilogue_directive207 =null;
- ParserRuleReturnScope source_directive208 =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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:758:3: ( line_directive | local_directive | end_local_directive | restart_local_directive | prologue_directive | epilogue_directive | source_directive )
- int alt35=7;
+ // /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 )
+ int alt40=7;
switch ( input.LA(1) ) {
case LINE_DIRECTIVE:
{
- alt35=1;
+ alt40=1;
}
break;
case LOCAL_DIRECTIVE:
{
- alt35=2;
+ alt40=2;
}
break;
case END_LOCAL_DIRECTIVE:
{
- alt35=3;
+ alt40=3;
}
break;
case RESTART_LOCAL_DIRECTIVE:
{
- alt35=4;
+ alt40=4;
}
break;
case PROLOGUE_DIRECTIVE:
{
- alt35=5;
+ alt40=5;
}
break;
case EPILOGUE_DIRECTIVE:
{
- alt35=6;
+ alt40=6;
}
break;
case SOURCE_DIRECTIVE:
{
- alt35=7;
+ alt40=7;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 35, 0, input);
+ new NoViableAltException("", 40, 0, input);
throw nvae;
}
- switch (alt35) {
+ switch (alt40) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:758:5: line_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:745:5: line_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_line_directive_in_debug_directive3405);
- line_directive202=line_directive();
+ pushFollow(FOLLOW_line_directive_in_debug_directive3361);
+ line_directive210=line_directive();
state._fsp--;
- adaptor.addChild(root_0, line_directive202.getTree());
+ adaptor.addChild(root_0, line_directive210.getTree());
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:759:5: local_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:746:5: local_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_local_directive_in_debug_directive3411);
- local_directive203=local_directive();
+ pushFollow(FOLLOW_local_directive_in_debug_directive3367);
+ local_directive211=local_directive();
state._fsp--;
- adaptor.addChild(root_0, local_directive203.getTree());
+ adaptor.addChild(root_0, local_directive211.getTree());
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:760:5: end_local_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:747:5: end_local_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_end_local_directive_in_debug_directive3417);
- end_local_directive204=end_local_directive();
+ pushFollow(FOLLOW_end_local_directive_in_debug_directive3373);
+ end_local_directive212=end_local_directive();
state._fsp--;
- adaptor.addChild(root_0, end_local_directive204.getTree());
+ adaptor.addChild(root_0, end_local_directive212.getTree());
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:761:5: restart_local_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:748:5: restart_local_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_restart_local_directive_in_debug_directive3423);
- restart_local_directive205=restart_local_directive();
+ pushFollow(FOLLOW_restart_local_directive_in_debug_directive3379);
+ restart_local_directive213=restart_local_directive();
state._fsp--;
- adaptor.addChild(root_0, restart_local_directive205.getTree());
+ adaptor.addChild(root_0, restart_local_directive213.getTree());
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:762:5: prologue_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:749:5: prologue_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_prologue_directive_in_debug_directive3429);
- prologue_directive206=prologue_directive();
+ pushFollow(FOLLOW_prologue_directive_in_debug_directive3385);
+ prologue_directive214=prologue_directive();
state._fsp--;
- adaptor.addChild(root_0, prologue_directive206.getTree());
+ adaptor.addChild(root_0, prologue_directive214.getTree());
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:763:5: epilogue_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:750:5: epilogue_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_epilogue_directive_in_debug_directive3435);
- epilogue_directive207=epilogue_directive();
+ pushFollow(FOLLOW_epilogue_directive_in_debug_directive3391);
+ epilogue_directive215=epilogue_directive();
state._fsp--;
- adaptor.addChild(root_0, epilogue_directive207.getTree());
+ adaptor.addChild(root_0, epilogue_directive215.getTree());
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:764:5: source_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:751:5: source_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_source_directive_in_debug_directive3441);
- source_directive208=source_directive();
+ pushFollow(FOLLOW_source_directive_in_debug_directive3397);
+ source_directive216=source_directive();
state._fsp--;
- adaptor.addChild(root_0, source_directive208.getTree());
+ adaptor.addChild(root_0, source_directive216.getTree());
}
break;
@@ -10753,46 +8074,46 @@ public class smaliParser extends Parser {
// $ANTLR start "line_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:766:1: line_directive : LINE_DIRECTIVE integral_literal -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) ;
+ // /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 ) ;
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_DIRECTIVE209=null;
- ParserRuleReturnScope integral_literal210 =null;
+ Token LINE_DIRECTIVE217=null;
+ ParserRuleReturnScope integral_literal218 =null;
- CommonTree LINE_DIRECTIVE209_tree=null;
+ CommonTree LINE_DIRECTIVE217_tree=null;
RewriteRuleTokenStream stream_LINE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token LINE_DIRECTIVE");
RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:767:3: ( LINE_DIRECTIVE integral_literal -> ^( I_LINE[$start, \"I_LINE\"] integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:767:5: LINE_DIRECTIVE integral_literal
+ // /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
{
- LINE_DIRECTIVE209=(Token)match(input,LINE_DIRECTIVE,FOLLOW_LINE_DIRECTIVE_in_line_directive3451);
- stream_LINE_DIRECTIVE.add(LINE_DIRECTIVE209);
+ LINE_DIRECTIVE217=(Token)match(input,LINE_DIRECTIVE,FOLLOW_LINE_DIRECTIVE_in_line_directive3407);
+ stream_LINE_DIRECTIVE.add(LINE_DIRECTIVE217);
- pushFollow(FOLLOW_integral_literal_in_line_directive3453);
- integral_literal210=integral_literal();
+ pushFollow(FOLLOW_integral_literal_in_line_directive3409);
+ integral_literal218=integral_literal();
state._fsp--;
- stream_integral_literal.add(integral_literal210.getTree());
+ stream_integral_literal.add(integral_literal218.getTree());
// AST REWRITE
// elements: integral_literal
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 768:5: -> ^( I_LINE[$start, \"I_LINE\"] integral_literal )
+ // 755:5: -> ^( I_LINE[$start, \"I_LINE\"] integral_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:768:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LINE, (retval.start), "I_LINE"), root_1);
@@ -10834,7 +8155,7 @@ public class smaliParser extends Parser {
// $ANTLR start "local_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:770: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/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)? ) ;
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);
@@ -10843,24 +8164,24 @@ public class smaliParser extends Parser {
Token name=null;
Token signature=null;
- Token LOCAL_DIRECTIVE211=null;
- Token REGISTER212=null;
- Token COMMA213=null;
- Token NULL_LITERAL214=null;
- Token COLON215=null;
- Token VOID_TYPE216=null;
- Token COMMA218=null;
- ParserRuleReturnScope nonvoid_type_descriptor217 =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;
CommonTree name_tree=null;
CommonTree signature_tree=null;
- CommonTree LOCAL_DIRECTIVE211_tree=null;
- CommonTree REGISTER212_tree=null;
- CommonTree COMMA213_tree=null;
- CommonTree NULL_LITERAL214_tree=null;
- CommonTree COLON215_tree=null;
- CommonTree VOID_TYPE216_tree=null;
- CommonTree COMMA218_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;
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");
@@ -10871,57 +8192,57 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771: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)? ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771: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/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 )? )?
{
- LOCAL_DIRECTIVE211=(Token)match(input,LOCAL_DIRECTIVE,FOLLOW_LOCAL_DIRECTIVE_in_local_directive3476);
- stream_LOCAL_DIRECTIVE.add(LOCAL_DIRECTIVE211);
+ LOCAL_DIRECTIVE219=(Token)match(input,LOCAL_DIRECTIVE,FOLLOW_LOCAL_DIRECTIVE_in_local_directive3432);
+ stream_LOCAL_DIRECTIVE.add(LOCAL_DIRECTIVE219);
- REGISTER212=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_local_directive3478);
- stream_REGISTER.add(REGISTER212);
+ REGISTER220=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_local_directive3434);
+ stream_REGISTER.add(REGISTER220);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771:30: ( COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )? )?
- int alt39=2;
- int LA39_0 = input.LA(1);
- if ( (LA39_0==COMMA) ) {
- alt39=1;
+ // /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 )? )?
+ int alt44=2;
+ int LA44_0 = input.LA(1);
+ if ( (LA44_0==COMMA) ) {
+ alt44=1;
}
- switch (alt39) {
+ switch (alt44) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771: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/antlr3/smaliParser.g:758:31: COMMA ( NULL_LITERAL |name= STRING_LITERAL ) COLON ( VOID_TYPE | nonvoid_type_descriptor ) ( COMMA signature= STRING_LITERAL )?
{
- COMMA213=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3481);
- stream_COMMA.add(COMMA213);
+ COMMA221=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3437);
+ stream_COMMA.add(COMMA221);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771:37: ( NULL_LITERAL |name= STRING_LITERAL )
- int alt36=2;
- int LA36_0 = input.LA(1);
- if ( (LA36_0==NULL_LITERAL) ) {
- alt36=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:37: ( NULL_LITERAL |name= STRING_LITERAL )
+ int alt41=2;
+ int LA41_0 = input.LA(1);
+ if ( (LA41_0==NULL_LITERAL) ) {
+ alt41=1;
}
- else if ( (LA36_0==STRING_LITERAL) ) {
- alt36=2;
+ else if ( (LA41_0==STRING_LITERAL) ) {
+ alt41=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 36, 0, input);
+ new NoViableAltException("", 41, 0, input);
throw nvae;
}
- switch (alt36) {
+ switch (alt41) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771:38: NULL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:38: NULL_LITERAL
{
- NULL_LITERAL214=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local_directive3484);
- stream_NULL_LITERAL.add(NULL_LITERAL214);
+ NULL_LITERAL222=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local_directive3440);
+ stream_NULL_LITERAL.add(NULL_LITERAL222);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771:53: name= STRING_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:53: name= STRING_LITERAL
{
- name=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3490);
+ name=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3446);
stream_STRING_LITERAL.add(name);
}
@@ -10929,61 +8250,61 @@ public class smaliParser extends Parser {
}
- COLON215=(Token)match(input,COLON,FOLLOW_COLON_in_local_directive3493);
- stream_COLON.add(COLON215);
+ COLON223=(Token)match(input,COLON,FOLLOW_COLON_in_local_directive3449);
+ stream_COLON.add(COLON223);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771:80: ( 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/antlr3/smaliParser.g:758:80: ( VOID_TYPE | nonvoid_type_descriptor )
+ int alt42=2;
+ int LA42_0 = input.LA(1);
+ if ( (LA42_0==VOID_TYPE) ) {
+ alt42=1;
}
- else if ( (LA37_0==ARRAY_DESCRIPTOR||LA37_0==CLASS_DESCRIPTOR||LA37_0==PRIMITIVE_TYPE) ) {
- alt37=2;
+ else if ( (LA42_0==ARRAY_DESCRIPTOR||LA42_0==CLASS_DESCRIPTOR||LA42_0==PRIMITIVE_TYPE) ) {
+ alt42=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 37, 0, input);
+ new NoViableAltException("", 42, 0, input);
throw nvae;
}
- switch (alt37) {
+ switch (alt42) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771:81: VOID_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:81: VOID_TYPE
{
- VOID_TYPE216=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_local_directive3496);
- stream_VOID_TYPE.add(VOID_TYPE216);
+ VOID_TYPE224=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_local_directive3452);
+ stream_VOID_TYPE.add(VOID_TYPE224);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:771:93: nonvoid_type_descriptor
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:758:93: nonvoid_type_descriptor
{
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_local_directive3500);
- nonvoid_type_descriptor217=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_local_directive3456);
+ nonvoid_type_descriptor225=nonvoid_type_descriptor();
state._fsp--;
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor217.getTree());
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor225.getTree());
}
break;
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:772:31: ( COMMA signature= STRING_LITERAL )?
- int alt38=2;
- int LA38_0 = input.LA(1);
- if ( (LA38_0==COMMA) ) {
- alt38=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:759:31: ( COMMA signature= STRING_LITERAL )?
+ int alt43=2;
+ int LA43_0 = input.LA(1);
+ if ( (LA43_0==COMMA) ) {
+ alt43=1;
}
- switch (alt38) {
+ switch (alt43) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:772:32: COMMA signature= STRING_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:759:32: COMMA signature= STRING_LITERAL
{
- COMMA218=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3534);
- stream_COMMA.add(COMMA218);
+ COMMA226=(Token)match(input,COMMA,FOLLOW_COMMA_in_local_directive3490);
+ stream_COMMA.add(COMMA226);
- signature=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3538);
+ signature=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_local_directive3494);
stream_STRING_LITERAL.add(signature);
}
@@ -10997,44 +8318,44 @@ public class smaliParser extends Parser {
}
// AST REWRITE
- // elements: NULL_LITERAL, signature, nonvoid_type_descriptor, name, REGISTER
+ // elements: nonvoid_type_descriptor, name, NULL_LITERAL, signature, REGISTER
// token labels: name, signature
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // token list labels:
+ // rule list labels:
+ // wildcard labels:
retval.tree = root_0;
RewriteRuleTokenStream stream_name=new RewriteRuleTokenStream(adaptor,"token name",name);
RewriteRuleTokenStream stream_signature=new RewriteRuleTokenStream(adaptor,"token signature",signature);
RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
root_0 = (CommonTree)adaptor.nil();
- // 773:5: -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? )
+ // 760:5: -> ^( I_LOCAL[$start, \"I_LOCAL\"] REGISTER ( NULL_LITERAL )? ( $name)? ( nonvoid_type_descriptor )? ( $signature)? )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:773:8: ^( 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)? )
{
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());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:773:46: ( NULL_LITERAL )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:46: ( NULL_LITERAL )?
if ( stream_NULL_LITERAL.hasNext() ) {
adaptor.addChild(root_1, stream_NULL_LITERAL.nextNode());
}
stream_NULL_LITERAL.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:773:61: ( $name)?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:61: ( $name)?
if ( stream_name.hasNext() ) {
adaptor.addChild(root_1, stream_name.nextNode());
}
stream_name.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:773:67: ( nonvoid_type_descriptor )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:67: ( nonvoid_type_descriptor )?
if ( stream_nonvoid_type_descriptor.hasNext() ) {
adaptor.addChild(root_1, stream_nonvoid_type_descriptor.nextTree());
}
stream_nonvoid_type_descriptor.reset();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:773:93: ( $signature)?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:760:93: ( $signature)?
if ( stream_signature.hasNext() ) {
adaptor.addChild(root_1, stream_signature.nextNode());
}
@@ -11077,45 +8398,45 @@ public class smaliParser extends Parser {
// $ANTLR start "end_local_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:775: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/antlr3/smaliParser.g:762: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_DIRECTIVE219=null;
- Token REGISTER220=null;
+ Token END_LOCAL_DIRECTIVE227=null;
+ Token REGISTER228=null;
- CommonTree END_LOCAL_DIRECTIVE219_tree=null;
- CommonTree REGISTER220_tree=null;
+ CommonTree END_LOCAL_DIRECTIVE227_tree=null;
+ CommonTree REGISTER228_tree=null;
RewriteRuleTokenStream stream_END_LOCAL_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_LOCAL_DIRECTIVE");
RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:776:3: ( END_LOCAL_DIRECTIVE REGISTER -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:776:5: END_LOCAL_DIRECTIVE REGISTER
+ // /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
{
- END_LOCAL_DIRECTIVE219=(Token)match(input,END_LOCAL_DIRECTIVE,FOLLOW_END_LOCAL_DIRECTIVE_in_end_local_directive3580);
- stream_END_LOCAL_DIRECTIVE.add(END_LOCAL_DIRECTIVE219);
+ 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);
- REGISTER220=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_end_local_directive3582);
- stream_REGISTER.add(REGISTER220);
+ REGISTER228=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_end_local_directive3538);
+ stream_REGISTER.add(REGISTER228);
// AST REWRITE
// elements: REGISTER
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 777:5: -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER )
+ // 764:5: -> ^( I_END_LOCAL[$start, \"I_END_LOCAL\"] REGISTER )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:777:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_END_LOCAL, (retval.start), "I_END_LOCAL"), root_1);
@@ -11157,45 +8478,45 @@ public class smaliParser extends Parser {
// $ANTLR start "restart_local_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:779: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/antlr3/smaliParser.g:766: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_DIRECTIVE221=null;
- Token REGISTER222=null;
+ Token RESTART_LOCAL_DIRECTIVE229=null;
+ Token REGISTER230=null;
- CommonTree RESTART_LOCAL_DIRECTIVE221_tree=null;
- CommonTree REGISTER222_tree=null;
+ CommonTree RESTART_LOCAL_DIRECTIVE229_tree=null;
+ CommonTree REGISTER230_tree=null;
RewriteRuleTokenStream stream_RESTART_LOCAL_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token RESTART_LOCAL_DIRECTIVE");
RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:780:3: ( RESTART_LOCAL_DIRECTIVE REGISTER -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:780:5: RESTART_LOCAL_DIRECTIVE REGISTER
+ // /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
{
- RESTART_LOCAL_DIRECTIVE221=(Token)match(input,RESTART_LOCAL_DIRECTIVE,FOLLOW_RESTART_LOCAL_DIRECTIVE_in_restart_local_directive3605);
- stream_RESTART_LOCAL_DIRECTIVE.add(RESTART_LOCAL_DIRECTIVE221);
+ 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);
- REGISTER222=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_restart_local_directive3607);
- stream_REGISTER.add(REGISTER222);
+ REGISTER230=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_restart_local_directive3563);
+ stream_REGISTER.add(REGISTER230);
// AST REWRITE
// elements: REGISTER
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 781:5: -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER )
+ // 768:5: -> ^( I_RESTART_LOCAL[$start, \"I_RESTART_LOCAL\"] REGISTER )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:781:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_RESTART_LOCAL, (retval.start), "I_RESTART_LOCAL"), root_1);
@@ -11237,39 +8558,39 @@ public class smaliParser extends Parser {
// $ANTLR start "prologue_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:783:1: prologue_directive : PROLOGUE_DIRECTIVE -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:770: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_DIRECTIVE223=null;
+ Token PROLOGUE_DIRECTIVE231=null;
- CommonTree PROLOGUE_DIRECTIVE223_tree=null;
+ CommonTree PROLOGUE_DIRECTIVE231_tree=null;
RewriteRuleTokenStream stream_PROLOGUE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token PROLOGUE_DIRECTIVE");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:784:3: ( PROLOGUE_DIRECTIVE -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:784:5: PROLOGUE_DIRECTIVE
+ // /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
{
- PROLOGUE_DIRECTIVE223=(Token)match(input,PROLOGUE_DIRECTIVE,FOLLOW_PROLOGUE_DIRECTIVE_in_prologue_directive3630);
- stream_PROLOGUE_DIRECTIVE.add(PROLOGUE_DIRECTIVE223);
+ PROLOGUE_DIRECTIVE231=(Token)match(input,PROLOGUE_DIRECTIVE,FOLLOW_PROLOGUE_DIRECTIVE_in_prologue_directive3586);
+ stream_PROLOGUE_DIRECTIVE.add(PROLOGUE_DIRECTIVE231);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 785:5: -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] )
+ // 772:5: -> ^( I_PROLOGUE[$start, \"I_PROLOGUE\"] )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:785:8: ^( 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\"] )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PROLOGUE, (retval.start), "I_PROLOGUE"), root_1);
@@ -11310,39 +8631,39 @@ public class smaliParser extends Parser {
// $ANTLR start "epilogue_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:787:1: epilogue_directive : EPILOGUE_DIRECTIVE -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:774: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_DIRECTIVE224=null;
+ Token EPILOGUE_DIRECTIVE232=null;
- CommonTree EPILOGUE_DIRECTIVE224_tree=null;
+ CommonTree EPILOGUE_DIRECTIVE232_tree=null;
RewriteRuleTokenStream stream_EPILOGUE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token EPILOGUE_DIRECTIVE");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:788:3: ( EPILOGUE_DIRECTIVE -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:788:5: EPILOGUE_DIRECTIVE
+ // /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
{
- EPILOGUE_DIRECTIVE224=(Token)match(input,EPILOGUE_DIRECTIVE,FOLLOW_EPILOGUE_DIRECTIVE_in_epilogue_directive3651);
- stream_EPILOGUE_DIRECTIVE.add(EPILOGUE_DIRECTIVE224);
+ EPILOGUE_DIRECTIVE232=(Token)match(input,EPILOGUE_DIRECTIVE,FOLLOW_EPILOGUE_DIRECTIVE_in_epilogue_directive3607);
+ stream_EPILOGUE_DIRECTIVE.add(EPILOGUE_DIRECTIVE232);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 789:5: -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] )
+ // 776:5: -> ^( I_EPILOGUE[$start, \"I_EPILOGUE\"] )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:789:8: ^( 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\"] )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_EPILOGUE, (retval.start), "I_EPILOGUE"), root_1);
@@ -11383,40 +8704,40 @@ public class smaliParser extends Parser {
// $ANTLR start "source_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:791:1: source_directive : SOURCE_DIRECTIVE ( STRING_LITERAL )? -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) ;
+ // /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 )? ) ;
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_DIRECTIVE225=null;
- Token STRING_LITERAL226=null;
+ Token SOURCE_DIRECTIVE233=null;
+ Token STRING_LITERAL234=null;
- CommonTree SOURCE_DIRECTIVE225_tree=null;
- CommonTree STRING_LITERAL226_tree=null;
+ CommonTree SOURCE_DIRECTIVE233_tree=null;
+ CommonTree STRING_LITERAL234_tree=null;
RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL");
RewriteRuleTokenStream stream_SOURCE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SOURCE_DIRECTIVE");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:792:3: ( SOURCE_DIRECTIVE ( STRING_LITERAL )? -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:792:5: SOURCE_DIRECTIVE ( STRING_LITERAL )?
+ // /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 )?
{
- SOURCE_DIRECTIVE225=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_directive3672);
- stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE225);
+ SOURCE_DIRECTIVE233=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_directive3628);
+ stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE233);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:792:22: ( STRING_LITERAL )?
- int alt40=2;
- int LA40_0 = input.LA(1);
- if ( (LA40_0==STRING_LITERAL) ) {
- alt40=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:779:22: ( STRING_LITERAL )?
+ int alt45=2;
+ int LA45_0 = input.LA(1);
+ if ( (LA45_0==STRING_LITERAL) ) {
+ alt45=1;
}
- switch (alt40) {
+ switch (alt45) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:792:22: STRING_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:779:22: STRING_LITERAL
{
- STRING_LITERAL226=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_directive3674);
- stream_STRING_LITERAL.add(STRING_LITERAL226);
+ STRING_LITERAL234=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_directive3630);
+ stream_STRING_LITERAL.add(STRING_LITERAL234);
}
break;
@@ -11425,22 +8746,22 @@ public class smaliParser extends Parser {
// AST REWRITE
// elements: STRING_LITERAL
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 793:5: -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? )
+ // 780:5: -> ^( I_SOURCE[$start, \"I_SOURCE\"] ( STRING_LITERAL )? )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:793:8: ^( 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 )? )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SOURCE, (retval.start), "I_SOURCE"), root_1);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:793:39: ( STRING_LITERAL )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:780:39: ( STRING_LITERAL )?
if ( stream_STRING_LITERAL.hasNext() ) {
adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode());
}
@@ -11483,70 +8804,70 @@ public class smaliParser extends Parser {
// $ANTLR start "instruction_format12x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:795: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/antlr3/smaliParser.g:782: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_FORMAT12x227=null;
- Token INSTRUCTION_FORMAT12x_OR_ID228=null;
+ Token INSTRUCTION_FORMAT12x235=null;
+ Token INSTRUCTION_FORMAT12x_OR_ID236=null;
- CommonTree INSTRUCTION_FORMAT12x227_tree=null;
- CommonTree INSTRUCTION_FORMAT12x_OR_ID228_tree=null;
+ CommonTree INSTRUCTION_FORMAT12x235_tree=null;
+ CommonTree INSTRUCTION_FORMAT12x_OR_ID236_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT12x_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT12x_OR_ID");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:796:3: ( INSTRUCTION_FORMAT12x | INSTRUCTION_FORMAT12x_OR_ID -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID] )
- int alt41=2;
- int LA41_0 = input.LA(1);
- if ( (LA41_0==INSTRUCTION_FORMAT12x) ) {
- alt41=1;
+ // /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] )
+ int alt46=2;
+ int LA46_0 = input.LA(1);
+ if ( (LA46_0==INSTRUCTION_FORMAT12x) ) {
+ alt46=1;
}
- else if ( (LA41_0==INSTRUCTION_FORMAT12x_OR_ID) ) {
- alt41=2;
+ else if ( (LA46_0==INSTRUCTION_FORMAT12x_OR_ID) ) {
+ alt46=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 41, 0, input);
+ new NoViableAltException("", 46, 0, input);
throw nvae;
}
- switch (alt41) {
+ switch (alt46) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:796:5: INSTRUCTION_FORMAT12x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:783:5: INSTRUCTION_FORMAT12x
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT12x227=(Token)match(input,INSTRUCTION_FORMAT12x,FOLLOW_INSTRUCTION_FORMAT12x_in_instruction_format12x3699);
- INSTRUCTION_FORMAT12x227_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT12x227);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT12x227_tree);
+ 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);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:797:5: INSTRUCTION_FORMAT12x_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:784:5: INSTRUCTION_FORMAT12x_OR_ID
{
- INSTRUCTION_FORMAT12x_OR_ID228=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_instruction_format12x3705);
- stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID228);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 797:33: -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID]
+ // 784:33: -> INSTRUCTION_FORMAT12x[$INSTRUCTION_FORMAT12x_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT12x, INSTRUCTION_FORMAT12x_OR_ID228));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT12x, INSTRUCTION_FORMAT12x_OR_ID236));
}
@@ -11583,70 +8904,70 @@ public class smaliParser extends Parser {
// $ANTLR start "instruction_format22s"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:799: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/antlr3/smaliParser.g:786: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_FORMAT22s229=null;
- Token INSTRUCTION_FORMAT22s_OR_ID230=null;
+ Token INSTRUCTION_FORMAT22s237=null;
+ Token INSTRUCTION_FORMAT22s_OR_ID238=null;
- CommonTree INSTRUCTION_FORMAT22s229_tree=null;
- CommonTree INSTRUCTION_FORMAT22s_OR_ID230_tree=null;
+ CommonTree INSTRUCTION_FORMAT22s237_tree=null;
+ CommonTree INSTRUCTION_FORMAT22s_OR_ID238_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22s_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22s_OR_ID");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:800:3: ( INSTRUCTION_FORMAT22s | INSTRUCTION_FORMAT22s_OR_ID -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID] )
- int alt42=2;
- int LA42_0 = input.LA(1);
- if ( (LA42_0==INSTRUCTION_FORMAT22s) ) {
- alt42=1;
+ // /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] )
+ int alt47=2;
+ int LA47_0 = input.LA(1);
+ if ( (LA47_0==INSTRUCTION_FORMAT22s) ) {
+ alt47=1;
}
- else if ( (LA42_0==INSTRUCTION_FORMAT22s_OR_ID) ) {
- alt42=2;
+ else if ( (LA47_0==INSTRUCTION_FORMAT22s_OR_ID) ) {
+ alt47=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 42, 0, input);
+ new NoViableAltException("", 47, 0, input);
throw nvae;
}
- switch (alt42) {
+ switch (alt47) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:800:5: INSTRUCTION_FORMAT22s
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:787:5: INSTRUCTION_FORMAT22s
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT22s229=(Token)match(input,INSTRUCTION_FORMAT22s,FOLLOW_INSTRUCTION_FORMAT22s_in_instruction_format22s3720);
- INSTRUCTION_FORMAT22s229_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT22s229);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT22s229_tree);
+ 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);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:801:5: INSTRUCTION_FORMAT22s_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:788:5: INSTRUCTION_FORMAT22s_OR_ID
{
- INSTRUCTION_FORMAT22s_OR_ID230=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_instruction_format22s3726);
- stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID230);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 801:33: -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID]
+ // 788:33: -> INSTRUCTION_FORMAT22s[$INSTRUCTION_FORMAT22s_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT22s, INSTRUCTION_FORMAT22s_OR_ID230));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT22s, INSTRUCTION_FORMAT22s_OR_ID238));
}
@@ -11683,70 +9004,70 @@ public class smaliParser extends Parser {
// $ANTLR start "instruction_format31i"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:803: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/antlr3/smaliParser.g:790: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_FORMAT31i231=null;
- Token INSTRUCTION_FORMAT31i_OR_ID232=null;
+ Token INSTRUCTION_FORMAT31i239=null;
+ Token INSTRUCTION_FORMAT31i_OR_ID240=null;
- CommonTree INSTRUCTION_FORMAT31i231_tree=null;
- CommonTree INSTRUCTION_FORMAT31i_OR_ID232_tree=null;
+ CommonTree INSTRUCTION_FORMAT31i239_tree=null;
+ CommonTree INSTRUCTION_FORMAT31i_OR_ID240_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31i_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31i_OR_ID");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:804:3: ( INSTRUCTION_FORMAT31i | INSTRUCTION_FORMAT31i_OR_ID -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID] )
- int alt43=2;
- int LA43_0 = input.LA(1);
- if ( (LA43_0==INSTRUCTION_FORMAT31i) ) {
- alt43=1;
+ // /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] )
+ int alt48=2;
+ int LA48_0 = input.LA(1);
+ if ( (LA48_0==INSTRUCTION_FORMAT31i) ) {
+ alt48=1;
}
- else if ( (LA43_0==INSTRUCTION_FORMAT31i_OR_ID) ) {
- alt43=2;
+ else if ( (LA48_0==INSTRUCTION_FORMAT31i_OR_ID) ) {
+ alt48=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 43, 0, input);
+ new NoViableAltException("", 48, 0, input);
throw nvae;
}
- switch (alt43) {
+ switch (alt48) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:804:5: INSTRUCTION_FORMAT31i
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:791:5: INSTRUCTION_FORMAT31i
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT31i231=(Token)match(input,INSTRUCTION_FORMAT31i,FOLLOW_INSTRUCTION_FORMAT31i_in_instruction_format31i3741);
- INSTRUCTION_FORMAT31i231_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT31i231);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT31i231_tree);
+ 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);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:805:5: INSTRUCTION_FORMAT31i_OR_ID
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:792:5: INSTRUCTION_FORMAT31i_OR_ID
{
- INSTRUCTION_FORMAT31i_OR_ID232=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_instruction_format31i3747);
- stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID232);
+ 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);
// AST REWRITE
- // elements:
- // token labels:
+ // elements:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 805:33: -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID]
+ // 792:33: -> INSTRUCTION_FORMAT31i[$INSTRUCTION_FORMAT31i_OR_ID]
{
- adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT31i, INSTRUCTION_FORMAT31i_OR_ID232));
+ adaptor.addChild(root_0, (CommonTree)adaptor.create(INSTRUCTION_FORMAT31i, INSTRUCTION_FORMAT31i_OR_ID240));
}
@@ -11783,905 +9104,905 @@ public class smaliParser extends Parser {
// $ANTLR start "instruction"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:809: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/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 );
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_format10t233 =null;
- ParserRuleReturnScope insn_format10x234 =null;
- ParserRuleReturnScope insn_format10x_odex235 =null;
- ParserRuleReturnScope insn_format11n236 =null;
- ParserRuleReturnScope insn_format11x237 =null;
- ParserRuleReturnScope insn_format12x238 =null;
- ParserRuleReturnScope insn_format20bc239 =null;
- ParserRuleReturnScope insn_format20t240 =null;
- ParserRuleReturnScope insn_format21c_field241 =null;
- ParserRuleReturnScope insn_format21c_field_odex242 =null;
- ParserRuleReturnScope insn_format21c_string243 =null;
- ParserRuleReturnScope insn_format21c_type244 =null;
- ParserRuleReturnScope insn_format21ih245 =null;
- ParserRuleReturnScope insn_format21lh246 =null;
- ParserRuleReturnScope insn_format21s247 =null;
- ParserRuleReturnScope insn_format21t248 =null;
- ParserRuleReturnScope insn_format22b249 =null;
- ParserRuleReturnScope insn_format22c_field250 =null;
- ParserRuleReturnScope insn_format22c_field_odex251 =null;
- ParserRuleReturnScope insn_format22c_type252 =null;
- ParserRuleReturnScope insn_format22cs_field253 =null;
- ParserRuleReturnScope insn_format22s254 =null;
- ParserRuleReturnScope insn_format22t255 =null;
- ParserRuleReturnScope insn_format22x256 =null;
- ParserRuleReturnScope insn_format23x257 =null;
- ParserRuleReturnScope insn_format30t258 =null;
- ParserRuleReturnScope insn_format31c259 =null;
- ParserRuleReturnScope insn_format31i260 =null;
- ParserRuleReturnScope insn_format31t261 =null;
- ParserRuleReturnScope insn_format32x262 =null;
- ParserRuleReturnScope insn_format35c_method263 =null;
- ParserRuleReturnScope insn_format35c_type264 =null;
- ParserRuleReturnScope insn_format35c_method_odex265 =null;
- ParserRuleReturnScope insn_format35mi_method266 =null;
- ParserRuleReturnScope insn_format35ms_method267 =null;
- ParserRuleReturnScope insn_format3rc_method268 =null;
- ParserRuleReturnScope insn_format3rc_method_odex269 =null;
- ParserRuleReturnScope insn_format3rc_type270 =null;
- ParserRuleReturnScope insn_format3rmi_method271 =null;
- ParserRuleReturnScope insn_format3rms_method272 =null;
- ParserRuleReturnScope insn_format51l273 =null;
- ParserRuleReturnScope insn_array_data_directive274 =null;
- ParserRuleReturnScope insn_packed_switch_directive275 =null;
- ParserRuleReturnScope insn_sparse_switch_directive276 =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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:810: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 alt44=44;
+ // /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;
switch ( input.LA(1) ) {
case INSTRUCTION_FORMAT10t:
{
- alt44=1;
+ alt49=1;
}
break;
case INSTRUCTION_FORMAT10x:
{
- alt44=2;
+ alt49=2;
}
break;
case INSTRUCTION_FORMAT10x_ODEX:
{
- alt44=3;
+ alt49=3;
}
break;
case INSTRUCTION_FORMAT11n:
{
- alt44=4;
+ alt49=4;
}
break;
case INSTRUCTION_FORMAT11x:
{
- alt44=5;
+ alt49=5;
}
break;
case INSTRUCTION_FORMAT12x:
case INSTRUCTION_FORMAT12x_OR_ID:
{
- alt44=6;
+ alt49=6;
}
break;
case INSTRUCTION_FORMAT20bc:
{
- alt44=7;
+ alt49=7;
}
break;
case INSTRUCTION_FORMAT20t:
{
- alt44=8;
+ alt49=8;
}
break;
case INSTRUCTION_FORMAT21c_FIELD:
{
- alt44=9;
+ alt49=9;
}
break;
case INSTRUCTION_FORMAT21c_FIELD_ODEX:
{
- alt44=10;
+ alt49=10;
}
break;
case INSTRUCTION_FORMAT21c_STRING:
{
- alt44=11;
+ alt49=11;
}
break;
case INSTRUCTION_FORMAT21c_TYPE:
{
- alt44=12;
+ alt49=12;
}
break;
case INSTRUCTION_FORMAT21ih:
{
- alt44=13;
+ alt49=13;
}
break;
case INSTRUCTION_FORMAT21lh:
{
- alt44=14;
+ alt49=14;
}
break;
case INSTRUCTION_FORMAT21s:
{
- alt44=15;
+ alt49=15;
}
break;
case INSTRUCTION_FORMAT21t:
{
- alt44=16;
+ alt49=16;
}
break;
case INSTRUCTION_FORMAT22b:
{
- alt44=17;
+ alt49=17;
}
break;
case INSTRUCTION_FORMAT22c_FIELD:
{
- alt44=18;
+ alt49=18;
}
break;
case INSTRUCTION_FORMAT22c_FIELD_ODEX:
{
- alt44=19;
+ alt49=19;
}
break;
case INSTRUCTION_FORMAT22c_TYPE:
{
- alt44=20;
+ alt49=20;
}
break;
case INSTRUCTION_FORMAT22cs_FIELD:
{
- alt44=21;
+ alt49=21;
}
break;
case INSTRUCTION_FORMAT22s:
case INSTRUCTION_FORMAT22s_OR_ID:
{
- alt44=22;
+ alt49=22;
}
break;
case INSTRUCTION_FORMAT22t:
{
- alt44=23;
+ alt49=23;
}
break;
case INSTRUCTION_FORMAT22x:
{
- alt44=24;
+ alt49=24;
}
break;
case INSTRUCTION_FORMAT23x:
{
- alt44=25;
+ alt49=25;
}
break;
case INSTRUCTION_FORMAT30t:
{
- alt44=26;
+ alt49=26;
}
break;
case INSTRUCTION_FORMAT31c:
{
- alt44=27;
+ alt49=27;
}
break;
case INSTRUCTION_FORMAT31i:
case INSTRUCTION_FORMAT31i_OR_ID:
{
- alt44=28;
+ alt49=28;
}
break;
case INSTRUCTION_FORMAT31t:
{
- alt44=29;
+ alt49=29;
}
break;
case INSTRUCTION_FORMAT32x:
{
- alt44=30;
+ alt49=30;
}
break;
case INSTRUCTION_FORMAT35c_METHOD:
{
- alt44=31;
+ alt49=31;
}
break;
case INSTRUCTION_FORMAT35c_TYPE:
{
- alt44=32;
+ alt49=32;
}
break;
case INSTRUCTION_FORMAT35c_METHOD_ODEX:
{
- alt44=33;
+ alt49=33;
}
break;
case INSTRUCTION_FORMAT35mi_METHOD:
{
- alt44=34;
+ alt49=34;
}
break;
case INSTRUCTION_FORMAT35ms_METHOD:
{
- alt44=35;
+ alt49=35;
}
break;
case INSTRUCTION_FORMAT3rc_METHOD:
{
- alt44=36;
+ alt49=36;
}
break;
case INSTRUCTION_FORMAT3rc_METHOD_ODEX:
{
- alt44=37;
+ alt49=37;
}
break;
case INSTRUCTION_FORMAT3rc_TYPE:
{
- alt44=38;
+ alt49=38;
}
break;
case INSTRUCTION_FORMAT3rmi_METHOD:
{
- alt44=39;
+ alt49=39;
}
break;
case INSTRUCTION_FORMAT3rms_METHOD:
{
- alt44=40;
+ alt49=40;
}
break;
case INSTRUCTION_FORMAT51l:
{
- alt44=41;
+ alt49=41;
}
break;
case ARRAY_DATA_DIRECTIVE:
{
- alt44=42;
+ alt49=42;
}
break;
case PACKED_SWITCH_DIRECTIVE:
{
- alt44=43;
+ alt49=43;
}
break;
case SPARSE_SWITCH_DIRECTIVE:
{
- alt44=44;
+ alt49=44;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 44, 0, input);
+ new NoViableAltException("", 49, 0, input);
throw nvae;
}
- switch (alt44) {
+ switch (alt49) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:810:5: insn_format10t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:797:5: insn_format10t
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format10t_in_instruction3764);
- insn_format10t233=insn_format10t();
+ pushFollow(FOLLOW_insn_format10t_in_instruction3720);
+ insn_format10t241=insn_format10t();
state._fsp--;
- adaptor.addChild(root_0, insn_format10t233.getTree());
+ adaptor.addChild(root_0, insn_format10t241.getTree());
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:811:5: insn_format10x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:798:5: insn_format10x
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format10x_in_instruction3770);
- insn_format10x234=insn_format10x();
+ pushFollow(FOLLOW_insn_format10x_in_instruction3726);
+ insn_format10x242=insn_format10x();
state._fsp--;
- adaptor.addChild(root_0, insn_format10x234.getTree());
+ adaptor.addChild(root_0, insn_format10x242.getTree());
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:812:5: insn_format10x_odex
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:799:5: insn_format10x_odex
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format10x_odex_in_instruction3776);
- insn_format10x_odex235=insn_format10x_odex();
+ pushFollow(FOLLOW_insn_format10x_odex_in_instruction3732);
+ insn_format10x_odex243=insn_format10x_odex();
state._fsp--;
- adaptor.addChild(root_0, insn_format10x_odex235.getTree());
+ adaptor.addChild(root_0, insn_format10x_odex243.getTree());
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:813:5: insn_format11n
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:800:5: insn_format11n
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format11n_in_instruction3782);
- insn_format11n236=insn_format11n();
+ pushFollow(FOLLOW_insn_format11n_in_instruction3738);
+ insn_format11n244=insn_format11n();
state._fsp--;
- adaptor.addChild(root_0, insn_format11n236.getTree());
+ adaptor.addChild(root_0, insn_format11n244.getTree());
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:814:5: insn_format11x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:801:5: insn_format11x
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format11x_in_instruction3788);
- insn_format11x237=insn_format11x();
+ pushFollow(FOLLOW_insn_format11x_in_instruction3744);
+ insn_format11x245=insn_format11x();
state._fsp--;
- adaptor.addChild(root_0, insn_format11x237.getTree());
+ adaptor.addChild(root_0, insn_format11x245.getTree());
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:815:5: insn_format12x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:802:5: insn_format12x
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format12x_in_instruction3794);
- insn_format12x238=insn_format12x();
+ pushFollow(FOLLOW_insn_format12x_in_instruction3750);
+ insn_format12x246=insn_format12x();
state._fsp--;
- adaptor.addChild(root_0, insn_format12x238.getTree());
+ adaptor.addChild(root_0, insn_format12x246.getTree());
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:816:5: insn_format20bc
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:803:5: insn_format20bc
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format20bc_in_instruction3800);
- insn_format20bc239=insn_format20bc();
+ pushFollow(FOLLOW_insn_format20bc_in_instruction3756);
+ insn_format20bc247=insn_format20bc();
state._fsp--;
- adaptor.addChild(root_0, insn_format20bc239.getTree());
+ adaptor.addChild(root_0, insn_format20bc247.getTree());
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:817:5: insn_format20t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:804:5: insn_format20t
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format20t_in_instruction3806);
- insn_format20t240=insn_format20t();
+ pushFollow(FOLLOW_insn_format20t_in_instruction3762);
+ insn_format20t248=insn_format20t();
state._fsp--;
- adaptor.addChild(root_0, insn_format20t240.getTree());
+ adaptor.addChild(root_0, insn_format20t248.getTree());
}
break;
case 9 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:818:5: insn_format21c_field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:805:5: insn_format21c_field
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21c_field_in_instruction3812);
- insn_format21c_field241=insn_format21c_field();
+ pushFollow(FOLLOW_insn_format21c_field_in_instruction3768);
+ insn_format21c_field249=insn_format21c_field();
state._fsp--;
- adaptor.addChild(root_0, insn_format21c_field241.getTree());
+ adaptor.addChild(root_0, insn_format21c_field249.getTree());
}
break;
case 10 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:819:5: insn_format21c_field_odex
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:806:5: insn_format21c_field_odex
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21c_field_odex_in_instruction3818);
- insn_format21c_field_odex242=insn_format21c_field_odex();
+ pushFollow(FOLLOW_insn_format21c_field_odex_in_instruction3774);
+ insn_format21c_field_odex250=insn_format21c_field_odex();
state._fsp--;
- adaptor.addChild(root_0, insn_format21c_field_odex242.getTree());
+ adaptor.addChild(root_0, insn_format21c_field_odex250.getTree());
}
break;
case 11 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:820:5: insn_format21c_string
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:807:5: insn_format21c_string
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21c_string_in_instruction3824);
- insn_format21c_string243=insn_format21c_string();
+ pushFollow(FOLLOW_insn_format21c_string_in_instruction3780);
+ insn_format21c_string251=insn_format21c_string();
state._fsp--;
- adaptor.addChild(root_0, insn_format21c_string243.getTree());
+ adaptor.addChild(root_0, insn_format21c_string251.getTree());
}
break;
case 12 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:821:5: insn_format21c_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:808:5: insn_format21c_type
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21c_type_in_instruction3830);
- insn_format21c_type244=insn_format21c_type();
+ pushFollow(FOLLOW_insn_format21c_type_in_instruction3786);
+ insn_format21c_type252=insn_format21c_type();
state._fsp--;
- adaptor.addChild(root_0, insn_format21c_type244.getTree());
+ adaptor.addChild(root_0, insn_format21c_type252.getTree());
}
break;
case 13 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:822:5: insn_format21ih
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:809:5: insn_format21ih
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21ih_in_instruction3836);
- insn_format21ih245=insn_format21ih();
+ pushFollow(FOLLOW_insn_format21ih_in_instruction3792);
+ insn_format21ih253=insn_format21ih();
state._fsp--;
- adaptor.addChild(root_0, insn_format21ih245.getTree());
+ adaptor.addChild(root_0, insn_format21ih253.getTree());
}
break;
case 14 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:823:5: insn_format21lh
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:810:5: insn_format21lh
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21lh_in_instruction3842);
- insn_format21lh246=insn_format21lh();
+ pushFollow(FOLLOW_insn_format21lh_in_instruction3798);
+ insn_format21lh254=insn_format21lh();
state._fsp--;
- adaptor.addChild(root_0, insn_format21lh246.getTree());
+ adaptor.addChild(root_0, insn_format21lh254.getTree());
}
break;
case 15 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:824:5: insn_format21s
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:811:5: insn_format21s
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21s_in_instruction3848);
- insn_format21s247=insn_format21s();
+ pushFollow(FOLLOW_insn_format21s_in_instruction3804);
+ insn_format21s255=insn_format21s();
state._fsp--;
- adaptor.addChild(root_0, insn_format21s247.getTree());
+ adaptor.addChild(root_0, insn_format21s255.getTree());
}
break;
case 16 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:825:5: insn_format21t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:812:5: insn_format21t
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format21t_in_instruction3854);
- insn_format21t248=insn_format21t();
+ pushFollow(FOLLOW_insn_format21t_in_instruction3810);
+ insn_format21t256=insn_format21t();
state._fsp--;
- adaptor.addChild(root_0, insn_format21t248.getTree());
+ adaptor.addChild(root_0, insn_format21t256.getTree());
}
break;
case 17 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:826:5: insn_format22b
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:813:5: insn_format22b
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22b_in_instruction3860);
- insn_format22b249=insn_format22b();
+ pushFollow(FOLLOW_insn_format22b_in_instruction3816);
+ insn_format22b257=insn_format22b();
state._fsp--;
- adaptor.addChild(root_0, insn_format22b249.getTree());
+ adaptor.addChild(root_0, insn_format22b257.getTree());
}
break;
case 18 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:827:5: insn_format22c_field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:814:5: insn_format22c_field
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22c_field_in_instruction3866);
- insn_format22c_field250=insn_format22c_field();
+ pushFollow(FOLLOW_insn_format22c_field_in_instruction3822);
+ insn_format22c_field258=insn_format22c_field();
state._fsp--;
- adaptor.addChild(root_0, insn_format22c_field250.getTree());
+ adaptor.addChild(root_0, insn_format22c_field258.getTree());
}
break;
case 19 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:828:5: insn_format22c_field_odex
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:815:5: insn_format22c_field_odex
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22c_field_odex_in_instruction3872);
- insn_format22c_field_odex251=insn_format22c_field_odex();
+ pushFollow(FOLLOW_insn_format22c_field_odex_in_instruction3828);
+ insn_format22c_field_odex259=insn_format22c_field_odex();
state._fsp--;
- adaptor.addChild(root_0, insn_format22c_field_odex251.getTree());
+ adaptor.addChild(root_0, insn_format22c_field_odex259.getTree());
}
break;
case 20 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:829:5: insn_format22c_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:816:5: insn_format22c_type
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22c_type_in_instruction3878);
- insn_format22c_type252=insn_format22c_type();
+ pushFollow(FOLLOW_insn_format22c_type_in_instruction3834);
+ insn_format22c_type260=insn_format22c_type();
state._fsp--;
- adaptor.addChild(root_0, insn_format22c_type252.getTree());
+ adaptor.addChild(root_0, insn_format22c_type260.getTree());
}
break;
case 21 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:830:5: insn_format22cs_field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:817:5: insn_format22cs_field
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22cs_field_in_instruction3884);
- insn_format22cs_field253=insn_format22cs_field();
+ pushFollow(FOLLOW_insn_format22cs_field_in_instruction3840);
+ insn_format22cs_field261=insn_format22cs_field();
state._fsp--;
- adaptor.addChild(root_0, insn_format22cs_field253.getTree());
+ adaptor.addChild(root_0, insn_format22cs_field261.getTree());
}
break;
case 22 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:831:5: insn_format22s
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:818:5: insn_format22s
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22s_in_instruction3890);
- insn_format22s254=insn_format22s();
+ pushFollow(FOLLOW_insn_format22s_in_instruction3846);
+ insn_format22s262=insn_format22s();
state._fsp--;
- adaptor.addChild(root_0, insn_format22s254.getTree());
+ adaptor.addChild(root_0, insn_format22s262.getTree());
}
break;
case 23 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:832:5: insn_format22t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:819:5: insn_format22t
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22t_in_instruction3896);
- insn_format22t255=insn_format22t();
+ pushFollow(FOLLOW_insn_format22t_in_instruction3852);
+ insn_format22t263=insn_format22t();
state._fsp--;
- adaptor.addChild(root_0, insn_format22t255.getTree());
+ adaptor.addChild(root_0, insn_format22t263.getTree());
}
break;
case 24 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:833:5: insn_format22x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:820:5: insn_format22x
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format22x_in_instruction3902);
- insn_format22x256=insn_format22x();
+ pushFollow(FOLLOW_insn_format22x_in_instruction3858);
+ insn_format22x264=insn_format22x();
state._fsp--;
- adaptor.addChild(root_0, insn_format22x256.getTree());
+ adaptor.addChild(root_0, insn_format22x264.getTree());
}
break;
case 25 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:834:5: insn_format23x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:821:5: insn_format23x
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format23x_in_instruction3908);
- insn_format23x257=insn_format23x();
+ pushFollow(FOLLOW_insn_format23x_in_instruction3864);
+ insn_format23x265=insn_format23x();
state._fsp--;
- adaptor.addChild(root_0, insn_format23x257.getTree());
+ adaptor.addChild(root_0, insn_format23x265.getTree());
}
break;
case 26 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:835:5: insn_format30t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:822:5: insn_format30t
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format30t_in_instruction3914);
- insn_format30t258=insn_format30t();
+ pushFollow(FOLLOW_insn_format30t_in_instruction3870);
+ insn_format30t266=insn_format30t();
state._fsp--;
- adaptor.addChild(root_0, insn_format30t258.getTree());
+ adaptor.addChild(root_0, insn_format30t266.getTree());
}
break;
case 27 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:836:5: insn_format31c
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:823:5: insn_format31c
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format31c_in_instruction3920);
- insn_format31c259=insn_format31c();
+ pushFollow(FOLLOW_insn_format31c_in_instruction3876);
+ insn_format31c267=insn_format31c();
state._fsp--;
- adaptor.addChild(root_0, insn_format31c259.getTree());
+ adaptor.addChild(root_0, insn_format31c267.getTree());
}
break;
case 28 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:837:5: insn_format31i
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:824:5: insn_format31i
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format31i_in_instruction3926);
- insn_format31i260=insn_format31i();
+ pushFollow(FOLLOW_insn_format31i_in_instruction3882);
+ insn_format31i268=insn_format31i();
state._fsp--;
- adaptor.addChild(root_0, insn_format31i260.getTree());
+ adaptor.addChild(root_0, insn_format31i268.getTree());
}
break;
case 29 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:838:5: insn_format31t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:825:5: insn_format31t
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format31t_in_instruction3932);
- insn_format31t261=insn_format31t();
+ pushFollow(FOLLOW_insn_format31t_in_instruction3888);
+ insn_format31t269=insn_format31t();
state._fsp--;
- adaptor.addChild(root_0, insn_format31t261.getTree());
+ adaptor.addChild(root_0, insn_format31t269.getTree());
}
break;
case 30 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:839:5: insn_format32x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:826:5: insn_format32x
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format32x_in_instruction3938);
- insn_format32x262=insn_format32x();
+ pushFollow(FOLLOW_insn_format32x_in_instruction3894);
+ insn_format32x270=insn_format32x();
state._fsp--;
- adaptor.addChild(root_0, insn_format32x262.getTree());
+ adaptor.addChild(root_0, insn_format32x270.getTree());
}
break;
case 31 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:840:5: insn_format35c_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:827:5: insn_format35c_method
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format35c_method_in_instruction3944);
- insn_format35c_method263=insn_format35c_method();
+ pushFollow(FOLLOW_insn_format35c_method_in_instruction3900);
+ insn_format35c_method271=insn_format35c_method();
state._fsp--;
- adaptor.addChild(root_0, insn_format35c_method263.getTree());
+ adaptor.addChild(root_0, insn_format35c_method271.getTree());
}
break;
case 32 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:841:5: insn_format35c_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:828:5: insn_format35c_type
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format35c_type_in_instruction3950);
- insn_format35c_type264=insn_format35c_type();
+ pushFollow(FOLLOW_insn_format35c_type_in_instruction3906);
+ insn_format35c_type272=insn_format35c_type();
state._fsp--;
- adaptor.addChild(root_0, insn_format35c_type264.getTree());
+ adaptor.addChild(root_0, insn_format35c_type272.getTree());
}
break;
case 33 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:842:5: insn_format35c_method_odex
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:829:5: insn_format35c_method_odex
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format35c_method_odex_in_instruction3956);
- insn_format35c_method_odex265=insn_format35c_method_odex();
+ pushFollow(FOLLOW_insn_format35c_method_odex_in_instruction3912);
+ insn_format35c_method_odex273=insn_format35c_method_odex();
state._fsp--;
- adaptor.addChild(root_0, insn_format35c_method_odex265.getTree());
+ adaptor.addChild(root_0, insn_format35c_method_odex273.getTree());
}
break;
case 34 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:843:5: insn_format35mi_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:830:5: insn_format35mi_method
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format35mi_method_in_instruction3962);
- insn_format35mi_method266=insn_format35mi_method();
+ pushFollow(FOLLOW_insn_format35mi_method_in_instruction3918);
+ insn_format35mi_method274=insn_format35mi_method();
state._fsp--;
- adaptor.addChild(root_0, insn_format35mi_method266.getTree());
+ adaptor.addChild(root_0, insn_format35mi_method274.getTree());
}
break;
case 35 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:844:5: insn_format35ms_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:831:5: insn_format35ms_method
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format35ms_method_in_instruction3968);
- insn_format35ms_method267=insn_format35ms_method();
+ pushFollow(FOLLOW_insn_format35ms_method_in_instruction3924);
+ insn_format35ms_method275=insn_format35ms_method();
state._fsp--;
- adaptor.addChild(root_0, insn_format35ms_method267.getTree());
+ adaptor.addChild(root_0, insn_format35ms_method275.getTree());
}
break;
case 36 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:845:5: insn_format3rc_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:832:5: insn_format3rc_method
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format3rc_method_in_instruction3974);
- insn_format3rc_method268=insn_format3rc_method();
+ pushFollow(FOLLOW_insn_format3rc_method_in_instruction3930);
+ insn_format3rc_method276=insn_format3rc_method();
state._fsp--;
- adaptor.addChild(root_0, insn_format3rc_method268.getTree());
+ adaptor.addChild(root_0, insn_format3rc_method276.getTree());
}
break;
case 37 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:846:5: insn_format3rc_method_odex
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:833:5: insn_format3rc_method_odex
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format3rc_method_odex_in_instruction3980);
- insn_format3rc_method_odex269=insn_format3rc_method_odex();
+ pushFollow(FOLLOW_insn_format3rc_method_odex_in_instruction3936);
+ insn_format3rc_method_odex277=insn_format3rc_method_odex();
state._fsp--;
- adaptor.addChild(root_0, insn_format3rc_method_odex269.getTree());
+ adaptor.addChild(root_0, insn_format3rc_method_odex277.getTree());
}
break;
case 38 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:847:5: insn_format3rc_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:834:5: insn_format3rc_type
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format3rc_type_in_instruction3986);
- insn_format3rc_type270=insn_format3rc_type();
+ pushFollow(FOLLOW_insn_format3rc_type_in_instruction3942);
+ insn_format3rc_type278=insn_format3rc_type();
state._fsp--;
- adaptor.addChild(root_0, insn_format3rc_type270.getTree());
+ adaptor.addChild(root_0, insn_format3rc_type278.getTree());
}
break;
case 39 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:848:5: insn_format3rmi_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:835:5: insn_format3rmi_method
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format3rmi_method_in_instruction3992);
- insn_format3rmi_method271=insn_format3rmi_method();
+ pushFollow(FOLLOW_insn_format3rmi_method_in_instruction3948);
+ insn_format3rmi_method279=insn_format3rmi_method();
state._fsp--;
- adaptor.addChild(root_0, insn_format3rmi_method271.getTree());
+ adaptor.addChild(root_0, insn_format3rmi_method279.getTree());
}
break;
case 40 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:849:5: insn_format3rms_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:836:5: insn_format3rms_method
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format3rms_method_in_instruction3998);
- insn_format3rms_method272=insn_format3rms_method();
+ pushFollow(FOLLOW_insn_format3rms_method_in_instruction3954);
+ insn_format3rms_method280=insn_format3rms_method();
state._fsp--;
- adaptor.addChild(root_0, insn_format3rms_method272.getTree());
+ adaptor.addChild(root_0, insn_format3rms_method280.getTree());
}
break;
case 41 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:850:5: insn_format51l
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:837:5: insn_format51l
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_format51l_in_instruction4004);
- insn_format51l273=insn_format51l();
+ pushFollow(FOLLOW_insn_format51l_in_instruction3960);
+ insn_format51l281=insn_format51l();
state._fsp--;
- adaptor.addChild(root_0, insn_format51l273.getTree());
+ adaptor.addChild(root_0, insn_format51l281.getTree());
}
break;
case 42 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:851:5: insn_array_data_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:838:5: insn_array_data_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_array_data_directive_in_instruction4010);
- insn_array_data_directive274=insn_array_data_directive();
+ pushFollow(FOLLOW_insn_array_data_directive_in_instruction3966);
+ insn_array_data_directive282=insn_array_data_directive();
state._fsp--;
- adaptor.addChild(root_0, insn_array_data_directive274.getTree());
+ adaptor.addChild(root_0, insn_array_data_directive282.getTree());
}
break;
case 43 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:852:5: insn_packed_switch_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:839:5: insn_packed_switch_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction4016);
- insn_packed_switch_directive275=insn_packed_switch_directive();
+ pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction3972);
+ insn_packed_switch_directive283=insn_packed_switch_directive();
state._fsp--;
- adaptor.addChild(root_0, insn_packed_switch_directive275.getTree());
+ adaptor.addChild(root_0, insn_packed_switch_directive283.getTree());
}
break;
case 44 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:853:5: insn_sparse_switch_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:840:5: insn_sparse_switch_directive
{
root_0 = (CommonTree)adaptor.nil();
- pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction4022);
- insn_sparse_switch_directive276=insn_sparse_switch_directive();
+ pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction3978);
+ insn_sparse_switch_directive284=insn_sparse_switch_directive();
state._fsp--;
- adaptor.addChild(root_0, insn_sparse_switch_directive276.getTree());
+ adaptor.addChild(root_0, insn_sparse_switch_directive284.getTree());
}
break;
@@ -12714,46 +10035,46 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format10t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:855: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/antlr3/smaliParser.g:842: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_FORMAT10t277=null;
- ParserRuleReturnScope label_ref278 =null;
+ Token INSTRUCTION_FORMAT10t285=null;
+ ParserRuleReturnScope label_ref286 =null;
- CommonTree INSTRUCTION_FORMAT10t277_tree=null;
+ CommonTree INSTRUCTION_FORMAT10t285_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10t");
RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:856:3: ( INSTRUCTION_FORMAT10t label_ref -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:858:5: INSTRUCTION_FORMAT10t label_ref
+ // /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
{
- INSTRUCTION_FORMAT10t277=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t4042);
- stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t277);
+ INSTRUCTION_FORMAT10t285=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t3998);
+ stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t285);
- pushFollow(FOLLOW_label_ref_in_insn_format10t4044);
- label_ref278=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_format10t4000);
+ label_ref286=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref278.getTree());
+ stream_label_ref.add(label_ref286.getTree());
// AST REWRITE
- // elements: INSTRUCTION_FORMAT10t, label_ref
- // token labels:
+ // elements: label_ref, INSTRUCTION_FORMAT10t
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 859:5: -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref )
+ // 846:5: -> ^( I_STATEMENT_FORMAT10t[$start, \"I_STATEMENT_FORMAT10t\"] INSTRUCTION_FORMAT10t label_ref )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:859:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT10t, (retval.start), "I_STATEMENT_FORMAT10t"), root_1);
@@ -12796,39 +10117,39 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format10x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:861:1: insn_format10x : INSTRUCTION_FORMAT10x -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_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 ) ;
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_FORMAT10x279=null;
+ Token INSTRUCTION_FORMAT10x287=null;
- CommonTree INSTRUCTION_FORMAT10x279_tree=null;
+ CommonTree INSTRUCTION_FORMAT10x287_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10x");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:862:3: ( INSTRUCTION_FORMAT10x -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:863:5: INSTRUCTION_FORMAT10x
+ // /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
{
- INSTRUCTION_FORMAT10x279=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x4074);
- stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x279);
+ INSTRUCTION_FORMAT10x287=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x4030);
+ stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x287);
// AST REWRITE
// elements: INSTRUCTION_FORMAT10x
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 864:5: -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x )
+ // 851:5: -> ^( I_STATEMENT_FORMAT10x[$start, \"I_STATEMENT_FORMAT10x\"] INSTRUCTION_FORMAT10x )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:864:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT10x, (retval.start), "I_STATEMENT_FORMAT10x"), root_1);
@@ -12870,31 +10191,31 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format10x_odex"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:866:1: insn_format10x_odex : INSTRUCTION_FORMAT10x_ODEX ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:853: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_ODEX280=null;
+ Token INSTRUCTION_FORMAT10x_ODEX288=null;
- CommonTree INSTRUCTION_FORMAT10x_ODEX280_tree=null;
+ CommonTree INSTRUCTION_FORMAT10x_ODEX288_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:867:3: ( INSTRUCTION_FORMAT10x_ODEX )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:868:5: INSTRUCTION_FORMAT10x_ODEX
+ // /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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT10x_ODEX280=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_insn_format10x_odex4102);
- INSTRUCTION_FORMAT10x_ODEX280_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT10x_ODEX280);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT10x_ODEX280_tree);
+ 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);
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT10x_ODEX280!=null?INSTRUCTION_FORMAT10x_ODEX280.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT10x_ODEX288!=null?INSTRUCTION_FORMAT10x_ODEX288.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -12924,58 +10245,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format11n"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:873: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/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 ) ;
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_FORMAT11n281=null;
- Token REGISTER282=null;
- Token COMMA283=null;
- ParserRuleReturnScope integral_literal284 =null;
+ Token INSTRUCTION_FORMAT11n289=null;
+ Token REGISTER290=null;
+ Token COMMA291=null;
+ ParserRuleReturnScope integral_literal292 =null;
- CommonTree INSTRUCTION_FORMAT11n281_tree=null;
- CommonTree REGISTER282_tree=null;
- CommonTree COMMA283_tree=null;
+ CommonTree INSTRUCTION_FORMAT11n289_tree=null;
+ CommonTree REGISTER290_tree=null;
+ CommonTree COMMA291_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:874:3: ( INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:875:5: INSTRUCTION_FORMAT11n REGISTER COMMA integral_literal
+ // /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
{
- INSTRUCTION_FORMAT11n281=(Token)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n4123);
- stream_INSTRUCTION_FORMAT11n.add(INSTRUCTION_FORMAT11n281);
+ INSTRUCTION_FORMAT11n289=(Token)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n4079);
+ stream_INSTRUCTION_FORMAT11n.add(INSTRUCTION_FORMAT11n289);
- REGISTER282=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n4125);
- stream_REGISTER.add(REGISTER282);
+ REGISTER290=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n4081);
+ stream_REGISTER.add(REGISTER290);
- COMMA283=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format11n4127);
- stream_COMMA.add(COMMA283);
+ COMMA291=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format11n4083);
+ stream_COMMA.add(COMMA291);
- pushFollow(FOLLOW_integral_literal_in_insn_format11n4129);
- integral_literal284=integral_literal();
+ pushFollow(FOLLOW_integral_literal_in_insn_format11n4085);
+ integral_literal292=integral_literal();
state._fsp--;
- stream_integral_literal.add(integral_literal284.getTree());
+ stream_integral_literal.add(integral_literal292.getTree());
// AST REWRITE
// elements: REGISTER, integral_literal, INSTRUCTION_FORMAT11n
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 876:5: -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal )
+ // 863:5: -> ^( I_STATEMENT_FORMAT11n[$start, \"I_STATEMENT_FORMAT11n\"] INSTRUCTION_FORMAT11n REGISTER integral_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:876:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT11n, (retval.start), "I_STATEMENT_FORMAT11n"), root_1);
@@ -13019,45 +10340,45 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format11x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:878: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/antlr3/smaliParser.g:865: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_FORMAT11x285=null;
- Token REGISTER286=null;
+ Token INSTRUCTION_FORMAT11x293=null;
+ Token REGISTER294=null;
- CommonTree INSTRUCTION_FORMAT11x285_tree=null;
- CommonTree REGISTER286_tree=null;
+ CommonTree INSTRUCTION_FORMAT11x293_tree=null;
+ CommonTree REGISTER294_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT11x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT11x");
RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:879:3: ( INSTRUCTION_FORMAT11x REGISTER -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:880:5: INSTRUCTION_FORMAT11x REGISTER
+ // /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
{
- INSTRUCTION_FORMAT11x285=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x4161);
- stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x285);
+ INSTRUCTION_FORMAT11x293=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x4117);
+ stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x293);
- REGISTER286=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x4163);
- stream_REGISTER.add(REGISTER286);
+ REGISTER294=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x4119);
+ stream_REGISTER.add(REGISTER294);
// AST REWRITE
- // elements: REGISTER, INSTRUCTION_FORMAT11x
- // token labels:
+ // elements: INSTRUCTION_FORMAT11x, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 881:5: -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER )
+ // 868:5: -> ^( I_STATEMENT_FORMAT11x[$start, \"I_STATEMENT_FORMAT11x\"] INSTRUCTION_FORMAT11x REGISTER )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:881:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT11x, (retval.start), "I_STATEMENT_FORMAT11x"), root_1);
@@ -13100,57 +10421,57 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format12x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:883: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/antlr3/smaliParser.g:870: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 REGISTER288=null;
- Token COMMA289=null;
- Token REGISTER290=null;
- ParserRuleReturnScope instruction_format12x287 =null;
+ Token REGISTER296=null;
+ Token COMMA297=null;
+ Token REGISTER298=null;
+ ParserRuleReturnScope instruction_format12x295 =null;
- CommonTree REGISTER288_tree=null;
- CommonTree COMMA289_tree=null;
- CommonTree REGISTER290_tree=null;
+ CommonTree REGISTER296_tree=null;
+ CommonTree COMMA297_tree=null;
+ CommonTree REGISTER298_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:884:3: ( instruction_format12x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:885:5: instruction_format12x REGISTER COMMA REGISTER
+ // /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
{
- pushFollow(FOLLOW_instruction_format12x_in_insn_format12x4193);
- instruction_format12x287=instruction_format12x();
+ pushFollow(FOLLOW_instruction_format12x_in_insn_format12x4149);
+ instruction_format12x295=instruction_format12x();
state._fsp--;
- stream_instruction_format12x.add(instruction_format12x287.getTree());
- REGISTER288=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4195);
- stream_REGISTER.add(REGISTER288);
+ stream_instruction_format12x.add(instruction_format12x295.getTree());
+ REGISTER296=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4151);
+ stream_REGISTER.add(REGISTER296);
- COMMA289=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format12x4197);
- stream_COMMA.add(COMMA289);
+ COMMA297=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format12x4153);
+ stream_COMMA.add(COMMA297);
- REGISTER290=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4199);
- stream_REGISTER.add(REGISTER290);
+ REGISTER298=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x4155);
+ stream_REGISTER.add(REGISTER298);
// AST REWRITE
- // elements: REGISTER, REGISTER, instruction_format12x
- // token labels:
+ // elements: REGISTER, instruction_format12x, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 886:5: -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER )
+ // 873:5: -> ^( I_STATEMENT_FORMAT12x[$start, \"I_STATEMENT_FORMAT12x\"] instruction_format12x REGISTER REGISTER )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:886:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT12x, (retval.start), "I_STATEMENT_FORMAT12x"), root_1);
@@ -13194,63 +10515,63 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format20bc"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:888: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/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 ) ;
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_FORMAT20bc291=null;
- Token VERIFICATION_ERROR_TYPE292=null;
- Token COMMA293=null;
- ParserRuleReturnScope verification_error_reference294 =null;
+ Token INSTRUCTION_FORMAT20bc299=null;
+ Token VERIFICATION_ERROR_TYPE300=null;
+ Token COMMA301=null;
+ ParserRuleReturnScope verification_error_reference302 =null;
- CommonTree INSTRUCTION_FORMAT20bc291_tree=null;
- CommonTree VERIFICATION_ERROR_TYPE292_tree=null;
- CommonTree COMMA293_tree=null;
+ CommonTree INSTRUCTION_FORMAT20bc299_tree=null;
+ CommonTree VERIFICATION_ERROR_TYPE300_tree=null;
+ CommonTree COMMA301_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:889:3: ( INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:890:5: INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE COMMA verification_error_reference
+ // /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
{
- INSTRUCTION_FORMAT20bc291=(Token)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc4231);
- stream_INSTRUCTION_FORMAT20bc.add(INSTRUCTION_FORMAT20bc291);
+ INSTRUCTION_FORMAT20bc299=(Token)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc4187);
+ stream_INSTRUCTION_FORMAT20bc.add(INSTRUCTION_FORMAT20bc299);
- VERIFICATION_ERROR_TYPE292=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_insn_format20bc4233);
- stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE292);
+ VERIFICATION_ERROR_TYPE300=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_insn_format20bc4189);
+ stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE300);
- COMMA293=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format20bc4235);
- stream_COMMA.add(COMMA293);
+ COMMA301=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format20bc4191);
+ stream_COMMA.add(COMMA301);
- pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc4237);
- verification_error_reference294=verification_error_reference();
+ pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc4193);
+ verification_error_reference302=verification_error_reference();
state._fsp--;
- stream_verification_error_reference.add(verification_error_reference294.getTree());
+ stream_verification_error_reference.add(verification_error_reference302.getTree());
- if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc291!=null?INSTRUCTION_FORMAT20bc291.getText():null)) == null || apiLevel >= 14) {
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT20bc291!=null?INSTRUCTION_FORMAT20bc291.getText():null));
+ if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc299!=null?INSTRUCTION_FORMAT20bc299.getText():null)) == null || apiLevel >= 14) {
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT20bc299!=null?INSTRUCTION_FORMAT20bc299.getText():null));
}
-
+
// AST REWRITE
- // elements: VERIFICATION_ERROR_TYPE, verification_error_reference, INSTRUCTION_FORMAT20bc
- // token labels:
+ // elements: INSTRUCTION_FORMAT20bc, verification_error_reference, VERIFICATION_ERROR_TYPE
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 896:5: -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference )
+ // 883:5: -> ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc VERIFICATION_ERROR_TYPE verification_error_reference )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:896:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT20bc, "I_STATEMENT_FORMAT20bc"), root_1);
@@ -13294,46 +10615,46 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format20t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:898: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/antlr3/smaliParser.g:885: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_FORMAT20t295=null;
- ParserRuleReturnScope label_ref296 =null;
+ Token INSTRUCTION_FORMAT20t303=null;
+ ParserRuleReturnScope label_ref304 =null;
- CommonTree INSTRUCTION_FORMAT20t295_tree=null;
+ CommonTree INSTRUCTION_FORMAT20t303_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT20t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT20t");
RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:899:3: ( INSTRUCTION_FORMAT20t label_ref -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:900:5: INSTRUCTION_FORMAT20t label_ref
+ // /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
{
- INSTRUCTION_FORMAT20t295=(Token)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t4274);
- stream_INSTRUCTION_FORMAT20t.add(INSTRUCTION_FORMAT20t295);
+ INSTRUCTION_FORMAT20t303=(Token)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t4230);
+ stream_INSTRUCTION_FORMAT20t.add(INSTRUCTION_FORMAT20t303);
- pushFollow(FOLLOW_label_ref_in_insn_format20t4276);
- label_ref296=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_format20t4232);
+ label_ref304=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref296.getTree());
+ stream_label_ref.add(label_ref304.getTree());
// AST REWRITE
// elements: INSTRUCTION_FORMAT20t, label_ref
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 901:5: -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref )
+ // 888:5: -> ^( I_STATEMENT_FORMAT20t[$start, \"I_STATEMENT_FORMAT20t\"] INSTRUCTION_FORMAT20t label_ref )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:901:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT20t, (retval.start), "I_STATEMENT_FORMAT20t"), root_1);
@@ -13376,64 +10697,64 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21c_field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:903:1: insn_format21c_field : INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER fully_qualified_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 ) ;
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_FIELD297=null;
- Token REGISTER298=null;
- Token COMMA299=null;
- ParserRuleReturnScope fully_qualified_field300 =null;
+ Token INSTRUCTION_FORMAT21c_FIELD305=null;
+ Token REGISTER306=null;
+ Token COMMA307=null;
+ ParserRuleReturnScope field_reference308 =null;
- CommonTree INSTRUCTION_FORMAT21c_FIELD297_tree=null;
- CommonTree REGISTER298_tree=null;
- CommonTree COMMA299_tree=null;
+ CommonTree INSTRUCTION_FORMAT21c_FIELD305_tree=null;
+ CommonTree REGISTER306_tree=null;
+ CommonTree COMMA307_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_fully_qualified_field=new RewriteRuleSubtreeStream(adaptor,"rule fully_qualified_field");
+ RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:904:3: ( INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:905:5: INSTRUCTION_FORMAT21c_FIELD REGISTER COMMA fully_qualified_field
+ // /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
{
- INSTRUCTION_FORMAT21c_FIELD297=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_insn_format21c_field4306);
- stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD297);
+ 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);
- REGISTER298=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field4308);
- stream_REGISTER.add(REGISTER298);
+ REGISTER306=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field4264);
+ stream_REGISTER.add(REGISTER306);
- COMMA299=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field4310);
- stream_COMMA.add(COMMA299);
+ COMMA307=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field4266);
+ stream_COMMA.add(COMMA307);
- pushFollow(FOLLOW_fully_qualified_field_in_insn_format21c_field4312);
- fully_qualified_field300=fully_qualified_field();
+ pushFollow(FOLLOW_field_reference_in_insn_format21c_field4268);
+ field_reference308=field_reference();
state._fsp--;
- stream_fully_qualified_field.add(fully_qualified_field300.getTree());
+ stream_field_reference.add(field_reference308.getTree());
// AST REWRITE
- // elements: fully_qualified_field, REGISTER, INSTRUCTION_FORMAT21c_FIELD
- // token labels:
+ // elements: field_reference, INSTRUCTION_FORMAT21c_FIELD, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 906:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER fully_qualified_field )
+ // 893:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER field_reference )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:906:8: ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD REGISTER fully_qualified_field )
+ // /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 )
{
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);
adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT21c_FIELD.nextNode());
adaptor.addChild(root_1, stream_REGISTER.nextNode());
- adaptor.addChild(root_1, stream_fully_qualified_field.nextTree());
+ adaptor.addChild(root_1, stream_field_reference.nextTree());
adaptor.addChild(root_0, root_1);
}
@@ -13471,69 +10792,69 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21c_field_odex"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:908:1: insn_format21c_field_odex : INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER fully_qualified_field ) ;
+ // /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 ) ;
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_ODEX301=null;
- Token REGISTER302=null;
- Token COMMA303=null;
- ParserRuleReturnScope fully_qualified_field304 =null;
+ Token INSTRUCTION_FORMAT21c_FIELD_ODEX309=null;
+ Token REGISTER310=null;
+ Token COMMA311=null;
+ ParserRuleReturnScope field_reference312 =null;
- CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX301_tree=null;
- CommonTree REGISTER302_tree=null;
- CommonTree COMMA303_tree=null;
+ CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX309_tree=null;
+ CommonTree REGISTER310_tree=null;
+ CommonTree COMMA311_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_fully_qualified_field=new RewriteRuleSubtreeStream(adaptor,"rule fully_qualified_field");
+ RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:909:3: ( INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:910:5: INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER COMMA fully_qualified_field
+ // /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
{
- INSTRUCTION_FORMAT21c_FIELD_ODEX301=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_insn_format21c_field_odex4344);
- stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX301);
+ 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);
- REGISTER302=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field_odex4346);
- stream_REGISTER.add(REGISTER302);
+ REGISTER310=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field_odex4302);
+ stream_REGISTER.add(REGISTER310);
- COMMA303=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field_odex4348);
- stream_COMMA.add(COMMA303);
+ COMMA311=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_field_odex4304);
+ stream_COMMA.add(COMMA311);
- pushFollow(FOLLOW_fully_qualified_field_in_insn_format21c_field_odex4350);
- fully_qualified_field304=fully_qualified_field();
+ pushFollow(FOLLOW_field_reference_in_insn_format21c_field_odex4306);
+ field_reference312=field_reference();
state._fsp--;
- stream_fully_qualified_field.add(fully_qualified_field304.getTree());
+ stream_field_reference.add(field_reference312.getTree());
- if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_FIELD_ODEX301!=null?INSTRUCTION_FORMAT21c_FIELD_ODEX301.getText():null)) == null || apiLevel >= 14) {
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT21c_FIELD_ODEX301!=null?INSTRUCTION_FORMAT21c_FIELD_ODEX301.getText():null));
+ 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));
}
-
+
// AST REWRITE
- // elements: fully_qualified_field, REGISTER, INSTRUCTION_FORMAT21c_FIELD_ODEX
- // token labels:
+ // elements: REGISTER, INSTRUCTION_FORMAT21c_FIELD_ODEX, field_reference
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 916:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER fully_qualified_field )
+ // 903:5: -> ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER field_reference )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:916:8: ^( I_STATEMENT_FORMAT21c_FIELD[$start, \"I_STATEMENT_FORMAT21c_FIELD\"] INSTRUCTION_FORMAT21c_FIELD_ODEX REGISTER fully_qualified_field )
+ // /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 )
{
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);
adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.nextNode());
adaptor.addChild(root_1, stream_REGISTER.nextNode());
- adaptor.addChild(root_1, stream_fully_qualified_field.nextTree());
+ adaptor.addChild(root_1, stream_field_reference.nextTree());
adaptor.addChild(root_0, root_1);
}
@@ -13571,57 +10892,57 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21c_string"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:918: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/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 ) ;
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_STRING305=null;
- Token REGISTER306=null;
- Token COMMA307=null;
- Token STRING_LITERAL308=null;
+ Token INSTRUCTION_FORMAT21c_STRING313=null;
+ Token REGISTER314=null;
+ Token COMMA315=null;
+ Token STRING_LITERAL316=null;
- CommonTree INSTRUCTION_FORMAT21c_STRING305_tree=null;
- CommonTree REGISTER306_tree=null;
- CommonTree COMMA307_tree=null;
- CommonTree STRING_LITERAL308_tree=null;
+ CommonTree INSTRUCTION_FORMAT21c_STRING313_tree=null;
+ CommonTree REGISTER314_tree=null;
+ CommonTree COMMA315_tree=null;
+ CommonTree STRING_LITERAL316_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:919:3: ( INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:920:5: INSTRUCTION_FORMAT21c_STRING REGISTER COMMA STRING_LITERAL
+ // /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
{
- INSTRUCTION_FORMAT21c_STRING305=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string4388);
- stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING305);
+ 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);
- REGISTER306=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string4390);
- stream_REGISTER.add(REGISTER306);
+ REGISTER314=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string4346);
+ stream_REGISTER.add(REGISTER314);
- COMMA307=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_string4392);
- stream_COMMA.add(COMMA307);
+ COMMA315=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_string4348);
+ stream_COMMA.add(COMMA315);
- STRING_LITERAL308=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format21c_string4394);
- stream_STRING_LITERAL.add(STRING_LITERAL308);
+ STRING_LITERAL316=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format21c_string4350);
+ stream_STRING_LITERAL.add(STRING_LITERAL316);
// AST REWRITE
- // elements: REGISTER, STRING_LITERAL, INSTRUCTION_FORMAT21c_STRING
- // token labels:
+ // elements: INSTRUCTION_FORMAT21c_STRING, REGISTER, STRING_LITERAL
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 921:5: -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL )
+ // 908:5: -> ^( I_STATEMENT_FORMAT21c_STRING[$start, \"I_STATEMENT_FORMAT21c_STRING\"] INSTRUCTION_FORMAT21c_STRING REGISTER STRING_LITERAL )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:921: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/antlr3/smaliParser.g:908: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);
@@ -13665,58 +10986,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21c_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:923: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/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 ) ;
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_TYPE309=null;
- Token REGISTER310=null;
- Token COMMA311=null;
- ParserRuleReturnScope nonvoid_type_descriptor312 =null;
+ Token INSTRUCTION_FORMAT21c_TYPE317=null;
+ Token REGISTER318=null;
+ Token COMMA319=null;
+ ParserRuleReturnScope nonvoid_type_descriptor320 =null;
- CommonTree INSTRUCTION_FORMAT21c_TYPE309_tree=null;
- CommonTree REGISTER310_tree=null;
- CommonTree COMMA311_tree=null;
+ CommonTree INSTRUCTION_FORMAT21c_TYPE317_tree=null;
+ CommonTree REGISTER318_tree=null;
+ CommonTree COMMA319_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:924:3: ( INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:925:5: INSTRUCTION_FORMAT21c_TYPE REGISTER COMMA nonvoid_type_descriptor
+ // /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
{
- INSTRUCTION_FORMAT21c_TYPE309=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type4426);
- stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE309);
+ 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);
- REGISTER310=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type4428);
- stream_REGISTER.add(REGISTER310);
+ REGISTER318=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type4384);
+ stream_REGISTER.add(REGISTER318);
- COMMA311=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_type4430);
- stream_COMMA.add(COMMA311);
+ COMMA319=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21c_type4386);
+ stream_COMMA.add(COMMA319);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type4432);
- nonvoid_type_descriptor312=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type4388);
+ nonvoid_type_descriptor320=nonvoid_type_descriptor();
state._fsp--;
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor312.getTree());
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor320.getTree());
// AST REWRITE
- // elements: INSTRUCTION_FORMAT21c_TYPE, nonvoid_type_descriptor, REGISTER
- // token labels:
+ // elements: nonvoid_type_descriptor, REGISTER, INSTRUCTION_FORMAT21c_TYPE
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 926:5: -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor )
+ // 913:5: -> ^( I_STATEMENT_FORMAT21c_TYPE[$start, \"I_STATEMENT_FORMAT21c\"] INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:926: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/antlr3/smaliParser.g:913: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);
@@ -13760,58 +11081,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21ih"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:928: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/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 ) ;
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_FORMAT21ih313=null;
- Token REGISTER314=null;
- Token COMMA315=null;
- ParserRuleReturnScope fixed_32bit_literal316 =null;
+ Token INSTRUCTION_FORMAT21ih321=null;
+ Token REGISTER322=null;
+ Token COMMA323=null;
+ ParserRuleReturnScope fixed_32bit_literal324 =null;
- CommonTree INSTRUCTION_FORMAT21ih313_tree=null;
- CommonTree REGISTER314_tree=null;
- CommonTree COMMA315_tree=null;
+ CommonTree INSTRUCTION_FORMAT21ih321_tree=null;
+ CommonTree REGISTER322_tree=null;
+ CommonTree COMMA323_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:929:3: ( INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:930:5: INSTRUCTION_FORMAT21ih REGISTER COMMA fixed_32bit_literal
+ // /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
{
- INSTRUCTION_FORMAT21ih313=(Token)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih4464);
- stream_INSTRUCTION_FORMAT21ih.add(INSTRUCTION_FORMAT21ih313);
+ INSTRUCTION_FORMAT21ih321=(Token)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih4420);
+ stream_INSTRUCTION_FORMAT21ih.add(INSTRUCTION_FORMAT21ih321);
- REGISTER314=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih4466);
- stream_REGISTER.add(REGISTER314);
+ REGISTER322=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih4422);
+ stream_REGISTER.add(REGISTER322);
- COMMA315=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21ih4468);
- stream_COMMA.add(COMMA315);
+ COMMA323=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21ih4424);
+ stream_COMMA.add(COMMA323);
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih4470);
- fixed_32bit_literal316=fixed_32bit_literal();
+ pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih4426);
+ fixed_32bit_literal324=fixed_32bit_literal();
state._fsp--;
- stream_fixed_32bit_literal.add(fixed_32bit_literal316.getTree());
+ stream_fixed_32bit_literal.add(fixed_32bit_literal324.getTree());
// AST REWRITE
- // elements: REGISTER, fixed_32bit_literal, INSTRUCTION_FORMAT21ih
- // token labels:
+ // elements: REGISTER, INSTRUCTION_FORMAT21ih, fixed_32bit_literal
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 931:5: -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal )
+ // 918:5: -> ^( I_STATEMENT_FORMAT21ih[$start, \"I_STATEMENT_FORMAT21ih\"] INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:931:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21ih, (retval.start), "I_STATEMENT_FORMAT21ih"), root_1);
@@ -13855,58 +11176,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21lh"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:933: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/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 ) ;
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_FORMAT21lh317=null;
- Token REGISTER318=null;
- Token COMMA319=null;
- ParserRuleReturnScope fixed_32bit_literal320 =null;
+ Token INSTRUCTION_FORMAT21lh325=null;
+ Token REGISTER326=null;
+ Token COMMA327=null;
+ ParserRuleReturnScope fixed_32bit_literal328 =null;
- CommonTree INSTRUCTION_FORMAT21lh317_tree=null;
- CommonTree REGISTER318_tree=null;
- CommonTree COMMA319_tree=null;
+ CommonTree INSTRUCTION_FORMAT21lh325_tree=null;
+ CommonTree REGISTER326_tree=null;
+ CommonTree COMMA327_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:934:3: ( INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:935:5: INSTRUCTION_FORMAT21lh REGISTER COMMA fixed_32bit_literal
+ // /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
{
- INSTRUCTION_FORMAT21lh317=(Token)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh4502);
- stream_INSTRUCTION_FORMAT21lh.add(INSTRUCTION_FORMAT21lh317);
+ INSTRUCTION_FORMAT21lh325=(Token)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh4458);
+ stream_INSTRUCTION_FORMAT21lh.add(INSTRUCTION_FORMAT21lh325);
- REGISTER318=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh4504);
- stream_REGISTER.add(REGISTER318);
+ REGISTER326=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh4460);
+ stream_REGISTER.add(REGISTER326);
- COMMA319=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21lh4506);
- stream_COMMA.add(COMMA319);
+ COMMA327=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21lh4462);
+ stream_COMMA.add(COMMA327);
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21lh4508);
- fixed_32bit_literal320=fixed_32bit_literal();
+ pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21lh4464);
+ fixed_32bit_literal328=fixed_32bit_literal();
state._fsp--;
- stream_fixed_32bit_literal.add(fixed_32bit_literal320.getTree());
+ stream_fixed_32bit_literal.add(fixed_32bit_literal328.getTree());
// AST REWRITE
- // elements: REGISTER, fixed_32bit_literal, INSTRUCTION_FORMAT21lh
- // token labels:
+ // elements: INSTRUCTION_FORMAT21lh, fixed_32bit_literal, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 936:5: -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal )
+ // 923:5: -> ^( I_STATEMENT_FORMAT21lh[$start, \"I_STATEMENT_FORMAT21lh\"] INSTRUCTION_FORMAT21lh REGISTER fixed_32bit_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:936:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21lh, (retval.start), "I_STATEMENT_FORMAT21lh"), root_1);
@@ -13950,58 +11271,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21s"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:938: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/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 ) ;
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_FORMAT21s321=null;
- Token REGISTER322=null;
- Token COMMA323=null;
- ParserRuleReturnScope integral_literal324 =null;
+ Token INSTRUCTION_FORMAT21s329=null;
+ Token REGISTER330=null;
+ Token COMMA331=null;
+ ParserRuleReturnScope integral_literal332 =null;
- CommonTree INSTRUCTION_FORMAT21s321_tree=null;
- CommonTree REGISTER322_tree=null;
- CommonTree COMMA323_tree=null;
+ CommonTree INSTRUCTION_FORMAT21s329_tree=null;
+ CommonTree REGISTER330_tree=null;
+ CommonTree COMMA331_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:939:3: ( INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:940:5: INSTRUCTION_FORMAT21s REGISTER COMMA integral_literal
+ // /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
{
- INSTRUCTION_FORMAT21s321=(Token)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s4540);
- stream_INSTRUCTION_FORMAT21s.add(INSTRUCTION_FORMAT21s321);
+ INSTRUCTION_FORMAT21s329=(Token)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s4496);
+ stream_INSTRUCTION_FORMAT21s.add(INSTRUCTION_FORMAT21s329);
- REGISTER322=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s4542);
- stream_REGISTER.add(REGISTER322);
+ REGISTER330=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s4498);
+ stream_REGISTER.add(REGISTER330);
- COMMA323=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21s4544);
- stream_COMMA.add(COMMA323);
+ COMMA331=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21s4500);
+ stream_COMMA.add(COMMA331);
- pushFollow(FOLLOW_integral_literal_in_insn_format21s4546);
- integral_literal324=integral_literal();
+ pushFollow(FOLLOW_integral_literal_in_insn_format21s4502);
+ integral_literal332=integral_literal();
state._fsp--;
- stream_integral_literal.add(integral_literal324.getTree());
+ stream_integral_literal.add(integral_literal332.getTree());
// AST REWRITE
// elements: INSTRUCTION_FORMAT21s, integral_literal, REGISTER
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 941:5: -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal )
+ // 928:5: -> ^( I_STATEMENT_FORMAT21s[$start, \"I_STATEMENT_FORMAT21s\"] INSTRUCTION_FORMAT21s REGISTER integral_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:941:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21s, (retval.start), "I_STATEMENT_FORMAT21s"), root_1);
@@ -14045,58 +11366,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format21t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:943: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/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 ) ;
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_FORMAT21t325=null;
- Token REGISTER326=null;
- Token COMMA327=null;
- ParserRuleReturnScope label_ref328 =null;
+ Token INSTRUCTION_FORMAT21t333=null;
+ Token REGISTER334=null;
+ Token COMMA335=null;
+ ParserRuleReturnScope label_ref336 =null;
- CommonTree INSTRUCTION_FORMAT21t325_tree=null;
- CommonTree REGISTER326_tree=null;
- CommonTree COMMA327_tree=null;
+ CommonTree INSTRUCTION_FORMAT21t333_tree=null;
+ CommonTree REGISTER334_tree=null;
+ CommonTree COMMA335_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:944:3: ( INSTRUCTION_FORMAT21t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:945:5: INSTRUCTION_FORMAT21t REGISTER COMMA label_ref
+ // /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
{
- INSTRUCTION_FORMAT21t325=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t4578);
- stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t325);
+ INSTRUCTION_FORMAT21t333=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t4534);
+ stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t333);
- REGISTER326=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t4580);
- stream_REGISTER.add(REGISTER326);
+ REGISTER334=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t4536);
+ stream_REGISTER.add(REGISTER334);
- COMMA327=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21t4582);
- stream_COMMA.add(COMMA327);
+ COMMA335=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format21t4538);
+ stream_COMMA.add(COMMA335);
- pushFollow(FOLLOW_label_ref_in_insn_format21t4584);
- label_ref328=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_format21t4540);
+ label_ref336=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref328.getTree());
+ stream_label_ref.add(label_ref336.getTree());
// AST REWRITE
- // elements: INSTRUCTION_FORMAT21t, label_ref, REGISTER
- // token labels:
+ // elements: label_ref, REGISTER, INSTRUCTION_FORMAT21t
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 946:5: -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref )
+ // 933:5: -> ^( I_STATEMENT_FORMAT21t[$start, \"I_STATEMENT_FORMAT21t\"] INSTRUCTION_FORMAT21t REGISTER label_ref )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:946:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT21t, (retval.start), "I_STATEMENT_FORMAT21t"), root_1);
@@ -14140,68 +11461,68 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22b"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:948: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/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 ) ;
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_FORMAT22b329=null;
- Token REGISTER330=null;
- Token COMMA331=null;
- Token REGISTER332=null;
- Token COMMA333=null;
- ParserRuleReturnScope integral_literal334 =null;
+ Token INSTRUCTION_FORMAT22b337=null;
+ Token REGISTER338=null;
+ Token COMMA339=null;
+ Token REGISTER340=null;
+ Token COMMA341=null;
+ ParserRuleReturnScope integral_literal342 =null;
- CommonTree INSTRUCTION_FORMAT22b329_tree=null;
- CommonTree REGISTER330_tree=null;
- CommonTree COMMA331_tree=null;
- CommonTree REGISTER332_tree=null;
- CommonTree COMMA333_tree=null;
+ CommonTree INSTRUCTION_FORMAT22b337_tree=null;
+ CommonTree REGISTER338_tree=null;
+ CommonTree COMMA339_tree=null;
+ CommonTree REGISTER340_tree=null;
+ CommonTree COMMA341_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:949:3: ( INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:950:5: INSTRUCTION_FORMAT22b REGISTER COMMA REGISTER COMMA integral_literal
+ // /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
{
- INSTRUCTION_FORMAT22b329=(Token)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b4616);
- stream_INSTRUCTION_FORMAT22b.add(INSTRUCTION_FORMAT22b329);
+ INSTRUCTION_FORMAT22b337=(Token)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b4572);
+ stream_INSTRUCTION_FORMAT22b.add(INSTRUCTION_FORMAT22b337);
- REGISTER330=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4618);
- stream_REGISTER.add(REGISTER330);
+ REGISTER338=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4574);
+ stream_REGISTER.add(REGISTER338);
- COMMA331=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4620);
- stream_COMMA.add(COMMA331);
+ COMMA339=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4576);
+ stream_COMMA.add(COMMA339);
- REGISTER332=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4622);
- stream_REGISTER.add(REGISTER332);
+ REGISTER340=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b4578);
+ stream_REGISTER.add(REGISTER340);
- COMMA333=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4624);
- stream_COMMA.add(COMMA333);
+ COMMA341=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22b4580);
+ stream_COMMA.add(COMMA341);
- pushFollow(FOLLOW_integral_literal_in_insn_format22b4626);
- integral_literal334=integral_literal();
+ pushFollow(FOLLOW_integral_literal_in_insn_format22b4582);
+ integral_literal342=integral_literal();
state._fsp--;
- stream_integral_literal.add(integral_literal334.getTree());
+ stream_integral_literal.add(integral_literal342.getTree());
// AST REWRITE
- // elements: REGISTER, REGISTER, integral_literal, INSTRUCTION_FORMAT22b
- // token labels:
+ // elements: integral_literal, REGISTER, INSTRUCTION_FORMAT22b, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 951:5: -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal )
+ // 938:5: -> ^( I_STATEMENT_FORMAT22b[$start, \"I_STATEMENT_FORMAT22b\"] INSTRUCTION_FORMAT22b REGISTER REGISTER integral_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:951:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22b, (retval.start), "I_STATEMENT_FORMAT22b"), root_1);
@@ -14246,75 +11567,75 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22c_field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:953:1: insn_format22c_field : INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER fully_qualified_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 ) ;
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_FIELD335=null;
- Token REGISTER336=null;
- Token COMMA337=null;
- Token REGISTER338=null;
- Token COMMA339=null;
- ParserRuleReturnScope fully_qualified_field340 =null;
+ Token INSTRUCTION_FORMAT22c_FIELD343=null;
+ Token REGISTER344=null;
+ Token COMMA345=null;
+ Token REGISTER346=null;
+ Token COMMA347=null;
+ ParserRuleReturnScope field_reference348 =null;
- CommonTree INSTRUCTION_FORMAT22c_FIELD335_tree=null;
- CommonTree REGISTER336_tree=null;
- CommonTree COMMA337_tree=null;
- CommonTree REGISTER338_tree=null;
- CommonTree COMMA339_tree=null;
+ CommonTree INSTRUCTION_FORMAT22c_FIELD343_tree=null;
+ CommonTree REGISTER344_tree=null;
+ CommonTree COMMA345_tree=null;
+ CommonTree REGISTER346_tree=null;
+ CommonTree COMMA347_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_fully_qualified_field=new RewriteRuleSubtreeStream(adaptor,"rule fully_qualified_field");
+ RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:954:3: ( INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:955:5: INSTRUCTION_FORMAT22c_FIELD REGISTER COMMA REGISTER COMMA fully_qualified_field
+ // /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
{
- INSTRUCTION_FORMAT22c_FIELD335=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_insn_format22c_field4660);
- stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD335);
+ 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);
- REGISTER336=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4662);
- stream_REGISTER.add(REGISTER336);
+ REGISTER344=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4618);
+ stream_REGISTER.add(REGISTER344);
- COMMA337=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4664);
- stream_COMMA.add(COMMA337);
+ COMMA345=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4620);
+ stream_COMMA.add(COMMA345);
- REGISTER338=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4666);
- stream_REGISTER.add(REGISTER338);
+ REGISTER346=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field4622);
+ stream_REGISTER.add(REGISTER346);
- COMMA339=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4668);
- stream_COMMA.add(COMMA339);
+ COMMA347=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field4624);
+ stream_COMMA.add(COMMA347);
- pushFollow(FOLLOW_fully_qualified_field_in_insn_format22c_field4670);
- fully_qualified_field340=fully_qualified_field();
+ pushFollow(FOLLOW_field_reference_in_insn_format22c_field4626);
+ field_reference348=field_reference();
state._fsp--;
- stream_fully_qualified_field.add(fully_qualified_field340.getTree());
+ stream_field_reference.add(field_reference348.getTree());
// AST REWRITE
- // elements: fully_qualified_field, INSTRUCTION_FORMAT22c_FIELD, REGISTER, REGISTER
- // token labels:
+ // elements: REGISTER, field_reference, INSTRUCTION_FORMAT22c_FIELD, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 956:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER fully_qualified_field )
+ // 943:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER field_reference )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:956:8: ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD REGISTER REGISTER fully_qualified_field )
+ // /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 )
{
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);
adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT22c_FIELD.nextNode());
adaptor.addChild(root_1, stream_REGISTER.nextNode());
adaptor.addChild(root_1, stream_REGISTER.nextNode());
- adaptor.addChild(root_1, stream_fully_qualified_field.nextTree());
+ adaptor.addChild(root_1, stream_field_reference.nextTree());
adaptor.addChild(root_0, root_1);
}
@@ -14352,80 +11673,80 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22c_field_odex"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:958:1: insn_format22c_field_odex : INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER fully_qualified_field ) ;
+ // /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 ) ;
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_ODEX341=null;
- Token REGISTER342=null;
- Token COMMA343=null;
- Token REGISTER344=null;
- Token COMMA345=null;
- ParserRuleReturnScope fully_qualified_field346 =null;
+ Token INSTRUCTION_FORMAT22c_FIELD_ODEX349=null;
+ Token REGISTER350=null;
+ Token COMMA351=null;
+ Token REGISTER352=null;
+ Token COMMA353=null;
+ ParserRuleReturnScope field_reference354 =null;
- CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX341_tree=null;
- CommonTree REGISTER342_tree=null;
- CommonTree COMMA343_tree=null;
- CommonTree REGISTER344_tree=null;
- CommonTree COMMA345_tree=null;
+ CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX349_tree=null;
+ CommonTree REGISTER350_tree=null;
+ CommonTree COMMA351_tree=null;
+ CommonTree REGISTER352_tree=null;
+ CommonTree COMMA353_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_fully_qualified_field=new RewriteRuleSubtreeStream(adaptor,"rule fully_qualified_field");
+ RewriteRuleSubtreeStream stream_field_reference=new RewriteRuleSubtreeStream(adaptor,"rule field_reference");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:959:3: ( INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA fully_qualified_field -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:960:5: INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER COMMA REGISTER COMMA fully_qualified_field
+ // /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
{
- INSTRUCTION_FORMAT22c_FIELD_ODEX341=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_insn_format22c_field_odex4704);
- stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX341);
+ 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);
- REGISTER342=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4706);
- stream_REGISTER.add(REGISTER342);
+ REGISTER350=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4662);
+ stream_REGISTER.add(REGISTER350);
- COMMA343=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4708);
- stream_COMMA.add(COMMA343);
+ COMMA351=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4664);
+ stream_COMMA.add(COMMA351);
- REGISTER344=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4710);
- stream_REGISTER.add(REGISTER344);
+ REGISTER352=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field_odex4666);
+ stream_REGISTER.add(REGISTER352);
- COMMA345=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4712);
- stream_COMMA.add(COMMA345);
+ COMMA353=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_field_odex4668);
+ stream_COMMA.add(COMMA353);
- pushFollow(FOLLOW_fully_qualified_field_in_insn_format22c_field_odex4714);
- fully_qualified_field346=fully_qualified_field();
+ pushFollow(FOLLOW_field_reference_in_insn_format22c_field_odex4670);
+ field_reference354=field_reference();
state._fsp--;
- stream_fully_qualified_field.add(fully_qualified_field346.getTree());
+ stream_field_reference.add(field_reference354.getTree());
- if (!allowOdex || opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_FIELD_ODEX341!=null?INSTRUCTION_FORMAT22c_FIELD_ODEX341.getText():null)) == null || apiLevel >= 14) {
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT22c_FIELD_ODEX341!=null?INSTRUCTION_FORMAT22c_FIELD_ODEX341.getText():null));
+ 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));
}
-
+
// AST REWRITE
- // elements: REGISTER, INSTRUCTION_FORMAT22c_FIELD_ODEX, REGISTER, fully_qualified_field
- // token labels:
+ // elements: REGISTER, field_reference, REGISTER, INSTRUCTION_FORMAT22c_FIELD_ODEX
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 966:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER fully_qualified_field )
+ // 953:5: -> ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER field_reference )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:966:8: ^( I_STATEMENT_FORMAT22c_FIELD[$start, \"I_STATEMENT_FORMAT22c_FIELD\"] INSTRUCTION_FORMAT22c_FIELD_ODEX REGISTER REGISTER fully_qualified_field )
+ // /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 )
{
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);
adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.nextNode());
adaptor.addChild(root_1, stream_REGISTER.nextNode());
adaptor.addChild(root_1, stream_REGISTER.nextNode());
- adaptor.addChild(root_1, stream_fully_qualified_field.nextTree());
+ adaptor.addChild(root_1, stream_field_reference.nextTree());
adaptor.addChild(root_0, root_1);
}
@@ -14463,68 +11784,68 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22c_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:968: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/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 ) ;
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_TYPE347=null;
- Token REGISTER348=null;
- Token COMMA349=null;
- Token REGISTER350=null;
- Token COMMA351=null;
- ParserRuleReturnScope nonvoid_type_descriptor352 =null;
+ Token INSTRUCTION_FORMAT22c_TYPE355=null;
+ Token REGISTER356=null;
+ Token COMMA357=null;
+ Token REGISTER358=null;
+ Token COMMA359=null;
+ ParserRuleReturnScope nonvoid_type_descriptor360 =null;
- CommonTree INSTRUCTION_FORMAT22c_TYPE347_tree=null;
- CommonTree REGISTER348_tree=null;
- CommonTree COMMA349_tree=null;
- CommonTree REGISTER350_tree=null;
- CommonTree COMMA351_tree=null;
+ CommonTree INSTRUCTION_FORMAT22c_TYPE355_tree=null;
+ CommonTree REGISTER356_tree=null;
+ CommonTree COMMA357_tree=null;
+ CommonTree REGISTER358_tree=null;
+ CommonTree COMMA359_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:969: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 ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:970:5: INSTRUCTION_FORMAT22c_TYPE REGISTER COMMA REGISTER COMMA nonvoid_type_descriptor
+ // /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
{
- INSTRUCTION_FORMAT22c_TYPE347=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type4754);
- stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE347);
+ 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);
- REGISTER348=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4756);
- stream_REGISTER.add(REGISTER348);
+ REGISTER356=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4712);
+ stream_REGISTER.add(REGISTER356);
- COMMA349=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4758);
- stream_COMMA.add(COMMA349);
+ COMMA357=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4714);
+ stream_COMMA.add(COMMA357);
- REGISTER350=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4760);
- stream_REGISTER.add(REGISTER350);
+ REGISTER358=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type4716);
+ stream_REGISTER.add(REGISTER358);
- COMMA351=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4762);
- stream_COMMA.add(COMMA351);
+ COMMA359=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22c_type4718);
+ stream_COMMA.add(COMMA359);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type4764);
- nonvoid_type_descriptor352=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type4720);
+ nonvoid_type_descriptor360=nonvoid_type_descriptor();
state._fsp--;
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor352.getTree());
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor360.getTree());
// AST REWRITE
- // elements: REGISTER, nonvoid_type_descriptor, INSTRUCTION_FORMAT22c_TYPE, REGISTER
- // token labels:
+ // elements: REGISTER, nonvoid_type_descriptor, REGISTER, INSTRUCTION_FORMAT22c_TYPE
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 971:5: -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor )
+ // 958:5: -> ^( I_STATEMENT_FORMAT22c_TYPE[$start, \"I_STATEMENT_FORMAT22c_TYPE\"] INSTRUCTION_FORMAT22c_TYPE REGISTER REGISTER nonvoid_type_descriptor )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:971: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/antlr3/smaliParser.g:958: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);
@@ -14569,61 +11890,61 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22cs_field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:973:1: insn_format22cs_field : INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET ;
+ // /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 ;
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_FIELD353=null;
- Token REGISTER354=null;
- Token COMMA355=null;
- Token REGISTER356=null;
- Token COMMA357=null;
- Token FIELD_OFFSET358=null;
+ Token INSTRUCTION_FORMAT22cs_FIELD361=null;
+ Token REGISTER362=null;
+ Token COMMA363=null;
+ Token REGISTER364=null;
+ Token COMMA365=null;
+ Token FIELD_OFFSET366=null;
- CommonTree INSTRUCTION_FORMAT22cs_FIELD353_tree=null;
- CommonTree REGISTER354_tree=null;
- CommonTree COMMA355_tree=null;
- CommonTree REGISTER356_tree=null;
- CommonTree COMMA357_tree=null;
- CommonTree FIELD_OFFSET358_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:974:3: ( INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:975:5: INSTRUCTION_FORMAT22cs_FIELD REGISTER COMMA REGISTER COMMA FIELD_OFFSET
+ // /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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT22cs_FIELD353=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_insn_format22cs_field4798);
- INSTRUCTION_FORMAT22cs_FIELD353_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT22cs_FIELD353);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT22cs_FIELD353_tree);
+ 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);
- REGISTER354=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4800);
- REGISTER354_tree = (CommonTree)adaptor.create(REGISTER354);
- adaptor.addChild(root_0, REGISTER354_tree);
+ REGISTER362=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4756);
+ REGISTER362_tree = (CommonTree)adaptor.create(REGISTER362);
+ adaptor.addChild(root_0, REGISTER362_tree);
- COMMA355=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4802);
- COMMA355_tree = (CommonTree)adaptor.create(COMMA355);
- adaptor.addChild(root_0, COMMA355_tree);
+ COMMA363=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4758);
+ COMMA363_tree = (CommonTree)adaptor.create(COMMA363);
+ adaptor.addChild(root_0, COMMA363_tree);
- REGISTER356=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4804);
- REGISTER356_tree = (CommonTree)adaptor.create(REGISTER356);
- adaptor.addChild(root_0, REGISTER356_tree);
+ REGISTER364=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22cs_field4760);
+ REGISTER364_tree = (CommonTree)adaptor.create(REGISTER364);
+ adaptor.addChild(root_0, REGISTER364_tree);
- COMMA357=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4806);
- COMMA357_tree = (CommonTree)adaptor.create(COMMA357);
- adaptor.addChild(root_0, COMMA357_tree);
+ COMMA365=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22cs_field4762);
+ COMMA365_tree = (CommonTree)adaptor.create(COMMA365);
+ adaptor.addChild(root_0, COMMA365_tree);
- FIELD_OFFSET358=(Token)match(input,FIELD_OFFSET,FOLLOW_FIELD_OFFSET_in_insn_format22cs_field4808);
- FIELD_OFFSET358_tree = (CommonTree)adaptor.create(FIELD_OFFSET358);
- adaptor.addChild(root_0, FIELD_OFFSET358_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);
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT22cs_FIELD353!=null?INSTRUCTION_FORMAT22cs_FIELD353.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT22cs_FIELD361!=null?INSTRUCTION_FORMAT22cs_FIELD361.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -14653,69 +11974,69 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22s"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:980: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/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 ) ;
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 REGISTER360=null;
- Token COMMA361=null;
- Token REGISTER362=null;
- Token COMMA363=null;
- ParserRuleReturnScope instruction_format22s359 =null;
- ParserRuleReturnScope integral_literal364 =null;
+ Token REGISTER368=null;
+ Token COMMA369=null;
+ Token REGISTER370=null;
+ Token COMMA371=null;
+ ParserRuleReturnScope instruction_format22s367 =null;
+ ParserRuleReturnScope integral_literal372 =null;
- CommonTree REGISTER360_tree=null;
- CommonTree COMMA361_tree=null;
- CommonTree REGISTER362_tree=null;
- CommonTree COMMA363_tree=null;
+ CommonTree REGISTER368_tree=null;
+ CommonTree COMMA369_tree=null;
+ CommonTree REGISTER370_tree=null;
+ CommonTree COMMA371_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:981:3: ( instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:982:5: instruction_format22s REGISTER COMMA REGISTER COMMA integral_literal
+ // /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
{
- pushFollow(FOLLOW_instruction_format22s_in_insn_format22s4829);
- instruction_format22s359=instruction_format22s();
+ pushFollow(FOLLOW_instruction_format22s_in_insn_format22s4785);
+ instruction_format22s367=instruction_format22s();
state._fsp--;
- stream_instruction_format22s.add(instruction_format22s359.getTree());
- REGISTER360=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s4831);
- stream_REGISTER.add(REGISTER360);
+ stream_instruction_format22s.add(instruction_format22s367.getTree());
+ REGISTER368=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s4787);
+ stream_REGISTER.add(REGISTER368);
- COMMA361=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s4833);
- stream_COMMA.add(COMMA361);
+ COMMA369=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s4789);
+ stream_COMMA.add(COMMA369);
- REGISTER362=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s4835);
- stream_REGISTER.add(REGISTER362);
+ REGISTER370=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s4791);
+ stream_REGISTER.add(REGISTER370);
- COMMA363=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s4837);
- stream_COMMA.add(COMMA363);
+ COMMA371=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22s4793);
+ stream_COMMA.add(COMMA371);
- pushFollow(FOLLOW_integral_literal_in_insn_format22s4839);
- integral_literal364=integral_literal();
+ pushFollow(FOLLOW_integral_literal_in_insn_format22s4795);
+ integral_literal372=integral_literal();
state._fsp--;
- stream_integral_literal.add(integral_literal364.getTree());
+ stream_integral_literal.add(integral_literal372.getTree());
// AST REWRITE
- // elements: instruction_format22s, REGISTER, integral_literal, REGISTER
- // token labels:
+ // elements: REGISTER, integral_literal, REGISTER, instruction_format22s
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 983:5: -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal )
+ // 970:5: -> ^( I_STATEMENT_FORMAT22s[$start, \"I_STATEMENT_FORMAT22s\"] instruction_format22s REGISTER REGISTER integral_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:983:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22s, (retval.start), "I_STATEMENT_FORMAT22s"), root_1);
@@ -14760,68 +12081,68 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:985: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/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 ) ;
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_FORMAT22t365=null;
- Token REGISTER366=null;
- Token COMMA367=null;
- Token REGISTER368=null;
- Token COMMA369=null;
- ParserRuleReturnScope label_ref370 =null;
+ Token INSTRUCTION_FORMAT22t373=null;
+ Token REGISTER374=null;
+ Token COMMA375=null;
+ Token REGISTER376=null;
+ Token COMMA377=null;
+ ParserRuleReturnScope label_ref378 =null;
- CommonTree INSTRUCTION_FORMAT22t365_tree=null;
- CommonTree REGISTER366_tree=null;
- CommonTree COMMA367_tree=null;
- CommonTree REGISTER368_tree=null;
- CommonTree COMMA369_tree=null;
+ CommonTree INSTRUCTION_FORMAT22t373_tree=null;
+ CommonTree REGISTER374_tree=null;
+ CommonTree COMMA375_tree=null;
+ CommonTree REGISTER376_tree=null;
+ CommonTree COMMA377_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:986:3: ( INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:987:5: INSTRUCTION_FORMAT22t REGISTER COMMA REGISTER COMMA label_ref
+ // /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
{
- INSTRUCTION_FORMAT22t365=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t4873);
- stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t365);
+ INSTRUCTION_FORMAT22t373=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t4829);
+ stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t373);
- REGISTER366=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t4875);
- stream_REGISTER.add(REGISTER366);
+ REGISTER374=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t4831);
+ stream_REGISTER.add(REGISTER374);
- COMMA367=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t4877);
- stream_COMMA.add(COMMA367);
+ COMMA375=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t4833);
+ stream_COMMA.add(COMMA375);
- REGISTER368=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t4879);
- stream_REGISTER.add(REGISTER368);
+ REGISTER376=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t4835);
+ stream_REGISTER.add(REGISTER376);
- COMMA369=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t4881);
- stream_COMMA.add(COMMA369);
+ COMMA377=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22t4837);
+ stream_COMMA.add(COMMA377);
- pushFollow(FOLLOW_label_ref_in_insn_format22t4883);
- label_ref370=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_format22t4839);
+ label_ref378=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref370.getTree());
+ stream_label_ref.add(label_ref378.getTree());
// AST REWRITE
- // elements: label_ref, REGISTER, REGISTER, INSTRUCTION_FORMAT22t
- // token labels:
+ // elements: REGISTER, label_ref, INSTRUCTION_FORMAT22t, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 988:5: -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref )
+ // 975:5: -> ^( I_STATEMENT_FORMAT22t[$start, \"I_STATEMENT_FFORMAT22t\"] INSTRUCTION_FORMAT22t REGISTER REGISTER label_ref )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:988:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22t, (retval.start), "I_STATEMENT_FFORMAT22t"), root_1);
@@ -14866,56 +12187,56 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format22x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:990: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/antlr3/smaliParser.g:977: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_FORMAT22x371=null;
- Token REGISTER372=null;
- Token COMMA373=null;
- Token REGISTER374=null;
+ Token INSTRUCTION_FORMAT22x379=null;
+ Token REGISTER380=null;
+ Token COMMA381=null;
+ Token REGISTER382=null;
- CommonTree INSTRUCTION_FORMAT22x371_tree=null;
- CommonTree REGISTER372_tree=null;
- CommonTree COMMA373_tree=null;
- CommonTree REGISTER374_tree=null;
+ CommonTree INSTRUCTION_FORMAT22x379_tree=null;
+ CommonTree REGISTER380_tree=null;
+ CommonTree COMMA381_tree=null;
+ CommonTree REGISTER382_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:991:3: ( INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:992:5: INSTRUCTION_FORMAT22x REGISTER COMMA REGISTER
+ // /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
{
- INSTRUCTION_FORMAT22x371=(Token)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x4917);
- stream_INSTRUCTION_FORMAT22x.add(INSTRUCTION_FORMAT22x371);
+ INSTRUCTION_FORMAT22x379=(Token)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x4873);
+ stream_INSTRUCTION_FORMAT22x.add(INSTRUCTION_FORMAT22x379);
- REGISTER372=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x4919);
- stream_REGISTER.add(REGISTER372);
+ REGISTER380=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x4875);
+ stream_REGISTER.add(REGISTER380);
- COMMA373=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22x4921);
- stream_COMMA.add(COMMA373);
+ COMMA381=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format22x4877);
+ stream_COMMA.add(COMMA381);
- REGISTER374=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x4923);
- stream_REGISTER.add(REGISTER374);
+ REGISTER382=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x4879);
+ stream_REGISTER.add(REGISTER382);
// AST REWRITE
- // elements: REGISTER, INSTRUCTION_FORMAT22x, REGISTER
- // token labels:
+ // elements: REGISTER, REGISTER, INSTRUCTION_FORMAT22x
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 993:5: -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER )
+ // 980:5: -> ^( I_STATEMENT_FORMAT22x[$start, \"I_STATEMENT_FORMAT22x\"] INSTRUCTION_FORMAT22x REGISTER REGISTER )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:993:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT22x, (retval.start), "I_STATEMENT_FORMAT22x"), root_1);
@@ -14959,66 +12280,66 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format23x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:995: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/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 ) ;
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_FORMAT23x375=null;
- Token REGISTER376=null;
- Token COMMA377=null;
- Token REGISTER378=null;
- Token COMMA379=null;
- Token REGISTER380=null;
+ Token INSTRUCTION_FORMAT23x383=null;
+ Token REGISTER384=null;
+ Token COMMA385=null;
+ Token REGISTER386=null;
+ Token COMMA387=null;
+ Token REGISTER388=null;
- CommonTree INSTRUCTION_FORMAT23x375_tree=null;
- CommonTree REGISTER376_tree=null;
- CommonTree COMMA377_tree=null;
- CommonTree REGISTER378_tree=null;
- CommonTree COMMA379_tree=null;
- CommonTree REGISTER380_tree=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;
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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:996:3: ( INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:997:5: INSTRUCTION_FORMAT23x REGISTER COMMA REGISTER COMMA REGISTER
+ // /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
{
- INSTRUCTION_FORMAT23x375=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x4955);
- stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x375);
+ INSTRUCTION_FORMAT23x383=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x4911);
+ stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x383);
- REGISTER376=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4957);
- stream_REGISTER.add(REGISTER376);
+ REGISTER384=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4913);
+ stream_REGISTER.add(REGISTER384);
- COMMA377=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x4959);
- stream_COMMA.add(COMMA377);
+ COMMA385=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x4915);
+ stream_COMMA.add(COMMA385);
- REGISTER378=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4961);
- stream_REGISTER.add(REGISTER378);
+ REGISTER386=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4917);
+ stream_REGISTER.add(REGISTER386);
- COMMA379=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x4963);
- stream_COMMA.add(COMMA379);
+ COMMA387=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format23x4919);
+ stream_COMMA.add(COMMA387);
- REGISTER380=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4965);
- stream_REGISTER.add(REGISTER380);
+ REGISTER388=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x4921);
+ stream_REGISTER.add(REGISTER388);
// AST REWRITE
- // elements: REGISTER, REGISTER, REGISTER, INSTRUCTION_FORMAT23x
- // token labels:
+ // elements: REGISTER, INSTRUCTION_FORMAT23x, REGISTER, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 998:5: -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER )
+ // 985:5: -> ^( I_STATEMENT_FORMAT23x[$start, \"I_STATEMENT_FORMAT23x\"] INSTRUCTION_FORMAT23x REGISTER REGISTER REGISTER )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:998:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT23x, (retval.start), "I_STATEMENT_FORMAT23x"), root_1);
@@ -15063,46 +12384,46 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format30t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1000: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/antlr3/smaliParser.g:987: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_FORMAT30t381=null;
- ParserRuleReturnScope label_ref382 =null;
+ Token INSTRUCTION_FORMAT30t389=null;
+ ParserRuleReturnScope label_ref390 =null;
- CommonTree INSTRUCTION_FORMAT30t381_tree=null;
+ CommonTree INSTRUCTION_FORMAT30t389_tree=null;
RewriteRuleTokenStream stream_INSTRUCTION_FORMAT30t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT30t");
RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1001:3: ( INSTRUCTION_FORMAT30t label_ref -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1002:5: INSTRUCTION_FORMAT30t label_ref
+ // /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
{
- INSTRUCTION_FORMAT30t381=(Token)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t4999);
- stream_INSTRUCTION_FORMAT30t.add(INSTRUCTION_FORMAT30t381);
+ INSTRUCTION_FORMAT30t389=(Token)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t4955);
+ stream_INSTRUCTION_FORMAT30t.add(INSTRUCTION_FORMAT30t389);
- pushFollow(FOLLOW_label_ref_in_insn_format30t5001);
- label_ref382=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_format30t4957);
+ label_ref390=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref382.getTree());
+ stream_label_ref.add(label_ref390.getTree());
// AST REWRITE
- // elements: INSTRUCTION_FORMAT30t, label_ref
- // token labels:
+ // elements: label_ref, INSTRUCTION_FORMAT30t
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1003:5: -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref )
+ // 990:5: -> ^( I_STATEMENT_FORMAT30t[$start, \"I_STATEMENT_FORMAT30t\"] INSTRUCTION_FORMAT30t label_ref )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1003:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT30t, (retval.start), "I_STATEMENT_FORMAT30t"), root_1);
@@ -15145,57 +12466,57 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format31c"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1005: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/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 ) ;
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_FORMAT31c383=null;
- Token REGISTER384=null;
- Token COMMA385=null;
- Token STRING_LITERAL386=null;
+ Token INSTRUCTION_FORMAT31c391=null;
+ Token REGISTER392=null;
+ Token COMMA393=null;
+ Token STRING_LITERAL394=null;
- CommonTree INSTRUCTION_FORMAT31c383_tree=null;
- CommonTree REGISTER384_tree=null;
- CommonTree COMMA385_tree=null;
- CommonTree STRING_LITERAL386_tree=null;
+ CommonTree INSTRUCTION_FORMAT31c391_tree=null;
+ CommonTree REGISTER392_tree=null;
+ CommonTree COMMA393_tree=null;
+ CommonTree STRING_LITERAL394_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1006:3: ( INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1007:5: INSTRUCTION_FORMAT31c REGISTER COMMA STRING_LITERAL
+ // /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
{
- INSTRUCTION_FORMAT31c383=(Token)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c5031);
- stream_INSTRUCTION_FORMAT31c.add(INSTRUCTION_FORMAT31c383);
+ INSTRUCTION_FORMAT31c391=(Token)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c4987);
+ stream_INSTRUCTION_FORMAT31c.add(INSTRUCTION_FORMAT31c391);
- REGISTER384=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c5033);
- stream_REGISTER.add(REGISTER384);
+ REGISTER392=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c4989);
+ stream_REGISTER.add(REGISTER392);
- COMMA385=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31c5035);
- stream_COMMA.add(COMMA385);
+ COMMA393=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31c4991);
+ stream_COMMA.add(COMMA393);
- STRING_LITERAL386=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format31c5037);
- stream_STRING_LITERAL.add(STRING_LITERAL386);
+ STRING_LITERAL394=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_insn_format31c4993);
+ stream_STRING_LITERAL.add(STRING_LITERAL394);
// AST REWRITE
- // elements: INSTRUCTION_FORMAT31c, REGISTER, STRING_LITERAL
- // token labels:
+ // elements: REGISTER, INSTRUCTION_FORMAT31c, STRING_LITERAL
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1008:5: -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL )
+ // 995:5: -> ^( I_STATEMENT_FORMAT31c[$start, \"I_STATEMENT_FORMAT31c\"] INSTRUCTION_FORMAT31c REGISTER STRING_LITERAL )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1008:7: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT31c, (retval.start), "I_STATEMENT_FORMAT31c"), root_1);
@@ -15239,59 +12560,59 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format31i"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1010: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/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 ) ;
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 REGISTER388=null;
- Token COMMA389=null;
- ParserRuleReturnScope instruction_format31i387 =null;
- ParserRuleReturnScope fixed_32bit_literal390 =null;
+ Token REGISTER396=null;
+ Token COMMA397=null;
+ ParserRuleReturnScope instruction_format31i395 =null;
+ ParserRuleReturnScope fixed_32bit_literal398 =null;
- CommonTree REGISTER388_tree=null;
- CommonTree COMMA389_tree=null;
+ CommonTree REGISTER396_tree=null;
+ CommonTree COMMA397_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1011:3: ( instruction_format31i REGISTER COMMA fixed_32bit_literal -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1012:5: instruction_format31i REGISTER COMMA fixed_32bit_literal
+ // /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
{
- pushFollow(FOLLOW_instruction_format31i_in_insn_format31i5068);
- instruction_format31i387=instruction_format31i();
+ pushFollow(FOLLOW_instruction_format31i_in_insn_format31i5024);
+ instruction_format31i395=instruction_format31i();
state._fsp--;
- stream_instruction_format31i.add(instruction_format31i387.getTree());
- REGISTER388=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i5070);
- stream_REGISTER.add(REGISTER388);
+ stream_instruction_format31i.add(instruction_format31i395.getTree());
+ REGISTER396=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i5026);
+ stream_REGISTER.add(REGISTER396);
- COMMA389=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31i5072);
- stream_COMMA.add(COMMA389);
+ COMMA397=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31i5028);
+ stream_COMMA.add(COMMA397);
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i5074);
- fixed_32bit_literal390=fixed_32bit_literal();
+ pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i5030);
+ fixed_32bit_literal398=fixed_32bit_literal();
state._fsp--;
- stream_fixed_32bit_literal.add(fixed_32bit_literal390.getTree());
+ stream_fixed_32bit_literal.add(fixed_32bit_literal398.getTree());
// AST REWRITE
- // elements: fixed_32bit_literal, REGISTER, instruction_format31i
- // token labels:
+ // elements: instruction_format31i, fixed_32bit_literal, REGISTER
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1013:5: -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal )
+ // 1000:5: -> ^( I_STATEMENT_FORMAT31i[$start, \"I_STATEMENT_FORMAT31i\"] instruction_format31i REGISTER fixed_32bit_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1013:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT31i, (retval.start), "I_STATEMENT_FORMAT31i"), root_1);
@@ -15335,58 +12656,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format31t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1015: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/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 ) ;
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_FORMAT31t391=null;
- Token REGISTER392=null;
- Token COMMA393=null;
- ParserRuleReturnScope label_ref394 =null;
+ Token INSTRUCTION_FORMAT31t399=null;
+ Token REGISTER400=null;
+ Token COMMA401=null;
+ ParserRuleReturnScope label_ref402 =null;
- CommonTree INSTRUCTION_FORMAT31t391_tree=null;
- CommonTree REGISTER392_tree=null;
- CommonTree COMMA393_tree=null;
+ CommonTree INSTRUCTION_FORMAT31t399_tree=null;
+ CommonTree REGISTER400_tree=null;
+ CommonTree COMMA401_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1016:3: ( INSTRUCTION_FORMAT31t REGISTER COMMA label_ref -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1017:5: INSTRUCTION_FORMAT31t REGISTER COMMA label_ref
+ // /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
{
- INSTRUCTION_FORMAT31t391=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t5106);
- stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t391);
+ INSTRUCTION_FORMAT31t399=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t5062);
+ stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t399);
- REGISTER392=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t5108);
- stream_REGISTER.add(REGISTER392);
+ REGISTER400=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t5064);
+ stream_REGISTER.add(REGISTER400);
- COMMA393=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31t5110);
- stream_COMMA.add(COMMA393);
+ COMMA401=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format31t5066);
+ stream_COMMA.add(COMMA401);
- pushFollow(FOLLOW_label_ref_in_insn_format31t5112);
- label_ref394=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_format31t5068);
+ label_ref402=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref394.getTree());
+ stream_label_ref.add(label_ref402.getTree());
// AST REWRITE
- // elements: INSTRUCTION_FORMAT31t, label_ref, REGISTER
- // token labels:
+ // elements: REGISTER, INSTRUCTION_FORMAT31t, label_ref
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1018:5: -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref )
+ // 1005:5: -> ^( I_STATEMENT_FORMAT31t[$start, \"I_STATEMENT_FORMAT31t\"] INSTRUCTION_FORMAT31t REGISTER label_ref )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1018:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT31t, (retval.start), "I_STATEMENT_FORMAT31t"), root_1);
@@ -15430,56 +12751,56 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format32x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1020: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/antlr3/smaliParser.g:1007: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_FORMAT32x395=null;
- Token REGISTER396=null;
- Token COMMA397=null;
- Token REGISTER398=null;
+ Token INSTRUCTION_FORMAT32x403=null;
+ Token REGISTER404=null;
+ Token COMMA405=null;
+ Token REGISTER406=null;
- CommonTree INSTRUCTION_FORMAT32x395_tree=null;
- CommonTree REGISTER396_tree=null;
- CommonTree COMMA397_tree=null;
- CommonTree REGISTER398_tree=null;
+ CommonTree INSTRUCTION_FORMAT32x403_tree=null;
+ CommonTree REGISTER404_tree=null;
+ CommonTree COMMA405_tree=null;
+ CommonTree REGISTER406_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1021:3: ( INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1022:5: INSTRUCTION_FORMAT32x REGISTER COMMA REGISTER
+ // /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
{
- INSTRUCTION_FORMAT32x395=(Token)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x5144);
- stream_INSTRUCTION_FORMAT32x.add(INSTRUCTION_FORMAT32x395);
+ INSTRUCTION_FORMAT32x403=(Token)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x5100);
+ stream_INSTRUCTION_FORMAT32x.add(INSTRUCTION_FORMAT32x403);
- REGISTER396=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5146);
- stream_REGISTER.add(REGISTER396);
+ REGISTER404=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5102);
+ stream_REGISTER.add(REGISTER404);
- COMMA397=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format32x5148);
- stream_COMMA.add(COMMA397);
+ COMMA405=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format32x5104);
+ stream_COMMA.add(COMMA405);
- REGISTER398=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5150);
- stream_REGISTER.add(REGISTER398);
+ REGISTER406=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x5106);
+ stream_REGISTER.add(REGISTER406);
// AST REWRITE
// elements: REGISTER, INSTRUCTION_FORMAT32x, REGISTER
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1023:5: -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER )
+ // 1010:5: -> ^( I_STATEMENT_FORMAT32x[$start, \"I_STATEMENT_FORMAT32x\"] INSTRUCTION_FORMAT32x REGISTER REGISTER )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1023:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT32x, (retval.start), "I_STATEMENT_FORMAT32x"), root_1);
@@ -15523,77 +12844,77 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format35c_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1025:1: insn_format35c_method : INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_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 ) ;
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_METHOD399=null;
- Token OPEN_BRACE400=null;
- Token CLOSE_BRACE402=null;
- Token COMMA403=null;
- ParserRuleReturnScope register_list401 =null;
- ParserRuleReturnScope fully_qualified_method404 =null;
-
- CommonTree INSTRUCTION_FORMAT35c_METHOD399_tree=null;
- CommonTree OPEN_BRACE400_tree=null;
- CommonTree CLOSE_BRACE402_tree=null;
- CommonTree COMMA403_tree=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;
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");
RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE");
RewriteRuleSubtreeStream stream_register_list=new RewriteRuleSubtreeStream(adaptor,"rule register_list");
- RewriteRuleSubtreeStream stream_fully_qualified_method=new RewriteRuleSubtreeStream(adaptor,"rule fully_qualified_method");
+ RewriteRuleSubtreeStream stream_method_reference=new RewriteRuleSubtreeStream(adaptor,"rule method_reference");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1026:3: ( INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1027:5: INSTRUCTION_FORMAT35c_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method
+ // /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
{
- INSTRUCTION_FORMAT35c_METHOD399=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method5182);
- stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD399);
+ 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);
- OPEN_BRACE400=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_method5184);
- stream_OPEN_BRACE.add(OPEN_BRACE400);
+ OPEN_BRACE408=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_method5140);
+ stream_OPEN_BRACE.add(OPEN_BRACE408);
- pushFollow(FOLLOW_register_list_in_insn_format35c_method5186);
- register_list401=register_list();
+ pushFollow(FOLLOW_register_list_in_insn_format35c_method5142);
+ register_list409=register_list();
state._fsp--;
- stream_register_list.add(register_list401.getTree());
- CLOSE_BRACE402=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_method5188);
- stream_CLOSE_BRACE.add(CLOSE_BRACE402);
+ 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);
- COMMA403=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_method5190);
- stream_COMMA.add(COMMA403);
+ COMMA411=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_method5146);
+ stream_COMMA.add(COMMA411);
- pushFollow(FOLLOW_fully_qualified_method_in_insn_format35c_method5192);
- fully_qualified_method404=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_insn_format35c_method5148);
+ method_reference412=method_reference();
state._fsp--;
- stream_fully_qualified_method.add(fully_qualified_method404.getTree());
+ stream_method_reference.add(method_reference412.getTree());
// AST REWRITE
- // elements: INSTRUCTION_FORMAT35c_METHOD, fully_qualified_method, register_list
- // token labels:
+ // elements: method_reference, register_list, INSTRUCTION_FORMAT35c_METHOD
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1028:5: -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method )
+ // 1015:5: -> ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list method_reference )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1028:8: ^( I_STATEMENT_FORMAT35c_METHOD[$start, \"I_STATEMENT_FORMAT35c_METHOD\"] INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method )
+ // /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 )
{
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);
adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT35c_METHOD.nextNode());
adaptor.addChild(root_1, stream_register_list.nextTree());
- adaptor.addChild(root_1, stream_fully_qualified_method.nextTree());
+ adaptor.addChild(root_1, stream_method_reference.nextTree());
adaptor.addChild(root_0, root_1);
}
@@ -15631,24 +12952,24 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format35c_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1030: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/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 ) ;
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_TYPE405=null;
- Token OPEN_BRACE406=null;
- Token CLOSE_BRACE408=null;
- Token COMMA409=null;
- ParserRuleReturnScope register_list407 =null;
- ParserRuleReturnScope nonvoid_type_descriptor410 =null;
-
- CommonTree INSTRUCTION_FORMAT35c_TYPE405_tree=null;
- CommonTree OPEN_BRACE406_tree=null;
- CommonTree CLOSE_BRACE408_tree=null;
- CommonTree COMMA409_tree=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;
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");
@@ -15657,45 +12978,45 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_register_list=new RewriteRuleSubtreeStream(adaptor,"rule register_list");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1031: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 ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1032:5: INSTRUCTION_FORMAT35c_TYPE OPEN_BRACE register_list CLOSE_BRACE COMMA nonvoid_type_descriptor
+ // /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
{
- INSTRUCTION_FORMAT35c_TYPE405=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type5224);
- stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE405);
+ 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);
- OPEN_BRACE406=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_type5226);
- stream_OPEN_BRACE.add(OPEN_BRACE406);
+ OPEN_BRACE414=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_type5182);
+ stream_OPEN_BRACE.add(OPEN_BRACE414);
- pushFollow(FOLLOW_register_list_in_insn_format35c_type5228);
- register_list407=register_list();
+ pushFollow(FOLLOW_register_list_in_insn_format35c_type5184);
+ register_list415=register_list();
state._fsp--;
- stream_register_list.add(register_list407.getTree());
- CLOSE_BRACE408=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_type5230);
- stream_CLOSE_BRACE.add(CLOSE_BRACE408);
+ 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);
- COMMA409=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_type5232);
- stream_COMMA.add(COMMA409);
+ COMMA417=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_type5188);
+ stream_COMMA.add(COMMA417);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type5234);
- nonvoid_type_descriptor410=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type5190);
+ nonvoid_type_descriptor418=nonvoid_type_descriptor();
state._fsp--;
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor410.getTree());
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor418.getTree());
// AST REWRITE
- // elements: nonvoid_type_descriptor, INSTRUCTION_FORMAT35c_TYPE, register_list
- // token labels:
+ // elements: register_list, nonvoid_type_descriptor, INSTRUCTION_FORMAT35c_TYPE
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1033:5: -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor )
+ // 1020:5: -> ^( I_STATEMENT_FORMAT35c_TYPE[$start, \"I_STATEMENT_FORMAT35c_TYPE\"] INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1033: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/antlr3/smaliParser.g:1020: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);
@@ -15739,63 +13060,63 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format35c_method_odex"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1035:1: insn_format35c_method_odex : INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method ;
+ // /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 ;
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_ODEX411=null;
- Token OPEN_BRACE412=null;
- Token CLOSE_BRACE414=null;
- Token COMMA415=null;
- ParserRuleReturnScope register_list413 =null;
- ParserRuleReturnScope fully_qualified_method416 =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;
- CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX411_tree=null;
- CommonTree OPEN_BRACE412_tree=null;
- CommonTree CLOSE_BRACE414_tree=null;
- CommonTree COMMA415_tree=null;
+ CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX419_tree=null;
+ CommonTree OPEN_BRACE420_tree=null;
+ CommonTree CLOSE_BRACE422_tree=null;
+ CommonTree COMMA423_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1036:3: ( INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1037:5: INSTRUCTION_FORMAT35c_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method
+ // /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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT35c_METHOD_ODEX411=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_insn_format35c_method_odex5266);
- INSTRUCTION_FORMAT35c_METHOD_ODEX411_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35c_METHOD_ODEX411);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT35c_METHOD_ODEX411_tree);
+ 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);
- OPEN_BRACE412=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35c_method_odex5268);
- OPEN_BRACE412_tree = (CommonTree)adaptor.create(OPEN_BRACE412);
- adaptor.addChild(root_0, OPEN_BRACE412_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);
- pushFollow(FOLLOW_register_list_in_insn_format35c_method_odex5270);
- register_list413=register_list();
+ pushFollow(FOLLOW_register_list_in_insn_format35c_method_odex5226);
+ register_list421=register_list();
state._fsp--;
- adaptor.addChild(root_0, register_list413.getTree());
+ adaptor.addChild(root_0, register_list421.getTree());
- CLOSE_BRACE414=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35c_method_odex5272);
- CLOSE_BRACE414_tree = (CommonTree)adaptor.create(CLOSE_BRACE414);
- adaptor.addChild(root_0, CLOSE_BRACE414_tree);
+ 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);
- COMMA415=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35c_method_odex5274);
- COMMA415_tree = (CommonTree)adaptor.create(COMMA415);
- adaptor.addChild(root_0, COMMA415_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);
- pushFollow(FOLLOW_fully_qualified_method_in_insn_format35c_method_odex5276);
- fully_qualified_method416=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_insn_format35c_method_odex5232);
+ method_reference424=method_reference();
state._fsp--;
- adaptor.addChild(root_0, fully_qualified_method416.getTree());
+ adaptor.addChild(root_0, method_reference424.getTree());
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35c_METHOD_ODEX411!=null?INSTRUCTION_FORMAT35c_METHOD_ODEX411.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35c_METHOD_ODEX419!=null?INSTRUCTION_FORMAT35c_METHOD_ODEX419.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -15825,62 +13146,62 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format35mi_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1042: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/antlr3/smaliParser.g:1029: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_METHOD417=null;
- Token OPEN_BRACE418=null;
- Token CLOSE_BRACE420=null;
- Token COMMA421=null;
- Token INLINE_INDEX422=null;
- ParserRuleReturnScope register_list419 =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;
- CommonTree INSTRUCTION_FORMAT35mi_METHOD417_tree=null;
- CommonTree OPEN_BRACE418_tree=null;
- CommonTree CLOSE_BRACE420_tree=null;
- CommonTree COMMA421_tree=null;
- CommonTree INLINE_INDEX422_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1043:3: ( INSTRUCTION_FORMAT35mi_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA INLINE_INDEX )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1044:5: 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: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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT35mi_METHOD417=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_insn_format35mi_method5297);
- INSTRUCTION_FORMAT35mi_METHOD417_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35mi_METHOD417);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT35mi_METHOD417_tree);
+ 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);
- OPEN_BRACE418=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35mi_method5299);
- OPEN_BRACE418_tree = (CommonTree)adaptor.create(OPEN_BRACE418);
- adaptor.addChild(root_0, OPEN_BRACE418_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);
- pushFollow(FOLLOW_register_list_in_insn_format35mi_method5301);
- register_list419=register_list();
+ pushFollow(FOLLOW_register_list_in_insn_format35mi_method5257);
+ register_list427=register_list();
state._fsp--;
- adaptor.addChild(root_0, register_list419.getTree());
+ adaptor.addChild(root_0, register_list427.getTree());
- CLOSE_BRACE420=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35mi_method5303);
- CLOSE_BRACE420_tree = (CommonTree)adaptor.create(CLOSE_BRACE420);
- adaptor.addChild(root_0, CLOSE_BRACE420_tree);
+ 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);
- COMMA421=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35mi_method5305);
- COMMA421_tree = (CommonTree)adaptor.create(COMMA421);
- adaptor.addChild(root_0, COMMA421_tree);
+ COMMA429=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35mi_method5261);
+ COMMA429_tree = (CommonTree)adaptor.create(COMMA429);
+ adaptor.addChild(root_0, COMMA429_tree);
- INLINE_INDEX422=(Token)match(input,INLINE_INDEX,FOLLOW_INLINE_INDEX_in_insn_format35mi_method5307);
- INLINE_INDEX422_tree = (CommonTree)adaptor.create(INLINE_INDEX422);
- adaptor.addChild(root_0, INLINE_INDEX422_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);
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35mi_METHOD417!=null?INSTRUCTION_FORMAT35mi_METHOD417.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35mi_METHOD425!=null?INSTRUCTION_FORMAT35mi_METHOD425.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -15910,62 +13231,62 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format35ms_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1049: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/antlr3/smaliParser.g:1036: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_METHOD423=null;
- Token OPEN_BRACE424=null;
- Token CLOSE_BRACE426=null;
- Token COMMA427=null;
- Token VTABLE_INDEX428=null;
- ParserRuleReturnScope register_list425 =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;
- CommonTree INSTRUCTION_FORMAT35ms_METHOD423_tree=null;
- CommonTree OPEN_BRACE424_tree=null;
- CommonTree CLOSE_BRACE426_tree=null;
- CommonTree COMMA427_tree=null;
- CommonTree VTABLE_INDEX428_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1050:3: ( INSTRUCTION_FORMAT35ms_METHOD OPEN_BRACE register_list CLOSE_BRACE COMMA VTABLE_INDEX )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1051:5: 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: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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT35ms_METHOD423=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_insn_format35ms_method5328);
- INSTRUCTION_FORMAT35ms_METHOD423_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT35ms_METHOD423);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT35ms_METHOD423_tree);
+ 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);
- OPEN_BRACE424=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format35ms_method5330);
- OPEN_BRACE424_tree = (CommonTree)adaptor.create(OPEN_BRACE424);
- adaptor.addChild(root_0, OPEN_BRACE424_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);
- pushFollow(FOLLOW_register_list_in_insn_format35ms_method5332);
- register_list425=register_list();
+ pushFollow(FOLLOW_register_list_in_insn_format35ms_method5288);
+ register_list433=register_list();
state._fsp--;
- adaptor.addChild(root_0, register_list425.getTree());
+ adaptor.addChild(root_0, register_list433.getTree());
- CLOSE_BRACE426=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format35ms_method5334);
- CLOSE_BRACE426_tree = (CommonTree)adaptor.create(CLOSE_BRACE426);
- adaptor.addChild(root_0, CLOSE_BRACE426_tree);
+ 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);
- COMMA427=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35ms_method5336);
- COMMA427_tree = (CommonTree)adaptor.create(COMMA427);
- adaptor.addChild(root_0, COMMA427_tree);
+ COMMA435=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format35ms_method5292);
+ COMMA435_tree = (CommonTree)adaptor.create(COMMA435);
+ adaptor.addChild(root_0, COMMA435_tree);
- VTABLE_INDEX428=(Token)match(input,VTABLE_INDEX,FOLLOW_VTABLE_INDEX_in_insn_format35ms_method5338);
- VTABLE_INDEX428_tree = (CommonTree)adaptor.create(VTABLE_INDEX428);
- adaptor.addChild(root_0, VTABLE_INDEX428_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);
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35ms_METHOD423!=null?INSTRUCTION_FORMAT35ms_METHOD423.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT35ms_METHOD431!=null?INSTRUCTION_FORMAT35ms_METHOD431.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -15995,77 +13316,77 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format3rc_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1056:1: insn_format3rc_method : INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA fully_qualified_method -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_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 ) ;
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_METHOD429=null;
- Token OPEN_BRACE430=null;
- Token CLOSE_BRACE432=null;
- Token COMMA433=null;
- ParserRuleReturnScope register_range431 =null;
- ParserRuleReturnScope fully_qualified_method434 =null;
-
- CommonTree INSTRUCTION_FORMAT3rc_METHOD429_tree=null;
- CommonTree OPEN_BRACE430_tree=null;
- CommonTree CLOSE_BRACE432_tree=null;
- CommonTree COMMA433_tree=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;
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");
RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE");
- RewriteRuleSubtreeStream stream_fully_qualified_method=new RewriteRuleSubtreeStream(adaptor,"rule fully_qualified_method");
+ RewriteRuleSubtreeStream stream_method_reference=new RewriteRuleSubtreeStream(adaptor,"rule method_reference");
RewriteRuleSubtreeStream stream_register_range=new RewriteRuleSubtreeStream(adaptor,"rule register_range");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1057:3: ( INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA fully_qualified_method -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1058:5: INSTRUCTION_FORMAT3rc_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA fully_qualified_method
+ // /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
{
- INSTRUCTION_FORMAT3rc_METHOD429=(Token)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method5359);
- stream_INSTRUCTION_FORMAT3rc_METHOD.add(INSTRUCTION_FORMAT3rc_METHOD429);
+ 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);
- OPEN_BRACE430=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_method5361);
- stream_OPEN_BRACE.add(OPEN_BRACE430);
+ OPEN_BRACE438=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_method5317);
+ stream_OPEN_BRACE.add(OPEN_BRACE438);
- pushFollow(FOLLOW_register_range_in_insn_format3rc_method5363);
- register_range431=register_range();
+ pushFollow(FOLLOW_register_range_in_insn_format3rc_method5319);
+ register_range439=register_range();
state._fsp--;
- stream_register_range.add(register_range431.getTree());
- CLOSE_BRACE432=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_method5365);
- stream_CLOSE_BRACE.add(CLOSE_BRACE432);
+ 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);
- COMMA433=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_method5367);
- stream_COMMA.add(COMMA433);
+ COMMA441=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_method5323);
+ stream_COMMA.add(COMMA441);
- pushFollow(FOLLOW_fully_qualified_method_in_insn_format3rc_method5369);
- fully_qualified_method434=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_insn_format3rc_method5325);
+ method_reference442=method_reference();
state._fsp--;
- stream_fully_qualified_method.add(fully_qualified_method434.getTree());
+ stream_method_reference.add(method_reference442.getTree());
// AST REWRITE
- // elements: register_range, fully_qualified_method, INSTRUCTION_FORMAT3rc_METHOD
- // token labels:
+ // elements: INSTRUCTION_FORMAT3rc_METHOD, method_reference, register_range
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1059:5: -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method )
+ // 1046:5: -> ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range method_reference )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1059:8: ^( I_STATEMENT_FORMAT3rc_METHOD[$start, \"I_STATEMENT_FORMAT3rc_METHOD\"] INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method )
+ // /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 )
{
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);
adaptor.addChild(root_1, stream_INSTRUCTION_FORMAT3rc_METHOD.nextNode());
adaptor.addChild(root_1, stream_register_range.nextTree());
- adaptor.addChild(root_1, stream_fully_qualified_method.nextTree());
+ adaptor.addChild(root_1, stream_method_reference.nextTree());
adaptor.addChild(root_0, root_1);
}
@@ -16103,63 +13424,63 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format3rc_method_odex"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1061:1: insn_format3rc_method_odex : INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method ;
+ // /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 ;
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_ODEX435=null;
- Token OPEN_BRACE436=null;
- Token CLOSE_BRACE438=null;
- Token COMMA439=null;
- ParserRuleReturnScope register_list437 =null;
- ParserRuleReturnScope fully_qualified_method440 =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;
- CommonTree INSTRUCTION_FORMAT3rc_METHOD_ODEX435_tree=null;
- CommonTree OPEN_BRACE436_tree=null;
- CommonTree CLOSE_BRACE438_tree=null;
- CommonTree COMMA439_tree=null;
+ CommonTree INSTRUCTION_FORMAT3rc_METHOD_ODEX443_tree=null;
+ CommonTree OPEN_BRACE444_tree=null;
+ CommonTree CLOSE_BRACE446_tree=null;
+ CommonTree COMMA447_tree=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1062:3: ( INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1063:5: INSTRUCTION_FORMAT3rc_METHOD_ODEX OPEN_BRACE register_list CLOSE_BRACE COMMA fully_qualified_method
+ // /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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT3rc_METHOD_ODEX435=(Token)match(input,INSTRUCTION_FORMAT3rc_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_ODEX_in_insn_format3rc_method_odex5401);
- INSTRUCTION_FORMAT3rc_METHOD_ODEX435_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rc_METHOD_ODEX435);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT3rc_METHOD_ODEX435_tree);
+ 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);
- OPEN_BRACE436=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_method_odex5403);
- OPEN_BRACE436_tree = (CommonTree)adaptor.create(OPEN_BRACE436);
- adaptor.addChild(root_0, OPEN_BRACE436_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);
- pushFollow(FOLLOW_register_list_in_insn_format3rc_method_odex5405);
- register_list437=register_list();
+ pushFollow(FOLLOW_register_list_in_insn_format3rc_method_odex5361);
+ register_list445=register_list();
state._fsp--;
- adaptor.addChild(root_0, register_list437.getTree());
+ adaptor.addChild(root_0, register_list445.getTree());
- CLOSE_BRACE438=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_method_odex5407);
- CLOSE_BRACE438_tree = (CommonTree)adaptor.create(CLOSE_BRACE438);
- adaptor.addChild(root_0, CLOSE_BRACE438_tree);
+ 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);
- COMMA439=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_method_odex5409);
- COMMA439_tree = (CommonTree)adaptor.create(COMMA439);
- adaptor.addChild(root_0, COMMA439_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);
- pushFollow(FOLLOW_fully_qualified_method_in_insn_format3rc_method_odex5411);
- fully_qualified_method440=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_insn_format3rc_method_odex5367);
+ method_reference448=method_reference();
state._fsp--;
- adaptor.addChild(root_0, fully_qualified_method440.getTree());
+ adaptor.addChild(root_0, method_reference448.getTree());
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rc_METHOD_ODEX435!=null?INSTRUCTION_FORMAT3rc_METHOD_ODEX435.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rc_METHOD_ODEX443!=null?INSTRUCTION_FORMAT3rc_METHOD_ODEX443.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -16189,24 +13510,24 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format3rc_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1068: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/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 ) ;
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_TYPE441=null;
- Token OPEN_BRACE442=null;
- Token CLOSE_BRACE444=null;
- Token COMMA445=null;
- ParserRuleReturnScope register_range443 =null;
- ParserRuleReturnScope nonvoid_type_descriptor446 =null;
-
- CommonTree INSTRUCTION_FORMAT3rc_TYPE441_tree=null;
- CommonTree OPEN_BRACE442_tree=null;
- CommonTree CLOSE_BRACE444_tree=null;
- CommonTree COMMA445_tree=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;
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");
@@ -16215,45 +13536,45 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_register_range=new RewriteRuleSubtreeStream(adaptor,"rule register_range");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1069: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 ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1070:5: INSTRUCTION_FORMAT3rc_TYPE OPEN_BRACE register_range CLOSE_BRACE COMMA nonvoid_type_descriptor
+ // /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
{
- INSTRUCTION_FORMAT3rc_TYPE441=(Token)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type5432);
- stream_INSTRUCTION_FORMAT3rc_TYPE.add(INSTRUCTION_FORMAT3rc_TYPE441);
+ 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);
- OPEN_BRACE442=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_type5434);
- stream_OPEN_BRACE.add(OPEN_BRACE442);
+ OPEN_BRACE450=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rc_type5390);
+ stream_OPEN_BRACE.add(OPEN_BRACE450);
- pushFollow(FOLLOW_register_range_in_insn_format3rc_type5436);
- register_range443=register_range();
+ pushFollow(FOLLOW_register_range_in_insn_format3rc_type5392);
+ register_range451=register_range();
state._fsp--;
- stream_register_range.add(register_range443.getTree());
- CLOSE_BRACE444=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rc_type5438);
- stream_CLOSE_BRACE.add(CLOSE_BRACE444);
+ 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);
- COMMA445=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_type5440);
- stream_COMMA.add(COMMA445);
+ COMMA453=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rc_type5396);
+ stream_COMMA.add(COMMA453);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type5442);
- nonvoid_type_descriptor446=nonvoid_type_descriptor();
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type5398);
+ nonvoid_type_descriptor454=nonvoid_type_descriptor();
state._fsp--;
- stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor446.getTree());
+ stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor454.getTree());
// AST REWRITE
// elements: nonvoid_type_descriptor, register_range, INSTRUCTION_FORMAT3rc_TYPE
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1071:5: -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor )
+ // 1058:5: -> ^( I_STATEMENT_FORMAT3rc_TYPE[$start, \"I_STATEMENT_FORMAT3rc_TYPE\"] INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1071: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/antlr3/smaliParser.g:1058: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);
@@ -16297,62 +13618,62 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format3rmi_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1073: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/antlr3/smaliParser.g:1060: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_METHOD447=null;
- Token OPEN_BRACE448=null;
- Token CLOSE_BRACE450=null;
- Token COMMA451=null;
- Token INLINE_INDEX452=null;
- ParserRuleReturnScope register_range449 =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;
- CommonTree INSTRUCTION_FORMAT3rmi_METHOD447_tree=null;
- CommonTree OPEN_BRACE448_tree=null;
- CommonTree CLOSE_BRACE450_tree=null;
- CommonTree COMMA451_tree=null;
- CommonTree INLINE_INDEX452_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1074:3: ( INSTRUCTION_FORMAT3rmi_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA INLINE_INDEX )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1075:5: 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: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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT3rmi_METHOD447=(Token)match(input,INSTRUCTION_FORMAT3rmi_METHOD,FOLLOW_INSTRUCTION_FORMAT3rmi_METHOD_in_insn_format3rmi_method5474);
- INSTRUCTION_FORMAT3rmi_METHOD447_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rmi_METHOD447);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT3rmi_METHOD447_tree);
+ 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);
- OPEN_BRACE448=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rmi_method5476);
- OPEN_BRACE448_tree = (CommonTree)adaptor.create(OPEN_BRACE448);
- adaptor.addChild(root_0, OPEN_BRACE448_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);
- pushFollow(FOLLOW_register_range_in_insn_format3rmi_method5478);
- register_range449=register_range();
+ pushFollow(FOLLOW_register_range_in_insn_format3rmi_method5434);
+ register_range457=register_range();
state._fsp--;
- adaptor.addChild(root_0, register_range449.getTree());
+ adaptor.addChild(root_0, register_range457.getTree());
- CLOSE_BRACE450=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rmi_method5480);
- CLOSE_BRACE450_tree = (CommonTree)adaptor.create(CLOSE_BRACE450);
- adaptor.addChild(root_0, CLOSE_BRACE450_tree);
+ 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);
- COMMA451=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rmi_method5482);
- COMMA451_tree = (CommonTree)adaptor.create(COMMA451);
- adaptor.addChild(root_0, COMMA451_tree);
+ COMMA459=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rmi_method5438);
+ COMMA459_tree = (CommonTree)adaptor.create(COMMA459);
+ adaptor.addChild(root_0, COMMA459_tree);
- INLINE_INDEX452=(Token)match(input,INLINE_INDEX,FOLLOW_INLINE_INDEX_in_insn_format3rmi_method5484);
- INLINE_INDEX452_tree = (CommonTree)adaptor.create(INLINE_INDEX452);
- adaptor.addChild(root_0, INLINE_INDEX452_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);
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rmi_METHOD447!=null?INSTRUCTION_FORMAT3rmi_METHOD447.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rmi_METHOD455!=null?INSTRUCTION_FORMAT3rmi_METHOD455.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -16382,62 +13703,62 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format3rms_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1080: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/antlr3/smaliParser.g:1067: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_METHOD453=null;
- Token OPEN_BRACE454=null;
- Token CLOSE_BRACE456=null;
- Token COMMA457=null;
- Token VTABLE_INDEX458=null;
- ParserRuleReturnScope register_range455 =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;
- CommonTree INSTRUCTION_FORMAT3rms_METHOD453_tree=null;
- CommonTree OPEN_BRACE454_tree=null;
- CommonTree CLOSE_BRACE456_tree=null;
- CommonTree COMMA457_tree=null;
- CommonTree VTABLE_INDEX458_tree=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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1081:3: ( INSTRUCTION_FORMAT3rms_METHOD OPEN_BRACE register_range CLOSE_BRACE COMMA VTABLE_INDEX )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1082:5: 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: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
{
root_0 = (CommonTree)adaptor.nil();
- INSTRUCTION_FORMAT3rms_METHOD453=(Token)match(input,INSTRUCTION_FORMAT3rms_METHOD,FOLLOW_INSTRUCTION_FORMAT3rms_METHOD_in_insn_format3rms_method5505);
- INSTRUCTION_FORMAT3rms_METHOD453_tree = (CommonTree)adaptor.create(INSTRUCTION_FORMAT3rms_METHOD453);
- adaptor.addChild(root_0, INSTRUCTION_FORMAT3rms_METHOD453_tree);
+ 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);
- OPEN_BRACE454=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_insn_format3rms_method5507);
- OPEN_BRACE454_tree = (CommonTree)adaptor.create(OPEN_BRACE454);
- adaptor.addChild(root_0, OPEN_BRACE454_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);
- pushFollow(FOLLOW_register_range_in_insn_format3rms_method5509);
- register_range455=register_range();
+ pushFollow(FOLLOW_register_range_in_insn_format3rms_method5465);
+ register_range463=register_range();
state._fsp--;
- adaptor.addChild(root_0, register_range455.getTree());
+ adaptor.addChild(root_0, register_range463.getTree());
- CLOSE_BRACE456=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_insn_format3rms_method5511);
- CLOSE_BRACE456_tree = (CommonTree)adaptor.create(CLOSE_BRACE456);
- adaptor.addChild(root_0, CLOSE_BRACE456_tree);
+ 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);
- COMMA457=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rms_method5513);
- COMMA457_tree = (CommonTree)adaptor.create(COMMA457);
- adaptor.addChild(root_0, COMMA457_tree);
+ COMMA465=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format3rms_method5469);
+ COMMA465_tree = (CommonTree)adaptor.create(COMMA465);
+ adaptor.addChild(root_0, COMMA465_tree);
- VTABLE_INDEX458=(Token)match(input,VTABLE_INDEX,FOLLOW_VTABLE_INDEX_in_insn_format3rms_method5515);
- VTABLE_INDEX458_tree = (CommonTree)adaptor.create(VTABLE_INDEX458);
- adaptor.addChild(root_0, VTABLE_INDEX458_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);
- throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rms_METHOD453!=null?INSTRUCTION_FORMAT3rms_METHOD453.getText():null));
-
+ throwOdexedInstructionException(input, (INSTRUCTION_FORMAT3rms_METHOD461!=null?INSTRUCTION_FORMAT3rms_METHOD461.getText():null));
+
}
retval.stop = input.LT(-1);
@@ -16467,58 +13788,58 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_format51l"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1087: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/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 ) ;
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_FORMAT51l459=null;
- Token REGISTER460=null;
- Token COMMA461=null;
- ParserRuleReturnScope fixed_literal462 =null;
+ Token INSTRUCTION_FORMAT51l467=null;
+ Token REGISTER468=null;
+ Token COMMA469=null;
+ ParserRuleReturnScope fixed_literal470 =null;
- CommonTree INSTRUCTION_FORMAT51l459_tree=null;
- CommonTree REGISTER460_tree=null;
- CommonTree COMMA461_tree=null;
+ CommonTree INSTRUCTION_FORMAT51l467_tree=null;
+ CommonTree REGISTER468_tree=null;
+ CommonTree COMMA469_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1088:3: ( INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1089:5: INSTRUCTION_FORMAT51l REGISTER COMMA fixed_literal
+ // /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
{
- INSTRUCTION_FORMAT51l459=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l5536);
- stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l459);
+ INSTRUCTION_FORMAT51l467=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l5492);
+ stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l467);
- REGISTER460=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l5538);
- stream_REGISTER.add(REGISTER460);
+ REGISTER468=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l5494);
+ stream_REGISTER.add(REGISTER468);
- COMMA461=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format51l5540);
- stream_COMMA.add(COMMA461);
+ COMMA469=(Token)match(input,COMMA,FOLLOW_COMMA_in_insn_format51l5496);
+ stream_COMMA.add(COMMA469);
- pushFollow(FOLLOW_fixed_literal_in_insn_format51l5542);
- fixed_literal462=fixed_literal();
+ pushFollow(FOLLOW_fixed_literal_in_insn_format51l5498);
+ fixed_literal470=fixed_literal();
state._fsp--;
- stream_fixed_literal.add(fixed_literal462.getTree());
+ stream_fixed_literal.add(fixed_literal470.getTree());
// AST REWRITE
- // elements: REGISTER, INSTRUCTION_FORMAT51l, fixed_literal
- // token labels:
+ // elements: REGISTER, fixed_literal, INSTRUCTION_FORMAT51l
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1090:5: -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal )
+ // 1077:5: -> ^( I_STATEMENT_FORMAT51l[$start, \"I_STATEMENT_FORMAT51l\"] INSTRUCTION_FORMAT51l REGISTER fixed_literal )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1090:8: ^( 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 )
{
CommonTree root_1 = (CommonTree)adaptor.nil();
root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_STATEMENT_FORMAT51l, (retval.start), "I_STATEMENT_FORMAT51l"), root_1);
@@ -16562,90 +13883,90 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_array_data_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1092: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/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 )* ) ) ;
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_DIRECTIVE463=null;
- Token END_ARRAY_DATA_DIRECTIVE466=null;
- ParserRuleReturnScope parsed_integer_literal464 =null;
- ParserRuleReturnScope fixed_literal465 =null;
+ Token ARRAY_DATA_DIRECTIVE471=null;
+ Token END_ARRAY_DATA_DIRECTIVE474=null;
+ ParserRuleReturnScope parsed_integer_literal472 =null;
+ ParserRuleReturnScope fixed_literal473 =null;
- CommonTree ARRAY_DATA_DIRECTIVE463_tree=null;
- CommonTree END_ARRAY_DATA_DIRECTIVE466_tree=null;
+ CommonTree ARRAY_DATA_DIRECTIVE471_tree=null;
+ CommonTree END_ARRAY_DATA_DIRECTIVE474_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1093: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 )* ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1093:5: ARRAY_DATA_DIRECTIVE parsed_integer_literal ( fixed_literal )* END_ARRAY_DATA_DIRECTIVE
+ // /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
{
- ARRAY_DATA_DIRECTIVE463=(Token)match(input,ARRAY_DATA_DIRECTIVE,FOLLOW_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5569);
- stream_ARRAY_DATA_DIRECTIVE.add(ARRAY_DATA_DIRECTIVE463);
+ 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);
- pushFollow(FOLLOW_parsed_integer_literal_in_insn_array_data_directive5575);
- parsed_integer_literal464=parsed_integer_literal();
+ pushFollow(FOLLOW_parsed_integer_literal_in_insn_array_data_directive5531);
+ parsed_integer_literal472=parsed_integer_literal();
state._fsp--;
- stream_parsed_integer_literal.add(parsed_integer_literal464.getTree());
+ stream_parsed_integer_literal.add(parsed_integer_literal472.getTree());
- int elementWidth = (parsed_integer_literal464!=null?((smaliParser.parsed_integer_literal_return)parsed_integer_literal464).value:0);
+ int elementWidth = (parsed_integer_literal472!=null?((smaliParser.parsed_integer_literal_return)parsed_integer_literal472).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);
}
-
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1101:5: ( fixed_literal )*
- loop45:
+
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1088:5: ( fixed_literal )*
+ loop50:
while (true) {
- int alt45=2;
- int LA45_0 = input.LA(1);
- if ( ((LA45_0 >= BOOL_LITERAL && LA45_0 <= BYTE_LITERAL)||LA45_0==CHAR_LITERAL||(LA45_0 >= DOUBLE_LITERAL && LA45_0 <= DOUBLE_LITERAL_OR_ID)||(LA45_0 >= FLOAT_LITERAL && LA45_0 <= FLOAT_LITERAL_OR_ID)||LA45_0==LONG_LITERAL||LA45_0==NEGATIVE_INTEGER_LITERAL||LA45_0==POSITIVE_INTEGER_LITERAL||LA45_0==SHORT_LITERAL) ) {
- alt45=1;
+ int alt50=2;
+ int LA50_0 = input.LA(1);
+ if ( ((LA50_0 >= BOOL_LITERAL && LA50_0 <= BYTE_LITERAL)||LA50_0==CHAR_LITERAL||(LA50_0 >= DOUBLE_LITERAL && LA50_0 <= DOUBLE_LITERAL_OR_ID)||(LA50_0 >= FLOAT_LITERAL && LA50_0 <= FLOAT_LITERAL_OR_ID)||LA50_0==LONG_LITERAL||LA50_0==NEGATIVE_INTEGER_LITERAL||LA50_0==POSITIVE_INTEGER_LITERAL||LA50_0==SHORT_LITERAL) ) {
+ alt50=1;
}
- switch (alt45) {
+ switch (alt50) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1101:5: fixed_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1088:5: fixed_literal
{
- pushFollow(FOLLOW_fixed_literal_in_insn_array_data_directive5587);
- fixed_literal465=fixed_literal();
+ pushFollow(FOLLOW_fixed_literal_in_insn_array_data_directive5543);
+ fixed_literal473=fixed_literal();
state._fsp--;
- stream_fixed_literal.add(fixed_literal465.getTree());
+ stream_fixed_literal.add(fixed_literal473.getTree());
}
break;
default :
- break loop45;
+ break loop50;
}
}
- END_ARRAY_DATA_DIRECTIVE466=(Token)match(input,END_ARRAY_DATA_DIRECTIVE,FOLLOW_END_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5590);
- stream_END_ARRAY_DATA_DIRECTIVE.add(END_ARRAY_DATA_DIRECTIVE466);
+ 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);
// AST REWRITE
// elements: fixed_literal, parsed_integer_literal
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1103:5: -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) )
+ // 1090:5: -> ^( I_STATEMENT_ARRAY_DATA[$start, \"I_STATEMENT_ARRAY_DATA\"] ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal ) ^( I_ARRAY_ELEMENTS ( fixed_literal )* ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1103: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/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 )* ) )
{
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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1103:67: ^( I_ARRAY_ELEMENT_SIZE parsed_integer_literal )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1090: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);
@@ -16653,11 +13974,11 @@ public class smaliParser extends Parser {
adaptor.addChild(root_1, root_2);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1104:8: ^( I_ARRAY_ELEMENTS ( fixed_literal )* )
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1091: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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1104:27: ( fixed_literal )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1091:27: ( fixed_literal )*
while ( stream_fixed_literal.hasNext() ) {
adaptor.addChild(root_2, stream_fixed_literal.nextTree());
}
@@ -16703,84 +14024,84 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_packed_switch_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1106: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/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 )* ) ) ;
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_DIRECTIVE467=null;
- Token END_PACKED_SWITCH_DIRECTIVE470=null;
- ParserRuleReturnScope fixed_32bit_literal468 =null;
- ParserRuleReturnScope label_ref469 =null;
+ Token PACKED_SWITCH_DIRECTIVE475=null;
+ Token END_PACKED_SWITCH_DIRECTIVE478=null;
+ ParserRuleReturnScope fixed_32bit_literal476 =null;
+ ParserRuleReturnScope label_ref477 =null;
- CommonTree PACKED_SWITCH_DIRECTIVE467_tree=null;
- CommonTree END_PACKED_SWITCH_DIRECTIVE470_tree=null;
+ CommonTree PACKED_SWITCH_DIRECTIVE475_tree=null;
+ CommonTree END_PACKED_SWITCH_DIRECTIVE478_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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1107: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 )* ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1107:9: PACKED_SWITCH_DIRECTIVE fixed_32bit_literal ( label_ref )* END_PACKED_SWITCH_DIRECTIVE
+ // /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
{
- PACKED_SWITCH_DIRECTIVE467=(Token)match(input,PACKED_SWITCH_DIRECTIVE,FOLLOW_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5636);
- stream_PACKED_SWITCH_DIRECTIVE.add(PACKED_SWITCH_DIRECTIVE467);
+ 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);
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive5642);
- fixed_32bit_literal468=fixed_32bit_literal();
+ pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive5598);
+ fixed_32bit_literal476=fixed_32bit_literal();
state._fsp--;
- stream_fixed_32bit_literal.add(fixed_32bit_literal468.getTree());
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1109:5: ( label_ref )*
- loop46:
+ 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 )*
+ loop51:
while (true) {
- int alt46=2;
- int LA46_0 = input.LA(1);
- if ( (LA46_0==COLON) ) {
- alt46=1;
+ int alt51=2;
+ int LA51_0 = input.LA(1);
+ if ( (LA51_0==COLON) ) {
+ alt51=1;
}
- switch (alt46) {
+ switch (alt51) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1109:5: label_ref
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1096:5: label_ref
{
- pushFollow(FOLLOW_label_ref_in_insn_packed_switch_directive5648);
- label_ref469=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_packed_switch_directive5604);
+ label_ref477=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref469.getTree());
+ stream_label_ref.add(label_ref477.getTree());
}
break;
default :
- break loop46;
+ break loop51;
}
}
- END_PACKED_SWITCH_DIRECTIVE470=(Token)match(input,END_PACKED_SWITCH_DIRECTIVE,FOLLOW_END_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5655);
- stream_END_PACKED_SWITCH_DIRECTIVE.add(END_PACKED_SWITCH_DIRECTIVE470);
+ 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);
// AST REWRITE
- // elements: label_ref, fixed_32bit_literal
- // token labels:
+ // elements: fixed_32bit_literal, label_ref
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1111: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 )* ) )
+ // 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 )* ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1111: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/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 )* ) )
{
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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1112: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/antlr3/smaliParser.g:1099: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);
@@ -16788,11 +14109,11 @@ public class smaliParser extends Parser {
adaptor.addChild(root_1, root_2);
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1113:10: ^( I_PACKED_SWITCH_ELEMENTS[$start, \"I_PACKED_SWITCH_ELEMENTS\"] ( label_ref )* )
+ // /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 )* )
{
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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1114:11: ( label_ref )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1101:11: ( label_ref )*
while ( stream_label_ref.hasNext() ) {
adaptor.addChild(root_2, stream_label_ref.nextTree());
}
@@ -16838,22 +14159,22 @@ public class smaliParser extends Parser {
// $ANTLR start "insn_sparse_switch_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1117: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/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 )* ) ) ;
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_DIRECTIVE471=null;
- Token ARROW473=null;
- Token END_SPARSE_SWITCH_DIRECTIVE475=null;
- ParserRuleReturnScope fixed_32bit_literal472 =null;
- ParserRuleReturnScope label_ref474 =null;
+ Token SPARSE_SWITCH_DIRECTIVE479=null;
+ Token ARROW481=null;
+ Token END_SPARSE_SWITCH_DIRECTIVE483=null;
+ ParserRuleReturnScope fixed_32bit_literal480 =null;
+ ParserRuleReturnScope label_ref482 =null;
- CommonTree SPARSE_SWITCH_DIRECTIVE471_tree=null;
- CommonTree ARROW473_tree=null;
- CommonTree END_SPARSE_SWITCH_DIRECTIVE475_tree=null;
+ CommonTree SPARSE_SWITCH_DIRECTIVE479_tree=null;
+ CommonTree ARROW481_tree=null;
+ CommonTree END_SPARSE_SWITCH_DIRECTIVE483_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");
@@ -16861,71 +14182,71 @@ public class smaliParser extends Parser {
RewriteRuleSubtreeStream stream_label_ref=new RewriteRuleSubtreeStream(adaptor,"rule label_ref");
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1118: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 )* ) ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1118:7: SPARSE_SWITCH_DIRECTIVE ( fixed_32bit_literal ARROW label_ref )* END_SPARSE_SWITCH_DIRECTIVE
+ // /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
{
- SPARSE_SWITCH_DIRECTIVE471=(Token)match(input,SPARSE_SWITCH_DIRECTIVE,FOLLOW_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5729);
- stream_SPARSE_SWITCH_DIRECTIVE.add(SPARSE_SWITCH_DIRECTIVE471);
+ 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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1119:5: ( fixed_32bit_literal ARROW label_ref )*
- loop47:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1106:5: ( fixed_32bit_literal ARROW label_ref )*
+ loop52:
while (true) {
- int alt47=2;
- int LA47_0 = input.LA(1);
- if ( ((LA47_0 >= BOOL_LITERAL && LA47_0 <= BYTE_LITERAL)||LA47_0==CHAR_LITERAL||(LA47_0 >= FLOAT_LITERAL && LA47_0 <= FLOAT_LITERAL_OR_ID)||LA47_0==LONG_LITERAL||LA47_0==NEGATIVE_INTEGER_LITERAL||LA47_0==POSITIVE_INTEGER_LITERAL||LA47_0==SHORT_LITERAL) ) {
- alt47=1;
+ int alt52=2;
+ int LA52_0 = input.LA(1);
+ if ( ((LA52_0 >= BOOL_LITERAL && LA52_0 <= BYTE_LITERAL)||LA52_0==CHAR_LITERAL||(LA52_0 >= FLOAT_LITERAL && LA52_0 <= FLOAT_LITERAL_OR_ID)||LA52_0==LONG_LITERAL||LA52_0==NEGATIVE_INTEGER_LITERAL||LA52_0==POSITIVE_INTEGER_LITERAL||LA52_0==SHORT_LITERAL) ) {
+ alt52=1;
}
- switch (alt47) {
+ switch (alt52) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1119:6: fixed_32bit_literal ARROW label_ref
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliParser.g:1106:6: fixed_32bit_literal ARROW label_ref
{
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_sparse_switch_directive5736);
- fixed_32bit_literal472=fixed_32bit_literal();
+ pushFollow(FOLLOW_fixed_32bit_literal_in_insn_sparse_switch_directive5692);
+ fixed_32bit_literal480=fixed_32bit_literal();
state._fsp--;
- stream_fixed_32bit_literal.add(fixed_32bit_literal472.getTree());
- ARROW473=(Token)match(input,ARROW,FOLLOW_ARROW_in_insn_sparse_switch_directive5738);
- stream_ARROW.add(ARROW473);
+ 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);
- pushFollow(FOLLOW_label_ref_in_insn_sparse_switch_directive5740);
- label_ref474=label_ref();
+ pushFollow(FOLLOW_label_ref_in_insn_sparse_switch_directive5696);
+ label_ref482=label_ref();
state._fsp--;
- stream_label_ref.add(label_ref474.getTree());
+ stream_label_ref.add(label_ref482.getTree());
}
break;
default :
- break loop47;
+ break loop52;
}
}
- END_SPARSE_SWITCH_DIRECTIVE475=(Token)match(input,END_SPARSE_SWITCH_DIRECTIVE,FOLLOW_END_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5748);
- stream_END_SPARSE_SWITCH_DIRECTIVE.add(END_SPARSE_SWITCH_DIRECTIVE475);
+ 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);
// AST REWRITE
// elements: label_ref, fixed_32bit_literal
- // token labels:
+ // token labels:
// rule labels: retval
- // token list labels:
- // rule list labels:
- // wildcard labels:
+ // 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();
- // 1121:5: -> ^( I_STATEMENT_SPARSE_SWITCH[$start, \"I_STATEMENT_SPARSE_SWITCH\"] ^( I_SPARSE_SWITCH_ELEMENTS[$start, \"I_SPARSE_SWITCH_ELEMENTS\"] ( fixed_32bit_literal label_ref )* ) )
+ // 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 )* ) )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1121: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/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 )* ) )
{
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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1122: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/antlr3/smaliParser.g:1109: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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:1122:71: ( fixed_32bit_literal label_ref )*
+ // /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() ) {
adaptor.addChild(root_2, stream_fixed_32bit_literal.nextTree());
adaptor.addChild(root_2, stream_label_ref.nextTree());
@@ -16967,23 +14288,237 @@ public class smaliParser extends Parser {
// Delegated rules
- protected DFA33 dfa33 = new DFA33(this);
- static final String DFA33_eotS =
+ protected DFA28 dfa28 = new DFA28(this);
+ protected DFA36 dfa36 = new DFA36(this);
+ protected DFA38 dfa38 = new DFA38(this);
+ static final String DFA28_eotS =
+ "\55\uffff";
+ static final String DFA28_eofS =
+ "\55\uffff";
+ static final String DFA28_minS =
+ "\1\4\12\23\1\u00b8\35\23\2\uffff\1\u00b4\1\23";
+ static final String DFA28_maxS =
+ "\1\u00c5\12\u00b0\1\u00b8\35\u00b0\2\uffff\1\u00b8\1\u00b0";
+ static final String DFA28_acceptS =
+ "\51\uffff\1\1\1\2\2\uffff";
+ static final String DFA28_specialS =
+ "\55\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\54\3\uffff\1\53",
+ "\1\51\u009c\uffff\1\52"
+ };
+
+ static final short[] DFA28_eot = DFA.unpackEncodedString(DFA28_eotS);
+ static final short[] DFA28_eof = DFA.unpackEncodedString(DFA28_eofS);
+ static final char[] DFA28_min = DFA.unpackEncodedStringToUnsignedChars(DFA28_minS);
+ static final char[] DFA28_max = DFA.unpackEncodedStringToUnsignedChars(DFA28_maxS);
+ static final short[] DFA28_accept = DFA.unpackEncodedString(DFA28_acceptS);
+ static final short[] DFA28_special = DFA.unpackEncodedString(DFA28_specialS);
+ static final short[][] DFA28_transition;
+
+ static {
+ int numStates = DFA28_transitionS.length;
+ DFA28_transition = new short[numStates][];
+ for (int i=0; i<numStates; i++) {
+ DFA28_transition[i] = DFA.unpackEncodedString(DFA28_transitionS[i]);
+ }
+ }
+
+ protected class DFA28 extends DFA {
+
+ public DFA28(BaseRecognizer recognizer) {
+ this.recognizer = recognizer;
+ this.decisionNumber = 28;
+ this.eot = DFA28_eot;
+ this.eof = DFA28_eof;
+ this.min = DFA28_min;
+ this.max = DFA28_max;
+ this.accept = DFA28_accept;
+ this.special = DFA28_special;
+ this.transition = DFA28_transition;
+ }
+ @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 ) )";
+ }
+ }
+
+ static final String DFA36_eotS =
+ "\61\uffff";
+ static final String DFA36_eofS =
+ "\61\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";
+ 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";
+ static final String DFA36_acceptS =
+ "\53\uffff\1\1\1\uffff\1\2\1\3\2\uffff";
+ static final String DFA36_specialS =
+ "\61\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\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",
+ "",
+ "",
+ "\1\60\3\uffff\1\57",
+ "\1\55\u009c\uffff\1\56"
+ };
+
+ static final short[] DFA36_eot = DFA.unpackEncodedString(DFA36_eotS);
+ static final short[] DFA36_eof = DFA.unpackEncodedString(DFA36_eofS);
+ static final char[] DFA36_min = DFA.unpackEncodedStringToUnsignedChars(DFA36_minS);
+ static final char[] DFA36_max = DFA.unpackEncodedStringToUnsignedChars(DFA36_maxS);
+ static final short[] DFA36_accept = DFA.unpackEncodedString(DFA36_acceptS);
+ static final short[] DFA36_special = DFA.unpackEncodedString(DFA36_specialS);
+ static final short[][] DFA36_transition;
+
+ static {
+ int numStates = DFA36_transitionS.length;
+ DFA36_transition = new short[numStates][];
+ for (int i=0; i<numStates; i++) {
+ DFA36_transition[i] = DFA.unpackEncodedString(DFA36_transitionS[i]);
+ }
+ }
+
+ protected class DFA36 extends DFA {
+
+ public DFA36(BaseRecognizer recognizer) {
+ this.recognizer = recognizer;
+ this.decisionNumber = 36;
+ this.eot = DFA36_eot;
+ this.eof = DFA36_eof;
+ this.min = DFA36_min;
+ this.max = DFA36_max;
+ this.accept = DFA36_accept;
+ this.special = DFA36_special;
+ this.transition = DFA36_transition;
+ }
+ @Override
+ public String getDescription() {
+ return "718:1: verification_error_reference : ( CLASS_DESCRIPTOR | field_reference | method_reference );";
+ }
+ }
+
+ static final String DFA38_eotS =
"\101\uffff";
- static final String DFA33_eofS =
+ static final String DFA38_eofS =
"\101\uffff";
- static final String DFA33_minS =
+ static final String DFA38_minS =
"\1\5\76\uffff\1\0\1\uffff";
- static final String DFA33_maxS =
- "\1\u00cf\76\uffff\1\0\1\uffff";
- static final String DFA33_acceptS =
+ static final String DFA38_maxS =
+ "\1\u00c0\76\uffff\1\0\1\uffff";
+ static final String DFA38_acceptS =
"\1\uffff\1\2\76\uffff\1\1";
- static final String DFA33_specialS =
+ static final String DFA38_specialS =
"\77\uffff\1\0\1\uffff}>";
- static final String[] DFA33_transitionS = {
- "\1\77\1\uffff\1\1\17\uffff\2\1\5\uffff\1\1\10\uffff\2\1\1\uffff\1\1\3"+
- "\uffff\1\1\13\uffff\54\1\122\uffff\3\1\7\uffff\2\1\4\uffff\1\1\1\uffff"+
- "\2\1\2\uffff\2\1",
+ 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",
"",
"",
"",
@@ -17050,548 +14585,556 @@ public class smaliParser extends Parser {
""
};
- static final short[] DFA33_eot = DFA.unpackEncodedString(DFA33_eotS);
- static final short[] DFA33_eof = DFA.unpackEncodedString(DFA33_eofS);
- static final char[] DFA33_min = DFA.unpackEncodedStringToUnsignedChars(DFA33_minS);
- static final char[] DFA33_max = DFA.unpackEncodedStringToUnsignedChars(DFA33_maxS);
- static final short[] DFA33_accept = DFA.unpackEncodedString(DFA33_acceptS);
- static final short[] DFA33_special = DFA.unpackEncodedString(DFA33_specialS);
- static final short[][] DFA33_transition;
+ static final short[] DFA38_eot = DFA.unpackEncodedString(DFA38_eotS);
+ static final short[] DFA38_eof = DFA.unpackEncodedString(DFA38_eofS);
+ static final char[] DFA38_min = DFA.unpackEncodedStringToUnsignedChars(DFA38_minS);
+ static final char[] DFA38_max = DFA.unpackEncodedStringToUnsignedChars(DFA38_maxS);
+ static final short[] DFA38_accept = DFA.unpackEncodedString(DFA38_acceptS);
+ static final short[] DFA38_special = DFA.unpackEncodedString(DFA38_specialS);
+ static final short[][] DFA38_transition;
static {
- int numStates = DFA33_transitionS.length;
- DFA33_transition = new short[numStates][];
+ int numStates = DFA38_transitionS.length;
+ DFA38_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
- DFA33_transition[i] = DFA.unpackEncodedString(DFA33_transitionS[i]);
+ DFA38_transition[i] = DFA.unpackEncodedString(DFA38_transitionS[i]);
}
}
- protected class DFA33 extends DFA {
+ protected class DFA38 extends DFA {
- public DFA33(BaseRecognizer recognizer) {
+ public DFA38(BaseRecognizer recognizer) {
this.recognizer = recognizer;
- this.decisionNumber = 33;
- this.eot = DFA33_eot;
- this.eof = DFA33_eof;
- this.min = DFA33_min;
- this.max = DFA33_max;
- this.accept = DFA33_accept;
- this.special = DFA33_special;
- this.transition = DFA33_transition;
+ this.decisionNumber = 38;
+ this.eot = DFA38_eot;
+ this.eof = DFA38_eof;
+ this.min = DFA38_min;
+ this.max = DFA38_max;
+ this.accept = DFA38_accept;
+ this.special = DFA38_special;
+ this.transition = DFA38_transition;
}
@Override
public String getDescription() {
- return "()* loopback of 749:5: ({...}? annotation )*";
+ return "()* loopback of 736:5: ({...}? annotation )*";
}
@Override
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
- case 0 :
- int LA33_63 = input.LA(1);
-
- int index33_63 = input.index();
+ case 0 :
+ int LA38_63 = input.LA(1);
+
+ int index38_63 = input.index();
input.rewind();
s = -1;
if ( ((input.LA(1) == ANNOTATION_DIRECTIVE)) ) {s = 64;}
else if ( (true) ) {s = 1;}
-
- input.seek(index33_63);
+
+ input.seek(index38_63);
if ( s>=0 ) return s;
break;
}
NoViableAltException nvae =
- new NoViableAltException(getDescription(), 33, _s, input);
+ new NoViableAltException(getDescription(), 38, _s, input);
error(nvae);
throw nvae;
}
}
- public static final BitSet FOLLOW_class_spec_in_smali_file1145 = new BitSet(new long[]{0x0102000008000020L,0x0000000000000000L,0x2000000000000000L,0x0000000000044000L});
- public static final BitSet FOLLOW_super_spec_in_smali_file1156 = new BitSet(new long[]{0x0102000008000020L,0x0000000000000000L,0x2000000000000000L,0x0000000000044000L});
- public static final BitSet FOLLOW_implements_spec_in_smali_file1164 = new BitSet(new long[]{0x0102000008000020L,0x0000000000000000L,0x2000000000000000L,0x0000000000044000L});
- public static final BitSet FOLLOW_source_spec_in_smali_file1173 = new BitSet(new long[]{0x0102000008000020L,0x0000000000000000L,0x2000000000000000L,0x0000000000044000L});
- public static final BitSet FOLLOW_method_in_smali_file1181 = new BitSet(new long[]{0x0102000008000020L,0x0000000000000000L,0x2000000000000000L,0x0000000000044000L});
- public static final BitSet FOLLOW_field_in_smali_file1187 = new BitSet(new long[]{0x0102000008000020L,0x0000000000000000L,0x2000000000000000L,0x0000000000044000L});
- public static final BitSet FOLLOW_annotation_in_smali_file1193 = new BitSet(new long[]{0x0102000008000020L,0x0000000000000000L,0x2000000000000000L,0x0000000000044000L});
- public static final BitSet FOLLOW_EOF_in_smali_file1204 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CLASS_DIRECTIVE_in_class_spec1291 = new BitSet(new long[]{0x0000000004000010L});
- public static final BitSet FOLLOW_access_list_in_class_spec1293 = new BitSet(new long[]{0x0000000004000000L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec1295 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SUPER_DIRECTIVE_in_super_spec1313 = new BitSet(new long[]{0x0000000004000000L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_super_spec1315 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1334 = new BitSet(new long[]{0x0000000004000000L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1336 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SOURCE_DIRECTIVE_in_source_spec1355 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_source_spec1357 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ACCESS_SPEC_in_access_list1376 = new BitSet(new long[]{0x0000000000000012L});
- public static final BitSet FOLLOW_FIELD_DIRECTIVE_in_field1407 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xD000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_access_list_in_field1409 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xD000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_member_name_in_field1411 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_COLON_in_field1413 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field1415 = new BitSet(new long[]{0x0000804000000022L});
- public static final BitSet FOLLOW_EQUAL_in_field1418 = new BitSet(new long[]{0x0018200C06600100L,0x0000000000000000L,0xC800000000000000L,0x00000000001310C1L});
- public static final BitSet FOLLOW_literal_in_field1420 = new BitSet(new long[]{0x0000004000000022L});
- public static final BitSet FOLLOW_annotation_in_field1433 = new BitSet(new long[]{0x0000004000000022L});
- public static final BitSet FOLLOW_END_FIELD_DIRECTIVE_in_field1447 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_METHOD_DIRECTIVE_in_method1558 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xD000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_access_list_in_method1560 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xD000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_member_name_in_method1562 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L});
- public static final BitSet FOLLOW_method_prototype_in_method1564 = new BitSet(new long[]{0xFC004180418000A0L,0x0000003FFFFFFFFFL,0x0700000000000000L,0x000000000000CD0CL});
- public static final BitSet FOLLOW_statements_and_directives_in_method1566 = new BitSet(new long[]{0x0000010000000000L});
- public static final BitSet FOLLOW_END_METHOD_DIRECTIVE_in_method1572 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ordered_method_item_in_statements_and_directives1617 = new BitSet(new long[]{0xFC004080418000A2L,0x0000003FFFFFFFFFL,0x0700000000000000L,0x000000000000CD0CL});
- public static final BitSet FOLLOW_registers_directive_in_statements_and_directives1625 = new BitSet(new long[]{0xFC004080418000A2L,0x0000003FFFFFFFFFL,0x0700000000000000L,0x000000000000CD0CL});
- public static final BitSet FOLLOW_catch_directive_in_statements_and_directives1633 = new BitSet(new long[]{0xFC004080418000A2L,0x0000003FFFFFFFFFL,0x0700000000000000L,0x000000000000CD0CL});
- public static final BitSet FOLLOW_catchall_directive_in_statements_and_directives1641 = new BitSet(new long[]{0xFC004080418000A2L,0x0000003FFFFFFFFFL,0x0700000000000000L,0x000000000000CD0CL});
- public static final BitSet FOLLOW_parameter_directive_in_statements_and_directives1649 = new BitSet(new long[]{0xFC004080418000A2L,0x0000003FFFFFFFFFL,0x0700000000000000L,0x000000000000CD0CL});
- public static final BitSet FOLLOW_annotation_in_statements_and_directives1657 = new BitSet(new long[]{0xFC004080418000A2L,0x0000003FFFFFFFFFL,0x0700000000000000L,0x000000000000CD0CL});
- public static final BitSet FOLLOW_label_in_ordered_method_item1742 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_instruction_in_ordered_method_item1748 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_debug_directive_in_ordered_method_item1754 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1774 = new BitSet(new long[]{0x0000000002400000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_integral_literal_in_registers_directive1778 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1798 = new BitSet(new long[]{0x0000000002400000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_integral_literal_in_registers_directive1802 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SIMPLE_NAME_in_simple_name1836 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ACCESS_SPEC_in_simple_name1842 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1853 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1864 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1875 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1886 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1897 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BOOL_LITERAL_in_simple_name1908 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_NULL_LITERAL_in_simple_name1919 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_REGISTER_in_simple_name1930 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PARAM_LIST_OR_ID_in_simple_name1941 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_simple_name1952 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_VOID_TYPE_in_simple_name1963 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1974 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1985 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1996 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name2007 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name2018 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name2029 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name2040 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name2051 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2062 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2073 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2084 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2095 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2106 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2117 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2128 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2139 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2150 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2161 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2172 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2183 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2194 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2205 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2216 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2227 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2238 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2249 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_simple_name_in_member_name2264 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_MEMBER_NAME_in_member_name2270 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_OPEN_PAREN_in_method_prototype2285 = new BitSet(new long[]{0x0000000024000100L,0x0000000000000000L,0x0000000000000000L,0x00000000000000B0L});
- public static final BitSet FOLLOW_param_list_in_method_prototype2287 = new BitSet(new long[]{0x0000000020000000L});
- public static final BitSet FOLLOW_CLOSE_PAREN_in_method_prototype2289 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000100080L});
- public static final BitSet FOLLOW_type_descriptor_in_method_prototype2291 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PARAM_LIST_in_param_list2321 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PARAM_LIST_OR_ID_in_param_list2331 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_param_list2341 = new BitSet(new long[]{0x0000000004000102L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2418 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2429 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_FLOAT_LITERAL_OR_ID_in_float_literal2444 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_FLOAT_LITERAL_in_float_literal2455 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_DOUBLE_LITERAL_OR_ID_in_double_literal2465 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_DOUBLE_LITERAL_in_double_literal2476 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LONG_LITERAL_in_literal2486 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_integer_literal_in_literal2492 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SHORT_LITERAL_in_literal2498 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BYTE_LITERAL_in_literal2504 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_float_literal_in_literal2510 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_double_literal_in_literal2516 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CHAR_LITERAL_in_literal2522 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_literal2528 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BOOL_LITERAL_in_literal2534 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_NULL_LITERAL_in_literal2540 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_array_literal_in_literal2546 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_subannotation_in_literal2552 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_type_field_method_literal_in_literal2558 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_enum_literal_in_literal2564 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_integer_literal_in_parsed_integer_literal2577 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LONG_LITERAL_in_integral_literal2589 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_integer_literal_in_integral_literal2595 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SHORT_LITERAL_in_integral_literal2601 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CHAR_LITERAL_in_integral_literal2607 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BYTE_LITERAL_in_integral_literal2613 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LONG_LITERAL_in_fixed_32bit_literal2623 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_integer_literal_in_fixed_32bit_literal2629 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SHORT_LITERAL_in_fixed_32bit_literal2635 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BYTE_LITERAL_in_fixed_32bit_literal2641 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_float_literal_in_fixed_32bit_literal2647 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CHAR_LITERAL_in_fixed_32bit_literal2653 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BOOL_LITERAL_in_fixed_32bit_literal2659 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_integer_literal_in_fixed_literal2669 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LONG_LITERAL_in_fixed_literal2675 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SHORT_LITERAL_in_fixed_literal2681 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BYTE_LITERAL_in_fixed_literal2687 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_float_literal_in_fixed_literal2693 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_double_literal_in_fixed_literal2699 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CHAR_LITERAL_in_fixed_literal2705 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BOOL_LITERAL_in_fixed_literal2711 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_array_literal2721 = new BitSet(new long[]{0x0018200C16600100L,0x0000000000000000L,0xC800000000000000L,0x00000000001310C1L});
- public static final BitSet FOLLOW_literal_in_array_literal2724 = new BitSet(new long[]{0x0000000090000000L});
- public static final BitSet FOLLOW_COMMA_in_array_literal2727 = new BitSet(new long[]{0x0018200C06600100L,0x0000000000000000L,0xC800000000000000L,0x00000000001310C1L});
- public static final BitSet FOLLOW_literal_in_array_literal2729 = new BitSet(new long[]{0x0000000090000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_array_literal2737 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_simple_name_in_annotation_element2761 = new BitSet(new long[]{0x0000800000000000L});
- public static final BitSet FOLLOW_EQUAL_in_annotation_element2763 = new BitSet(new long[]{0x0018200C06600100L,0x0000000000000000L,0xC800000000000000L,0x00000000001310C1L});
- public static final BitSet FOLLOW_literal_in_annotation_element2765 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2790 = new BitSet(new long[]{0x0000000000000040L});
- public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_annotation2792 = new BitSet(new long[]{0x0000000004000000L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_annotation2794 = new BitSet(new long[]{0x5C10001800200050L,0x00000020FB16F479L,0xC000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_annotation_element_in_annotation2800 = new BitSet(new long[]{0x5C10001800200050L,0x00000020FB16F479L,0xC000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2803 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2836 = new BitSet(new long[]{0x0000000004000000L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_subannotation2838 = new BitSet(new long[]{0x5C10100800200050L,0x00000020FB16F479L,0xC000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_annotation_element_in_subannotation2840 = new BitSet(new long[]{0x5C10100800200050L,0x00000020FB16F479L,0xC000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2843 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ENUM_DIRECTIVE_in_enum_literal2869 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_reference_type_descriptor_in_enum_literal2871 = new BitSet(new long[]{0x0000000000000200L});
- public static final BitSet FOLLOW_ARROW_in_enum_literal2873 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xC000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_simple_name_in_enum_literal2875 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_COLON_in_enum_literal2877 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_reference_type_descriptor_in_enum_literal2879 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_reference_type_descriptor_in_type_field_method_literal2903 = new BitSet(new long[]{0x0000000000000202L});
- public static final BitSet FOLLOW_ARROW_in_type_field_method_literal2911 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xD000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_member_name_in_type_field_method_literal2921 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_COLON_in_type_field_method_literal2923 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2925 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_member_name_in_type_field_method_literal2947 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L});
- public static final BitSet FOLLOW_method_prototype_in_type_field_method_literal2949 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PRIMITIVE_TYPE_in_type_field_method_literal2991 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_VOID_TYPE_in_type_field_method_literal2997 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_reference_type_descriptor_in_fully_qualified_method3007 = new BitSet(new long[]{0x0000000000000200L});
- public static final BitSet FOLLOW_ARROW_in_fully_qualified_method3009 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xD000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_member_name_in_fully_qualified_method3011 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000002L});
- public static final BitSet FOLLOW_method_prototype_in_fully_qualified_method3013 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_reference_type_descriptor_in_fully_qualified_field3033 = new BitSet(new long[]{0x0000000000000200L});
- public static final BitSet FOLLOW_ARROW_in_fully_qualified_field3035 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xD000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_member_name_in_fully_qualified_field3037 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_COLON_in_fully_qualified_field3039 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_fully_qualified_field3041 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_COLON_in_label3061 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xC000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_simple_name_in_label3063 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_COLON_in_label_ref3082 = new BitSet(new long[]{0x5C10000800200050L,0x00000020FB16F479L,0xC000000000000000L,0x00000000001822E0L});
- public static final BitSet FOLLOW_simple_name_in_label_ref3084 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_REGISTER_in_register_list3098 = new BitSet(new long[]{0x0000000080000002L});
- public static final BitSet FOLLOW_COMMA_in_register_list3101 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_register_list3103 = new BitSet(new long[]{0x0000000080000002L});
- public static final BitSet FOLLOW_REGISTER_in_register_range3138 = new BitSet(new long[]{0x0000000200000002L});
- public static final BitSet FOLLOW_DOTDOT_in_register_range3141 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_register_range3145 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference3174 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_fully_qualified_field_in_verification_error_reference3178 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_fully_qualified_method_in_verification_error_reference3182 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CATCH_DIRECTIVE_in_catch_directive3192 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_catch_directive3194 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_catch_directive3196 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_catch_directive3200 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_DOTDOT_in_catch_directive3202 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_catch_directive3206 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_catch_directive3208 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_catch_directive3212 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CATCHALL_DIRECTIVE_in_catchall_directive3244 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_catchall_directive3246 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_catchall_directive3250 = new BitSet(new long[]{0x0000000200000000L});
- public static final BitSet FOLLOW_DOTDOT_in_catchall_directive3252 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_catchall_directive3256 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_catchall_directive3258 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_catchall_directive3262 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PARAMETER_DIRECTIVE_in_parameter_directive3301 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_parameter_directive3303 = new BitSet(new long[]{0x0000040080000022L});
- public static final BitSet FOLLOW_COMMA_in_parameter_directive3306 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_parameter_directive3308 = new BitSet(new long[]{0x0000040000000022L});
- public static final BitSet FOLLOW_annotation_in_parameter_directive3319 = new BitSet(new long[]{0x0000040000000022L});
- public static final BitSet FOLLOW_END_PARAMETER_DIRECTIVE_in_parameter_directive3332 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_line_directive_in_debug_directive3405 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_local_directive_in_debug_directive3411 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_end_local_directive_in_debug_directive3417 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_restart_local_directive_in_debug_directive3423 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_prologue_directive_in_debug_directive3429 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_epilogue_directive_in_debug_directive3435 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_source_directive_in_debug_directive3441 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LINE_DIRECTIVE_in_line_directive3451 = new BitSet(new long[]{0x0000000002400000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_integral_literal_in_line_directive3453 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LOCAL_DIRECTIVE_in_local_directive3476 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_local_directive3478 = new BitSet(new long[]{0x0000000080000002L});
- public static final BitSet FOLLOW_COMMA_in_local_directive3481 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x8000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_NULL_LITERAL_in_local_directive3484 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_local_directive3490 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_COLON_in_local_directive3493 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000100080L});
- public static final BitSet FOLLOW_VOID_TYPE_in_local_directive3496 = new BitSet(new long[]{0x0000000080000002L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_local_directive3500 = new BitSet(new long[]{0x0000000080000002L});
- public static final BitSet FOLLOW_COMMA_in_local_directive3534 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_local_directive3538 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_END_LOCAL_DIRECTIVE_in_end_local_directive3580 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_end_local_directive3582 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_RESTART_LOCAL_DIRECTIVE_in_restart_local_directive3605 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_restart_local_directive3607 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PROLOGUE_DIRECTIVE_in_prologue_directive3630 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_EPILOGUE_DIRECTIVE_in_epilogue_directive3651 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SOURCE_DIRECTIVE_in_source_directive3672 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_source_directive3674 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_in_instruction_format12x3699 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_instruction_format12x3705 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_in_instruction_format22s3720 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_instruction_format22s3726 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_in_instruction_format31i3741 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_instruction_format31i3747 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format10t_in_instruction3764 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format10x_in_instruction3770 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format10x_odex_in_instruction3776 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format11n_in_instruction3782 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format11x_in_instruction3788 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format12x_in_instruction3794 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format20bc_in_instruction3800 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format20t_in_instruction3806 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21c_field_in_instruction3812 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21c_field_odex_in_instruction3818 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21c_string_in_instruction3824 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21c_type_in_instruction3830 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21ih_in_instruction3836 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21lh_in_instruction3842 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21s_in_instruction3848 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21t_in_instruction3854 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22b_in_instruction3860 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22c_field_in_instruction3866 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22c_field_odex_in_instruction3872 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22c_type_in_instruction3878 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22cs_field_in_instruction3884 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22s_in_instruction3890 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22t_in_instruction3896 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22x_in_instruction3902 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format23x_in_instruction3908 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format30t_in_instruction3914 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format31c_in_instruction3920 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format31i_in_instruction3926 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format31t_in_instruction3932 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format32x_in_instruction3938 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format35c_method_in_instruction3944 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format35c_type_in_instruction3950 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format35c_method_odex_in_instruction3956 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format35mi_method_in_instruction3962 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format35ms_method_in_instruction3968 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format3rc_method_in_instruction3974 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format3rc_method_odex_in_instruction3980 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format3rc_type_in_instruction3986 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format3rmi_method_in_instruction3992 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format3rms_method_in_instruction3998 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format51l_in_instruction4004 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_array_data_directive_in_instruction4010 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_packed_switch_directive_in_instruction4016 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_sparse_switch_directive_in_instruction4022 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t4042 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format10t4044 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x4074 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_insn_format10x_odex4102 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n4123 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format11n4125 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format11n4127 = new BitSet(new long[]{0x0000000002400000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_integral_literal_in_insn_format11n4129 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x4161 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format11x4163 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_instruction_format12x_in_insn_format12x4193 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format12x4195 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format12x4197 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format12x4199 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc4231 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000080000L});
- public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_insn_format20bc4233 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format20bc4235 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_verification_error_reference_in_insn_format20bc4237 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t4274 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format20t4276 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_insn_format21c_field4306 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field4308 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21c_field4310 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_field_in_insn_format21c_field4312 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_insn_format21c_field_odex4344 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field_odex4346 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21c_field_odex4348 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_field_in_insn_format21c_field_odex4350 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string4388 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21c_string4390 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21c_string4392 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format21c_string4394 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type4426 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21c_type4428 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21c_type4430 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type4432 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih4464 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21ih4466 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21ih4468 = new BitSet(new long[]{0x0018000002600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21ih4470 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh4502 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21lh4504 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21lh4506 = new BitSet(new long[]{0x0018000002600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21lh4508 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s4540 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21s4542 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21s4544 = new BitSet(new long[]{0x0000000002400000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_integral_literal_in_insn_format21s4546 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t4578 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21t4580 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format21t4582 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format21t4584 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b4616 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22b4618 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22b4620 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22b4622 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22b4624 = new BitSet(new long[]{0x0000000002400000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_integral_literal_in_insn_format22b4626 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_insn_format22c_field4660 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field4662 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22c_field4664 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field4666 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22c_field4668 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_field_in_insn_format22c_field4670 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_insn_format22c_field_odex4704 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field_odex4706 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22c_field_odex4708 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field_odex4710 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22c_field_odex4712 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_field_in_insn_format22c_field_odex4714 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type4754 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type4756 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22c_type4758 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type4760 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22c_type4762 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type4764 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_insn_format22cs_field4798 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22cs_field4800 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22cs_field4802 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22cs_field4804 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22cs_field4806 = new BitSet(new long[]{0x0004000000000000L});
- public static final BitSet FOLLOW_FIELD_OFFSET_in_insn_format22cs_field4808 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_instruction_format22s_in_insn_format22s4829 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22s4831 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22s4833 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22s4835 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22s4837 = new BitSet(new long[]{0x0000000002400000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_integral_literal_in_insn_format22s4839 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t4873 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22t4875 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22t4877 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22t4879 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22t4881 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format22t4883 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x4917 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22x4919 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format22x4921 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22x4923 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x4955 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format23x4957 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format23x4959 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format23x4961 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format23x4963 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format23x4965 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t4999 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format30t5001 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c5031 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format31c5033 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format31c5035 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_insn_format31c5037 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_instruction_format31i_in_insn_format31i5068 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format31i5070 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format31i5072 = new BitSet(new long[]{0x0018000002600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format31i5074 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t5106 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format31t5108 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format31t5110 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format31t5112 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x5144 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format32x5146 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format32x5148 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format32x5150 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method5182 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_method5184 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_list_in_insn_format35c_method5186 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_method5188 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format35c_method5190 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_method_in_insn_format35c_method5192 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type5224 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_type5226 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_list_in_insn_format35c_type5228 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_type5230 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format35c_type5232 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type5234 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_insn_format35c_method_odex5266 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35c_method_odex5268 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_list_in_insn_format35c_method_odex5270 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35c_method_odex5272 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format35c_method_odex5274 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_method_in_insn_format35c_method_odex5276 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_insn_format35mi_method5297 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35mi_method5299 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_list_in_insn_format35mi_method5301 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35mi_method5303 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format35mi_method5305 = new BitSet(new long[]{0x0200000000000000L});
- public static final BitSet FOLLOW_INLINE_INDEX_in_insn_format35mi_method5307 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_insn_format35ms_method5328 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format35ms_method5330 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_list_in_insn_format35ms_method5332 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format35ms_method5334 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format35ms_method5336 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000200000L});
- public static final BitSet FOLLOW_VTABLE_INDEX_in_insn_format35ms_method5338 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method5359 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_method5361 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_range_in_insn_format3rc_method5363 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_method5365 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format3rc_method5367 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_method_in_insn_format3rc_method5369 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_ODEX_in_insn_format3rc_method_odex5401 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_method_odex5403 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_list_in_insn_format3rc_method_odex5405 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_method_odex5407 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format3rc_method_odex5409 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_method_in_insn_format3rc_method_odex5411 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type5432 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rc_type5434 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_range_in_insn_format3rc_type5436 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rc_type5438 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format3rc_type5440 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type5442 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rmi_METHOD_in_insn_format3rmi_method5474 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rmi_method5476 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_range_in_insn_format3rmi_method5478 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rmi_method5480 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format3rmi_method5482 = new BitSet(new long[]{0x0200000000000000L});
- public static final BitSet FOLLOW_INLINE_INDEX_in_insn_format3rmi_method5484 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rms_METHOD_in_insn_format3rms_method5505 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
- public static final BitSet FOLLOW_OPEN_BRACE_in_insn_format3rms_method5507 = new BitSet(new long[]{0x0000000010000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_register_range_in_insn_format3rms_method5509 = new BitSet(new long[]{0x0000000010000000L});
- public static final BitSet FOLLOW_CLOSE_BRACE_in_insn_format3rms_method5511 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format3rms_method5513 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000200000L});
- public static final BitSet FOLLOW_VTABLE_INDEX_in_insn_format3rms_method5515 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l5536 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format51l5538 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_COMMA_in_insn_format51l5540 = new BitSet(new long[]{0x0018000C02600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_fixed_literal_in_insn_format51l5542 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5569 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x4000000000000000L,0x0000000000000040L});
- public static final BitSet FOLLOW_parsed_integer_literal_in_insn_array_data_directive5575 = new BitSet(new long[]{0x0018002C02600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_fixed_literal_in_insn_array_data_directive5587 = new BitSet(new long[]{0x0018002C02600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_END_ARRAY_DATA_DIRECTIVE_in_insn_array_data_directive5590 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5636 = new BitSet(new long[]{0x0018000002600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive5642 = new BitSet(new long[]{0x0000020040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_packed_switch_directive5648 = new BitSet(new long[]{0x0000020040000000L});
- public static final BitSet FOLLOW_END_PACKED_SWITCH_DIRECTIVE_in_insn_packed_switch_directive5655 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5729 = new BitSet(new long[]{0x0018080002600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_sparse_switch_directive5736 = new BitSet(new long[]{0x0000000000000200L});
- public static final BitSet FOLLOW_ARROW_in_insn_sparse_switch_directive5738 = new BitSet(new long[]{0x0000000040000000L});
- public static final BitSet FOLLOW_label_ref_in_insn_sparse_switch_directive5740 = new BitSet(new long[]{0x0018080002600000L,0x0000000000000000L,0x4800000000000000L,0x0000000000001040L});
- public static final BitSet FOLLOW_END_SPARSE_SWITCH_DIRECTIVE_in_insn_sparse_switch_directive5748 = new BitSet(new long[]{0x0000000000000002L});
+ 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});
}
diff --git a/smali/src/main/java/org/jf/smali/smaliTreeWalker.java b/smali/src/main/java/org/jf/smali/smaliTreeWalker.java
index c3915c37..16af8496 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 /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g 2014-02-12 17:39:17
+// $ANTLR 3.5 /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g 2015-02-19 13:37:39
package org.jf.smali;
@@ -48,65 +48,61 @@ import java.util.ArrayList;
@SuppressWarnings("all")
public class smaliTreeWalker extends TreeParser {
public static final String[] tokenNames = new String[] {
- "<invalid>", "<EOR>", "<DOWN>", "<UP>", "ACCESS_SPEC", "ANNOTATION_DIRECTIVE",
- "ANNOTATION_VISIBILITY", "ARRAY_DATA_DIRECTIVE", "ARRAY_DESCRIPTOR", "ARROW",
- "BASE_ARRAY_DESCRIPTOR", "BASE_CHAR_LITERAL", "BASE_CLASS_DESCRIPTOR",
- "BASE_FLOAT", "BASE_FLOAT_OR_ID", "BASE_INTEGER", "BASE_PRIMITIVE_TYPE",
- "BASE_SIMPLE_NAME", "BASE_STRING_LITERAL", "BASE_TYPE", "BINARY_EXPONENT",
- "BOOL_LITERAL", "BYTE_LITERAL", "CATCHALL_DIRECTIVE", "CATCH_DIRECTIVE",
- "CHAR_LITERAL", "CLASS_DESCRIPTOR", "CLASS_DIRECTIVE", "CLOSE_BRACE",
- "CLOSE_PAREN", "COLON", "COMMA", "DECIMAL_EXPONENT", "DOTDOT", "DOUBLE_LITERAL",
- "DOUBLE_LITERAL_OR_ID", "END_ANNOTATION_DIRECTIVE", "END_ARRAY_DATA_DIRECTIVE",
- "END_FIELD_DIRECTIVE", "END_LOCAL_DIRECTIVE", "END_METHOD_DIRECTIVE",
- "END_PACKED_SWITCH_DIRECTIVE", "END_PARAMETER_DIRECTIVE", "END_SPARSE_SWITCH_DIRECTIVE",
- "END_SUBANNOTATION_DIRECTIVE", "ENUM_DIRECTIVE", "EPILOGUE_DIRECTIVE",
- "EQUAL", "ESCAPE_SEQUENCE", "FIELD_DIRECTIVE", "FIELD_OFFSET", "FLOAT_LITERAL",
- "FLOAT_LITERAL_OR_ID", "HEX_DIGIT", "HEX_DIGITS", "HEX_PREFIX", "IMPLEMENTS_DIRECTIVE",
- "INLINE_INDEX", "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_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",
- "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_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", "LABEL", "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", "PARAM_LIST_OR_ID",
- "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"
+ "<invalid>", "<EOR>", "<DOWN>", "<UP>", "ACCESS_SPEC", "ANNOTATION_DIRECTIVE",
+ "ANNOTATION_VISIBILITY", "ARRAY_DATA_DIRECTIVE", "ARRAY_DESCRIPTOR", "ARROW",
+ "BOOL_LITERAL", "BYTE_LITERAL", "CATCHALL_DIRECTIVE", "CATCH_DIRECTIVE",
+ "CHAR_LITERAL", "CLASS_DESCRIPTOR", "CLASS_DIRECTIVE", "CLOSE_BRACE",
+ "CLOSE_PAREN", "COLON", "COMMA", "DOTDOT", "DOUBLE_LITERAL", "DOUBLE_LITERAL_OR_ID",
+ "END_ANNOTATION_DIRECTIVE", "END_ARRAY_DATA_DIRECTIVE", "END_FIELD_DIRECTIVE",
+ "END_LOCAL_DIRECTIVE", "END_METHOD_DIRECTIVE", "END_PACKED_SWITCH_DIRECTIVE",
+ "END_PARAMETER_DIRECTIVE", "END_SPARSE_SWITCH_DIRECTIVE", "END_SUBANNOTATION_DIRECTIVE",
+ "ENUM_DIRECTIVE", "EPILOGUE_DIRECTIVE", "EQUAL", "FIELD_DIRECTIVE", "FIELD_OFFSET",
+ "FLOAT_LITERAL", "FLOAT_LITERAL_OR_ID", "IMPLEMENTS_DIRECTIVE", "INLINE_INDEX",
+ "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_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",
+ "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_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"
};
public static final int EOF=-1;
public static final int ACCESS_SPEC=4;
@@ -115,211 +111,196 @@ public class smaliTreeWalker extends TreeParser {
public static final int ARRAY_DATA_DIRECTIVE=7;
public static final int ARRAY_DESCRIPTOR=8;
public static final int ARROW=9;
- public static final int BASE_ARRAY_DESCRIPTOR=10;
- public static final int BASE_CHAR_LITERAL=11;
- public static final int BASE_CLASS_DESCRIPTOR=12;
- public static final int BASE_FLOAT=13;
- public static final int BASE_FLOAT_OR_ID=14;
- public static final int BASE_INTEGER=15;
- public static final int BASE_PRIMITIVE_TYPE=16;
- public static final int BASE_SIMPLE_NAME=17;
- public static final int BASE_STRING_LITERAL=18;
- public static final int BASE_TYPE=19;
- public static final int BINARY_EXPONENT=20;
- public static final int BOOL_LITERAL=21;
- public static final int BYTE_LITERAL=22;
- public static final int CATCHALL_DIRECTIVE=23;
- public static final int CATCH_DIRECTIVE=24;
- public static final int CHAR_LITERAL=25;
- public static final int CLASS_DESCRIPTOR=26;
- public static final int CLASS_DIRECTIVE=27;
- public static final int CLOSE_BRACE=28;
- public static final int CLOSE_PAREN=29;
- public static final int COLON=30;
- public static final int COMMA=31;
- public static final int DECIMAL_EXPONENT=32;
- public static final int DOTDOT=33;
- public static final int DOUBLE_LITERAL=34;
- public static final int DOUBLE_LITERAL_OR_ID=35;
- public static final int END_ANNOTATION_DIRECTIVE=36;
- public static final int END_ARRAY_DATA_DIRECTIVE=37;
- public static final int END_FIELD_DIRECTIVE=38;
- public static final int END_LOCAL_DIRECTIVE=39;
- public static final int END_METHOD_DIRECTIVE=40;
- public static final int END_PACKED_SWITCH_DIRECTIVE=41;
- public static final int END_PARAMETER_DIRECTIVE=42;
- public static final int END_SPARSE_SWITCH_DIRECTIVE=43;
- public static final int END_SUBANNOTATION_DIRECTIVE=44;
- public static final int ENUM_DIRECTIVE=45;
- public static final int EPILOGUE_DIRECTIVE=46;
- public static final int EQUAL=47;
- public static final int ESCAPE_SEQUENCE=48;
- public static final int FIELD_DIRECTIVE=49;
- public static final int FIELD_OFFSET=50;
- public static final int FLOAT_LITERAL=51;
- public static final int FLOAT_LITERAL_OR_ID=52;
- public static final int HEX_DIGIT=53;
- public static final int HEX_DIGITS=54;
- public static final int HEX_PREFIX=55;
- public static final int IMPLEMENTS_DIRECTIVE=56;
- public static final int INLINE_INDEX=57;
- public static final int INSTRUCTION_FORMAT10t=58;
- public static final int INSTRUCTION_FORMAT10x=59;
- public static final int INSTRUCTION_FORMAT10x_ODEX=60;
- public static final int INSTRUCTION_FORMAT11n=61;
- public static final int INSTRUCTION_FORMAT11x=62;
- public static final int INSTRUCTION_FORMAT12x=63;
- public static final int INSTRUCTION_FORMAT12x_OR_ID=64;
- public static final int INSTRUCTION_FORMAT20bc=65;
- public static final int INSTRUCTION_FORMAT20t=66;
- public static final int INSTRUCTION_FORMAT21c_FIELD=67;
- public static final int INSTRUCTION_FORMAT21c_FIELD_ODEX=68;
- public static final int INSTRUCTION_FORMAT21c_STRING=69;
- public static final int INSTRUCTION_FORMAT21c_TYPE=70;
- public static final int INSTRUCTION_FORMAT21ih=71;
- public static final int INSTRUCTION_FORMAT21lh=72;
- public static final int INSTRUCTION_FORMAT21s=73;
- public static final int INSTRUCTION_FORMAT21t=74;
- public static final int INSTRUCTION_FORMAT22b=75;
- public static final int INSTRUCTION_FORMAT22c_FIELD=76;
- public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=77;
- public static final int INSTRUCTION_FORMAT22c_TYPE=78;
- public static final int INSTRUCTION_FORMAT22cs_FIELD=79;
- public static final int INSTRUCTION_FORMAT22s=80;
- public static final int INSTRUCTION_FORMAT22s_OR_ID=81;
- public static final int INSTRUCTION_FORMAT22t=82;
- public static final int INSTRUCTION_FORMAT22x=83;
- public static final int INSTRUCTION_FORMAT23x=84;
- public static final int INSTRUCTION_FORMAT30t=85;
- public static final int INSTRUCTION_FORMAT31c=86;
- public static final int INSTRUCTION_FORMAT31i=87;
- public static final int INSTRUCTION_FORMAT31i_OR_ID=88;
- public static final int INSTRUCTION_FORMAT31t=89;
- public static final int INSTRUCTION_FORMAT32x=90;
- public static final int INSTRUCTION_FORMAT35c_METHOD=91;
- public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=92;
- public static final int INSTRUCTION_FORMAT35c_TYPE=93;
- public static final int INSTRUCTION_FORMAT35mi_METHOD=94;
- public static final int INSTRUCTION_FORMAT35ms_METHOD=95;
- public static final int INSTRUCTION_FORMAT3rc_METHOD=96;
- public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=97;
- public static final int INSTRUCTION_FORMAT3rc_TYPE=98;
- public static final int INSTRUCTION_FORMAT3rmi_METHOD=99;
- public static final int INSTRUCTION_FORMAT3rms_METHOD=100;
- public static final int INSTRUCTION_FORMAT51l=101;
- public static final int INTEGER_LITERAL=102;
- public static final int INVALID_TOKEN=103;
- public static final int I_ACCESS_LIST=104;
- public static final int I_ANNOTATION=105;
- public static final int I_ANNOTATIONS=106;
- public static final int I_ANNOTATION_ELEMENT=107;
- public static final int I_ARRAY_ELEMENTS=108;
- public static final int I_ARRAY_ELEMENT_SIZE=109;
- public static final int I_CATCH=110;
- public static final int I_CATCHALL=111;
- public static final int I_CATCHES=112;
- public static final int I_CLASS_DEF=113;
- public static final int I_ENCODED_ARRAY=114;
- public static final int I_ENCODED_ENUM=115;
- public static final int I_ENCODED_FIELD=116;
- public static final int I_ENCODED_METHOD=117;
- public static final int I_END_LOCAL=118;
- public static final int I_EPILOGUE=119;
- public static final int I_FIELD=120;
- public static final int I_FIELDS=121;
- public static final int I_FIELD_INITIAL_VALUE=122;
- public static final int I_FIELD_TYPE=123;
- public static final int I_IMPLEMENTS=124;
- public static final int I_LABEL=125;
- public static final int I_LINE=126;
- public static final int I_LOCAL=127;
- public static final int I_LOCALS=128;
- public static final int I_METHOD=129;
- public static final int I_METHODS=130;
- public static final int I_METHOD_PROTOTYPE=131;
- public static final int I_METHOD_RETURN_TYPE=132;
- public static final int I_ORDERED_METHOD_ITEMS=133;
- public static final int I_PACKED_SWITCH_ELEMENTS=134;
- public static final int I_PACKED_SWITCH_START_KEY=135;
- public static final int I_PARAMETER=136;
- public static final int I_PARAMETERS=137;
- public static final int I_PARAMETER_NOT_SPECIFIED=138;
- public static final int I_PROLOGUE=139;
- public static final int I_REGISTERS=140;
- public static final int I_REGISTER_LIST=141;
- public static final int I_REGISTER_RANGE=142;
- public static final int I_RESTART_LOCAL=143;
- public static final int I_SOURCE=144;
- public static final int I_SPARSE_SWITCH_ELEMENTS=145;
- public static final int I_STATEMENT_ARRAY_DATA=146;
- public static final int I_STATEMENT_FORMAT10t=147;
- public static final int I_STATEMENT_FORMAT10x=148;
- public static final int I_STATEMENT_FORMAT11n=149;
- public static final int I_STATEMENT_FORMAT11x=150;
- public static final int I_STATEMENT_FORMAT12x=151;
- public static final int I_STATEMENT_FORMAT20bc=152;
- public static final int I_STATEMENT_FORMAT20t=153;
- public static final int I_STATEMENT_FORMAT21c_FIELD=154;
- public static final int I_STATEMENT_FORMAT21c_STRING=155;
- public static final int I_STATEMENT_FORMAT21c_TYPE=156;
- public static final int I_STATEMENT_FORMAT21ih=157;
- public static final int I_STATEMENT_FORMAT21lh=158;
- public static final int I_STATEMENT_FORMAT21s=159;
- public static final int I_STATEMENT_FORMAT21t=160;
- public static final int I_STATEMENT_FORMAT22b=161;
- public static final int I_STATEMENT_FORMAT22c_FIELD=162;
- public static final int I_STATEMENT_FORMAT22c_TYPE=163;
- public static final int I_STATEMENT_FORMAT22s=164;
- public static final int I_STATEMENT_FORMAT22t=165;
- public static final int I_STATEMENT_FORMAT22x=166;
- public static final int I_STATEMENT_FORMAT23x=167;
- public static final int I_STATEMENT_FORMAT30t=168;
- public static final int I_STATEMENT_FORMAT31c=169;
- public static final int I_STATEMENT_FORMAT31i=170;
- public static final int I_STATEMENT_FORMAT31t=171;
- public static final int I_STATEMENT_FORMAT32x=172;
- public static final int I_STATEMENT_FORMAT35c_METHOD=173;
- public static final int I_STATEMENT_FORMAT35c_TYPE=174;
- public static final int I_STATEMENT_FORMAT3rc_METHOD=175;
- public static final int I_STATEMENT_FORMAT3rc_TYPE=176;
- public static final int I_STATEMENT_FORMAT51l=177;
- public static final int I_STATEMENT_PACKED_SWITCH=178;
- public static final int I_STATEMENT_SPARSE_SWITCH=179;
- public static final int I_SUBANNOTATION=180;
- public static final int I_SUPER=181;
- public static final int LABEL=182;
- public static final int LINE_COMMENT=183;
- public static final int LINE_DIRECTIVE=184;
- public static final int LOCALS_DIRECTIVE=185;
- public static final int LOCAL_DIRECTIVE=186;
- public static final int LONG_LITERAL=187;
- public static final int MEMBER_NAME=188;
- public static final int METHOD_DIRECTIVE=189;
- public static final int NEGATIVE_INTEGER_LITERAL=190;
- public static final int NULL_LITERAL=191;
- public static final int OPEN_BRACE=192;
- public static final int OPEN_PAREN=193;
- public static final int PACKED_SWITCH_DIRECTIVE=194;
- public static final int PARAMETER_DIRECTIVE=195;
- public static final int PARAM_LIST=196;
- public static final int PARAM_LIST_OR_ID=197;
- public static final int POSITIVE_INTEGER_LITERAL=198;
- public static final int PRIMITIVE_TYPE=199;
- public static final int PROLOGUE_DIRECTIVE=200;
- public static final int REGISTER=201;
- public static final int REGISTERS_DIRECTIVE=202;
- public static final int RESTART_LOCAL_DIRECTIVE=203;
- public static final int SHORT_LITERAL=204;
- public static final int SIMPLE_NAME=205;
- public static final int SOURCE_DIRECTIVE=206;
- public static final int SPARSE_SWITCH_DIRECTIVE=207;
- public static final int STRING_LITERAL=208;
- public static final int SUBANNOTATION_DIRECTIVE=209;
- public static final int SUPER_DIRECTIVE=210;
- public static final int VERIFICATION_ERROR_TYPE=211;
- public static final int VOID_TYPE=212;
- public static final int VTABLE_INDEX=213;
- public static final int WHITE_SPACE=214;
+ public static final int BOOL_LITERAL=10;
+ public static final int BYTE_LITERAL=11;
+ public static final int CATCHALL_DIRECTIVE=12;
+ public static final int CATCH_DIRECTIVE=13;
+ public static final int CHAR_LITERAL=14;
+ public static final int CLASS_DESCRIPTOR=15;
+ public static final int CLASS_DIRECTIVE=16;
+ public static final int CLOSE_BRACE=17;
+ public static final int CLOSE_PAREN=18;
+ public static final int COLON=19;
+ public static final int COMMA=20;
+ public static final int DOTDOT=21;
+ public static final int DOUBLE_LITERAL=22;
+ public static final int DOUBLE_LITERAL_OR_ID=23;
+ public static final int END_ANNOTATION_DIRECTIVE=24;
+ public static final int END_ARRAY_DATA_DIRECTIVE=25;
+ public static final int END_FIELD_DIRECTIVE=26;
+ public static final int END_LOCAL_DIRECTIVE=27;
+ public static final int END_METHOD_DIRECTIVE=28;
+ public static final int END_PACKED_SWITCH_DIRECTIVE=29;
+ public static final int END_PARAMETER_DIRECTIVE=30;
+ public static final int END_SPARSE_SWITCH_DIRECTIVE=31;
+ public static final int END_SUBANNOTATION_DIRECTIVE=32;
+ public static final int ENUM_DIRECTIVE=33;
+ public static final int EPILOGUE_DIRECTIVE=34;
+ public static final int EQUAL=35;
+ public static final int FIELD_DIRECTIVE=36;
+ public static final int FIELD_OFFSET=37;
+ public static final int FLOAT_LITERAL=38;
+ public static final int FLOAT_LITERAL_OR_ID=39;
+ public static final int IMPLEMENTS_DIRECTIVE=40;
+ public static final int INLINE_INDEX=41;
+ public static final int INSTRUCTION_FORMAT10t=42;
+ public static final int INSTRUCTION_FORMAT10x=43;
+ public static final int INSTRUCTION_FORMAT10x_ODEX=44;
+ public static final int INSTRUCTION_FORMAT11n=45;
+ public static final int INSTRUCTION_FORMAT11x=46;
+ public static final int INSTRUCTION_FORMAT12x=47;
+ public static final int INSTRUCTION_FORMAT12x_OR_ID=48;
+ public static final int INSTRUCTION_FORMAT20bc=49;
+ 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;
// delegates
public TreeParser[] getDelegates() {
@@ -337,7 +318,7 @@ public class smaliTreeWalker extends TreeParser {
}
@Override public String[] getTokenNames() { return smaliTreeWalker.tokenNames; }
- @Override public String getGrammarFileName() { return "/usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g"; }
public String classType;
@@ -361,8 +342,8 @@ public class smaliTreeWalker extends TreeParser {
private byte parseRegister_nibble(String register)
throws SemanticException {
- int totalMethodRegisters = ((method_scope)method_stack.peek()).totalMethodRegisters;
- int methodParameterRegisters = ((method_scope)method_stack.peek()).methodParameterRegisters;
+ int totalMethodRegisters = method_stack.peek().totalMethodRegisters;
+ int methodParameterRegisters = method_stack.peek().methodParameterRegisters;
//register should be in the format "v12"
int val = Byte.parseByte(register.substring(1));
@@ -424,7 +405,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "smali_file"
- // /usr/local/google/home/bgruv/android/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/antlr3/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;
@@ -435,11 +416,11 @@ public class smaliTreeWalker extends TreeParser {
List<BuilderMethod> methods4 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:160:3: ( ^( I_CLASS_DEF header methods fields annotations ) )
- // /usr/local/google/home/bgruv/android/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/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 )
{
- match(input,I_CLASS_DEF,FOLLOW_I_CLASS_DEF_in_smali_file52);
- match(input, Token.DOWN, null);
+ match(input,I_CLASS_DEF,FOLLOW_I_CLASS_DEF_in_smali_file52);
+ match(input, Token.DOWN, null);
pushFollow(FOLLOW_header_in_smali_file54);
header1=header();
state._fsp--;
@@ -456,12 +437,12 @@ public class smaliTreeWalker extends TreeParser {
annotations2=annotations();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
classDef = dexBuilder.internClassDef((header1!=null?((smaliTreeWalker.header_return)header1).classType:null), (header1!=null?((smaliTreeWalker.header_return)header1).accessFlags:0), (header1!=null?((smaliTreeWalker.header_return)header1).superType:null),
(header1!=null?((smaliTreeWalker.header_return)header1).implementsList:null), (header1!=null?((smaliTreeWalker.header_return)header1).sourceSpec:null), annotations2, fields3, methods4);
-
+
}
}
@@ -471,7 +452,7 @@ public class smaliTreeWalker extends TreeParser {
ex.printStackTrace(System.err);
}
reportError(new SemanticException(input, ex));
-
+
}
finally {
@@ -492,7 +473,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "header"
- // /usr/local/google/home/bgruv/android/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/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 ;
public final smaliTreeWalker.header_return header() throws RecognitionException {
smaliTreeWalker.header_return retval = new smaliTreeWalker.header_return();
retval.start = input.LT(1);
@@ -503,14 +484,14 @@ public class smaliTreeWalker extends TreeParser {
String source_spec8 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:3: ( class_spec ( super_spec )? implements_list source_spec )
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:174:3: class_spec ( super_spec )? implements_list source_spec
{
pushFollow(FOLLOW_class_spec_in_header85);
class_spec5=class_spec();
state._fsp--;
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:14: ( super_spec )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:14: ( super_spec )?
int alt1=2;
int LA1_0 = input.LA(1);
if ( (LA1_0==I_SUPER) ) {
@@ -518,7 +499,7 @@ public class smaliTreeWalker extends TreeParser {
}
switch (alt1) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:14: super_spec
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:174:14: super_spec
{
pushFollow(FOLLOW_super_spec_in_header87);
super_spec6=super_spec();
@@ -544,7 +525,7 @@ public class smaliTreeWalker extends TreeParser {
retval.superType = super_spec6;
retval.implementsList = implements_list7;
retval.sourceSpec = source_spec8;
-
+
}
}
@@ -567,7 +548,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "class_spec"
- // /usr/local/google/home/bgruv/android/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/antlr3/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);
@@ -576,10 +557,10 @@ public class smaliTreeWalker extends TreeParser {
int access_list10 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:186:3: ( CLASS_DESCRIPTOR access_list )
- // /usr/local/google/home/bgruv/android/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/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
{
- CLASS_DESCRIPTOR9=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec110);
+ CLASS_DESCRIPTOR9=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec110);
pushFollow(FOLLOW_access_list_in_class_spec112);
access_list10=access_list();
state._fsp--;
@@ -587,7 +568,7 @@ public class smaliTreeWalker extends TreeParser {
retval.type = (CLASS_DESCRIPTOR9!=null?CLASS_DESCRIPTOR9.getText():null);
retval.accessFlags = access_list10;
-
+
}
}
@@ -605,7 +586,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "super_spec"
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:192:1: super_spec returns [String type] : ^( I_SUPER CLASS_DESCRIPTOR ) ;
public final String super_spec() throws RecognitionException {
String type = null;
@@ -613,17 +594,17 @@ public class smaliTreeWalker extends TreeParser {
CommonTree CLASS_DESCRIPTOR11=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:193:3: ( ^( I_SUPER CLASS_DESCRIPTOR ) )
- // /usr/local/google/home/bgruv/android/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/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 )
{
- match(input,I_SUPER,FOLLOW_I_SUPER_in_super_spec130);
- match(input, Token.DOWN, null);
- CLASS_DESCRIPTOR11=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec132);
- match(input, Token.UP, null);
+ match(input,I_SUPER,FOLLOW_I_SUPER_in_super_spec130);
+ match(input, Token.DOWN, null);
+ CLASS_DESCRIPTOR11=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec132);
+ match(input, Token.UP, null);
type = (CLASS_DESCRIPTOR11!=null?CLASS_DESCRIPTOR11.getText():null);
-
+
}
}
@@ -641,7 +622,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "implements_spec"
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:199:1: implements_spec returns [String type] : ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) ;
public final String implements_spec() throws RecognitionException {
String type = null;
@@ -649,17 +630,17 @@ public class smaliTreeWalker extends TreeParser {
CommonTree CLASS_DESCRIPTOR12=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:200:3: ( ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) )
- // /usr/local/google/home/bgruv/android/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/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 )
{
- match(input,I_IMPLEMENTS,FOLLOW_I_IMPLEMENTS_in_implements_spec152);
- match(input, Token.DOWN, null);
- CLASS_DESCRIPTOR12=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec154);
- match(input, Token.UP, null);
+ match(input,I_IMPLEMENTS,FOLLOW_I_IMPLEMENTS_in_implements_spec152);
+ match(input, Token.DOWN, null);
+ CLASS_DESCRIPTOR12=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec154);
+ match(input, Token.UP, null);
type = (CLASS_DESCRIPTOR12!=null?CLASS_DESCRIPTOR12.getText():null);
-
+
}
}
@@ -677,20 +658,20 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "implements_list"
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:205:1: implements_list returns [List<String> implementsList] : ( implements_spec )* ;
public final List<String> implements_list() throws RecognitionException {
List<String> implementsList = null;
String implements_spec13 =null;
- List<String> typeList;
+ List<String> typeList;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:207:3: ( ( implements_spec )* )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:207:5: ( implements_spec )*
+ // /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 )*
{
typeList = Lists.newArrayList();
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:208:5: ( implements_spec )*
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:208:5: ( implements_spec )*
loop2:
while (true) {
int alt2=2;
@@ -701,7 +682,7 @@ public class smaliTreeWalker extends TreeParser {
switch (alt2) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:208:6: implements_spec
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:208:6: implements_spec
{
pushFollow(FOLLOW_implements_spec_in_implements_list184);
implements_spec13=implements_spec();
@@ -722,7 +703,7 @@ public class smaliTreeWalker extends TreeParser {
} else {
implementsList = null;
}
-
+
}
}
@@ -740,7 +721,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "source_spec"
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:217:1: source_spec returns [String source] : ( ^( I_SOURCE string_literal ) |);
public final String source_spec() throws RecognitionException {
String source = null;
@@ -748,7 +729,7 @@ public class smaliTreeWalker extends TreeParser {
String string_literal14 =null;
try {
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:218:3: ( ^( I_SOURCE string_literal ) |)
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==I_SOURCE) ) {
@@ -766,22 +747,22 @@ public class smaliTreeWalker extends TreeParser {
switch (alt3) {
case 1 :
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:218:5: ^( I_SOURCE string_literal )
{
source = null;
- match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source_spec213);
- match(input, Token.DOWN, null);
+ match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source_spec213);
+ match(input, Token.DOWN, null);
pushFollow(FOLLOW_string_literal_in_source_spec215);
string_literal14=string_literal();
state._fsp--;
source = string_literal14;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:220:16:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:220:16:
{
}
break;
@@ -802,7 +783,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "access_list"
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:222:1: access_list returns [int value] : ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) ;
public final int access_list() throws RecognitionException {
int value = 0;
@@ -811,15 +792,15 @@ public class smaliTreeWalker extends TreeParser {
value = 0;
-
+
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:227:3: ( ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) )
- // /usr/local/google/home/bgruv/android/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/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 )* )
{
- match(input,I_ACCESS_LIST,FOLLOW_I_ACCESS_LIST_in_access_list248);
+ match(input,I_ACCESS_LIST,FOLLOW_I_ACCESS_LIST_in_access_list248);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:228:7: ( ACCESS_SPEC )*
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:228:7: ( ACCESS_SPEC )*
loop4:
while (true) {
int alt4=2;
@@ -830,12 +811,12 @@ public class smaliTreeWalker extends TreeParser {
switch (alt4) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:229:9: ACCESS_SPEC
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:229:9: ACCESS_SPEC
{
- ACCESS_SPEC15=(CommonTree)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list266);
+ ACCESS_SPEC15=(CommonTree)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list266);
value |= AccessFlags.getAccessFlag(ACCESS_SPEC15.getText()).getValue();
-
+
}
break;
@@ -844,7 +825,7 @@ public class smaliTreeWalker extends TreeParser {
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -864,7 +845,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "fields"
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:236:1: fields returns [List<BuilderField> fields] : ^( I_FIELDS ( field )* ) ;
public final List<BuilderField> fields() throws RecognitionException {
List<BuilderField> fields = null;
@@ -873,13 +854,13 @@ public class smaliTreeWalker extends TreeParser {
fields = Lists.newArrayList();
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:238:3: ( ^( I_FIELDS ( field )* ) )
- // /usr/local/google/home/bgruv/android/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/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 )* )
{
- match(input,I_FIELDS,FOLLOW_I_FIELDS_in_fields308);
+ match(input,I_FIELDS,FOLLOW_I_FIELDS_in_fields308);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:239:7: ( field )*
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:239:7: ( field )*
loop5:
while (true) {
int alt5=2;
@@ -890,7 +871,7 @@ public class smaliTreeWalker extends TreeParser {
switch (alt5) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:239:8: field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:239:8: field
{
pushFollow(FOLLOW_field_in_fields317);
field16=field();
@@ -898,7 +879,7 @@ public class smaliTreeWalker extends TreeParser {
fields.add(field16);
-
+
}
break;
@@ -907,7 +888,7 @@ public class smaliTreeWalker extends TreeParser {
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -927,7 +908,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "methods"
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:244:1: methods returns [List<BuilderMethod> methods] : ^( I_METHODS ( method )* ) ;
public final List<BuilderMethod> methods() throws RecognitionException {
List<BuilderMethod> methods = null;
@@ -936,13 +917,13 @@ public class smaliTreeWalker extends TreeParser {
methods = Lists.newArrayList();
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:246:3: ( ^( I_METHODS ( method )* ) )
- // /usr/local/google/home/bgruv/android/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/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 )* )
{
- match(input,I_METHODS,FOLLOW_I_METHODS_in_methods349);
+ match(input,I_METHODS,FOLLOW_I_METHODS_in_methods349);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:247:7: ( method )*
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:247:7: ( method )*
loop6:
while (true) {
int alt6=2;
@@ -953,7 +934,7 @@ public class smaliTreeWalker extends TreeParser {
switch (alt6) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:247:8: method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:247:8: method
{
pushFollow(FOLLOW_method_in_methods358);
method17=method();
@@ -961,7 +942,7 @@ public class smaliTreeWalker extends TreeParser {
methods.add(method17);
-
+
}
break;
@@ -970,7 +951,7 @@ public class smaliTreeWalker extends TreeParser {
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -990,7 +971,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "field"
- // /usr/local/google/home/bgruv/android/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/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 )? ) ;
public final BuilderField field() throws RecognitionException {
BuilderField field = null;
@@ -1002,29 +983,29 @@ public class smaliTreeWalker extends TreeParser {
Set<Annotation> annotations22 =null;
try {
- // /usr/local/google/home/bgruv/android/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 )? ) )
- // /usr/local/google/home/bgruv/android/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/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 )? )
{
- match(input,I_FIELD,FOLLOW_I_FIELD_in_field383);
- match(input, Token.DOWN, null);
- SIMPLE_NAME20=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_field385);
+ match(input,I_FIELD,FOLLOW_I_FIELD_in_field383);
+ match(input, Token.DOWN, null);
+ SIMPLE_NAME20=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_field385);
pushFollow(FOLLOW_access_list_in_field387);
access_list18=access_list();
state._fsp--;
- match(input,I_FIELD_TYPE,FOLLOW_I_FIELD_TYPE_in_field390);
- match(input, Token.DOWN, null);
+ match(input,I_FIELD_TYPE,FOLLOW_I_FIELD_TYPE_in_field390);
+ match(input, Token.DOWN, null);
pushFollow(FOLLOW_nonvoid_type_descriptor_in_field392);
nonvoid_type_descriptor21=nonvoid_type_descriptor();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
pushFollow(FOLLOW_field_initial_value_in_field395);
field_initial_value19=field_initial_value();
state._fsp--;
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:98: ( annotations )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:98: ( annotations )?
int alt7=2;
int LA7_0 = input.LA(1);
if ( (LA7_0==I_ANNOTATIONS) ) {
@@ -1032,7 +1013,7 @@ public class smaliTreeWalker extends TreeParser {
}
switch (alt7) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:98: annotations
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:253:98: annotations
{
pushFollow(FOLLOW_annotations_in_field397);
annotations22=annotations();
@@ -1043,7 +1024,7 @@ public class smaliTreeWalker extends TreeParser {
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
int accessFlags = access_list18;
@@ -1055,7 +1036,7 @@ public class smaliTreeWalker extends TreeParser {
field = dexBuilder.internField(classType, (SIMPLE_NAME20!=null?SIMPLE_NAME20.getText():null), (nonvoid_type_descriptor21!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor21).type:null), access_list18,
field_initial_value19, annotations22);
-
+
}
}
@@ -1073,7 +1054,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "field_initial_value"
- // /usr/local/google/home/bgruv/android/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/antlr3/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;
@@ -1081,7 +1062,7 @@ public class smaliTreeWalker extends TreeParser {
EncodedValue literal23 =null;
try {
- // /usr/local/google/home/bgruv/android/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/antlr3/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) ) {
@@ -1099,21 +1080,21 @@ public class smaliTreeWalker extends TreeParser {
switch (alt8) {
case 1 :
- // /usr/local/google/home/bgruv/android/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/antlr3/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);
+ match(input,I_FIELD_INITIAL_VALUE,FOLLOW_I_FIELD_INITIAL_VALUE_in_field_initial_value418);
+ match(input, Token.DOWN, null);
pushFollow(FOLLOW_literal_in_field_initial_value420);
literal23=literal();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
encodedValue = literal23;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:269:16:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:269:16:
{
}
break;
@@ -1134,7 +1115,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "literal"
- // /usr/local/google/home/bgruv/android/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/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 );
public final EncodedValue literal() throws RecognitionException {
EncodedValue encodedValue = null;
@@ -1156,7 +1137,7 @@ public class smaliTreeWalker extends TreeParser {
FieldReference enum_literal38 =null;
try {
- // /usr/local/google/home/bgruv/android/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/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 )
int alt9=16;
switch ( input.LA(1) ) {
case INTEGER_LITERAL:
@@ -1249,160 +1230,160 @@ public class smaliTreeWalker extends TreeParser {
}
switch (alt9) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:272:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:272:5: integer_literal
{
pushFollow(FOLLOW_integer_literal_in_literal442);
integer_literal24=integer_literal();
state._fsp--;
- encodedValue = new ImmutableIntEncodedValue(integer_literal24);
+ encodedValue = new ImmutableIntEncodedValue(integer_literal24);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:273:5: long_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:273:5: long_literal
{
pushFollow(FOLLOW_long_literal_in_literal450);
long_literal25=long_literal();
state._fsp--;
- encodedValue = new ImmutableLongEncodedValue(long_literal25);
+ encodedValue = new ImmutableLongEncodedValue(long_literal25);
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:274:5: short_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:274:5: short_literal
{
pushFollow(FOLLOW_short_literal_in_literal458);
short_literal26=short_literal();
state._fsp--;
- encodedValue = new ImmutableShortEncodedValue(short_literal26);
+ encodedValue = new ImmutableShortEncodedValue(short_literal26);
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:275:5: byte_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:275:5: byte_literal
{
pushFollow(FOLLOW_byte_literal_in_literal466);
byte_literal27=byte_literal();
state._fsp--;
- encodedValue = new ImmutableByteEncodedValue(byte_literal27);
+ encodedValue = new ImmutableByteEncodedValue(byte_literal27);
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:276:5: float_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:276:5: float_literal
{
pushFollow(FOLLOW_float_literal_in_literal474);
float_literal28=float_literal();
state._fsp--;
- encodedValue = new ImmutableFloatEncodedValue(float_literal28);
+ encodedValue = new ImmutableFloatEncodedValue(float_literal28);
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:277:5: double_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:277:5: double_literal
{
pushFollow(FOLLOW_double_literal_in_literal482);
double_literal29=double_literal();
state._fsp--;
- encodedValue = new ImmutableDoubleEncodedValue(double_literal29);
+ encodedValue = new ImmutableDoubleEncodedValue(double_literal29);
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:278:5: char_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:278:5: char_literal
{
pushFollow(FOLLOW_char_literal_in_literal490);
char_literal30=char_literal();
state._fsp--;
- encodedValue = new ImmutableCharEncodedValue(char_literal30);
+ encodedValue = new ImmutableCharEncodedValue(char_literal30);
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:279:5: string_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:279:5: string_literal
{
pushFollow(FOLLOW_string_literal_in_literal498);
string_literal31=string_literal();
state._fsp--;
- encodedValue = new ImmutableStringEncodedValue(string_literal31);
+ encodedValue = new ImmutableStringEncodedValue(string_literal31);
}
break;
case 9 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:280:5: bool_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:280:5: bool_literal
{
pushFollow(FOLLOW_bool_literal_in_literal506);
bool_literal32=bool_literal();
state._fsp--;
- encodedValue = ImmutableBooleanEncodedValue.forBoolean(bool_literal32);
+ encodedValue = ImmutableBooleanEncodedValue.forBoolean(bool_literal32);
}
break;
case 10 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:281:5: NULL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:281:5: NULL_LITERAL
{
- match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal514);
- encodedValue = ImmutableNullEncodedValue.INSTANCE;
+ match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal514);
+ encodedValue = ImmutableNullEncodedValue.INSTANCE;
}
break;
case 11 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:282:5: type_descriptor
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:282:5: type_descriptor
{
pushFollow(FOLLOW_type_descriptor_in_literal522);
type_descriptor33=type_descriptor();
state._fsp--;
- encodedValue = new ImmutableTypeEncodedValue(type_descriptor33);
+ encodedValue = new ImmutableTypeEncodedValue(type_descriptor33);
}
break;
case 12 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:283:5: array_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:283:5: array_literal
{
pushFollow(FOLLOW_array_literal_in_literal530);
array_literal34=array_literal();
state._fsp--;
- encodedValue = new ImmutableArrayEncodedValue(array_literal34);
+ encodedValue = new ImmutableArrayEncodedValue(array_literal34);
}
break;
case 13 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:284:5: subannotation
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:284:5: subannotation
{
pushFollow(FOLLOW_subannotation_in_literal538);
subannotation35=subannotation();
state._fsp--;
- encodedValue = new ImmutableAnnotationEncodedValue((subannotation35!=null?((smaliTreeWalker.subannotation_return)subannotation35).annotationType:null), (subannotation35!=null?((smaliTreeWalker.subannotation_return)subannotation35).elements:null));
+ encodedValue = new ImmutableAnnotationEncodedValue((subannotation35!=null?((smaliTreeWalker.subannotation_return)subannotation35).annotationType:null), (subannotation35!=null?((smaliTreeWalker.subannotation_return)subannotation35).elements:null));
}
break;
case 14 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:285:5: field_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:285:5: field_literal
{
pushFollow(FOLLOW_field_literal_in_literal546);
field_literal36=field_literal();
state._fsp--;
- encodedValue = new ImmutableFieldEncodedValue(field_literal36);
+ encodedValue = new ImmutableFieldEncodedValue(field_literal36);
}
break;
case 15 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:286:5: method_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:286:5: method_literal
{
pushFollow(FOLLOW_method_literal_in_literal554);
method_literal37=method_literal();
state._fsp--;
- encodedValue = new ImmutableMethodEncodedValue(method_literal37);
+ encodedValue = new ImmutableMethodEncodedValue(method_literal37);
}
break;
case 16 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:287:5: enum_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:287:5: enum_literal
{
pushFollow(FOLLOW_enum_literal_in_literal562);
enum_literal38=enum_literal();
state._fsp--;
- encodedValue = new ImmutableEnumEncodedValue(enum_literal38);
+ encodedValue = new ImmutableEnumEncodedValue(enum_literal38);
}
break;
@@ -1422,7 +1403,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "fixed_64bit_literal_number"
- // /usr/local/google/home/bgruv/android/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/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 );
public final Number fixed_64bit_literal_number() throws RecognitionException {
Number value = null;
@@ -1437,7 +1418,7 @@ public class smaliTreeWalker extends TreeParser {
boolean bool_literal46 =false;
try {
- // /usr/local/google/home/bgruv/android/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/antlr3/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:
@@ -1487,83 +1468,83 @@ public class smaliTreeWalker extends TreeParser {
}
switch (alt10) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:291:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:291:5: integer_literal
{
pushFollow(FOLLOW_integer_literal_in_fixed_64bit_literal_number578);
integer_literal39=integer_literal();
state._fsp--;
- value = integer_literal39;
+ value = integer_literal39;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:292:5: long_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:292:5: long_literal
{
pushFollow(FOLLOW_long_literal_in_fixed_64bit_literal_number586);
long_literal40=long_literal();
state._fsp--;
- value = long_literal40;
+ value = long_literal40;
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:293:5: short_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:293:5: short_literal
{
pushFollow(FOLLOW_short_literal_in_fixed_64bit_literal_number594);
short_literal41=short_literal();
state._fsp--;
- value = short_literal41;
+ value = short_literal41;
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:294:5: byte_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:294:5: byte_literal
{
pushFollow(FOLLOW_byte_literal_in_fixed_64bit_literal_number602);
byte_literal42=byte_literal();
state._fsp--;
- value = byte_literal42;
+ value = byte_literal42;
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:295:5: float_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:295:5: float_literal
{
pushFollow(FOLLOW_float_literal_in_fixed_64bit_literal_number610);
float_literal43=float_literal();
state._fsp--;
- value = Float.floatToRawIntBits(float_literal43);
+ value = Float.floatToRawIntBits(float_literal43);
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:296:5: double_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:296:5: double_literal
{
pushFollow(FOLLOW_double_literal_in_fixed_64bit_literal_number618);
double_literal44=double_literal();
state._fsp--;
- value = Double.doubleToRawLongBits(double_literal44);
+ value = Double.doubleToRawLongBits(double_literal44);
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:297:5: char_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:297:5: char_literal
{
pushFollow(FOLLOW_char_literal_in_fixed_64bit_literal_number626);
char_literal45=char_literal();
state._fsp--;
- value = (int)char_literal45;
+ value = (int)char_literal45;
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:298:5: bool_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:298:5: bool_literal
{
pushFollow(FOLLOW_bool_literal_in_fixed_64bit_literal_number634);
bool_literal46=bool_literal();
state._fsp--;
- value = bool_literal46?1:0;
+ value = bool_literal46?1:0;
}
break;
@@ -1583,7 +1564,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "fixed_64bit_literal"
- // /usr/local/google/home/bgruv/android/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/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 );
public final long fixed_64bit_literal() throws RecognitionException {
long value = 0;
@@ -1598,7 +1579,7 @@ public class smaliTreeWalker extends TreeParser {
boolean bool_literal54 =false;
try {
- // /usr/local/google/home/bgruv/android/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/antlr3/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:
@@ -1648,83 +1629,83 @@ public class smaliTreeWalker extends TreeParser {
}
switch (alt11) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:301:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:301:5: integer_literal
{
pushFollow(FOLLOW_integer_literal_in_fixed_64bit_literal649);
integer_literal47=integer_literal();
state._fsp--;
- value = integer_literal47;
+ value = integer_literal47;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:302:5: long_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:302:5: long_literal
{
pushFollow(FOLLOW_long_literal_in_fixed_64bit_literal657);
long_literal48=long_literal();
state._fsp--;
- value = long_literal48;
+ value = long_literal48;
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:303:5: short_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:303:5: short_literal
{
pushFollow(FOLLOW_short_literal_in_fixed_64bit_literal665);
short_literal49=short_literal();
state._fsp--;
- value = short_literal49;
+ value = short_literal49;
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:304:5: byte_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:304:5: byte_literal
{
pushFollow(FOLLOW_byte_literal_in_fixed_64bit_literal673);
byte_literal50=byte_literal();
state._fsp--;
- value = byte_literal50;
+ value = byte_literal50;
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:305:5: float_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:305:5: float_literal
{
pushFollow(FOLLOW_float_literal_in_fixed_64bit_literal681);
float_literal51=float_literal();
state._fsp--;
- value = Float.floatToRawIntBits(float_literal51);
+ value = Float.floatToRawIntBits(float_literal51);
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:306:5: double_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:306:5: double_literal
{
pushFollow(FOLLOW_double_literal_in_fixed_64bit_literal689);
double_literal52=double_literal();
state._fsp--;
- value = Double.doubleToRawLongBits(double_literal52);
+ value = Double.doubleToRawLongBits(double_literal52);
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:307:5: char_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:307:5: char_literal
{
pushFollow(FOLLOW_char_literal_in_fixed_64bit_literal697);
char_literal53=char_literal();
state._fsp--;
- value = char_literal53;
+ value = char_literal53;
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:308:5: bool_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:308:5: bool_literal
{
pushFollow(FOLLOW_bool_literal_in_fixed_64bit_literal705);
bool_literal54=bool_literal();
state._fsp--;
- value = bool_literal54?1:0;
+ value = bool_literal54?1:0;
}
break;
@@ -1744,7 +1725,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "fixed_32bit_literal"
- // /usr/local/google/home/bgruv/android/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/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 );
public final int fixed_32bit_literal() throws RecognitionException {
int value = 0;
@@ -1758,7 +1739,7 @@ public class smaliTreeWalker extends TreeParser {
boolean bool_literal61 =false;
try {
- // /usr/local/google/home/bgruv/android/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/antlr3/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:
@@ -1803,73 +1784,73 @@ public class smaliTreeWalker extends TreeParser {
}
switch (alt12) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:313:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:313:5: integer_literal
{
pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal722);
integer_literal55=integer_literal();
state._fsp--;
- value = integer_literal55;
+ value = integer_literal55;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:314:5: long_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:314:5: long_literal
{
pushFollow(FOLLOW_long_literal_in_fixed_32bit_literal730);
long_literal56=long_literal();
state._fsp--;
- LiteralTools.checkInt(long_literal56); value = (int)long_literal56;
+ LiteralTools.checkInt(long_literal56); value = (int)long_literal56;
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:315:5: short_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:315:5: short_literal
{
pushFollow(FOLLOW_short_literal_in_fixed_32bit_literal738);
short_literal57=short_literal();
state._fsp--;
- value = short_literal57;
+ value = short_literal57;
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:316:5: byte_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:316:5: byte_literal
{
pushFollow(FOLLOW_byte_literal_in_fixed_32bit_literal746);
byte_literal58=byte_literal();
state._fsp--;
- value = byte_literal58;
+ value = byte_literal58;
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:317:5: float_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:317:5: float_literal
{
pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal754);
float_literal59=float_literal();
state._fsp--;
- value = Float.floatToRawIntBits(float_literal59);
+ value = Float.floatToRawIntBits(float_literal59);
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:318:5: char_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:318:5: char_literal
{
pushFollow(FOLLOW_char_literal_in_fixed_32bit_literal762);
char_literal60=char_literal();
state._fsp--;
- value = char_literal60;
+ value = char_literal60;
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:319:5: bool_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:319:5: bool_literal
{
pushFollow(FOLLOW_bool_literal_in_fixed_32bit_literal770);
bool_literal61=bool_literal();
state._fsp--;
- value = bool_literal61?1:0;
+ value = bool_literal61?1:0;
}
break;
@@ -1889,7 +1870,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "array_elements"
- // /usr/local/google/home/bgruv/android/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/antlr3/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;
@@ -1897,14 +1878,14 @@ public class smaliTreeWalker extends TreeParser {
Number fixed_64bit_literal_number62 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:322:3: ( ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) )
- // /usr/local/google/home/bgruv/android/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/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 )* )
{
elements = Lists.newArrayList();
- match(input,I_ARRAY_ELEMENTS,FOLLOW_I_ARRAY_ELEMENTS_in_array_elements792);
+ match(input,I_ARRAY_ELEMENTS,FOLLOW_I_ARRAY_ELEMENTS_in_array_elements792);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:324:7: ( fixed_64bit_literal_number )*
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:324:7: ( fixed_64bit_literal_number )*
loop13:
while (true) {
int alt13=2;
@@ -1915,7 +1896,7 @@ public class smaliTreeWalker extends TreeParser {
switch (alt13) {
case 1 :
- // /usr/local/google/home/bgruv/android/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/antlr3/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();
@@ -1923,7 +1904,7 @@ public class smaliTreeWalker extends TreeParser {
elements.add(fixed_64bit_literal_number62);
-
+
}
break;
@@ -1932,7 +1913,7 @@ public class smaliTreeWalker extends TreeParser {
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -1952,7 +1933,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "packed_switch_elements"
- // /usr/local/google/home/bgruv/android/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/antlr3/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;
@@ -1961,13 +1942,13 @@ public class smaliTreeWalker extends TreeParser {
elements = Lists.newArrayList();
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:331:3: ( ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) )
- // /usr/local/google/home/bgruv/android/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/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 )* )
{
- match(input,I_PACKED_SWITCH_ELEMENTS,FOLLOW_I_PACKED_SWITCH_ELEMENTS_in_packed_switch_elements837);
+ 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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:333:7: ( label_ref )*
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:333:7: ( label_ref )*
loop14:
while (true) {
int alt14=2;
@@ -1978,13 +1959,13 @@ public class smaliTreeWalker extends TreeParser {
switch (alt14) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:333:8: label_ref
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:333:8: label_ref
{
pushFollow(FOLLOW_label_ref_in_packed_switch_elements846);
label_ref63=label_ref();
state._fsp--;
- elements.add(label_ref63);
+ elements.add(label_ref63);
}
break;
@@ -1993,7 +1974,7 @@ public class smaliTreeWalker extends TreeParser {
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -2013,7 +1994,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "sparse_switch_elements"
- // /usr/local/google/home/bgruv/android/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/antlr3/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;
@@ -2023,13 +2004,13 @@ public class smaliTreeWalker extends TreeParser {
elements = Lists.newArrayList();
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:338:3: ( ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) )
- // /usr/local/google/home/bgruv/android/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/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 )* )
{
- match(input,I_SPARSE_SWITCH_ELEMENTS,FOLLOW_I_SPARSE_SWITCH_ELEMENTS_in_sparse_switch_elements881);
+ 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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:340:8: ( fixed_32bit_literal label_ref )*
+ 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 )*
loop15:
while (true) {
int alt15=2;
@@ -2040,7 +2021,7 @@ public class smaliTreeWalker extends TreeParser {
switch (alt15) {
case 1 :
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:340:9: fixed_32bit_literal label_ref
{
pushFollow(FOLLOW_fixed_32bit_literal_in_sparse_switch_elements891);
fixed_32bit_literal64=fixed_32bit_literal();
@@ -2052,7 +2033,7 @@ public class smaliTreeWalker extends TreeParser {
elements.add(new SwitchLabelElement(fixed_32bit_literal64, label_ref65));
-
+
}
break;
@@ -2061,7 +2042,7 @@ public class smaliTreeWalker extends TreeParser {
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -2089,7 +2070,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "method"
- // /usr/local/google/home/bgruv/android/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/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 ) ;
public final BuilderMethod method() throws RecognitionException {
method_stack.push(new method_scope());
BuilderMethod ret = null;
@@ -2107,13 +2088,13 @@ public class smaliTreeWalker extends TreeParser {
method_stack.peek().methodParameterRegisters = 0;
int accessFlags = 0;
method_stack.peek().isStatic = false;
-
+
try {
- // /usr/local/google/home/bgruv/android/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 ) )
- // /usr/local/google/home/bgruv/android/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/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 )
{
- I_METHOD70=(CommonTree)match(input,I_METHOD,FOLLOW_I_METHOD_in_method945);
- match(input, Token.DOWN, null);
+ I_METHOD70=(CommonTree)match(input,I_METHOD,FOLLOW_I_METHOD_in_method945);
+ match(input, Token.DOWN, null);
pushFollow(FOLLOW_method_name_and_prototype_in_method953);
method_name_and_prototype67=method_name_and_prototype();
state._fsp--;
@@ -2127,8 +2108,8 @@ public class smaliTreeWalker extends TreeParser {
method_stack.peek().isStatic = AccessFlags.STATIC.isSet(accessFlags);
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);
-
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:371:7: ( ( registers_directive ) |)
+
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:371:7: ( ( registers_directive ) |)
int alt16=2;
int LA16_0 = input.LA(1);
if ( (LA16_0==I_LOCALS||LA16_0==I_REGISTERS) ) {
@@ -2146,10 +2127,10 @@ public class smaliTreeWalker extends TreeParser {
switch (alt16) {
case 1 :
- // /usr/local/google/home/bgruv/android/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:9: ( registers_directive )
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:372:9: ( registers_directive )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:372:10: 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
{
pushFollow(FOLLOW_registers_directive_in_method988);
registers_directive68=registers_directive();
@@ -2164,17 +2145,17 @@ public class smaliTreeWalker extends TreeParser {
method_stack.peek().methodBuilder = new MethodImplementationBuilder(method_stack.peek().totalMethodRegisters);
-
+
}
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:385:9:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:385:9:
{
method_stack.peek().methodBuilder = new MethodImplementationBuilder(0);
-
+
}
break;
@@ -2196,7 +2177,7 @@ public class smaliTreeWalker extends TreeParser {
annotations71=annotations();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
MethodImplementation methodImplementation = null;
@@ -2269,7 +2250,7 @@ public class smaliTreeWalker extends TreeParser {
accessFlags,
annotations71,
methodImplementation);
-
+
}
}
@@ -2293,38 +2274,38 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "method_prototype"
- // /usr/local/google/home/bgruv/android/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 ) field_type_list ) ;
+ // /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 ) ;
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);
String type_descriptor72 =null;
- List<String> field_type_list73 =null;
+ List<String> method_type_list73 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:468:3: ( ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) field_type_list ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:468:5: ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) field_type_list )
+ // /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 )
{
- match(input,I_METHOD_PROTOTYPE,FOLLOW_I_METHOD_PROTOTYPE_in_method_prototype1094);
- match(input, Token.DOWN, null);
- match(input,I_METHOD_RETURN_TYPE,FOLLOW_I_METHOD_RETURN_TYPE_in_method_prototype1097);
- match(input, Token.DOWN, null);
+ match(input,I_METHOD_PROTOTYPE,FOLLOW_I_METHOD_PROTOTYPE_in_method_prototype1094);
+ match(input, Token.DOWN, null);
+ match(input,I_METHOD_RETURN_TYPE,FOLLOW_I_METHOD_RETURN_TYPE_in_method_prototype1097);
+ match(input, Token.DOWN, null);
pushFollow(FOLLOW_type_descriptor_in_method_prototype1099);
type_descriptor72=type_descriptor();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
- pushFollow(FOLLOW_field_type_list_in_method_prototype1102);
- field_type_list73=field_type_list();
+ pushFollow(FOLLOW_method_type_list_in_method_prototype1102);
+ method_type_list73=method_type_list();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
retval.returnType = type_descriptor72;
- retval.parameters = field_type_list73;
-
+ retval.parameters = method_type_list73;
+
}
}
@@ -2348,7 +2329,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "method_name_and_prototype"
- // /usr/local/google/home/bgruv/android/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/antlr3/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);
@@ -2357,10 +2338,10 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope method_prototype75 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:475:3: ( SIMPLE_NAME method_prototype )
- // /usr/local/google/home/bgruv/android/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/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
{
- SIMPLE_NAME74=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120);
+ SIMPLE_NAME74=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120);
pushFollow(FOLLOW_method_prototype_in_method_name_and_prototype1122);
method_prototype75=method_prototype();
state._fsp--;
@@ -2378,7 +2359,7 @@ public class smaliTreeWalker extends TreeParser {
}
}
retval.returnType = (method_prototype75!=null?((smaliTreeWalker.method_prototype_return)method_prototype75).returnType:null);
-
+
}
}
@@ -2395,9 +2376,9 @@ public class smaliTreeWalker extends TreeParser {
- // $ANTLR start "field_type_list"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:491:1: field_type_list returns [List<String> types] : ( nonvoid_type_descriptor )* ;
- public final List<String> field_type_list() throws RecognitionException {
+ // $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 )* ;
+ public final List<String> method_type_list() throws RecognitionException {
List<String> types = null;
@@ -2405,12 +2386,12 @@ public class smaliTreeWalker extends TreeParser {
types = Lists.newArrayList();
-
+
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:496:3: ( ( nonvoid_type_descriptor )* )
- // /usr/local/google/home/bgruv/android/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/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 )*
{
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )*
loop17:
while (true) {
int alt17=2;
@@ -2421,15 +2402,15 @@ public class smaliTreeWalker extends TreeParser {
switch (alt17) {
case 1 :
- // /usr/local/google/home/bgruv/android/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/antlr3/smaliTreeWalker.g:497:7: nonvoid_type_descriptor
{
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_type_list1156);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_method_type_list1156);
nonvoid_type_descriptor76=nonvoid_type_descriptor();
state._fsp--;
types.add((nonvoid_type_descriptor76!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor76).type:null));
-
+
}
break;
@@ -2450,13 +2431,13 @@ public class smaliTreeWalker extends TreeParser {
}
return types;
}
- // $ANTLR end "field_type_list"
+ // $ANTLR end "method_type_list"
- // $ANTLR start "fully_qualified_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:504:1: fully_qualified_method returns [ImmutableMethodReference methodReference] : reference_type_descriptor SIMPLE_NAME method_prototype ;
- public final ImmutableMethodReference fully_qualified_method() throws RecognitionException {
+ // $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 ;
+ public final ImmutableMethodReference method_reference() throws RecognitionException {
ImmutableMethodReference methodReference = null;
@@ -2465,22 +2446,43 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope method_prototype79 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:505:3: ( reference_type_descriptor SIMPLE_NAME method_prototype )
- // /usr/local/google/home/bgruv/android/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/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
{
- pushFollow(FOLLOW_reference_type_descriptor_in_fully_qualified_method1185);
- reference_type_descriptor77=reference_type_descriptor();
- state._fsp--;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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) ) {
+ alt18=1;
+ }
+ switch (alt18) {
+ case 1 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:505:5: reference_type_descriptor
+ {
+ pushFollow(FOLLOW_reference_type_descriptor_in_method_reference1185);
+ reference_type_descriptor77=reference_type_descriptor();
+ state._fsp--;
+
+ }
+ break;
- SIMPLE_NAME78=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_fully_qualified_method1187);
- pushFollow(FOLLOW_method_prototype_in_fully_qualified_method1189);
+ }
+
+ SIMPLE_NAME78=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_reference1188);
+ pushFollow(FOLLOW_method_prototype_in_method_reference1190);
method_prototype79=method_prototype();
state._fsp--;
- methodReference = new ImmutableMethodReference((reference_type_descriptor77!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor77).type:null), (SIMPLE_NAME78!=null?SIMPLE_NAME78.getText():null),
+ String type;
+ if ((reference_type_descriptor77!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor77).type:null) == null) {
+ type = classType;
+ } else {
+ type = (reference_type_descriptor77!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor77).type:null);
+ }
+ methodReference = new ImmutableMethodReference(type, (SIMPLE_NAME78!=null?SIMPLE_NAME78.getText():null),
(method_prototype79!=null?((smaliTreeWalker.method_prototype_return)method_prototype79).parameters:null), (method_prototype79!=null?((smaliTreeWalker.method_prototype_return)method_prototype79).returnType:null));
-
+
}
}
@@ -2493,13 +2495,13 @@ public class smaliTreeWalker extends TreeParser {
}
return methodReference;
}
- // $ANTLR end "fully_qualified_method"
+ // $ANTLR end "method_reference"
- // $ANTLR start "fully_qualified_field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:511:1: fully_qualified_field returns [ImmutableFieldReference fieldReference] : reference_type_descriptor SIMPLE_NAME nonvoid_type_descriptor ;
- public final ImmutableFieldReference fully_qualified_field() throws RecognitionException {
+ // $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 ;
+ public final ImmutableFieldReference field_reference() throws RecognitionException {
ImmutableFieldReference fieldReference = null;
@@ -2508,22 +2510,43 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope nonvoid_type_descriptor82 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:512:3: ( reference_type_descriptor SIMPLE_NAME nonvoid_type_descriptor )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:512:5: reference_type_descriptor SIMPLE_NAME nonvoid_type_descriptor
+ // /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
{
- pushFollow(FOLLOW_reference_type_descriptor_in_fully_qualified_field1206);
- reference_type_descriptor80=reference_type_descriptor();
- state._fsp--;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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) ) {
+ alt19=1;
+ }
+ switch (alt19) {
+ case 1 :
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:518:5: reference_type_descriptor
+ {
+ pushFollow(FOLLOW_reference_type_descriptor_in_field_reference1207);
+ reference_type_descriptor80=reference_type_descriptor();
+ state._fsp--;
+
+ }
+ break;
+
+ }
- SIMPLE_NAME81=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_fully_qualified_field1208);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_fully_qualified_field1210);
+ SIMPLE_NAME81=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_field_reference1210);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_reference1212);
nonvoid_type_descriptor82=nonvoid_type_descriptor();
state._fsp--;
- fieldReference = new ImmutableFieldReference((reference_type_descriptor80!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor80).type:null), (SIMPLE_NAME81!=null?SIMPLE_NAME81.getText():null),
+ String type;
+ if ((reference_type_descriptor80!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor80).type:null) == null) {
+ type = classType;
+ } else {
+ type = (reference_type_descriptor80!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor80).type:null);
+ }
+ fieldReference = new ImmutableFieldReference(type, (SIMPLE_NAME81!=null?SIMPLE_NAME81.getText():null),
(nonvoid_type_descriptor82!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor82).type:null));
-
+
}
}
@@ -2536,7 +2559,7 @@ public class smaliTreeWalker extends TreeParser {
}
return fieldReference;
}
- // $ANTLR end "fully_qualified_field"
+ // $ANTLR end "field_reference"
public static class registers_directive_return extends TreeRuleReturnScope {
@@ -2546,7 +2569,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "registers_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:518: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/antlr3/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);
@@ -2554,51 +2577,51 @@ public class smaliTreeWalker extends TreeParser {
short short_integral_literal83 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:519:3: ( ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:519:5: ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal )
+ // /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 )
{
retval.registers = 0;
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:520:7: ( I_REGISTERS | I_LOCALS )
- int alt18=2;
- int LA18_0 = input.LA(1);
- if ( (LA18_0==I_REGISTERS) ) {
- alt18=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:532:7: ( I_REGISTERS | I_LOCALS )
+ int alt20=2;
+ int LA20_0 = input.LA(1);
+ if ( (LA20_0==I_REGISTERS) ) {
+ alt20=1;
}
- else if ( (LA18_0==I_LOCALS) ) {
- alt18=2;
+ else if ( (LA20_0==I_LOCALS) ) {
+ alt20=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 18, 0, input);
+ new NoViableAltException("", 20, 0, input);
throw nvae;
}
- switch (alt18) {
+ switch (alt20) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:520:9: I_REGISTERS
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:532:9: I_REGISTERS
{
- match(input,I_REGISTERS,FOLLOW_I_REGISTERS_in_registers_directive1236);
+ match(input,I_REGISTERS,FOLLOW_I_REGISTERS_in_registers_directive1238);
retval.isLocalsDirective = false;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:521:9: I_LOCALS
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:533:9: I_LOCALS
{
- match(input,I_LOCALS,FOLLOW_I_LOCALS_in_registers_directive1248);
+ match(input,I_LOCALS,FOLLOW_I_LOCALS_in_registers_directive1250);
retval.isLocalsDirective = true;
}
break;
}
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_short_integral_literal_in_registers_directive1266);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_short_integral_literal_in_registers_directive1268);
short_integral_literal83=short_integral_literal();
state._fsp--;
retval.registers = short_integral_literal83;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
@@ -2617,22 +2640,22 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "label_def"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:526:1: label_def : ^( I_LABEL SIMPLE_NAME ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:538:1: label_def : ^( I_LABEL SIMPLE_NAME ) ;
public final void label_def() throws RecognitionException {
CommonTree SIMPLE_NAME84=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:527:3: ( ^( I_LABEL SIMPLE_NAME ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:527:5: ^( I_LABEL SIMPLE_NAME )
+ // /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 )
{
- match(input,I_LABEL,FOLLOW_I_LABEL_in_label_def1286);
- match(input, Token.DOWN, null);
- SIMPLE_NAME84=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_label_def1288);
- match(input, Token.UP, null);
+ match(input,I_LABEL,FOLLOW_I_LABEL_in_label_def1288);
+ match(input, Token.DOWN, null);
+ SIMPLE_NAME84=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_label_def1290);
+ match(input, Token.UP, null);
method_stack.peek().methodBuilder.addLabel((SIMPLE_NAME84!=null?SIMPLE_NAME84.getText():null));
-
+
}
}
@@ -2649,33 +2672,33 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "catches"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:532:1: catches returns [List<BuilderTryBlock> tryBlocks] : ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ;
+ // /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 )* ) ;
public final List<BuilderTryBlock> catches() throws RecognitionException {
List<BuilderTryBlock> tryBlocks = null;
tryBlocks = Lists.newArrayList();
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:534:3: ( ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:534:5: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* )
+ // /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 )* )
{
- match(input,I_CATCHES,FOLLOW_I_CATCHES_in_catches1314);
+ match(input,I_CATCHES,FOLLOW_I_CATCHES_in_catches1316);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:534:17: ( catch_directive )*
- loop19:
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:17: ( catch_directive )*
+ loop21:
while (true) {
- int alt19=2;
- int LA19_0 = input.LA(1);
- if ( (LA19_0==I_CATCH) ) {
- alt19=1;
+ int alt21=2;
+ int LA21_0 = input.LA(1);
+ if ( (LA21_0==I_CATCH) ) {
+ alt21=1;
}
- switch (alt19) {
+ switch (alt21) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:534:17: catch_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:17: catch_directive
{
- pushFollow(FOLLOW_catch_directive_in_catches1316);
+ pushFollow(FOLLOW_catch_directive_in_catches1318);
catch_directive();
state._fsp--;
@@ -2683,24 +2706,24 @@ public class smaliTreeWalker extends TreeParser {
break;
default :
- break loop19;
+ break loop21;
}
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:534:34: ( catchall_directive )*
- loop20:
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:34: ( catchall_directive )*
+ loop22:
while (true) {
- int alt20=2;
- int LA20_0 = input.LA(1);
- if ( (LA20_0==I_CATCHALL) ) {
- alt20=1;
+ int alt22=2;
+ int LA22_0 = input.LA(1);
+ if ( (LA22_0==I_CATCHALL) ) {
+ alt22=1;
}
- switch (alt20) {
+ switch (alt22) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:534:34: catchall_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:546:34: catchall_directive
{
- pushFollow(FOLLOW_catchall_directive_in_catches1319);
+ pushFollow(FOLLOW_catchall_directive_in_catches1321);
catchall_directive();
state._fsp--;
@@ -2708,11 +2731,11 @@ public class smaliTreeWalker extends TreeParser {
break;
default :
- break loop20;
+ break loop22;
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -2732,7 +2755,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "catch_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:536: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/antlr3/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;
@@ -2740,33 +2763,33 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope nonvoid_type_descriptor85 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:537:3: ( ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:537: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/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 )
{
- match(input,I_CATCH,FOLLOW_I_CATCH_in_catch_directive1332);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive1334);
+ match(input,I_CATCH,FOLLOW_I_CATCH_in_catch_directive1334);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive1336);
nonvoid_type_descriptor85=nonvoid_type_descriptor();
state._fsp--;
- pushFollow(FOLLOW_label_ref_in_catch_directive1338);
+ pushFollow(FOLLOW_label_ref_in_catch_directive1340);
from=label_ref();
state._fsp--;
- pushFollow(FOLLOW_label_ref_in_catch_directive1342);
+ pushFollow(FOLLOW_label_ref_in_catch_directive1344);
to=label_ref();
state._fsp--;
- pushFollow(FOLLOW_label_ref_in_catch_directive1346);
+ pushFollow(FOLLOW_label_ref_in_catch_directive1348);
using=label_ref();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
method_stack.peek().methodBuilder.addCatch(dexBuilder.internTypeReference((nonvoid_type_descriptor85!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor85).type:null)),
from, to, using);
-
+
}
}
@@ -2783,35 +2806,35 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "catchall_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:543:1: catchall_directive : ^( I_CATCHALL from= label_ref to= label_ref using= label_ref ) ;
+ // /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 ) ;
public final void catchall_directive() throws RecognitionException {
Label from =null;
Label to =null;
Label using =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:544:3: ( ^( I_CATCHALL from= label_ref to= label_ref using= label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:544:5: ^( 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: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 )
{
- match(input,I_CATCHALL,FOLLOW_I_CATCHALL_in_catchall_directive1362);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_label_ref_in_catchall_directive1366);
+ match(input,I_CATCHALL,FOLLOW_I_CATCHALL_in_catchall_directive1364);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_label_ref_in_catchall_directive1368);
from=label_ref();
state._fsp--;
- pushFollow(FOLLOW_label_ref_in_catchall_directive1370);
+ pushFollow(FOLLOW_label_ref_in_catchall_directive1372);
to=label_ref();
state._fsp--;
- pushFollow(FOLLOW_label_ref_in_catchall_directive1374);
+ pushFollow(FOLLOW_label_ref_in_catchall_directive1376);
using=label_ref();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
method_stack.peek().methodBuilder.addCatch(from, to, using);
-
+
}
}
@@ -2828,29 +2851,29 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "parameters"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:549:1: parameters[List<SmaliMethodParameter> parameters] : ^( I_PARAMETERS ( parameter[parameters] )* ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:561:1: parameters[List<SmaliMethodParameter> parameters] : ^( I_PARAMETERS ( parameter[parameters] )* ) ;
public final void parameters(List<SmaliMethodParameter> parameters) throws RecognitionException {
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:550:3: ( ^( I_PARAMETERS ( parameter[parameters] )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:550:5: ^( I_PARAMETERS ( parameter[parameters] )* )
+ // /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] )* )
{
- match(input,I_PARAMETERS,FOLLOW_I_PARAMETERS_in_parameters1391);
+ match(input,I_PARAMETERS,FOLLOW_I_PARAMETERS_in_parameters1393);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:550:20: ( parameter[parameters] )*
- loop21:
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:562:20: ( parameter[parameters] )*
+ loop23:
while (true) {
- int alt21=2;
- int LA21_0 = input.LA(1);
- if ( (LA21_0==I_PARAMETER) ) {
- alt21=1;
+ int alt23=2;
+ int LA23_0 = input.LA(1);
+ if ( (LA23_0==I_PARAMETER) ) {
+ alt23=1;
}
- switch (alt21) {
+ switch (alt23) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:550:21: parameter[parameters]
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:562:21: parameter[parameters]
{
- pushFollow(FOLLOW_parameter_in_parameters1394);
+ pushFollow(FOLLOW_parameter_in_parameters1396);
parameter(parameters);
state._fsp--;
@@ -2858,11 +2881,11 @@ public class smaliTreeWalker extends TreeParser {
break;
default :
- break loop21;
+ break loop23;
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -2881,7 +2904,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "parameter"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:552:1: parameter[List<SmaliMethodParameter> parameters] : ^( I_PARAMETER REGISTER ( string_literal )? annotations ) ;
+ // /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 ) ;
public final void parameter(List<SmaliMethodParameter> parameters) throws RecognitionException {
CommonTree REGISTER86=null;
CommonTree I_PARAMETER87=null;
@@ -2889,23 +2912,23 @@ public class smaliTreeWalker extends TreeParser {
Set<Annotation> annotations89 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:553:3: ( ^( I_PARAMETER REGISTER ( string_literal )? annotations ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:553:5: ^( I_PARAMETER REGISTER ( string_literal )? annotations )
+ // /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 )
{
- I_PARAMETER87=(CommonTree)match(input,I_PARAMETER,FOLLOW_I_PARAMETER_in_parameter1410);
- match(input, Token.DOWN, null);
- REGISTER86=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_parameter1412);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:553:28: ( string_literal )?
- int alt22=2;
- int LA22_0 = input.LA(1);
- if ( (LA22_0==STRING_LITERAL) ) {
- alt22=1;
- }
- switch (alt22) {
+ 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 )?
+ int alt24=2;
+ int LA24_0 = input.LA(1);
+ if ( (LA24_0==STRING_LITERAL) ) {
+ alt24=1;
+ }
+ switch (alt24) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:553:28: string_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:565:28: string_literal
{
- pushFollow(FOLLOW_string_literal_in_parameter1414);
+ pushFollow(FOLLOW_string_literal_in_parameter1416);
string_literal88=string_literal();
state._fsp--;
@@ -2914,11 +2937,11 @@ public class smaliTreeWalker extends TreeParser {
}
- pushFollow(FOLLOW_annotations_in_parameter1417);
+ pushFollow(FOLLOW_annotations_in_parameter1419);
annotations89=annotations();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
final int registerNumber = parseRegister_short((REGISTER86!=null?REGISTER86.getText():null));
@@ -2950,7 +2973,7 @@ public class smaliTreeWalker extends TreeParser {
if (annotations89 != null && annotations89.size() > 0) {
methodParameter.annotations = annotations89;
}
-
+
}
}
@@ -2967,111 +2990,111 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "debug_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:586:1: debug_directive : ( line | local | end_local | restart_local | prologue | epilogue | source );
+ // /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 );
public final void debug_directive() throws RecognitionException {
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:587:3: ( line | local | end_local | restart_local | prologue | epilogue | source )
- int alt23=7;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:599:3: ( line | local | end_local | restart_local | prologue | epilogue | source )
+ int alt25=7;
switch ( input.LA(1) ) {
case I_LINE:
{
- alt23=1;
+ alt25=1;
}
break;
case I_LOCAL:
{
- alt23=2;
+ alt25=2;
}
break;
case I_END_LOCAL:
{
- alt23=3;
+ alt25=3;
}
break;
case I_RESTART_LOCAL:
{
- alt23=4;
+ alt25=4;
}
break;
case I_PROLOGUE:
{
- alt23=5;
+ alt25=5;
}
break;
case I_EPILOGUE:
{
- alt23=6;
+ alt25=6;
}
break;
case I_SOURCE:
{
- alt23=7;
+ alt25=7;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 23, 0, input);
+ new NoViableAltException("", 25, 0, input);
throw nvae;
}
- switch (alt23) {
+ switch (alt25) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:587:5: line
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:599:5: line
{
- pushFollow(FOLLOW_line_in_debug_directive1434);
+ pushFollow(FOLLOW_line_in_debug_directive1436);
line();
state._fsp--;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:588:5: local
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:600:5: local
{
- pushFollow(FOLLOW_local_in_debug_directive1440);
+ pushFollow(FOLLOW_local_in_debug_directive1442);
local();
state._fsp--;
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:589:5: end_local
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:601:5: end_local
{
- pushFollow(FOLLOW_end_local_in_debug_directive1446);
+ pushFollow(FOLLOW_end_local_in_debug_directive1448);
end_local();
state._fsp--;
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:590:5: restart_local
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:5: restart_local
{
- pushFollow(FOLLOW_restart_local_in_debug_directive1452);
+ pushFollow(FOLLOW_restart_local_in_debug_directive1454);
restart_local();
state._fsp--;
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:591:5: prologue
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:603:5: prologue
{
- pushFollow(FOLLOW_prologue_in_debug_directive1458);
+ pushFollow(FOLLOW_prologue_in_debug_directive1460);
prologue();
state._fsp--;
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:592:5: epilogue
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:604:5: epilogue
{
- pushFollow(FOLLOW_epilogue_in_debug_directive1464);
+ pushFollow(FOLLOW_epilogue_in_debug_directive1466);
epilogue();
state._fsp--;
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:593:5: source
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:605:5: source
{
- pushFollow(FOLLOW_source_in_debug_directive1470);
+ pushFollow(FOLLOW_source_in_debug_directive1472);
source();
state._fsp--;
@@ -3093,25 +3116,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "line"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:595:1: line : ^( I_LINE integral_literal ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:607:1: line : ^( I_LINE integral_literal ) ;
public final void line() throws RecognitionException {
int integral_literal90 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:596:3: ( ^( I_LINE integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:596:5: ^( I_LINE integral_literal )
+ // /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 )
{
- match(input,I_LINE,FOLLOW_I_LINE_in_line1481);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_integral_literal_in_line1483);
+ match(input,I_LINE,FOLLOW_I_LINE_in_line1483);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_integral_literal_in_line1485);
integral_literal90=integral_literal();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
method_stack.peek().methodBuilder.addLineNumber(integral_literal90);
-
+
}
}
@@ -3128,7 +3151,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "local"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:601: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/antlr3/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;
@@ -3136,49 +3159,49 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope nonvoid_type_descriptor92 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:3: ( ^( I_LOCAL REGISTER ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602: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/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 )? )? )
{
- match(input,I_LOCAL,FOLLOW_I_LOCAL_in_local1501);
- match(input, Token.DOWN, null);
- REGISTER91=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_local1503);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:24: ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )?
- int alt27=2;
- int LA27_0 = input.LA(1);
- if ( (LA27_0==NULL_LITERAL||LA27_0==STRING_LITERAL) ) {
- alt27=1;
- }
- switch (alt27) {
+ 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 )? )?
+ int alt29=2;
+ int LA29_0 = input.LA(1);
+ if ( (LA29_0==NULL_LITERAL||LA29_0==STRING_LITERAL) ) {
+ alt29=1;
+ }
+ switch (alt29) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602: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 ) ( nonvoid_type_descriptor )? (signature= string_literal )?
{
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:25: ( NULL_LITERAL |name= string_literal )
- int alt24=2;
- int LA24_0 = input.LA(1);
- if ( (LA24_0==NULL_LITERAL) ) {
- alt24=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:25: ( NULL_LITERAL |name= string_literal )
+ int alt26=2;
+ int LA26_0 = input.LA(1);
+ if ( (LA26_0==NULL_LITERAL) ) {
+ alt26=1;
}
- else if ( (LA24_0==STRING_LITERAL) ) {
- alt24=2;
+ else if ( (LA26_0==STRING_LITERAL) ) {
+ alt26=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 24, 0, input);
+ new NoViableAltException("", 26, 0, input);
throw nvae;
}
- switch (alt24) {
+ switch (alt26) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:26: NULL_LITERAL
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:26: NULL_LITERAL
{
- match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local1507);
+ match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local1509);
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:41: name= string_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:41: name= string_literal
{
- pushFollow(FOLLOW_string_literal_in_local1513);
+ pushFollow(FOLLOW_string_literal_in_local1515);
name=string_literal();
state._fsp--;
@@ -3187,17 +3210,17 @@ public class smaliTreeWalker extends TreeParser {
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:62: ( nonvoid_type_descriptor )?
- int alt25=2;
- int LA25_0 = input.LA(1);
- if ( (LA25_0==ARRAY_DESCRIPTOR||LA25_0==CLASS_DESCRIPTOR||LA25_0==PRIMITIVE_TYPE) ) {
- alt25=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/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) ) {
+ alt27=1;
}
- switch (alt25) {
+ switch (alt27) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:62: nonvoid_type_descriptor
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:62: nonvoid_type_descriptor
{
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_local1516);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_local1518);
nonvoid_type_descriptor92=nonvoid_type_descriptor();
state._fsp--;
@@ -3206,17 +3229,17 @@ public class smaliTreeWalker extends TreeParser {
}
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:96: (signature= string_literal )?
- int alt26=2;
- int LA26_0 = input.LA(1);
- if ( (LA26_0==STRING_LITERAL) ) {
- alt26=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:96: (signature= string_literal )?
+ int alt28=2;
+ int LA28_0 = input.LA(1);
+ if ( (LA28_0==STRING_LITERAL) ) {
+ alt28=1;
}
- switch (alt26) {
+ switch (alt28) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:602:96: signature= string_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:614:96: signature= string_literal
{
- pushFollow(FOLLOW_string_literal_in_local1521);
+ pushFollow(FOLLOW_string_literal_in_local1523);
signature=string_literal();
state._fsp--;
@@ -3230,7 +3253,7 @@ public class smaliTreeWalker extends TreeParser {
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
int registerNumber = parseRegister_short((REGISTER91!=null?REGISTER91.getText():null));
@@ -3238,7 +3261,7 @@ public class smaliTreeWalker extends TreeParser {
dexBuilder.internNullableStringReference(name),
dexBuilder.internNullableTypeReference((nonvoid_type_descriptor92!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor92).type:null)),
dexBuilder.internNullableStringReference(signature));
-
+
}
}
@@ -3255,23 +3278,23 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "end_local"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:611:1: end_local : ^( I_END_LOCAL REGISTER ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:623:1: end_local : ^( I_END_LOCAL REGISTER ) ;
public final void end_local() throws RecognitionException {
CommonTree REGISTER93=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:612:3: ( ^( I_END_LOCAL REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:612:5: ^( I_END_LOCAL REGISTER )
+ // /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 )
{
- match(input,I_END_LOCAL,FOLLOW_I_END_LOCAL_in_end_local1542);
- match(input, Token.DOWN, null);
- REGISTER93=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_end_local1544);
- match(input, Token.UP, null);
+ match(input,I_END_LOCAL,FOLLOW_I_END_LOCAL_in_end_local1544);
+ match(input, Token.DOWN, null);
+ REGISTER93=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_end_local1546);
+ match(input, Token.UP, null);
int registerNumber = parseRegister_short((REGISTER93!=null?REGISTER93.getText():null));
method_stack.peek().methodBuilder.addEndLocal(registerNumber);
-
+
}
}
@@ -3288,23 +3311,23 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "restart_local"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:618:1: restart_local : ^( I_RESTART_LOCAL REGISTER ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:630:1: restart_local : ^( I_RESTART_LOCAL REGISTER ) ;
public final void restart_local() throws RecognitionException {
CommonTree REGISTER94=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:619:3: ( ^( I_RESTART_LOCAL REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:619:5: ^( I_RESTART_LOCAL REGISTER )
+ // /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 )
{
- match(input,I_RESTART_LOCAL,FOLLOW_I_RESTART_LOCAL_in_restart_local1562);
- match(input, Token.DOWN, null);
- REGISTER94=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_restart_local1564);
- match(input, Token.UP, null);
+ match(input,I_RESTART_LOCAL,FOLLOW_I_RESTART_LOCAL_in_restart_local1564);
+ match(input, Token.DOWN, null);
+ REGISTER94=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_restart_local1566);
+ match(input, Token.UP, null);
int registerNumber = parseRegister_short((REGISTER94!=null?REGISTER94.getText():null));
method_stack.peek().methodBuilder.addRestartLocal(registerNumber);
-
+
}
}
@@ -3321,16 +3344,16 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "prologue"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:625:1: prologue : I_PROLOGUE ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:637:1: prologue : I_PROLOGUE ;
public final void prologue() throws RecognitionException {
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:626:3: ( I_PROLOGUE )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:626:5: I_PROLOGUE
+ // /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
{
- match(input,I_PROLOGUE,FOLLOW_I_PROLOGUE_in_prologue1581);
+ match(input,I_PROLOGUE,FOLLOW_I_PROLOGUE_in_prologue1583);
method_stack.peek().methodBuilder.addPrologue();
-
+
}
}
@@ -3347,16 +3370,16 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "epilogue"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:631:1: epilogue : I_EPILOGUE ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:643:1: epilogue : I_EPILOGUE ;
public final void epilogue() throws RecognitionException {
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:632:3: ( I_EPILOGUE )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:632:5: I_EPILOGUE
+ // /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
{
- match(input,I_EPILOGUE,FOLLOW_I_EPILOGUE_in_epilogue1597);
+ match(input,I_EPILOGUE,FOLLOW_I_EPILOGUE_in_epilogue1599);
method_stack.peek().methodBuilder.addEpilogue();
-
+
}
}
@@ -3373,28 +3396,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "source"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:637:1: source : ^( I_SOURCE ( string_literal )? ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:649:1: source : ^( I_SOURCE ( string_literal )? ) ;
public final void source() throws RecognitionException {
String string_literal95 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:638:3: ( ^( I_SOURCE ( string_literal )? ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:638:5: ^( I_SOURCE ( string_literal )? )
+ // /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 )? )
{
- match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source1614);
+ match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source1616);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:638:16: ( string_literal )?
- int alt28=2;
- int LA28_0 = input.LA(1);
- if ( (LA28_0==STRING_LITERAL) ) {
- alt28=1;
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:650:16: ( string_literal )?
+ int alt30=2;
+ int LA30_0 = input.LA(1);
+ if ( (LA30_0==STRING_LITERAL) ) {
+ alt30=1;
}
- switch (alt28) {
+ switch (alt30) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:638:16: string_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:650:16: string_literal
{
- pushFollow(FOLLOW_string_literal_in_source1616);
+ pushFollow(FOLLOW_string_literal_in_source1618);
string_literal95=string_literal();
state._fsp--;
@@ -3403,12 +3426,12 @@ public class smaliTreeWalker extends TreeParser {
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
method_stack.peek().methodBuilder.addSetSourceFile(dexBuilder.internNullableStringReference(string_literal95));
-
+
}
}
@@ -3425,23 +3448,23 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "ordered_method_items"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:643:1: ordered_method_items : ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) ;
+ // /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 )* ) ;
public final void ordered_method_items() throws RecognitionException {
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:3: ( ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:5: ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* )
+ // /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 )* )
{
- match(input,I_ORDERED_METHOD_ITEMS,FOLLOW_I_ORDERED_METHOD_ITEMS_in_ordered_method_items1635);
+ 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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:30: ( label_def | instruction | debug_directive )*
- loop29:
+ 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 )*
+ loop31:
while (true) {
- int alt29=4;
+ int alt31=4;
switch ( input.LA(1) ) {
case I_LABEL:
{
- alt29=1;
+ alt31=1;
}
break;
case I_STATEMENT_ARRAY_DATA:
@@ -3479,7 +3502,7 @@ public class smaliTreeWalker extends TreeParser {
case I_STATEMENT_PACKED_SWITCH:
case I_STATEMENT_SPARSE_SWITCH:
{
- alt29=2;
+ alt31=2;
}
break;
case I_END_LOCAL:
@@ -3490,33 +3513,33 @@ public class smaliTreeWalker extends TreeParser {
case I_RESTART_LOCAL:
case I_SOURCE:
{
- alt29=3;
+ alt31=3;
}
break;
}
- switch (alt29) {
+ switch (alt31) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:31: label_def
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:31: label_def
{
- pushFollow(FOLLOW_label_def_in_ordered_method_items1638);
+ pushFollow(FOLLOW_label_def_in_ordered_method_items1640);
label_def();
state._fsp--;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:43: instruction
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:43: instruction
{
- pushFollow(FOLLOW_instruction_in_ordered_method_items1642);
+ pushFollow(FOLLOW_instruction_in_ordered_method_items1644);
instruction();
state._fsp--;
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:644:57: debug_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:57: debug_directive
{
- pushFollow(FOLLOW_debug_directive_in_ordered_method_items1646);
+ pushFollow(FOLLOW_debug_directive_in_ordered_method_items1648);
debug_directive();
state._fsp--;
@@ -3524,11 +3547,11 @@ public class smaliTreeWalker extends TreeParser {
break;
default :
- break loop29;
+ break loop31;
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -3547,7 +3570,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "label_ref"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:646:1: label_ref returns [Label label] : SIMPLE_NAME ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:658:1: label_ref returns [Label label] : SIMPLE_NAME ;
public final Label label_ref() throws RecognitionException {
Label label = null;
@@ -3555,11 +3578,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree SIMPLE_NAME96=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:647:3: ( SIMPLE_NAME )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:647:5: SIMPLE_NAME
+ // /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
{
- SIMPLE_NAME96=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_label_ref1662);
- label = method_stack.peek().methodBuilder.getLabel((SIMPLE_NAME96!=null?SIMPLE_NAME96.getText():null));
+ 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));
}
}
@@ -3582,7 +3605,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "register_list"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:649:1: register_list returns [byte[] registers, byte registerCount] : ^( I_REGISTER_LIST ( REGISTER )* ) ;
+ // /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 )* ) ;
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);
@@ -3593,44 +3616,44 @@ public class smaliTreeWalker extends TreeParser {
retval.registers = new byte[5];
retval.registerCount = 0;
-
+
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:655:3: ( ^( I_REGISTER_LIST ( REGISTER )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:655:5: ^( I_REGISTER_LIST ( REGISTER )* )
+ // /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 )* )
{
- I_REGISTER_LIST97=(CommonTree)match(input,I_REGISTER_LIST,FOLLOW_I_REGISTER_LIST_in_register_list1687);
+ 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);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:7: ( REGISTER )*
- loop30:
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:668:7: ( REGISTER )*
+ loop32:
while (true) {
- int alt30=2;
- int LA30_0 = input.LA(1);
- if ( (LA30_0==REGISTER) ) {
- alt30=1;
+ int alt32=2;
+ int LA32_0 = input.LA(1);
+ if ( (LA32_0==REGISTER) ) {
+ alt32=1;
}
- switch (alt30) {
+ switch (alt32) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:656:8: REGISTER
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:668:8: REGISTER
{
- REGISTER98=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_list1696);
+ REGISTER98=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_list1698);
if (retval.registerCount == 5) {
throw new SemanticException(input, I_REGISTER_LIST97, "A list of registers can only have a maximum of 5 " +
"registers. Use the <op>/range alternate opcode instead.");
}
retval.registers[retval.registerCount++] = parseRegister_nibble((REGISTER98!=null?REGISTER98.getText():null));
-
+
}
break;
default :
- break loop30;
+ break loop32;
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -3655,7 +3678,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "register_range"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:665: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/antlr3/smaliTreeWalker.g:677: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);
@@ -3665,34 +3688,34 @@ public class smaliTreeWalker extends TreeParser {
CommonTree I_REGISTER_RANGE99=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:666:3: ( ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:666:5: ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? )
+ // /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 )? )? )
{
- I_REGISTER_RANGE99=(CommonTree)match(input,I_REGISTER_RANGE,FOLLOW_I_REGISTER_RANGE_in_register_range1721);
+ I_REGISTER_RANGE99=(CommonTree)match(input,I_REGISTER_RANGE,FOLLOW_I_REGISTER_RANGE_in_register_range1723);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:666:24: (startReg= REGISTER (endReg= REGISTER )? )?
- int alt32=2;
- int LA32_0 = input.LA(1);
- if ( (LA32_0==REGISTER) ) {
- alt32=1;
+ 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;
}
- switch (alt32) {
+ switch (alt34) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:666:25: startReg= REGISTER (endReg= REGISTER )?
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:25: startReg= REGISTER (endReg= REGISTER )?
{
- startReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1726);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:666:49: (endReg= REGISTER )?
- int alt31=2;
- int LA31_0 = input.LA(1);
- if ( (LA31_0==REGISTER) ) {
- alt31=1;
+ 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;
}
- switch (alt31) {
+ switch (alt33) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:666:49: endReg= REGISTER
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:678:49: endReg= REGISTER
{
- endReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1730);
+ endReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1732);
}
break;
@@ -3703,7 +3726,7 @@ public class smaliTreeWalker extends TreeParser {
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
@@ -3723,7 +3746,7 @@ public class smaliTreeWalker extends TreeParser {
throw new SemanticException(input, I_REGISTER_RANGE99, "A register range must have the lower register listed first");
}
}
-
+
}
}
@@ -3741,31 +3764,32 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "verification_error_reference"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:686:1: verification_error_reference returns [ImmutableReference reference] : ( CLASS_DESCRIPTOR | fully_qualified_field | fully_qualified_method );
+ // /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 );
public final ImmutableReference verification_error_reference() throws RecognitionException {
ImmutableReference reference = null;
CommonTree CLASS_DESCRIPTOR100=null;
- ImmutableFieldReference fully_qualified_field101 =null;
- ImmutableMethodReference fully_qualified_method102 =null;
+ ImmutableFieldReference field_reference101 =null;
+ ImmutableMethodReference method_reference102 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:687:3: ( CLASS_DESCRIPTOR | fully_qualified_field | fully_qualified_method )
- int alt33=3;
- int LA33_0 = input.LA(1);
- if ( (LA33_0==CLASS_DESCRIPTOR) ) {
- int LA33_1 = input.LA(2);
- if ( (LA33_1==UP) ) {
- alt33=1;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:699:3: ( CLASS_DESCRIPTOR | field_reference | method_reference )
+ int alt35=3;
+ switch ( input.LA(1) ) {
+ case CLASS_DESCRIPTOR:
+ {
+ int LA35_1 = input.LA(2);
+ if ( (LA35_1==UP) ) {
+ alt35=1;
}
- else if ( (LA33_1==SIMPLE_NAME) ) {
- int LA33_4 = input.LA(3);
- if ( (LA33_4==ARRAY_DESCRIPTOR||LA33_4==CLASS_DESCRIPTOR||LA33_4==PRIMITIVE_TYPE) ) {
- alt33=2;
+ 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 ( (LA33_4==I_METHOD_PROTOTYPE) ) {
- alt33=3;
+ else if ( (LA35_3==I_METHOD_PROTOTYPE) ) {
+ alt35=3;
}
else {
@@ -3775,7 +3799,7 @@ public class smaliTreeWalker extends TreeParser {
input.consume();
}
NoViableAltException nvae =
- new NoViableAltException("", 33, 4, input);
+ new NoViableAltException("", 35, 3, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
@@ -3789,23 +3813,25 @@ public class smaliTreeWalker extends TreeParser {
try {
input.consume();
NoViableAltException nvae =
- new NoViableAltException("", 33, 1, input);
+ new NoViableAltException("", 35, 1, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
}
}
- }
- else if ( (LA33_0==ARRAY_DESCRIPTOR) ) {
- int LA33_2 = input.LA(2);
- if ( (LA33_2==SIMPLE_NAME) ) {
- int LA33_4 = input.LA(3);
- if ( (LA33_4==ARRAY_DESCRIPTOR||LA33_4==CLASS_DESCRIPTOR||LA33_4==PRIMITIVE_TYPE) ) {
- alt33=2;
+ }
+ 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;
}
- else if ( (LA33_4==I_METHOD_PROTOTYPE) ) {
- alt33=3;
+ else if ( (LA35_3==I_METHOD_PROTOTYPE) ) {
+ alt35=3;
}
else {
@@ -3815,7 +3841,7 @@ public class smaliTreeWalker extends TreeParser {
input.consume();
}
NoViableAltException nvae =
- new NoViableAltException("", 33, 4, input);
+ new NoViableAltException("", 35, 3, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
@@ -3829,53 +3855,76 @@ public class smaliTreeWalker extends TreeParser {
try {
input.consume();
NoViableAltException nvae =
- new NoViableAltException("", 33, 2, input);
+ new NoViableAltException("", 35, 2, input);
throw nvae;
} finally {
input.rewind(nvaeMark);
}
}
- }
+ }
+ 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;
+ }
+ else if ( (LA35_3==I_METHOD_PROTOTYPE) ) {
+ alt35=3;
+ }
- else {
+ else {
+ int nvaeMark = input.mark();
+ try {
+ input.consume();
+ NoViableAltException nvae =
+ new NoViableAltException("", 35, 3, input);
+ throw nvae;
+ } finally {
+ input.rewind(nvaeMark);
+ }
+ }
+
+ }
+ break;
+ default:
NoViableAltException nvae =
- new NoViableAltException("", 33, 0, input);
+ new NoViableAltException("", 35, 0, input);
throw nvae;
}
-
- switch (alt33) {
+ switch (alt35) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:687:5: CLASS_DESCRIPTOR
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:699:5: CLASS_DESCRIPTOR
{
- CLASS_DESCRIPTOR100=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1753);
+ CLASS_DESCRIPTOR100=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1755);
reference = new ImmutableTypeReference((CLASS_DESCRIPTOR100!=null?CLASS_DESCRIPTOR100.getText():null));
-
+
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:691:5: fully_qualified_field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:703:5: field_reference
{
- pushFollow(FOLLOW_fully_qualified_field_in_verification_error_reference1763);
- fully_qualified_field101=fully_qualified_field();
+ pushFollow(FOLLOW_field_reference_in_verification_error_reference1765);
+ field_reference101=field_reference();
state._fsp--;
- reference = fully_qualified_field101;
-
+ reference = field_reference101;
+
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:695:5: fully_qualified_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:707:5: method_reference
{
- pushFollow(FOLLOW_fully_qualified_method_in_verification_error_reference1773);
- fully_qualified_method102=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_verification_error_reference1775);
+ method_reference102=method_reference();
state._fsp--;
- reference = fully_qualified_method102;
-
+ reference = method_reference102;
+
}
break;
@@ -3895,7 +3944,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "verification_error_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:700:1: verification_error_type returns [int verificationError] : 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 ;
public final int verification_error_type() throws RecognitionException {
int verificationError = 0;
@@ -3903,13 +3952,13 @@ public class smaliTreeWalker extends TreeParser {
CommonTree VERIFICATION_ERROR_TYPE103=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:701:3: ( VERIFICATION_ERROR_TYPE )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:701:5: VERIFICATION_ERROR_TYPE
+ // /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
{
- VERIFICATION_ERROR_TYPE103=(CommonTree)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1790);
+ VERIFICATION_ERROR_TYPE103=(CommonTree)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1792);
verificationError = VerificationError.getVerificationError((VERIFICATION_ERROR_TYPE103!=null?VERIFICATION_ERROR_TYPE103.getText():null));
-
+
}
}
@@ -3930,492 +3979,492 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "instruction"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:706: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/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 );
public final smaliTreeWalker.instruction_return instruction() throws RecognitionException {
smaliTreeWalker.instruction_return retval = new smaliTreeWalker.instruction_return();
retval.start = input.LT(1);
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:707: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 alt34=34;
+ // /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;
switch ( input.LA(1) ) {
case I_STATEMENT_FORMAT10t:
{
- alt34=1;
+ alt36=1;
}
break;
case I_STATEMENT_FORMAT10x:
{
- alt34=2;
+ alt36=2;
}
break;
case I_STATEMENT_FORMAT11n:
{
- alt34=3;
+ alt36=3;
}
break;
case I_STATEMENT_FORMAT11x:
{
- alt34=4;
+ alt36=4;
}
break;
case I_STATEMENT_FORMAT12x:
{
- alt34=5;
+ alt36=5;
}
break;
case I_STATEMENT_FORMAT20bc:
{
- alt34=6;
+ alt36=6;
}
break;
case I_STATEMENT_FORMAT20t:
{
- alt34=7;
+ alt36=7;
}
break;
case I_STATEMENT_FORMAT21c_FIELD:
{
- alt34=8;
+ alt36=8;
}
break;
case I_STATEMENT_FORMAT21c_STRING:
{
- alt34=9;
+ alt36=9;
}
break;
case I_STATEMENT_FORMAT21c_TYPE:
{
- alt34=10;
+ alt36=10;
}
break;
case I_STATEMENT_FORMAT21ih:
{
- alt34=11;
+ alt36=11;
}
break;
case I_STATEMENT_FORMAT21lh:
{
- alt34=12;
+ alt36=12;
}
break;
case I_STATEMENT_FORMAT21s:
{
- alt34=13;
+ alt36=13;
}
break;
case I_STATEMENT_FORMAT21t:
{
- alt34=14;
+ alt36=14;
}
break;
case I_STATEMENT_FORMAT22b:
{
- alt34=15;
+ alt36=15;
}
break;
case I_STATEMENT_FORMAT22c_FIELD:
{
- alt34=16;
+ alt36=16;
}
break;
case I_STATEMENT_FORMAT22c_TYPE:
{
- alt34=17;
+ alt36=17;
}
break;
case I_STATEMENT_FORMAT22s:
{
- alt34=18;
+ alt36=18;
}
break;
case I_STATEMENT_FORMAT22t:
{
- alt34=19;
+ alt36=19;
}
break;
case I_STATEMENT_FORMAT22x:
{
- alt34=20;
+ alt36=20;
}
break;
case I_STATEMENT_FORMAT23x:
{
- alt34=21;
+ alt36=21;
}
break;
case I_STATEMENT_FORMAT30t:
{
- alt34=22;
+ alt36=22;
}
break;
case I_STATEMENT_FORMAT31c:
{
- alt34=23;
+ alt36=23;
}
break;
case I_STATEMENT_FORMAT31i:
{
- alt34=24;
+ alt36=24;
}
break;
case I_STATEMENT_FORMAT31t:
{
- alt34=25;
+ alt36=25;
}
break;
case I_STATEMENT_FORMAT32x:
{
- alt34=26;
+ alt36=26;
}
break;
case I_STATEMENT_FORMAT35c_METHOD:
{
- alt34=27;
+ alt36=27;
}
break;
case I_STATEMENT_FORMAT35c_TYPE:
{
- alt34=28;
+ alt36=28;
}
break;
case I_STATEMENT_FORMAT3rc_METHOD:
{
- alt34=29;
+ alt36=29;
}
break;
case I_STATEMENT_FORMAT3rc_TYPE:
{
- alt34=30;
+ alt36=30;
}
break;
case I_STATEMENT_FORMAT51l:
{
- alt34=31;
+ alt36=31;
}
break;
case I_STATEMENT_ARRAY_DATA:
{
- alt34=32;
+ alt36=32;
}
break;
case I_STATEMENT_PACKED_SWITCH:
{
- alt34=33;
+ alt36=33;
}
break;
case I_STATEMENT_SPARSE_SWITCH:
{
- alt34=34;
+ alt36=34;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 34, 0, input);
+ new NoViableAltException("", 36, 0, input);
throw nvae;
}
- switch (alt34) {
+ switch (alt36) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:707:5: insn_format10t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:719:5: insn_format10t
{
- pushFollow(FOLLOW_insn_format10t_in_instruction1804);
+ pushFollow(FOLLOW_insn_format10t_in_instruction1806);
insn_format10t();
state._fsp--;
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:708:5: insn_format10x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:720:5: insn_format10x
{
- pushFollow(FOLLOW_insn_format10x_in_instruction1810);
+ pushFollow(FOLLOW_insn_format10x_in_instruction1812);
insn_format10x();
state._fsp--;
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:709:5: insn_format11n
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:721:5: insn_format11n
{
- pushFollow(FOLLOW_insn_format11n_in_instruction1816);
+ pushFollow(FOLLOW_insn_format11n_in_instruction1818);
insn_format11n();
state._fsp--;
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:710:5: insn_format11x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:722:5: insn_format11x
{
- pushFollow(FOLLOW_insn_format11x_in_instruction1822);
+ pushFollow(FOLLOW_insn_format11x_in_instruction1824);
insn_format11x();
state._fsp--;
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:711:5: insn_format12x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:723:5: insn_format12x
{
- pushFollow(FOLLOW_insn_format12x_in_instruction1828);
+ pushFollow(FOLLOW_insn_format12x_in_instruction1830);
insn_format12x();
state._fsp--;
}
break;
case 6 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:712:5: insn_format20bc
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:724:5: insn_format20bc
{
- pushFollow(FOLLOW_insn_format20bc_in_instruction1834);
+ pushFollow(FOLLOW_insn_format20bc_in_instruction1836);
insn_format20bc();
state._fsp--;
}
break;
case 7 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:713:5: insn_format20t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:725:5: insn_format20t
{
- pushFollow(FOLLOW_insn_format20t_in_instruction1840);
+ pushFollow(FOLLOW_insn_format20t_in_instruction1842);
insn_format20t();
state._fsp--;
}
break;
case 8 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:714:5: insn_format21c_field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:726:5: insn_format21c_field
{
- pushFollow(FOLLOW_insn_format21c_field_in_instruction1846);
+ pushFollow(FOLLOW_insn_format21c_field_in_instruction1848);
insn_format21c_field();
state._fsp--;
}
break;
case 9 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:715:5: insn_format21c_string
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:727:5: insn_format21c_string
{
- pushFollow(FOLLOW_insn_format21c_string_in_instruction1852);
+ pushFollow(FOLLOW_insn_format21c_string_in_instruction1854);
insn_format21c_string();
state._fsp--;
}
break;
case 10 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:716:5: insn_format21c_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:728:5: insn_format21c_type
{
- pushFollow(FOLLOW_insn_format21c_type_in_instruction1858);
+ pushFollow(FOLLOW_insn_format21c_type_in_instruction1860);
insn_format21c_type();
state._fsp--;
}
break;
case 11 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:717:5: insn_format21ih
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:729:5: insn_format21ih
{
- pushFollow(FOLLOW_insn_format21ih_in_instruction1864);
+ pushFollow(FOLLOW_insn_format21ih_in_instruction1866);
insn_format21ih();
state._fsp--;
}
break;
case 12 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:718:5: insn_format21lh
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:730:5: insn_format21lh
{
- pushFollow(FOLLOW_insn_format21lh_in_instruction1870);
+ pushFollow(FOLLOW_insn_format21lh_in_instruction1872);
insn_format21lh();
state._fsp--;
}
break;
case 13 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:719:5: insn_format21s
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:731:5: insn_format21s
{
- pushFollow(FOLLOW_insn_format21s_in_instruction1876);
+ pushFollow(FOLLOW_insn_format21s_in_instruction1878);
insn_format21s();
state._fsp--;
}
break;
case 14 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:720:5: insn_format21t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:732:5: insn_format21t
{
- pushFollow(FOLLOW_insn_format21t_in_instruction1882);
+ pushFollow(FOLLOW_insn_format21t_in_instruction1884);
insn_format21t();
state._fsp--;
}
break;
case 15 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:721:5: insn_format22b
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:733:5: insn_format22b
{
- pushFollow(FOLLOW_insn_format22b_in_instruction1888);
+ pushFollow(FOLLOW_insn_format22b_in_instruction1890);
insn_format22b();
state._fsp--;
}
break;
case 16 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:722:5: insn_format22c_field
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:734:5: insn_format22c_field
{
- pushFollow(FOLLOW_insn_format22c_field_in_instruction1894);
+ pushFollow(FOLLOW_insn_format22c_field_in_instruction1896);
insn_format22c_field();
state._fsp--;
}
break;
case 17 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:723:5: insn_format22c_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:735:5: insn_format22c_type
{
- pushFollow(FOLLOW_insn_format22c_type_in_instruction1900);
+ pushFollow(FOLLOW_insn_format22c_type_in_instruction1902);
insn_format22c_type();
state._fsp--;
}
break;
case 18 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:724:5: insn_format22s
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:736:5: insn_format22s
{
- pushFollow(FOLLOW_insn_format22s_in_instruction1906);
+ pushFollow(FOLLOW_insn_format22s_in_instruction1908);
insn_format22s();
state._fsp--;
}
break;
case 19 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:725:5: insn_format22t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:737:5: insn_format22t
{
- pushFollow(FOLLOW_insn_format22t_in_instruction1912);
+ pushFollow(FOLLOW_insn_format22t_in_instruction1914);
insn_format22t();
state._fsp--;
}
break;
case 20 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:726:5: insn_format22x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:738:5: insn_format22x
{
- pushFollow(FOLLOW_insn_format22x_in_instruction1918);
+ pushFollow(FOLLOW_insn_format22x_in_instruction1920);
insn_format22x();
state._fsp--;
}
break;
case 21 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:727:5: insn_format23x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:739:5: insn_format23x
{
- pushFollow(FOLLOW_insn_format23x_in_instruction1924);
+ pushFollow(FOLLOW_insn_format23x_in_instruction1926);
insn_format23x();
state._fsp--;
}
break;
case 22 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:728:5: insn_format30t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:740:5: insn_format30t
{
- pushFollow(FOLLOW_insn_format30t_in_instruction1930);
+ pushFollow(FOLLOW_insn_format30t_in_instruction1932);
insn_format30t();
state._fsp--;
}
break;
case 23 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:729:5: insn_format31c
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:741:5: insn_format31c
{
- pushFollow(FOLLOW_insn_format31c_in_instruction1936);
+ pushFollow(FOLLOW_insn_format31c_in_instruction1938);
insn_format31c();
state._fsp--;
}
break;
case 24 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:730:5: insn_format31i
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:742:5: insn_format31i
{
- pushFollow(FOLLOW_insn_format31i_in_instruction1942);
+ pushFollow(FOLLOW_insn_format31i_in_instruction1944);
insn_format31i();
state._fsp--;
}
break;
case 25 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:731:5: insn_format31t
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:743:5: insn_format31t
{
- pushFollow(FOLLOW_insn_format31t_in_instruction1948);
+ pushFollow(FOLLOW_insn_format31t_in_instruction1950);
insn_format31t();
state._fsp--;
}
break;
case 26 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:732:5: insn_format32x
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:744:5: insn_format32x
{
- pushFollow(FOLLOW_insn_format32x_in_instruction1954);
+ pushFollow(FOLLOW_insn_format32x_in_instruction1956);
insn_format32x();
state._fsp--;
}
break;
case 27 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:733:5: insn_format35c_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:745:5: insn_format35c_method
{
- pushFollow(FOLLOW_insn_format35c_method_in_instruction1960);
+ pushFollow(FOLLOW_insn_format35c_method_in_instruction1962);
insn_format35c_method();
state._fsp--;
}
break;
case 28 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:734:5: insn_format35c_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:746:5: insn_format35c_type
{
- pushFollow(FOLLOW_insn_format35c_type_in_instruction1966);
+ pushFollow(FOLLOW_insn_format35c_type_in_instruction1968);
insn_format35c_type();
state._fsp--;
}
break;
case 29 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:735:5: insn_format3rc_method
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:747:5: insn_format3rc_method
{
- pushFollow(FOLLOW_insn_format3rc_method_in_instruction1972);
+ pushFollow(FOLLOW_insn_format3rc_method_in_instruction1974);
insn_format3rc_method();
state._fsp--;
}
break;
case 30 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:736:5: insn_format3rc_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:748:5: insn_format3rc_type
{
- pushFollow(FOLLOW_insn_format3rc_type_in_instruction1978);
+ pushFollow(FOLLOW_insn_format3rc_type_in_instruction1980);
insn_format3rc_type();
state._fsp--;
}
break;
case 31 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:737:5: insn_format51l_type
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:749:5: insn_format51l_type
{
- pushFollow(FOLLOW_insn_format51l_type_in_instruction1984);
+ pushFollow(FOLLOW_insn_format51l_type_in_instruction1986);
insn_format51l_type();
state._fsp--;
}
break;
case 32 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:738:5: insn_array_data_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:750:5: insn_array_data_directive
{
- pushFollow(FOLLOW_insn_array_data_directive_in_instruction1990);
+ pushFollow(FOLLOW_insn_array_data_directive_in_instruction1992);
insn_array_data_directive();
state._fsp--;
}
break;
case 33 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:739:5: insn_packed_switch_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:751:5: insn_packed_switch_directive
{
- pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction1996);
+ pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction1998);
insn_packed_switch_directive();
state._fsp--;
}
break;
case 34 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:740:5: insn_sparse_switch_directive
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:752:5: insn_sparse_switch_directive
{
- pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction2002);
+ pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction2004);
insn_sparse_switch_directive();
state._fsp--;
@@ -4428,7 +4477,7 @@ public class smaliTreeWalker extends TreeParser {
reportError(new SemanticException(input, ((CommonTree)retval.start), ex.getMessage()));
recover(input, null);
-
+
}
finally {
@@ -4441,28 +4490,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format10t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:746:1: insn_format10t : ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:758: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:747:3: ( ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:748:5: ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT10t,FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2026);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT10t104=(CommonTree)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2028);
- pushFollow(FOLLOW_label_ref_in_insn_format10t2030);
+ match(input,I_STATEMENT_FORMAT10t,FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2028);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ 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));
-
+
}
}
@@ -4479,23 +4528,23 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format10x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:754:1: insn_format10x : ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:766:1: insn_format10x : ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) ;
public final void insn_format10x() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT10x106=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:755:3: ( ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:756:5: ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT10x,FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2053);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT10x106=(CommonTree)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2055);
- match(input, Token.UP, null);
+ match(input,I_STATEMENT_FORMAT10x,FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2055);
+ match(input, Token.DOWN, null);
+ INSTRUCTION_FORMAT10x106=(CommonTree)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2057);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT10x106!=null?INSTRUCTION_FORMAT10x106.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction10x(opcode));
-
+
}
}
@@ -4512,25 +4561,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format11n"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:762:1: insn_format11n : ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) ;
+ // /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 ) ;
public final void insn_format11n() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT11n107=null;
CommonTree REGISTER108=null;
short short_integral_literal109 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:763:3: ( ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:764:5: ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT11n,FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2078);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT11n107=(CommonTree)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2080);
- REGISTER108=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n2082);
- pushFollow(FOLLOW_short_integral_literal_in_insn_format11n2084);
+ match(input,I_STATEMENT_FORMAT11n,FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2080);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT11n107!=null?INSTRUCTION_FORMAT11n107.getText():null));
@@ -4540,7 +4589,7 @@ public class smaliTreeWalker extends TreeParser {
LiteralTools.checkNibble(litB);
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction11n(opcode, regA, litB));
-
+
}
}
@@ -4557,27 +4606,27 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format11x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:775:1: insn_format11x : ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:787:1: insn_format11x : ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) ;
public final void insn_format11x() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT11x110=null;
CommonTree REGISTER111=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:776:3: ( ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:777:5: ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT11x,FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2107);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT11x110=(CommonTree)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2109);
- REGISTER111=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x2111);
- match(input, Token.UP, null);
+ match(input,I_STATEMENT_FORMAT11x,FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2109);
+ 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);
+ 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));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction11x(opcode, regA));
-
+
}
}
@@ -4594,22 +4643,22 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format12x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:785:1: insn_format12x : ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) ;
+ // /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 ) ;
public final void insn_format12x() throws RecognitionException {
CommonTree registerA=null;
CommonTree registerB=null;
CommonTree INSTRUCTION_FORMAT12x112=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:786:3: ( ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:787:5: ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT12x,FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2134);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT12x112=(CommonTree)match(input,INSTRUCTION_FORMAT12x,FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2136);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2140);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2144);
- match(input, Token.UP, null);
+ match(input,I_STATEMENT_FORMAT12x,FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2136);
+ 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);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT12x112!=null?INSTRUCTION_FORMAT12x112.getText():null));
@@ -4617,7 +4666,7 @@ public class smaliTreeWalker extends TreeParser {
byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction12x(opcode, regA, regB));
-
+
}
}
@@ -4634,28 +4683,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format20bc"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:796:1: insn_format20bc : ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference ) ;
+ // /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 ) ;
public final void insn_format20bc() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT20bc113=null;
int verification_error_type114 =0;
ImmutableReference verification_error_reference115 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:797:3: ( ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:798:5: ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT20bc,FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2167);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT20bc113=(CommonTree)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2169);
- pushFollow(FOLLOW_verification_error_type_in_insn_format20bc2171);
+ match(input,I_STATEMENT_FORMAT20bc,FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2169);
+ 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();
state._fsp--;
- pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc2173);
+ pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc2175);
verification_error_reference115=verification_error_reference();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc113!=null?INSTRUCTION_FORMAT20bc113.getText():null));
@@ -4665,7 +4714,7 @@ public class smaliTreeWalker extends TreeParser {
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction20bc(opcode, verificationError,
dexBuilder.internReference(referencedItem)));
-
+
}
}
@@ -4682,28 +4731,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format20t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:809:1: insn_format20t : ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:821: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:810:3: ( ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:811:5: ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT20t,FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2196);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT20t116=(CommonTree)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2198);
- pushFollow(FOLLOW_label_ref_in_insn_format20t2200);
+ match(input,I_STATEMENT_FORMAT20t,FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2198);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ 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));
-
+
}
}
@@ -4720,18 +4769,18 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format21c_field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:817:1: insn_format21c_field : ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER fully_qualified_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 ) ;
public final void insn_format21c_field() throws RecognitionException {
CommonTree inst=null;
CommonTree REGISTER118=null;
- ImmutableFieldReference fully_qualified_field119 =null;
+ ImmutableFieldReference field_reference119 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:818:3: ( ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:819:5: ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER fully_qualified_field )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT21c_FIELD,FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2223);
- match(input, Token.DOWN, null);
+ match(input,I_STATEMENT_FORMAT21c_FIELD,FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2225);
+ match(input, Token.DOWN, null);
inst=(CommonTree)input.LT(1);
if ( (input.LA(1) >= INSTRUCTION_FORMAT21c_FIELD && input.LA(1) <= INSTRUCTION_FORMAT21c_FIELD_ODEX) ) {
input.consume();
@@ -4741,22 +4790,22 @@ public class smaliTreeWalker extends TreeParser {
MismatchedSetException mse = new MismatchedSetException(null,input);
throw mse;
}
- REGISTER118=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field2235);
- pushFollow(FOLLOW_fully_qualified_field_in_insn_format21c_field2237);
- fully_qualified_field119=fully_qualified_field();
+ REGISTER118=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field2237);
+ pushFollow(FOLLOW_field_reference_in_insn_format21c_field2239);
+ field_reference119=field_reference();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((inst!=null?inst.getText():null));
short regA = parseRegister_byte((REGISTER118!=null?REGISTER118.getText():null));
- ImmutableFieldReference fieldReference = fully_qualified_field119;
+ ImmutableFieldReference fieldReference = field_reference119;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
dexBuilder.internFieldReference(fieldReference)));
-
+
}
}
@@ -4773,25 +4822,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format21c_string"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:830:1: insn_format21c_string : ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal ) ;
+ // /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 ) ;
public final void insn_format21c_string() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT21c_STRING120=null;
CommonTree REGISTER121=null;
String string_literal122 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:831:3: ( ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:832:5: ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT21c_STRING,FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2260);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT21c_STRING120=(CommonTree)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2262);
- REGISTER121=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string2264);
- pushFollow(FOLLOW_string_literal_in_insn_format21c_string2266);
+ match(input,I_STATEMENT_FORMAT21c_STRING,FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2262);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_STRING120!=null?INSTRUCTION_FORMAT21c_STRING120.getText():null));
@@ -4799,7 +4848,7 @@ public class smaliTreeWalker extends TreeParser {
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
dexBuilder.internStringReference(string_literal122)));
-
+
}
}
@@ -4816,25 +4865,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format21c_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:841: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/antlr3/smaliTreeWalker.g:853: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:842:3: ( ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:843:5: ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2289);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT21c_TYPE123=(CommonTree)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2291);
- REGISTER124=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type2293);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2295);
+ match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2291);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_TYPE123!=null?INSTRUCTION_FORMAT21c_TYPE123.getText():null));
@@ -4842,7 +4891,7 @@ public class smaliTreeWalker extends TreeParser {
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))));
-
+
}
}
@@ -4859,25 +4908,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format21ih"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:852:1: insn_format21ih : ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ;
+ // /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 ) ;
public final void insn_format21ih() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT21ih126=null;
CommonTree REGISTER127=null;
int fixed_32bit_literal128 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:853:3: ( ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:854:5: ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT21ih,FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2318);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT21ih126=(CommonTree)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2320);
- REGISTER127=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih2322);
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih2324);
+ match(input,I_STATEMENT_FORMAT21ih,FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2320);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21ih126!=null?INSTRUCTION_FORMAT21ih126.getText():null));
@@ -4886,7 +4935,7 @@ public class smaliTreeWalker extends TreeParser {
int litB = fixed_32bit_literal128;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21ih(opcode, regA, litB));
-
+
}
}
@@ -4903,25 +4952,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format21lh"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:864:1: insn_format21lh : ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) ;
+ // /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 ) ;
public final void insn_format21lh() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT21lh129=null;
CommonTree REGISTER130=null;
long fixed_64bit_literal131 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:865:3: ( ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:866:5: ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT21lh,FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2347);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT21lh129=(CommonTree)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2349);
- REGISTER130=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh2351);
- pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format21lh2353);
+ match(input,I_STATEMENT_FORMAT21lh,FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2349);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21lh129!=null?INSTRUCTION_FORMAT21lh129.getText():null));
@@ -4930,7 +4979,7 @@ public class smaliTreeWalker extends TreeParser {
long litB = fixed_64bit_literal131;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21lh(opcode, regA, litB));
-
+
}
}
@@ -4947,25 +4996,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format21s"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:876:1: insn_format21s : ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) ;
+ // /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 ) ;
public final void insn_format21s() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT21s132=null;
CommonTree REGISTER133=null;
short short_integral_literal134 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:877:3: ( ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:878:5: ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT21s,FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2376);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT21s132=(CommonTree)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2378);
- REGISTER133=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s2380);
- pushFollow(FOLLOW_short_integral_literal_in_insn_format21s2382);
+ match(input,I_STATEMENT_FORMAT21s,FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2378);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21s132!=null?INSTRUCTION_FORMAT21s132.getText():null));
@@ -4974,7 +5023,7 @@ public class smaliTreeWalker extends TreeParser {
short litB = short_integral_literal134;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21s(opcode, regA, litB));
-
+
}
}
@@ -4991,32 +5040,32 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format21t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:888:1: insn_format21t : ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) ;
+ // /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 ) ;
public final void insn_format21t() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT21t135=null;
CommonTree REGISTER136=null;
Label label_ref137 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:889:3: ( ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:890:5: ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT21t,FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2405);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT21t135=(CommonTree)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2407);
- REGISTER136=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t2409);
- pushFollow(FOLLOW_label_ref_in_insn_format21t2411);
+ match(input,I_STATEMENT_FORMAT21t,FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2407);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ 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));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21t(opcode, regA, label_ref137));
-
+
}
}
@@ -5033,7 +5082,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format22b"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:898: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/antlr3/smaliTreeWalker.g:910: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;
@@ -5041,19 +5090,19 @@ public class smaliTreeWalker extends TreeParser {
short short_integral_literal139 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:899:3: ( ^( I_STATEMENT_FORMAT22b INSTRUCTION_FORMAT22b registerA= REGISTER registerB= REGISTER short_integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:900:5: ^( 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: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 )
{
- match(input,I_STATEMENT_FORMAT22b,FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2434);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT22b138=(CommonTree)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2436);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2440);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2444);
- pushFollow(FOLLOW_short_integral_literal_in_insn_format22b2446);
+ match(input,I_STATEMENT_FORMAT22b,FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2436);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22b138!=null?INSTRUCTION_FORMAT22b138.getText():null));
@@ -5064,7 +5113,7 @@ public class smaliTreeWalker extends TreeParser {
LiteralTools.checkByte(litC);
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22b(opcode, regA, regB, litC));
-
+
}
}
@@ -5081,19 +5130,19 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format22c_field"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:912:1: insn_format22c_field : ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER fully_qualified_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 ) ;
public final void insn_format22c_field() throws RecognitionException {
CommonTree inst=null;
CommonTree registerA=null;
CommonTree registerB=null;
- ImmutableFieldReference fully_qualified_field140 =null;
+ ImmutableFieldReference field_reference140 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:913:3: ( ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:914:5: ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER fully_qualified_field )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT22c_FIELD,FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2469);
- match(input, Token.DOWN, null);
+ match(input,I_STATEMENT_FORMAT22c_FIELD,FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2471);
+ match(input, Token.DOWN, null);
inst=(CommonTree)input.LT(1);
if ( (input.LA(1) >= INSTRUCTION_FORMAT22c_FIELD && input.LA(1) <= INSTRUCTION_FORMAT22c_FIELD_ODEX) ) {
input.consume();
@@ -5103,24 +5152,24 @@ public class smaliTreeWalker extends TreeParser {
MismatchedSetException mse = new MismatchedSetException(null,input);
throw mse;
}
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2483);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2487);
- pushFollow(FOLLOW_fully_qualified_field_in_insn_format22c_field2489);
- fully_qualified_field140=fully_qualified_field();
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((inst!=null?inst.getText():null));
byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null));
byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
- ImmutableFieldReference fieldReference = fully_qualified_field140;
+ ImmutableFieldReference fieldReference = field_reference140;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB,
dexBuilder.internFieldReference(fieldReference)));
-
+
}
}
@@ -5137,7 +5186,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format22c_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:926: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/antlr3/smaliTreeWalker.g:938: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;
@@ -5145,19 +5194,19 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope nonvoid_type_descriptor142 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:927:3: ( ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:928: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/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 )
{
- match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2512);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT22c_TYPE141=(CommonTree)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2514);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2518);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2522);
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2524);
+ match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2514);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_TYPE141!=null?INSTRUCTION_FORMAT22c_TYPE141.getText():null));
@@ -5166,7 +5215,7 @@ public class smaliTreeWalker extends TreeParser {
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))));
-
+
}
}
@@ -5183,7 +5232,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format22s"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:938: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/antlr3/smaliTreeWalker.g:950: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;
@@ -5191,19 +5240,19 @@ public class smaliTreeWalker extends TreeParser {
short short_integral_literal144 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:939:3: ( ^( I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA= REGISTER registerB= REGISTER short_integral_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:940:5: ^( 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: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 )
{
- match(input,I_STATEMENT_FORMAT22s,FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2547);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT22s143=(CommonTree)match(input,INSTRUCTION_FORMAT22s,FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2549);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2553);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2557);
- pushFollow(FOLLOW_short_integral_literal_in_insn_format22s2559);
+ match(input,I_STATEMENT_FORMAT22s,FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2549);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22s143!=null?INSTRUCTION_FORMAT22s143.getText():null));
@@ -5213,7 +5262,7 @@ public class smaliTreeWalker extends TreeParser {
short litC = short_integral_literal144;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22s(opcode, regA, regB, litC));
-
+
}
}
@@ -5230,7 +5279,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format22t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:951:1: insn_format22t : ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref ) ;
+ // /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 ) ;
public final void insn_format22t() throws RecognitionException {
CommonTree registerA=null;
CommonTree registerB=null;
@@ -5238,19 +5287,19 @@ public class smaliTreeWalker extends TreeParser {
Label label_ref146 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:952:3: ( ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:953:5: ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT22t,FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2582);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT22t145=(CommonTree)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2584);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2588);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2592);
- pushFollow(FOLLOW_label_ref_in_insn_format22t2594);
+ match(input,I_STATEMENT_FORMAT22t,FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2584);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22t145!=null?INSTRUCTION_FORMAT22t145.getText():null));
@@ -5258,7 +5307,7 @@ public class smaliTreeWalker extends TreeParser {
byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22t(opcode, regA, regB, label_ref146));
-
+
}
}
@@ -5275,22 +5324,22 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format22x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:962:1: insn_format22x : ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) ;
+ // /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 ) ;
public final void insn_format22x() throws RecognitionException {
CommonTree registerA=null;
CommonTree registerB=null;
CommonTree INSTRUCTION_FORMAT22x147=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:963:3: ( ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:964:5: ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT22x,FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2617);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT22x147=(CommonTree)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2619);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2623);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2627);
- match(input, Token.UP, null);
+ match(input,I_STATEMENT_FORMAT22x,FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2619);
+ 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);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22x147!=null?INSTRUCTION_FORMAT22x147.getText():null));
@@ -5298,7 +5347,7 @@ public class smaliTreeWalker extends TreeParser {
int regB = parseRegister_short((registerB!=null?registerB.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22x(opcode, regA, regB));
-
+
}
}
@@ -5315,7 +5364,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format23x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:973:1: insn_format23x : ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER ) ;
+ // /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 ) ;
public final void insn_format23x() throws RecognitionException {
CommonTree registerA=null;
CommonTree registerB=null;
@@ -5323,16 +5372,16 @@ public class smaliTreeWalker extends TreeParser {
CommonTree INSTRUCTION_FORMAT23x148=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:974:3: ( ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:975:5: ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT23x,FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2650);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT23x148=(CommonTree)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2652);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2656);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2660);
- registerC=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2664);
- match(input, Token.UP, null);
+ match(input,I_STATEMENT_FORMAT23x,FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2652);
+ 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);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT23x148!=null?INSTRUCTION_FORMAT23x148.getText():null));
@@ -5341,7 +5390,7 @@ public class smaliTreeWalker extends TreeParser {
short regC = parseRegister_byte((registerC!=null?registerC.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction23x(opcode, regA, regB, regC));
-
+
}
}
@@ -5358,29 +5407,29 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format30t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:985:1: insn_format30t : ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:997: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:986:3: ( ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:987:5: ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT30t,FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2687);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT30t149=(CommonTree)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2689);
- pushFollow(FOLLOW_label_ref_in_insn_format30t2691);
+ match(input,I_STATEMENT_FORMAT30t,FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2689);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT30t149!=null?INSTRUCTION_FORMAT30t149.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction30t(opcode, label_ref150));
-
+
}
}
@@ -5397,25 +5446,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format31c"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:994:1: insn_format31c : ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) ;
+ // /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 ) ;
public final void insn_format31c() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT31c151=null;
CommonTree REGISTER152=null;
String string_literal153 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:995:3: ( ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:996:5: ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT31c,FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2714);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT31c151=(CommonTree)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2716);
- REGISTER152=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c2718);
- pushFollow(FOLLOW_string_literal_in_insn_format31c2720);
+ match(input,I_STATEMENT_FORMAT31c,FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2716);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31c151!=null?INSTRUCTION_FORMAT31c151.getText():null));
@@ -5423,7 +5472,7 @@ public class smaliTreeWalker extends TreeParser {
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31c(opcode, regA,
dexBuilder.internStringReference(string_literal153)));
-
+
}
}
@@ -5440,25 +5489,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format31i"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1005:1: insn_format31i : ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) ;
+ // /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 ) ;
public final void insn_format31i() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT31i154=null;
CommonTree REGISTER155=null;
int fixed_32bit_literal156 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1006:3: ( ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1007:5: ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT31i,FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2743);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT31i154=(CommonTree)match(input,INSTRUCTION_FORMAT31i,FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2745);
- REGISTER155=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i2747);
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i2749);
+ match(input,I_STATEMENT_FORMAT31i,FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2745);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31i154!=null?INSTRUCTION_FORMAT31i154.getText():null));
@@ -5467,7 +5516,7 @@ public class smaliTreeWalker extends TreeParser {
int litB = fixed_32bit_literal156;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31i(opcode, regA, litB));
-
+
}
}
@@ -5484,25 +5533,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format31t"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1017:1: insn_format31t : ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) ;
+ // /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 ) ;
public final void insn_format31t() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT31t157=null;
CommonTree REGISTER158=null;
Label label_ref159 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1018:3: ( ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1019:5: ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT31t,FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2772);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT31t157=(CommonTree)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2774);
- REGISTER158=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t2776);
- pushFollow(FOLLOW_label_ref_in_insn_format31t2778);
+ match(input,I_STATEMENT_FORMAT31t,FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2774);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31t157!=null?INSTRUCTION_FORMAT31t157.getText():null));
@@ -5510,7 +5559,7 @@ public class smaliTreeWalker extends TreeParser {
short regA = parseRegister_byte((REGISTER158!=null?REGISTER158.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31t(opcode, regA, label_ref159));
-
+
}
}
@@ -5527,22 +5576,22 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format32x"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1028:1: insn_format32x : ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) ;
+ // /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 ) ;
public final void insn_format32x() throws RecognitionException {
CommonTree registerA=null;
CommonTree registerB=null;
CommonTree INSTRUCTION_FORMAT32x160=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1029:3: ( ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1030:5: ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT32x,FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2801);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT32x160=(CommonTree)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2803);
- registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x2807);
- registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x2811);
- match(input, Token.UP, null);
+ match(input,I_STATEMENT_FORMAT32x,FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2803);
+ 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);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT32x160!=null?INSTRUCTION_FORMAT32x160.getText():null));
@@ -5550,7 +5599,7 @@ public class smaliTreeWalker extends TreeParser {
int regB = parseRegister_short((registerB!=null?registerB.getText():null));
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction32x(opcode, regA, regB));
-
+
}
}
@@ -5567,28 +5616,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format35c_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1039:1: insn_format35c_method : ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_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 ) ;
public final void insn_format35c_method() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT35c_METHOD161=null;
TreeRuleReturnScope register_list162 =null;
- ImmutableMethodReference fully_qualified_method163 =null;
+ ImmutableMethodReference method_reference163 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1040:3: ( ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1041:5: ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT35c_METHOD,FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method2834);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT35c_METHOD161=(CommonTree)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method2836);
- pushFollow(FOLLOW_register_list_in_insn_format35c_method2838);
+ match(input,I_STATEMENT_FORMAT35c_METHOD,FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method2836);
+ 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();
state._fsp--;
- pushFollow(FOLLOW_fully_qualified_method_in_insn_format35c_method2840);
- fully_qualified_method163=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_insn_format35c_method2842);
+ method_reference163=method_reference();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_METHOD161!=null?INSTRUCTION_FORMAT35c_METHOD161.getText():null));
@@ -5597,11 +5646,11 @@ public class smaliTreeWalker extends TreeParser {
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);
- ImmutableMethodReference methodReference = fully_qualified_method163;
+ ImmutableMethodReference methodReference = method_reference163;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1],
registers[2], registers[3], registers[4], dexBuilder.internMethodReference(methodReference)));
-
+
}
}
@@ -5618,28 +5667,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format35c_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1055: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/antlr3/smaliTreeWalker.g:1067: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1056:3: ( ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1057:5: ^( 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: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 )
{
- match(input,I_STATEMENT_FORMAT35c_TYPE,FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type2863);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT35c_TYPE164=(CommonTree)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type2865);
- pushFollow(FOLLOW_register_list_in_insn_format35c_type2867);
+ match(input,I_STATEMENT_FORMAT35c_TYPE,FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type2865);
+ 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();
state._fsp--;
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type2869);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type2871);
nonvoid_type_descriptor166=nonvoid_type_descriptor();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_TYPE164!=null?INSTRUCTION_FORMAT35c_TYPE164.getText():null));
@@ -5650,7 +5699,7 @@ public class smaliTreeWalker extends TreeParser {
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))));
-
+
}
}
@@ -5667,28 +5716,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format3rc_method"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1069:1: insn_format3rc_method : ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_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 ) ;
public final void insn_format3rc_method() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT3rc_METHOD167=null;
TreeRuleReturnScope register_range168 =null;
- ImmutableMethodReference fully_qualified_method169 =null;
+ ImmutableMethodReference method_reference169 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1070:3: ( ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1071:5: ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT3rc_METHOD,FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method2892);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT3rc_METHOD167=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method2894);
- pushFollow(FOLLOW_register_range_in_insn_format3rc_method2896);
+ match(input,I_STATEMENT_FORMAT3rc_METHOD,FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method2894);
+ 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();
state._fsp--;
- pushFollow(FOLLOW_fully_qualified_method_in_insn_format3rc_method2898);
- fully_qualified_method169=fully_qualified_method();
+ pushFollow(FOLLOW_method_reference_in_insn_format3rc_method2900);
+ method_reference169=method_reference();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_METHOD167!=null?INSTRUCTION_FORMAT3rc_METHOD167.getText():null));
@@ -5697,11 +5746,11 @@ public class smaliTreeWalker extends TreeParser {
int registerCount = endRegister-startRegister+1;
- ImmutableMethodReference methodReference = fully_qualified_method169;
+ ImmutableMethodReference methodReference = method_reference169;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount,
dexBuilder.internMethodReference(methodReference)));
-
+
}
}
@@ -5718,28 +5767,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format3rc_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1085: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/antlr3/smaliTreeWalker.g:1097: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1086:3: ( ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1087:5: ^( 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: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 )
{
- match(input,I_STATEMENT_FORMAT3rc_TYPE,FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type2921);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT3rc_TYPE170=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type2923);
- pushFollow(FOLLOW_register_range_in_insn_format3rc_type2925);
+ match(input,I_STATEMENT_FORMAT3rc_TYPE,FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type2923);
+ 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();
state._fsp--;
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type2927);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type2929);
nonvoid_type_descriptor172=nonvoid_type_descriptor();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_TYPE170!=null?INSTRUCTION_FORMAT3rc_TYPE170.getText():null));
@@ -5750,7 +5799,7 @@ public class smaliTreeWalker extends TreeParser {
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))));
-
+
}
}
@@ -5767,25 +5816,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_format51l_type"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1099:1: insn_format51l_type : ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) ;
+ // /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 ) ;
public final void insn_format51l_type() throws RecognitionException {
CommonTree INSTRUCTION_FORMAT51l173=null;
CommonTree REGISTER174=null;
long fixed_64bit_literal175 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1100:3: ( ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1101:5: ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal )
+ // /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 )
{
- match(input,I_STATEMENT_FORMAT51l,FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type2950);
- match(input, Token.DOWN, null);
- INSTRUCTION_FORMAT51l173=(CommonTree)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type2952);
- REGISTER174=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l_type2954);
- pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format51l_type2956);
+ match(input,I_STATEMENT_FORMAT51l,FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type2952);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT51l173!=null?INSTRUCTION_FORMAT51l173.getText():null));
@@ -5794,7 +5843,7 @@ public class smaliTreeWalker extends TreeParser {
long litB = fixed_64bit_literal175;
method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction51l(opcode, regA, litB));
-
+
}
}
@@ -5811,37 +5860,37 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_array_data_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1111: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/antlr3/smaliTreeWalker.g:1123: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1112:3: ( ^( I_STATEMENT_ARRAY_DATA ^( I_ARRAY_ELEMENT_SIZE short_integral_literal ) array_elements ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1113:5: ^( 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: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 )
{
- match(input,I_STATEMENT_ARRAY_DATA,FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive2979);
- match(input, Token.DOWN, null);
- match(input,I_ARRAY_ELEMENT_SIZE,FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive2982);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_short_integral_literal_in_insn_array_data_directive2984);
+ match(input,I_STATEMENT_ARRAY_DATA,FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive2981);
+ match(input, Token.DOWN, null);
+ match(input,I_ARRAY_ELEMENT_SIZE,FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive2984);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_short_integral_literal_in_insn_array_data_directive2986);
short_integral_literal176=short_integral_literal();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
- pushFollow(FOLLOW_array_elements_in_insn_array_data_directive2987);
+ pushFollow(FOLLOW_array_elements_in_insn_array_data_directive2989);
array_elements177=array_elements();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
int elementWidth = short_integral_literal176;
List<Number> elements = array_elements177;
method_stack.peek().methodBuilder.addInstruction(new BuilderArrayPayload(elementWidth, array_elements177));
-
+
}
}
@@ -5858,36 +5907,36 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_packed_switch_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1121: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/antlr3/smaliTreeWalker.g:1133: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;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1122:3: ( ^( I_STATEMENT_PACKED_SWITCH ^( I_PACKED_SWITCH_START_KEY fixed_32bit_literal ) packed_switch_elements ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1123: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/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 )
{
- match(input,I_STATEMENT_PACKED_SWITCH,FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3009);
- match(input, Token.DOWN, null);
- match(input,I_PACKED_SWITCH_START_KEY,FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3012);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3014);
+ match(input,I_STATEMENT_PACKED_SWITCH,FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3011);
+ 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, Token.DOWN, null);
+ pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3016);
fixed_32bit_literal178=fixed_32bit_literal();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
- pushFollow(FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3017);
+ pushFollow(FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3019);
packed_switch_elements179=packed_switch_elements();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
int startKey = fixed_32bit_literal178;
method_stack.peek().methodBuilder.addInstruction(new BuilderPackedSwitchPayload(startKey,
packed_switch_elements179));
-
+
}
}
@@ -5904,25 +5953,25 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "insn_sparse_switch_directive"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1130:1: insn_sparse_switch_directive : ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) ;
+ // /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 ) ;
public final void insn_sparse_switch_directive() throws RecognitionException {
List<SwitchLabelElement> sparse_switch_elements180 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1131:3: ( ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1132:5: ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements )
+ // /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 )
{
- match(input,I_STATEMENT_SPARSE_SWITCH,FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3041);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3043);
+ match(input,I_STATEMENT_SPARSE_SWITCH,FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3043);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3045);
sparse_switch_elements180=sparse_switch_elements();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
method_stack.peek().methodBuilder.addInstruction(new BuilderSparseSwitchPayload(sparse_switch_elements180));
-
+
}
}
@@ -5943,14 +5992,14 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "nonvoid_type_descriptor"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1137:1: nonvoid_type_descriptor returns [String type] : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_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 ) ;
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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1138:3: ( ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1138:5: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
+ // /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 )
{
if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE ) {
input.consume();
@@ -5962,7 +6011,7 @@ public class smaliTreeWalker extends TreeParser {
}
retval.type = ((CommonTree)retval.start).getText();
-
+
}
}
@@ -5984,14 +6033,14 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "reference_type_descriptor"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1145:1: reference_type_descriptor returns [String type] : ( CLASS_DESCRIPTOR | ARRAY_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 ) ;
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 {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1146:3: ( ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1146:5: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
+ // /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 )
{
if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR ) {
input.consume();
@@ -6003,7 +6052,7 @@ public class smaliTreeWalker extends TreeParser {
}
retval.type = ((CommonTree)retval.start).getText();
-
+
}
}
@@ -6021,7 +6070,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "type_descriptor"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1152:1: type_descriptor returns [String type] : ( VOID_TYPE | nonvoid_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 );
public final String type_descriptor() throws RecognitionException {
String type = null;
@@ -6029,34 +6078,34 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope nonvoid_type_descriptor181 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1153:3: ( VOID_TYPE | nonvoid_type_descriptor )
- int alt35=2;
- int LA35_0 = input.LA(1);
- if ( (LA35_0==VOID_TYPE) ) {
- alt35=1;
+ // /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;
}
- else if ( (LA35_0==ARRAY_DESCRIPTOR||LA35_0==CLASS_DESCRIPTOR||LA35_0==PRIMITIVE_TYPE) ) {
- alt35=2;
+ else if ( (LA37_0==ARRAY_DESCRIPTOR||LA37_0==CLASS_DESCRIPTOR||LA37_0==PRIMITIVE_TYPE) ) {
+ alt37=2;
}
else {
NoViableAltException nvae =
- new NoViableAltException("", 35, 0, input);
+ new NoViableAltException("", 37, 0, input);
throw nvae;
}
- switch (alt35) {
+ switch (alt37) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1153:5: VOID_TYPE
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1165:5: VOID_TYPE
{
- match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_descriptor3122);
+ match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_descriptor3124);
type = "V";
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1154:5: nonvoid_type_descriptor
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1166:5: nonvoid_type_descriptor
{
- pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_descriptor3130);
+ pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_descriptor3132);
nonvoid_type_descriptor181=nonvoid_type_descriptor();
state._fsp--;
@@ -6080,7 +6129,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "short_integral_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1157: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/antlr3/smaliTreeWalker.g:1169: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;
@@ -6092,70 +6141,70 @@ public class smaliTreeWalker extends TreeParser {
byte byte_literal186 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1158:3: ( long_literal | integer_literal | short_literal | char_literal | byte_literal )
- int alt36=5;
+ // /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;
switch ( input.LA(1) ) {
case LONG_LITERAL:
{
- alt36=1;
+ alt38=1;
}
break;
case INTEGER_LITERAL:
{
- alt36=2;
+ alt38=2;
}
break;
case SHORT_LITERAL:
{
- alt36=3;
+ alt38=3;
}
break;
case CHAR_LITERAL:
{
- alt36=4;
+ alt38=4;
}
break;
case BYTE_LITERAL:
{
- alt36=5;
+ alt38=5;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 36, 0, input);
+ new NoViableAltException("", 38, 0, input);
throw nvae;
}
- switch (alt36) {
+ switch (alt38) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1158:5: long_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1170:5: long_literal
{
- pushFollow(FOLLOW_long_literal_in_short_integral_literal3148);
+ pushFollow(FOLLOW_long_literal_in_short_integral_literal3150);
long_literal182=long_literal();
state._fsp--;
LiteralTools.checkShort(long_literal182);
value = (short)long_literal182;
-
+
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1163:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1175:5: integer_literal
{
- pushFollow(FOLLOW_integer_literal_in_short_integral_literal3160);
+ pushFollow(FOLLOW_integer_literal_in_short_integral_literal3162);
integer_literal183=integer_literal();
state._fsp--;
LiteralTools.checkShort(integer_literal183);
value = (short)integer_literal183;
-
+
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1168:5: short_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1180:5: short_literal
{
- pushFollow(FOLLOW_short_literal_in_short_integral_literal3172);
+ pushFollow(FOLLOW_short_literal_in_short_integral_literal3174);
short_literal184=short_literal();
state._fsp--;
@@ -6163,9 +6212,9 @@ public class smaliTreeWalker extends TreeParser {
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1169:5: char_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1181:5: char_literal
{
- pushFollow(FOLLOW_char_literal_in_short_integral_literal3180);
+ pushFollow(FOLLOW_char_literal_in_short_integral_literal3182);
char_literal185=char_literal();
state._fsp--;
@@ -6173,9 +6222,9 @@ public class smaliTreeWalker extends TreeParser {
}
break;
case 5 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1170:5: byte_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1182:5: byte_literal
{
- pushFollow(FOLLOW_byte_literal_in_short_integral_literal3188);
+ pushFollow(FOLLOW_byte_literal_in_short_integral_literal3190);
byte_literal186=byte_literal();
state._fsp--;
@@ -6199,7 +6248,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "integral_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1172:1: integral_literal returns [int value] : ( long_literal | integer_literal | short_literal | byte_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 );
public final int integral_literal() throws RecognitionException {
int value = 0;
@@ -6210,52 +6259,52 @@ public class smaliTreeWalker extends TreeParser {
byte byte_literal190 =0;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1173:3: ( long_literal | integer_literal | short_literal | byte_literal )
- int alt37=4;
+ // /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;
switch ( input.LA(1) ) {
case LONG_LITERAL:
{
- alt37=1;
+ alt39=1;
}
break;
case INTEGER_LITERAL:
{
- alt37=2;
+ alt39=2;
}
break;
case SHORT_LITERAL:
{
- alt37=3;
+ alt39=3;
}
break;
case BYTE_LITERAL:
{
- alt37=4;
+ alt39=4;
}
break;
default:
NoViableAltException nvae =
- new NoViableAltException("", 37, 0, input);
+ new NoViableAltException("", 39, 0, input);
throw nvae;
}
- switch (alt37) {
+ switch (alt39) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1173:5: long_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1185:5: long_literal
{
- pushFollow(FOLLOW_long_literal_in_integral_literal3203);
+ pushFollow(FOLLOW_long_literal_in_integral_literal3205);
long_literal187=long_literal();
state._fsp--;
LiteralTools.checkInt(long_literal187);
value = (int)long_literal187;
-
+
}
break;
case 2 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1178:5: integer_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1190:5: integer_literal
{
- pushFollow(FOLLOW_integer_literal_in_integral_literal3215);
+ pushFollow(FOLLOW_integer_literal_in_integral_literal3217);
integer_literal188=integer_literal();
state._fsp--;
@@ -6263,9 +6312,9 @@ public class smaliTreeWalker extends TreeParser {
}
break;
case 3 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1179:5: short_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1191:5: short_literal
{
- pushFollow(FOLLOW_short_literal_in_integral_literal3223);
+ pushFollow(FOLLOW_short_literal_in_integral_literal3225);
short_literal189=short_literal();
state._fsp--;
@@ -6273,9 +6322,9 @@ public class smaliTreeWalker extends TreeParser {
}
break;
case 4 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1180:5: byte_literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1192:5: byte_literal
{
- pushFollow(FOLLOW_byte_literal_in_integral_literal3231);
+ pushFollow(FOLLOW_byte_literal_in_integral_literal3233);
byte_literal190=byte_literal();
state._fsp--;
@@ -6299,7 +6348,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "integer_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1183:1: integer_literal returns [int value] : INTEGER_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1195:1: integer_literal returns [int value] : INTEGER_LITERAL ;
public final int integer_literal() throws RecognitionException {
int value = 0;
@@ -6307,11 +6356,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree INTEGER_LITERAL191=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1184:3: ( INTEGER_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1184:5: INTEGER_LITERAL
+ // /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
{
- INTEGER_LITERAL191=(CommonTree)match(input,INTEGER_LITERAL,FOLLOW_INTEGER_LITERAL_in_integer_literal3247);
- value = LiteralTools.parseInt((INTEGER_LITERAL191!=null?INTEGER_LITERAL191.getText():null));
+ INTEGER_LITERAL191=(CommonTree)match(input,INTEGER_LITERAL,FOLLOW_INTEGER_LITERAL_in_integer_literal3249);
+ value = LiteralTools.parseInt((INTEGER_LITERAL191!=null?INTEGER_LITERAL191.getText():null));
}
}
@@ -6329,7 +6378,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "long_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1186:1: long_literal returns [long value] : LONG_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1198:1: long_literal returns [long value] : LONG_LITERAL ;
public final long long_literal() throws RecognitionException {
long value = 0;
@@ -6337,11 +6386,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree LONG_LITERAL192=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1187:3: ( LONG_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1187:5: LONG_LITERAL
+ // /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
{
- LONG_LITERAL192=(CommonTree)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_long_literal3262);
- value = LiteralTools.parseLong((LONG_LITERAL192!=null?LONG_LITERAL192.getText():null));
+ LONG_LITERAL192=(CommonTree)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_long_literal3264);
+ value = LiteralTools.parseLong((LONG_LITERAL192!=null?LONG_LITERAL192.getText():null));
}
}
@@ -6359,7 +6408,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "short_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1189:1: short_literal returns [short value] : SHORT_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1201:1: short_literal returns [short value] : SHORT_LITERAL ;
public final short short_literal() throws RecognitionException {
short value = 0;
@@ -6367,11 +6416,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree SHORT_LITERAL193=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1190:3: ( SHORT_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1190:5: SHORT_LITERAL
+ // /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
{
- SHORT_LITERAL193=(CommonTree)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_short_literal3277);
- value = LiteralTools.parseShort((SHORT_LITERAL193!=null?SHORT_LITERAL193.getText():null));
+ SHORT_LITERAL193=(CommonTree)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_short_literal3279);
+ value = LiteralTools.parseShort((SHORT_LITERAL193!=null?SHORT_LITERAL193.getText():null));
}
}
@@ -6389,7 +6438,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "byte_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1192:1: byte_literal returns [byte value] : BYTE_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1204:1: byte_literal returns [byte value] : BYTE_LITERAL ;
public final byte byte_literal() throws RecognitionException {
byte value = 0;
@@ -6397,11 +6446,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree BYTE_LITERAL194=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1193:3: ( BYTE_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1193:5: BYTE_LITERAL
+ // /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
{
- BYTE_LITERAL194=(CommonTree)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_byte_literal3292);
- value = LiteralTools.parseByte((BYTE_LITERAL194!=null?BYTE_LITERAL194.getText():null));
+ BYTE_LITERAL194=(CommonTree)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_byte_literal3294);
+ value = LiteralTools.parseByte((BYTE_LITERAL194!=null?BYTE_LITERAL194.getText():null));
}
}
@@ -6419,7 +6468,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "float_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1195:1: float_literal returns [float value] : FLOAT_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1207:1: float_literal returns [float value] : FLOAT_LITERAL ;
public final float float_literal() throws RecognitionException {
float value = 0.0f;
@@ -6427,11 +6476,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree FLOAT_LITERAL195=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1196:3: ( FLOAT_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1196:5: FLOAT_LITERAL
+ // /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
{
- FLOAT_LITERAL195=(CommonTree)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal3307);
- value = LiteralTools.parseFloat((FLOAT_LITERAL195!=null?FLOAT_LITERAL195.getText():null));
+ FLOAT_LITERAL195=(CommonTree)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal3309);
+ value = LiteralTools.parseFloat((FLOAT_LITERAL195!=null?FLOAT_LITERAL195.getText():null));
}
}
@@ -6449,7 +6498,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "double_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1198:1: double_literal returns [double value] : DOUBLE_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1210:1: double_literal returns [double value] : DOUBLE_LITERAL ;
public final double double_literal() throws RecognitionException {
double value = 0.0;
@@ -6457,11 +6506,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree DOUBLE_LITERAL196=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1199:3: ( DOUBLE_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1199:5: DOUBLE_LITERAL
+ // /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
{
- DOUBLE_LITERAL196=(CommonTree)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal3322);
- value = LiteralTools.parseDouble((DOUBLE_LITERAL196!=null?DOUBLE_LITERAL196.getText():null));
+ DOUBLE_LITERAL196=(CommonTree)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal3324);
+ value = LiteralTools.parseDouble((DOUBLE_LITERAL196!=null?DOUBLE_LITERAL196.getText():null));
}
}
@@ -6479,7 +6528,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "char_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1201:1: char_literal returns [char value] : CHAR_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1213:1: char_literal returns [char value] : CHAR_LITERAL ;
public final char char_literal() throws RecognitionException {
char value = 0;
@@ -6487,11 +6536,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree CHAR_LITERAL197=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1202:3: ( CHAR_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1202:5: CHAR_LITERAL
+ // /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
{
- CHAR_LITERAL197=(CommonTree)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_char_literal3337);
- value = (CHAR_LITERAL197!=null?CHAR_LITERAL197.getText():null).charAt(1);
+ CHAR_LITERAL197=(CommonTree)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_char_literal3339);
+ value = (CHAR_LITERAL197!=null?CHAR_LITERAL197.getText():null).charAt(1);
}
}
@@ -6509,7 +6558,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "string_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1204:1: string_literal returns [String value] : STRING_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1216:1: string_literal returns [String value] : STRING_LITERAL ;
public final String string_literal() throws RecognitionException {
String value = null;
@@ -6517,14 +6566,14 @@ public class smaliTreeWalker extends TreeParser {
CommonTree STRING_LITERAL198=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1205:3: ( STRING_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1205:5: STRING_LITERAL
+ // /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
{
- STRING_LITERAL198=(CommonTree)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_string_literal3352);
+ STRING_LITERAL198=(CommonTree)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_string_literal3354);
value = (STRING_LITERAL198!=null?STRING_LITERAL198.getText():null);
value = value.substring(1,value.length()-1);
-
+
}
}
@@ -6542,7 +6591,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "bool_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1211:1: bool_literal returns [boolean value] : BOOL_LITERAL ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1223:1: bool_literal returns [boolean value] : BOOL_LITERAL ;
public final boolean bool_literal() throws RecognitionException {
boolean value = false;
@@ -6550,11 +6599,11 @@ public class smaliTreeWalker extends TreeParser {
CommonTree BOOL_LITERAL199=null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1212:3: ( BOOL_LITERAL )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1212:5: BOOL_LITERAL
+ // /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
{
- BOOL_LITERAL199=(CommonTree)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_bool_literal3371);
- value = Boolean.parseBoolean((BOOL_LITERAL199!=null?BOOL_LITERAL199.getText():null));
+ BOOL_LITERAL199=(CommonTree)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_bool_literal3373);
+ value = Boolean.parseBoolean((BOOL_LITERAL199!=null?BOOL_LITERAL199.getText():null));
}
}
@@ -6572,7 +6621,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "array_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1214:1: array_literal returns [List<EncodedValue> elements] : ^( I_ENCODED_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 )* ) ;
public final List<EncodedValue> array_literal() throws RecognitionException {
List<EncodedValue> elements = null;
@@ -6580,27 +6629,27 @@ public class smaliTreeWalker extends TreeParser {
EncodedValue literal200 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1215:3: ( ^( I_ENCODED_ARRAY ( literal )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1215:5: ^( I_ENCODED_ARRAY ( literal )* )
+ // /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 )* )
{
elements = Lists.newArrayList();
- match(input,I_ENCODED_ARRAY,FOLLOW_I_ENCODED_ARRAY_in_array_literal3393);
+ match(input,I_ENCODED_ARRAY,FOLLOW_I_ENCODED_ARRAY_in_array_literal3395);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1216:23: ( literal )*
- loop38:
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1228:23: ( literal )*
+ loop40:
while (true) {
- int alt38=2;
- int LA38_0 = input.LA(1);
- if ( (LA38_0==ARRAY_DESCRIPTOR||(LA38_0 >= BOOL_LITERAL && LA38_0 <= BYTE_LITERAL)||(LA38_0 >= CHAR_LITERAL && LA38_0 <= CLASS_DESCRIPTOR)||LA38_0==DOUBLE_LITERAL||LA38_0==FLOAT_LITERAL||LA38_0==INTEGER_LITERAL||(LA38_0 >= I_ENCODED_ARRAY && LA38_0 <= I_ENCODED_METHOD)||LA38_0==I_SUBANNOTATION||LA38_0==LONG_LITERAL||LA38_0==NULL_LITERAL||LA38_0==PRIMITIVE_TYPE||LA38_0==SHORT_LITERAL||LA38_0==STRING_LITERAL||LA38_0==VOID_TYPE) ) {
- alt38=1;
+ 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;
}
- switch (alt38) {
+ switch (alt40) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1216:24: literal
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1228:24: literal
{
- pushFollow(FOLLOW_literal_in_array_literal3396);
+ pushFollow(FOLLOW_literal_in_array_literal3398);
literal200=literal();
state._fsp--;
@@ -6609,11 +6658,11 @@ public class smaliTreeWalker extends TreeParser {
break;
default :
- break loop38;
+ break loop40;
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
}
@@ -6633,7 +6682,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "annotations"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1218:1: annotations returns [Set<Annotation> annotations] : ^( I_ANNOTATIONS ( annotation )* ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1230:1: annotations returns [Set<Annotation> annotations] : ^( I_ANNOTATIONS ( annotation )* ) ;
public final Set<Annotation> annotations() throws RecognitionException {
Set<Annotation> annotations = null;
@@ -6641,27 +6690,27 @@ public class smaliTreeWalker extends TreeParser {
Annotation annotation201 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1219:3: ( ^( I_ANNOTATIONS ( annotation )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1219:5: ^( I_ANNOTATIONS ( annotation )* )
+ // /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 )* )
{
HashMap<String, Annotation> annotationMap = Maps.newHashMap();
- match(input,I_ANNOTATIONS,FOLLOW_I_ANNOTATIONS_in_annotations3421);
+ match(input,I_ANNOTATIONS,FOLLOW_I_ANNOTATIONS_in_annotations3423);
if ( input.LA(1)==Token.DOWN ) {
- match(input, Token.DOWN, null);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1220:21: ( annotation )*
- loop39:
+ match(input, Token.DOWN, null);
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1232:21: ( annotation )*
+ loop41:
while (true) {
- int alt39=2;
- int LA39_0 = input.LA(1);
- if ( (LA39_0==I_ANNOTATION) ) {
- alt39=1;
+ int alt41=2;
+ int LA41_0 = input.LA(1);
+ if ( (LA41_0==I_ANNOTATION) ) {
+ alt41=1;
}
- switch (alt39) {
+ switch (alt41) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1220:22: annotation
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1232:22: annotation
{
- pushFollow(FOLLOW_annotation_in_annotations3424);
+ pushFollow(FOLLOW_annotation_in_annotations3426);
annotation201=annotation();
state._fsp--;
@@ -6671,23 +6720,23 @@ public class smaliTreeWalker extends TreeParser {
if (old != null) {
throw new SemanticException(input, "Multiple annotations of type %s", anno.getType());
}
-
+
}
break;
default :
- break loop39;
+ break loop41;
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
}
if (annotationMap.size() > 0) {
annotations = ImmutableSet.copyOf(annotationMap.values());
}
-
+
}
}
@@ -6705,7 +6754,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "annotation"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1234:1: annotation returns [Annotation annotation] : ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) ;
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1246:1: annotation returns [Annotation annotation] : ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) ;
public final Annotation annotation() throws RecognitionException {
Annotation annotation = null;
@@ -6714,22 +6763,22 @@ public class smaliTreeWalker extends TreeParser {
TreeRuleReturnScope subannotation203 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1235:3: ( ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1235:5: ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation )
+ // /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 )
{
- match(input,I_ANNOTATION,FOLLOW_I_ANNOTATION_in_annotation3453);
- match(input, Token.DOWN, null);
- ANNOTATION_VISIBILITY202=(CommonTree)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation3455);
- pushFollow(FOLLOW_subannotation_in_annotation3457);
+ match(input,I_ANNOTATION,FOLLOW_I_ANNOTATION_in_annotation3455);
+ match(input, Token.DOWN, null);
+ ANNOTATION_VISIBILITY202=(CommonTree)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation3457);
+ pushFollow(FOLLOW_subannotation_in_annotation3459);
subannotation203=subannotation();
state._fsp--;
- match(input, Token.UP, null);
+ 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));
-
+
}
}
@@ -6747,7 +6796,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "annotation_element"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1241:1: annotation_element returns [AnnotationElement element] : ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) ;
+ // /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 ) ;
public final AnnotationElement annotation_element() throws RecognitionException {
AnnotationElement element = null;
@@ -6756,21 +6805,21 @@ public class smaliTreeWalker extends TreeParser {
EncodedValue literal205 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1242:3: ( ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1242:5: ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal )
+ // /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 )
{
- match(input,I_ANNOTATION_ELEMENT,FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3478);
- match(input, Token.DOWN, null);
- SIMPLE_NAME204=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_annotation_element3480);
- pushFollow(FOLLOW_literal_in_annotation_element3482);
+ match(input,I_ANNOTATION_ELEMENT,FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3480);
+ 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();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
element = new ImmutableAnnotationElement((SIMPLE_NAME204!=null?SIMPLE_NAME204.getText():null), literal205);
-
+
}
}
@@ -6793,7 +6842,7 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "subannotation"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1247:1: subannotation returns [String annotationType, List<AnnotationElement> elements] : ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) ;
+ // /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 )* ) ;
public final smaliTreeWalker.subannotation_return subannotation() throws RecognitionException {
smaliTreeWalker.subannotation_return retval = new smaliTreeWalker.subannotation_return();
retval.start = input.LT(1);
@@ -6802,47 +6851,47 @@ public class smaliTreeWalker extends TreeParser {
AnnotationElement annotation_element206 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1248:3: ( ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1248:5: ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* )
+ // /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 )* )
{
ArrayList<AnnotationElement> elements = Lists.newArrayList();
- match(input,I_SUBANNOTATION,FOLLOW_I_SUBANNOTATION_in_subannotation3509);
- match(input, Token.DOWN, null);
- CLASS_DESCRIPTOR207=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation3519);
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1251:9: ( annotation_element )*
- loop40:
+ match(input,I_SUBANNOTATION,FOLLOW_I_SUBANNOTATION_in_subannotation3511);
+ 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:
while (true) {
- int alt40=2;
- int LA40_0 = input.LA(1);
- if ( (LA40_0==I_ANNOTATION_ELEMENT) ) {
- alt40=1;
+ int alt42=2;
+ int LA42_0 = input.LA(1);
+ if ( (LA42_0==I_ANNOTATION_ELEMENT) ) {
+ alt42=1;
}
- switch (alt40) {
+ switch (alt42) {
case 1 :
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1251:10: annotation_element
+ // /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1263:10: annotation_element
{
- pushFollow(FOLLOW_annotation_element_in_subannotation3530);
+ pushFollow(FOLLOW_annotation_element_in_subannotation3532);
annotation_element206=annotation_element();
state._fsp--;
elements.add(annotation_element206);
-
+
}
break;
default :
- break loop40;
+ break loop42;
}
}
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
retval.annotationType = (CLASS_DESCRIPTOR207!=null?CLASS_DESCRIPTOR207.getText():null);
retval.elements = elements;
-
+
}
}
@@ -6860,28 +6909,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "field_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1261:1: field_literal returns [FieldReference value] : ^( I_ENCODED_FIELD fully_qualified_field ) ;
+ // /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 ) ;
public final FieldReference field_literal() throws RecognitionException {
FieldReference value = null;
- ImmutableFieldReference fully_qualified_field208 =null;
+ ImmutableFieldReference field_reference208 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1262:3: ( ^( I_ENCODED_FIELD fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1262:5: ^( I_ENCODED_FIELD fully_qualified_field )
+ // /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 )
{
- match(input,I_ENCODED_FIELD,FOLLOW_I_ENCODED_FIELD_in_field_literal3569);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_fully_qualified_field_in_field_literal3571);
- fully_qualified_field208=fully_qualified_field();
+ match(input,I_ENCODED_FIELD,FOLLOW_I_ENCODED_FIELD_in_field_literal3571);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_field_reference_in_field_literal3573);
+ field_reference208=field_reference();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
- value = fully_qualified_field208;
-
+ value = field_reference208;
+
}
}
@@ -6899,28 +6948,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "method_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1267:1: method_literal returns [MethodReference value] : ^( I_ENCODED_METHOD fully_qualified_method ) ;
+ // /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 ) ;
public final MethodReference method_literal() throws RecognitionException {
MethodReference value = null;
- ImmutableMethodReference fully_qualified_method209 =null;
+ ImmutableMethodReference method_reference209 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1268:3: ( ^( I_ENCODED_METHOD fully_qualified_method ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1268:5: ^( I_ENCODED_METHOD fully_qualified_method )
+ // /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 )
{
- match(input,I_ENCODED_METHOD,FOLLOW_I_ENCODED_METHOD_in_method_literal3592);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_fully_qualified_method_in_method_literal3594);
- fully_qualified_method209=fully_qualified_method();
+ match(input,I_ENCODED_METHOD,FOLLOW_I_ENCODED_METHOD_in_method_literal3594);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_method_reference_in_method_literal3596);
+ method_reference209=method_reference();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
- value = fully_qualified_method209;
-
+ value = method_reference209;
+
}
}
@@ -6938,28 +6987,28 @@ public class smaliTreeWalker extends TreeParser {
// $ANTLR start "enum_literal"
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1273:1: enum_literal returns [FieldReference value] : ^( I_ENCODED_ENUM fully_qualified_field ) ;
+ // /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 ) ;
public final FieldReference enum_literal() throws RecognitionException {
FieldReference value = null;
- ImmutableFieldReference fully_qualified_field210 =null;
+ ImmutableFieldReference field_reference210 =null;
try {
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1274:3: ( ^( I_ENCODED_ENUM fully_qualified_field ) )
- // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:1274:5: ^( I_ENCODED_ENUM fully_qualified_field )
+ // /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 )
{
- match(input,I_ENCODED_ENUM,FOLLOW_I_ENCODED_ENUM_in_enum_literal3615);
- match(input, Token.DOWN, null);
- pushFollow(FOLLOW_fully_qualified_field_in_enum_literal3617);
- fully_qualified_field210=fully_qualified_field();
+ match(input,I_ENCODED_ENUM,FOLLOW_I_ENCODED_ENUM_in_enum_literal3617);
+ match(input, Token.DOWN, null);
+ pushFollow(FOLLOW_field_reference_in_enum_literal3619);
+ field_reference210=field_reference();
state._fsp--;
- match(input, Token.UP, null);
+ match(input, Token.UP, null);
- value = fully_qualified_field210;
-
+ value = field_reference210;
+
}
}
@@ -6979,35 +7028,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,0x0000000000000000L,0x0000000000000004L});
- public static final BitSet FOLLOW_methods_in_smali_file56 = new BitSet(new long[]{0x0000000000000000L,0x0200000000000000L});
- public static final BitSet FOLLOW_fields_in_smali_file58 = new BitSet(new long[]{0x0000000000000000L,0x0000040000000000L});
+ 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_annotations_in_smali_file60 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_class_spec_in_header85 = new BitSet(new long[]{0x0000000000000000L,0x1000000000000000L,0x0020000000010000L});
- public static final BitSet FOLLOW_super_spec_in_header87 = new BitSet(new long[]{0x0000000000000000L,0x1000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_implements_list_in_header90 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
+ 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_source_spec_in_header92 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec110 = new BitSet(new long[]{0x0000000000000000L,0x0000010000000000L});
+ public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec110 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L});
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,0x1000000000000000L});
+ public static final BitSet FOLLOW_implements_spec_in_implements_list184 = new BitSet(new long[]{0x0000000000000002L,0x0000100000000000L});
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,0x0100000000000000L});
+ public static final BitSet FOLLOW_field_in_fields317 = new BitSet(new long[]{0x0000000000000008L,0x0000010000000000L});
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,0x0000000000000000L,0x0000000000000002L});
+ public static final BitSet FOLLOW_method_in_methods358 = new BitSet(new long[]{0x0000000000000008L,0x0002000000000000L});
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,0x0000010000000000L});
- public static final BitSet FOLLOW_access_list_in_field387 = new BitSet(new long[]{0x0000000000000000L,0x0800000000000000L});
+ 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_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,0x0000040000000000L});
+ public static final BitSet FOLLOW_field_initial_value_in_field395 = new BitSet(new long[]{0x0000000000000008L,0x0000000004000000L});
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});
@@ -7051,300 +7100,300 @@ 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[]{0x0008000402600008L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
+ public static final BitSet FOLLOW_fixed_64bit_literal_number_in_array_elements801 = new BitSet(new long[]{0x0000004000404C08L,0x0000000000400000L,0x2000040000000000L});
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,0x0000000000000000L,0x0000000000002000L});
+ public static final BitSet FOLLOW_label_ref_in_packed_switch_elements846 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x4000000000000000L});
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,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_sparse_switch_elements893 = new BitSet(new long[]{0x0008000002600008L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
+ 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_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,0x0000010000000000L});
- public static final BitSet FOLLOW_access_list_in_method961 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000001021L});
- public static final BitSet FOLLOW_registers_directive_in_method988 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000020L});
- public static final BitSet FOLLOW_ordered_method_items_in_method1045 = new BitSet(new long[]{0x0000000000000000L,0x0001000000000000L});
- public static final BitSet FOLLOW_catches_in_method1053 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_parameters_in_method1061 = new BitSet(new long[]{0x0000000000000000L,0x0000040000000000L});
+ 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_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_field_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,0x0000000000000000L,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_method_prototype_in_method_name_and_prototype1122 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field_type_list1156 = new BitSet(new long[]{0x0000000004000102L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_reference_type_descriptor_in_fully_qualified_method1185 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_SIMPLE_NAME_in_fully_qualified_method1187 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000008L});
- public static final BitSet FOLLOW_method_prototype_in_fully_qualified_method1189 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_reference_type_descriptor_in_fully_qualified_field1206 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_SIMPLE_NAME_in_fully_qualified_field1208 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_fully_qualified_field1210 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_I_REGISTERS_in_registers_directive1236 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_I_LOCALS_in_registers_directive1248 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_short_integral_literal_in_registers_directive1266 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_LABEL_in_label_def1286 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_SIMPLE_NAME_in_label_def1288 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_CATCHES_in_catches1314 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_catch_directive_in_catches1316 = new BitSet(new long[]{0x0000000000000008L,0x0000C00000000000L});
- public static final BitSet FOLLOW_catchall_directive_in_catches1319 = new BitSet(new long[]{0x0000000000000008L,0x0000800000000000L});
- public static final BitSet FOLLOW_I_CATCH_in_catch_directive1332 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_catch_directive1334 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_catch_directive1338 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_catch_directive1342 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_catch_directive1346 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_CATCHALL_in_catchall_directive1362 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_label_ref_in_catchall_directive1366 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_catchall_directive1370 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_catchall_directive1374 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_PARAMETERS_in_parameters1391 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_parameter_in_parameters1394 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000100L});
- public static final BitSet FOLLOW_I_PARAMETER_in_parameter1410 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_REGISTER_in_parameter1412 = new BitSet(new long[]{0x0000000000000000L,0x0000040000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_string_literal_in_parameter1414 = new BitSet(new long[]{0x0000000000000000L,0x0000040000000000L});
- public static final BitSet FOLLOW_annotations_in_parameter1417 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_line_in_debug_directive1434 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_local_in_debug_directive1440 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_end_local_in_debug_directive1446 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_restart_local_in_debug_directive1452 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_prologue_in_debug_directive1458 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_epilogue_in_debug_directive1464 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_source_in_debug_directive1470 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_I_LINE_in_line1481 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_integral_literal_in_line1483 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_LOCAL_in_local1501 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_REGISTER_in_local1503 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x8000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_NULL_LITERAL_in_local1507 = new BitSet(new long[]{0x0000000004000108L,0x0000000000000000L,0x0000000000000000L,0x0000000000010080L});
- public static final BitSet FOLLOW_string_literal_in_local1513 = new BitSet(new long[]{0x0000000004000108L,0x0000000000000000L,0x0000000000000000L,0x0000000000010080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_local1516 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_string_literal_in_local1521 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_END_LOCAL_in_end_local1542 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_REGISTER_in_end_local1544 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_RESTART_LOCAL_in_restart_local1562 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_REGISTER_in_restart_local1564 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_PROLOGUE_in_prologue1581 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_I_EPILOGUE_in_epilogue1597 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_I_SOURCE_in_source1614 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_string_literal_in_source1616 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_ORDERED_METHOD_ITEMS_in_ordered_method_items1635 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_label_def_in_ordered_method_items1638 = new BitSet(new long[]{0x0000000000000008L,0xE0C0000000000000L,0x000FFFFFFFFD8800L});
- public static final BitSet FOLLOW_instruction_in_ordered_method_items1642 = new BitSet(new long[]{0x0000000000000008L,0xE0C0000000000000L,0x000FFFFFFFFD8800L});
- public static final BitSet FOLLOW_debug_directive_in_ordered_method_items1646 = new BitSet(new long[]{0x0000000000000008L,0xE0C0000000000000L,0x000FFFFFFFFD8800L});
- public static final BitSet FOLLOW_SIMPLE_NAME_in_label_ref1662 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_I_REGISTER_LIST_in_register_list1687 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_REGISTER_in_register_list1696 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_I_REGISTER_RANGE_in_register_range1721 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_REGISTER_in_register_range1726 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_register_range1730 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1753 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_fully_qualified_field_in_verification_error_reference1763 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_fully_qualified_method_in_verification_error_reference1773 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1790 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format10t_in_instruction1804 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format10x_in_instruction1810 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format11n_in_instruction1816 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format11x_in_instruction1822 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format12x_in_instruction1828 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format20bc_in_instruction1834 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format20t_in_instruction1840 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21c_field_in_instruction1846 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21c_string_in_instruction1852 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21c_type_in_instruction1858 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21ih_in_instruction1864 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21lh_in_instruction1870 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21s_in_instruction1876 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format21t_in_instruction1882 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22b_in_instruction1888 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22c_field_in_instruction1894 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22c_type_in_instruction1900 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22s_in_instruction1906 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22t_in_instruction1912 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format22x_in_instruction1918 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format23x_in_instruction1924 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format30t_in_instruction1930 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format31c_in_instruction1936 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format31i_in_instruction1942 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format31t_in_instruction1948 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format32x_in_instruction1954 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format35c_method_in_instruction1960 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format35c_type_in_instruction1966 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format3rc_method_in_instruction1972 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format3rc_type_in_instruction1978 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_format51l_type_in_instruction1984 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_array_data_directive_in_instruction1990 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_packed_switch_directive_in_instruction1996 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_insn_sparse_switch_directive_in_instruction2002 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2026 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2028 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format10t2030 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2053 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2055 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2078 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2080 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format11n2082 = new BitSet(new long[]{0x0000000002400000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_short_integral_literal_in_insn_format11n2084 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2107 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2109 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format11x2111 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2134 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2136 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format12x2140 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format12x2144 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2167 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2169 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000080000L});
- public static final BitSet FOLLOW_verification_error_type_in_insn_format20bc2171 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_verification_error_reference_in_insn_format20bc2173 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2196 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2198 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format20t2200 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2223 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_set_in_insn_format21c_field2227 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field2235 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_field_in_insn_format21c_field2237 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2260 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2262 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21c_string2264 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_string_literal_in_insn_format21c_string2266 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2289 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2291 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21c_type2293 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2295 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2318 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2320 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21ih2322 = new BitSet(new long[]{0x0008000002600000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21ih2324 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2347 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2349 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21lh2351 = new BitSet(new long[]{0x0008000402600000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format21lh2353 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2376 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2378 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21s2380 = new BitSet(new long[]{0x0000000002400000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_short_integral_literal_in_insn_format21s2382 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2405 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2407 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format21t2409 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format21t2411 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2434 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2436 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22b2440 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22b2444 = new BitSet(new long[]{0x0000000002400000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_short_integral_literal_in_insn_format22b2446 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2469 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_set_in_insn_format22c_field2473 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2483 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2487 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_field_in_insn_format22c_field2489 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2512 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2514 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2518 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2522 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2524 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2547 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2549 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22s2553 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22s2557 = new BitSet(new long[]{0x0000000002400000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_short_integral_literal_in_insn_format22s2559 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2582 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2584 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22t2588 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22t2592 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format22t2594 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2617 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2619 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22x2623 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format22x2627 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2650 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2652 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format23x2656 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format23x2660 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format23x2664 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2687 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2689 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format30t2691 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2714 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2716 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format31c2718 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_string_literal_in_insn_format31c2720 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2743 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2745 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format31i2747 = new BitSet(new long[]{0x0008000002600000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format31i2749 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2772 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2774 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format31t2776 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_label_ref_in_insn_format31t2778 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2801 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2803 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format32x2807 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format32x2811 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method2834 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method2836 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_register_list_in_insn_format35c_method2838 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_method_in_insn_format35c_method2840 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type2863 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type2865 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000002000L});
- public static final BitSet FOLLOW_register_list_in_insn_format35c_type2867 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type2869 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method2892 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method2894 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000004000L});
- public static final BitSet FOLLOW_register_range_in_insn_format3rc_method2896 = new BitSet(new long[]{0x0000000004000100L});
- public static final BitSet FOLLOW_fully_qualified_method_in_insn_format3rc_method2898 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type2921 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type2923 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000004000L});
- public static final BitSet FOLLOW_register_range_in_insn_format3rc_type2925 = new BitSet(new long[]{0x0000000004000100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000080L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type2927 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type2950 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type2952 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_REGISTER_in_insn_format51l_type2954 = new BitSet(new long[]{0x0008000402600000L,0x0000004000000000L,0x0800000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format51l_type2956 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive2979 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive2982 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_short_integral_literal_in_insn_array_data_directive2984 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_array_elements_in_insn_array_data_directive2987 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3009 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3012 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3014 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3017 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3041 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3043 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_set_in_nonvoid_type_descriptor3064 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_set_in_reference_type_descriptor3096 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_VOID_TYPE_in_type_descriptor3122 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_nonvoid_type_descriptor_in_type_descriptor3130 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_long_literal_in_short_integral_literal3148 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_integer_literal_in_short_integral_literal3160 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_short_literal_in_short_integral_literal3172 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_char_literal_in_short_integral_literal3180 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_byte_literal_in_short_integral_literal3188 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_long_literal_in_integral_literal3203 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_integer_literal_in_integral_literal3215 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_short_literal_in_integral_literal3223 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_byte_literal_in_integral_literal3231 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_INTEGER_LITERAL_in_integer_literal3247 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_LONG_LITERAL_in_long_literal3262 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_SHORT_LITERAL_in_short_literal3277 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BYTE_LITERAL_in_byte_literal3292 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_FLOAT_LITERAL_in_float_literal3307 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_DOUBLE_LITERAL_in_double_literal3322 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_CHAR_LITERAL_in_char_literal3337 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_STRING_LITERAL_in_string_literal3352 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_BOOL_LITERAL_in_bool_literal3371 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_I_ENCODED_ARRAY_in_array_literal3393 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_literal_in_array_literal3396 = new BitSet(new long[]{0x0008000406600108L,0x003C004000000000L,0x8810000000000000L,0x0000000000111080L});
- public static final BitSet FOLLOW_I_ANNOTATIONS_in_annotations3421 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_annotation_in_annotations3424 = new BitSet(new long[]{0x0000000000000008L,0x0000020000000000L});
- public static final BitSet FOLLOW_I_ANNOTATION_in_annotation3453 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_annotation3455 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0010000000000000L});
- public static final BitSet FOLLOW_subannotation_in_annotation3457 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3478 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_SIMPLE_NAME_in_annotation_element3480 = new BitSet(new long[]{0x0008000406600100L,0x003C004000000000L,0x8810000000000000L,0x0000000000111080L});
- public static final BitSet FOLLOW_literal_in_annotation_element3482 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_SUBANNOTATION_in_subannotation3509 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_subannotation3519 = new BitSet(new long[]{0x0000000000000008L,0x0000080000000000L});
- public static final BitSet FOLLOW_annotation_element_in_subannotation3530 = new BitSet(new long[]{0x0000000000000008L,0x0000080000000000L});
- public static final BitSet FOLLOW_I_ENCODED_FIELD_in_field_literal3569 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_fully_qualified_field_in_field_literal3571 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_ENCODED_METHOD_in_method_literal3592 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_fully_qualified_method_in_method_literal3594 = new BitSet(new long[]{0x0000000000000008L});
- public static final BitSet FOLLOW_I_ENCODED_ENUM_in_enum_literal3615 = new BitSet(new long[]{0x0000000000000004L});
- public static final BitSet FOLLOW_fully_qualified_field_in_enum_literal3617 = new BitSet(new long[]{0x0000000000000008L});
+ 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_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_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});
+ public static final BitSet FOLLOW_short_integral_literal_in_registers_directive1268 = new BitSet(new long[]{0x0000000000000008L});
+ 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_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_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_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_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_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});
+ public static final BitSet FOLLOW_end_local_in_debug_directive1448 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_restart_local_in_debug_directive1454 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_prologue_in_debug_directive1460 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_epilogue_in_debug_directive1466 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_source_in_debug_directive1472 = new BitSet(new long[]{0x0000000000000002L});
+ 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_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});
+ public static final BitSet FOLLOW_I_RESTART_LOCAL_in_restart_local1564 = new BitSet(new long[]{0x0000000000000004L});
+ public static final BitSet FOLLOW_REGISTER_in_restart_local1566 = new BitSet(new long[]{0x0000000000000008L});
+ public static final BitSet FOLLOW_I_PROLOGUE_in_prologue1583 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_I_EPILOGUE_in_epilogue1599 = new BitSet(new long[]{0x0000000000000002L});
+ 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_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});
}
diff --git a/smali/src/main/jflex/smaliLexer.flex b/smali/src/main/jflex/smaliLexer.flex
index 1540bf8c..df571e66 100644
--- a/smali/src/main/jflex/smaliLexer.flex
+++ b/smali/src/main/jflex/smaliLexer.flex
@@ -222,6 +222,8 @@ ArrayDescriptor = "[" + ({PrimitiveType} | {ClassDescriptor})
Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor}
+%state PARAM_LIST_OR_ID
+%state PARAM_LIST
%state STRING
%state CHAR
@@ -289,6 +291,20 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor}
' { beginStringOrChar(CHAR); sb.append('\''); }
}
+<PARAM_LIST_OR_ID> {
+ {PrimitiveType} { return newToken(PRIMITIVE_TYPE); }
+ [^] { yypushback(1); yybegin(YYINITIAL); return newToken(PARAM_LIST_OR_ID_END); }
+ <<EOF>> { yybegin(YYINITIAL); return newToken(PARAM_LIST_OR_ID_END); }
+}
+
+<PARAM_LIST> {
+ {PrimitiveType} { return newToken(PRIMITIVE_TYPE); }
+ {ClassDescriptor} { return newToken(CLASS_DESCRIPTOR); }
+ {ArrayDescriptor} { return newToken(ARRAY_DESCRIPTOR); }
+ [^] { yypushback(1); yybegin(YYINITIAL); return newToken(PARAM_LIST_END); }
+ <<EOF>> { yybegin(YYINITIAL); return newToken(PARAM_LIST_END); }
+}
+
<STRING> {
"\"" { sb.append('"'); return endStringOrChar(STRING_LITERAL); }
@@ -587,8 +603,19 @@ Type = {PrimitiveType} | {ClassDescriptor} | {ArrayDescriptor}
V { return newToken(VOID_TYPE); }
{ClassDescriptor} { return newToken(CLASS_DESCRIPTOR); }
{ArrayDescriptor} { return newToken(ARRAY_DESCRIPTOR); }
- {PrimitiveType} {PrimitiveType}+ { return newToken(PARAM_LIST_OR_ID); }
- {Type} {Type}+ { return newToken(PARAM_LIST); }
+
+ {PrimitiveType} {PrimitiveType}+ {
+ yypushback(yylength());
+ yybegin(PARAM_LIST_OR_ID);
+ return newToken(PARAM_LIST_OR_ID_START);
+ }
+
+ {Type} {Type}+ {
+ yypushback(yylength());
+ yybegin(PARAM_LIST);
+ return newToken(PARAM_LIST_START);
+ }
+
{SimpleName} { return newToken(SIMPLE_NAME); }
"<" {SimpleName} ">" { return newToken(MEMBER_NAME); }
}
diff --git a/smali/src/test/java/ImplicitReferenceTest.java b/smali/src/test/java/ImplicitReferenceTest.java
new file mode 100644
index 00000000..b080c8a5
--- /dev/null
+++ b/smali/src/test/java/ImplicitReferenceTest.java
@@ -0,0 +1,242 @@
+/*
+ * Copyright 2014, 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.
+ */
+
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import junit.framework.Assert;
+import org.antlr.runtime.RecognitionException;
+import org.jf.dexlib2.Opcode;
+import org.jf.dexlib2.ValueType;
+import org.jf.dexlib2.iface.ClassDef;
+import org.jf.dexlib2.iface.Field;
+import org.jf.dexlib2.iface.Method;
+import org.jf.dexlib2.iface.MethodImplementation;
+import org.jf.dexlib2.iface.instruction.Instruction;
+import org.jf.dexlib2.iface.instruction.formats.Instruction21c;
+import org.jf.dexlib2.iface.instruction.formats.Instruction35c;
+import org.jf.dexlib2.iface.reference.FieldReference;
+import org.jf.dexlib2.iface.reference.MethodReference;
+import org.jf.dexlib2.iface.value.FieldEncodedValue;
+import org.jf.dexlib2.iface.value.MethodEncodedValue;
+import org.jf.dexlib2.iface.value.TypeEncodedValue;
+import org.jf.smali.SmaliTestUtils;
+import org.junit.Test;
+
+import java.io.IOException;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Tests for method/field references that use an implicit type
+ */
+public class ImplicitReferenceTest extends SmaliTestUtils {
+ @Test
+ public void testImplicitMethodReference() throws RecognitionException, IOException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " invoke-static {p0}, toString()V\n" +
+ " invoke-static {p0}, V()V\n" +
+ " invoke-static {p0}, I()V\n" +
+ " return-void\n" +
+ ".end method");
+
+ Method mainMethod = null;
+ for (Method method: classDef.getMethods()) {
+ if (method.getName().equals("main")) {
+ mainMethod = method;
+ }
+ }
+ Assert.assertNotNull(mainMethod);
+
+ MethodImplementation methodImpl = mainMethod.getImplementation();
+ Assert.assertNotNull(methodImpl);
+
+ List<Instruction> instructions = Lists.newArrayList(methodImpl.getInstructions());
+
+ Instruction35c instruction = (Instruction35c)instructions.get(0);
+ Assert.assertNotNull(instruction);
+ Assert.assertEquals(Opcode.INVOKE_STATIC, instruction.getOpcode());
+ MethodReference method = (MethodReference)instruction.getReference();
+ Assert.assertEquals(classDef.getType(), method.getDefiningClass());
+ Assert.assertEquals("toString", method.getName());
+
+ instruction = (Instruction35c)instructions.get(1);
+ Assert.assertNotNull(instruction);
+ Assert.assertEquals(Opcode.INVOKE_STATIC, instruction.getOpcode());
+ method = (MethodReference)instruction.getReference();
+ Assert.assertEquals(classDef.getType(), method.getDefiningClass());
+ Assert.assertEquals("V", method.getName());
+
+ instruction = (Instruction35c)instructions.get(2);
+ Assert.assertNotNull(instruction);
+ Assert.assertEquals(Opcode.INVOKE_STATIC, instruction.getOpcode());
+ method = (MethodReference)instruction.getReference();
+ Assert.assertEquals(classDef.getType(), method.getDefiningClass());
+ Assert.assertEquals("I", method.getName());
+ }
+
+ @Test
+ public void testImplicitMethodLiteral() throws RecognitionException, IOException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".field public static field1:Ljava/lang/reflect/Method; = toString()V\n" +
+ ".field public static field2:Ljava/lang/reflect/Method; = V()V\n" +
+ ".field public static field3:Ljava/lang/reflect/Method; = I()V\n" +
+ ".field public static field4:Ljava/lang/Class; = I");
+
+ Map<String, Field> fields = Maps.newHashMap();
+ for (Field field: classDef.getFields()) {
+ fields.put(field.getName(), field);
+ }
+
+ Field field = fields.get("field1");
+ Assert.assertNotNull(field);
+ Assert.assertNotNull(field.getInitialValue());
+ Assert.assertEquals(ValueType.METHOD, field.getInitialValue().getValueType());
+ MethodEncodedValue methodEncodedValue = (MethodEncodedValue)field.getInitialValue();
+ Assert.assertEquals(classDef.getType(), methodEncodedValue.getValue().getDefiningClass());
+ Assert.assertEquals("toString", methodEncodedValue.getValue().getName());
+
+ field = fields.get("field2");
+ Assert.assertNotNull(field);
+ Assert.assertNotNull(field.getInitialValue());
+ Assert.assertEquals(ValueType.METHOD, field.getInitialValue().getValueType());
+ methodEncodedValue = (MethodEncodedValue)field.getInitialValue();
+ Assert.assertEquals(classDef.getType(), methodEncodedValue.getValue().getDefiningClass());
+ Assert.assertEquals("V", methodEncodedValue.getValue().getName());
+
+ field = fields.get("field3");
+ Assert.assertNotNull(field);
+ Assert.assertNotNull(field.getInitialValue());
+ Assert.assertEquals(ValueType.METHOD, field.getInitialValue().getValueType());
+ methodEncodedValue = (MethodEncodedValue)field.getInitialValue();
+ Assert.assertEquals(classDef.getType(), methodEncodedValue.getValue().getDefiningClass());
+ Assert.assertEquals("I", methodEncodedValue.getValue().getName());
+
+ field = fields.get("field4");
+ Assert.assertNotNull(field);
+ Assert.assertNotNull(field.getInitialValue());
+ Assert.assertEquals(ValueType.TYPE, field.getInitialValue().getValueType());
+ TypeEncodedValue typeEncodedValue = (TypeEncodedValue)field.getInitialValue();
+ Assert.assertEquals("I", typeEncodedValue.getValue());
+ }
+
+ @Test
+ public void testImplicitFieldReference() throws RecognitionException, IOException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".method public static main([Ljava/lang/String;)V\n" +
+ " .registers 1\n" +
+ " sget-object v0, someField:I\n" +
+ " sget-object v0, V:I\n" +
+ " sget-object v0, I:I\n" +
+ " return-void\n" +
+ ".end method");
+
+ Method mainMethod = null;
+ for (Method method: classDef.getMethods()) {
+ if (method.getName().equals("main")) {
+ mainMethod = method;
+ }
+ }
+ Assert.assertNotNull(mainMethod);
+
+ MethodImplementation methodImpl = mainMethod.getImplementation();
+ Assert.assertNotNull(methodImpl);
+
+ List<Instruction> instructions = Lists.newArrayList(methodImpl.getInstructions());
+
+ Instruction21c instruction = (Instruction21c)instructions.get(0);
+ Assert.assertNotNull(instruction);
+ Assert.assertEquals(Opcode.SGET_OBJECT, instruction.getOpcode());
+ FieldReference field = (FieldReference)instruction.getReference();
+ Assert.assertEquals(classDef.getType(), field.getDefiningClass());
+ Assert.assertEquals("someField", field.getName());
+
+ instruction = (Instruction21c)instructions.get(1);
+ Assert.assertNotNull(instruction);
+ Assert.assertEquals(Opcode.SGET_OBJECT, instruction.getOpcode());
+ field = (FieldReference)instruction.getReference();
+ Assert.assertEquals(classDef.getType(), field.getDefiningClass());
+ Assert.assertEquals("V", field.getName());
+
+ instruction = (Instruction21c)instructions.get(2);
+ Assert.assertNotNull(instruction);
+ Assert.assertEquals(Opcode.SGET_OBJECT, instruction.getOpcode());
+ field = (FieldReference)instruction.getReference();
+ Assert.assertEquals(classDef.getType(), field.getDefiningClass());
+ Assert.assertEquals("I", field.getName());
+ }
+
+ @Test
+ public void testImplicitFieldLiteral() throws RecognitionException, IOException {
+ ClassDef classDef = SmaliTestUtils.compileSmali("" +
+ ".class public LHelloWorld;\n" +
+ ".super Ljava/lang/Object;\n" +
+ ".field public static field1:Ljava/lang/reflect/Field; = someField:I\n" +
+ ".field public static field2:Ljava/lang/reflect/Field; = V:I\n" +
+ ".field public static field3:Ljava/lang/reflect/Field; = I:I\n");
+
+ Map<String, Field> fields = Maps.newHashMap();
+ for (Field field: classDef.getFields()) {
+ fields.put(field.getName(), field);
+ }
+
+ Field field = fields.get("field1");
+ Assert.assertNotNull(field);
+ Assert.assertNotNull(field.getInitialValue());
+ Assert.assertEquals(ValueType.FIELD, field.getInitialValue().getValueType());
+ FieldEncodedValue fieldEncodedValue = (FieldEncodedValue)field.getInitialValue();
+ Assert.assertEquals(classDef.getType(), fieldEncodedValue.getValue().getDefiningClass());
+ Assert.assertEquals("someField", fieldEncodedValue.getValue().getName());
+
+ field = fields.get("field2");
+ Assert.assertNotNull(field);
+ Assert.assertNotNull(field.getInitialValue());
+ Assert.assertEquals(ValueType.FIELD, field.getInitialValue().getValueType());
+ fieldEncodedValue = (FieldEncodedValue)field.getInitialValue();
+ Assert.assertEquals(classDef.getType(), fieldEncodedValue.getValue().getDefiningClass());
+ Assert.assertEquals("V", fieldEncodedValue.getValue().getName());
+
+ field = fields.get("field3");
+ Assert.assertNotNull(field);
+ Assert.assertNotNull(field.getInitialValue());
+ Assert.assertEquals(ValueType.FIELD, field.getInitialValue().getValueType());
+ fieldEncodedValue = (FieldEncodedValue)field.getInitialValue();
+ Assert.assertEquals(classDef.getType(), fieldEncodedValue.getValue().getDefiningClass());
+ Assert.assertEquals("I", fieldEncodedValue.getValue().getName());
+ }
+}
diff --git a/smali/src/test/resources/LexerTest/RealSmaliFileTest.tokens b/smali/src/test/resources/LexerTest/RealSmaliFileTest.tokens
index a0f648a1..ba40c2f2 100644
--- a/smali/src/test/resources/LexerTest/RealSmaliFileTest.tokens
+++ b/smali/src/test/resources/LexerTest/RealSmaliFileTest.tokens
@@ -552,7 +552,13 @@ METHOD_DIRECTIVE(".method")
ACCESS_SPEC("public")
SIMPLE_NAME("setCallForwardingOption")
OPEN_PAREN("(")
-PARAM_LIST("IILjava/lang/String;ILandroid/os/Message;")
+PARAM_LIST_START("")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+CLASS_DESCRIPTOR("Ljava/lang/String;")
+PRIMITIVE_TYPE("I")
+CLASS_DESCRIPTOR("Landroid/os/Message;")
+PARAM_LIST_END("")
CLOSE_PAREN(")")
VOID_TYPE("V")
REGISTERS_DIRECTIVE(".registers")
@@ -697,7 +703,12 @@ CLASS_DESCRIPTOR("Lcom/android/internal/telephony/gsm/GSMPhone$MyHandler;")
ARROW("->")
SIMPLE_NAME("obtainMessage")
OPEN_PAREN("(")
-PARAM_LIST("IIILjava/lang/Object;")
+PARAM_LIST_START("")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+CLASS_DESCRIPTOR("Ljava/lang/Object;")
+PARAM_LIST_END("")
CLOSE_PAREN(")")
CLASS_DESCRIPTOR("Landroid/os/Message;")
INSTRUCTION_FORMAT11x("move-result-object")
@@ -749,7 +760,14 @@ CLASS_DESCRIPTOR("Lcom/android/internal/telephony/CommandsInterface;")
ARROW("->")
SIMPLE_NAME("setCallForward")
OPEN_PAREN("(")
-PARAM_LIST("IIILjava/lang/String;ILandroid/os/Message;")
+PARAM_LIST_START("")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+CLASS_DESCRIPTOR("Ljava/lang/String;")
+PRIMITIVE_TYPE("I")
+CLASS_DESCRIPTOR("Landroid/os/Message;")
+PARAM_LIST_END("")
CLOSE_PAREN(")")
VOID_TYPE("V")
LINE_DIRECTIVE(".line")
diff --git a/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.smali b/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.smali
index f001d19e..2120d33f 100644
--- a/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.smali
+++ b/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.smali
@@ -47,4 +47,6 @@ L[Ljava/lang/String;
[java/lang/String;
[;
-<linit> \ No newline at end of file
+<linit>
+
+III \ No newline at end of file
diff --git a/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.tokens b/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.tokens
index 2bd781a5..d99d2c29 100644
--- a/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.tokens
+++ b/smali/src/test/resources/LexerTest/TypeAndIdentifierTest.tokens
@@ -24,13 +24,52 @@ ARRAY_DESCRIPTOR("[D")
ARRAY_DESCRIPTOR("[Ljava/lang/String;")
ARRAY_DESCRIPTOR("[LI/I/I;")
-PARAM_LIST_OR_ID("IIIII")
-PARAM_LIST_OR_ID("ZBSCIJFD")
-PARAM_LIST("ILa;[La;[I")
-PARAM_LIST("Ljava/lang/String;Ljava/lang/String;")
-PARAM_LIST("[I[I[I")
-PARAM_LIST("[I[Z")
-PARAM_LIST("[I[Ljava/lang/String;")
+PARAM_LIST_OR_ID_START("")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PARAM_LIST_OR_ID_END("")
+
+PARAM_LIST_OR_ID_START("")
+PRIMITIVE_TYPE("Z")
+PRIMITIVE_TYPE("B")
+PRIMITIVE_TYPE("S")
+PRIMITIVE_TYPE("C")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("J")
+PRIMITIVE_TYPE("F")
+PRIMITIVE_TYPE("D")
+PARAM_LIST_OR_ID_END("")
+
+PARAM_LIST_START("")
+PRIMITIVE_TYPE("I")
+CLASS_DESCRIPTOR("La;")
+ARRAY_DESCRIPTOR("[La;")
+ARRAY_DESCRIPTOR("[I")
+PARAM_LIST_END("")
+
+PARAM_LIST_START("")
+CLASS_DESCRIPTOR("Ljava/lang/String;")
+CLASS_DESCRIPTOR("Ljava/lang/String;")
+PARAM_LIST_END("")
+
+PARAM_LIST_START("")
+ARRAY_DESCRIPTOR("[I")
+ARRAY_DESCRIPTOR("[I")
+ARRAY_DESCRIPTOR("[I")
+PARAM_LIST_END("")
+
+PARAM_LIST_START("")
+ARRAY_DESCRIPTOR("[I")
+ARRAY_DESCRIPTOR("[Z")
+PARAM_LIST_END("")
+
+PARAM_LIST_START("")
+ARRAY_DESCRIPTOR("[I")
+ARRAY_DESCRIPTOR("[Ljava/lang/String;")
+PARAM_LIST_END("")
MEMBER_NAME("<init>")
MEMBER_NAME("<clinit>")
@@ -47,4 +86,10 @@ INVALID_TOKEN("[") VOID_TYPE("V")
INVALID_TOKEN("[") SIMPLE_NAME("java") INVALID_TOKEN("/") SIMPLE_NAME("lang") INVALID_TOKEN("/") SIMPLE_NAME("String") INVALID_TOKEN(";")
INVALID_TOKEN("[") INVALID_TOKEN(";")
-MEMBER_NAME("<linit>") \ No newline at end of file
+MEMBER_NAME("<linit>")
+
+PARAM_LIST_OR_ID_START("")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PRIMITIVE_TYPE("I")
+PARAM_LIST_OR_ID_END("") \ No newline at end of file
diff --git a/util/build.gradle b/util/build.gradle
index 82d2998f..407ef71f 100644
--- a/util/build.gradle
+++ b/util/build.gradle
@@ -36,15 +36,6 @@ dependencies {
testCompile depends.junit
}
-task sourcesJar(type: Jar) {
- classifier = 'sources'
- from sourceSets.main.allJava
-}
-
-artifacts {
- archives sourcesJar
-}
-
uploadArchives {
repositories.mavenDeployer {
pom.project {
diff --git a/util/src/main/java/ds/tree/DuplicateKeyException.java b/util/src/main/java/ds/tree/DuplicateKeyException.java
deleted file mode 100644
index 5f660b39..00000000
--- a/util/src/main/java/ds/tree/DuplicateKeyException.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
-The MIT License
-
-Copyright (c) 2008 Tahseen Ur Rehman
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-package ds.tree;
-
-/**
- * excepion thrown if a duplicate key is inserted in a {@link RadixTree}
- *
- * @author Tahseen Ur Rehman
- * email: tahseen.ur.rehman {at.spam.me.not} gmail.com
- */
-public class DuplicateKeyException extends RuntimeException
-{
- private static final long serialVersionUID = 3141795907493885706L;
-
- public DuplicateKeyException(String msg)
- {
- super(msg);
- }
-}
diff --git a/util/src/main/java/ds/tree/RadixTree.java b/util/src/main/java/ds/tree/RadixTree.java
deleted file mode 100644
index bf05e9d9..00000000
--- a/util/src/main/java/ds/tree/RadixTree.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
-The MIT License
-
-Copyright (c) 2008 Tahseen Ur Rehman
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-package ds.tree;
-
-import java.util.ArrayList;
-
-/**
- * This interface represent the operation of a radix tree. A radix tree,
- * Patricia trie/tree, or crit bit tree is a specialized set data structure
- * based on the trie that is used to store a set of strings. In contrast with a
- * regular trie, the edges of a Patricia trie are labelled with sequences of
- * characters rather than with single characters. These can be strings of
- * characters, bit strings such as integers or IP addresses, or generally
- * arbitrary sequences of objects in lexicographical order. Sometimes the names
- * radix tree and crit bit tree are only applied to trees storing integers and
- * Patricia trie is retained for more general inputs, but the structure works
- * the same way in all cases.
- *
- * @author Tahseen Ur Rehman
- * email: tahseen.ur.rehman {at.spam.me.not} gmail.com
- */
-public interface RadixTree<T> {
- /**
- * Insert a new string key and its value to the tree.
- *
- * @param key
- * The string key of the object
- * @param value
- * The value that need to be stored corresponding to the given
- * key.
- * @throws DuplicateKeyException
- */
- public void insert(String key, T value);
-
- /**
- * Delete a key and its associated value from the tree.
- * @param key The key of the node that need to be deleted
- * @return
- */
- public boolean delete(String key);
-
- /**
- * Find a value based on its corresponding key.
- *
- * @param key The key for which to search the tree.
- * @return The value corresponding to the key. null if iot can not find the key
- */
- public T find(String key);
-
- /**
- * Find an existing entry and replace it's value. If no existing entry, do nothing
- *
- * @param key The key for which to search the tree.
- * @param value The value to set for the entry
- * @return true if an entry was found for the given key, false if not found
- */
- public boolean replace(String key, final T value);
-
- /**
- * Check if the tree contains any entry corresponding to the given key.
- *
- * @param key The key that needto be searched in the tree.
- * @return retun true if the key is present in the tree otherwise false
- */
- public boolean contains(String key);
-
- /**
- * Search for all the keys that start with given prefix. limiting the results based on the supplied limit.
- *
- * @param prefix The prefix for which keys need to be search
- * @param recordLimit The limit for the results
- * @return The list of values those key start with the given prefix
- */
- public ArrayList<T> searchPrefix(String prefix, int recordLimit);
-
- /**
- * Return the size of the Radix tree
- * @return the size of the tree
- */
- public long getSize();
-
- /**
- * Complete the a prefix to the point where ambiguity starts.
- *
- * Example:
- * If a tree contain "blah1", "blah2"
- * complete("b") -> return "blah"
- *
- * @param prefix The prefix we want to complete
- * @return The unambiguous completion of the string.
- */
- public String complete(String prefix);
-}
diff --git a/util/src/main/java/ds/tree/RadixTreeImpl.java b/util/src/main/java/ds/tree/RadixTreeImpl.java
deleted file mode 100644
index 58797d48..00000000
--- a/util/src/main/java/ds/tree/RadixTreeImpl.java
+++ /dev/null
@@ -1,462 +0,0 @@
-/*
-The MIT License
-
-Copyright (c) 2008 Tahseen Ur Rehman, Javid Jamae
-
-http://code.google.com/p/radixtree/
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-package ds.tree;
-
-import java.util.ArrayList;
-import java.util.Formattable;
-import java.util.Formatter;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.Queue;
-
-/**
- * Implementation for Radix tree {@link RadixTree}
- *
- * @author Tahseen Ur Rehman (tahseen.ur.rehman {at.spam.me.not} gmail.com)
- * @author Javid Jamae
- * @author Dennis Heidsiek
- */
-public class RadixTreeImpl<T> implements RadixTree<T>, Formattable {
-
- protected RadixTreeNode<T> root;
-
- protected long size;
-
- /**
- * Create a Radix Tree with only the default node root.
- */
- public RadixTreeImpl() {
- root = new RadixTreeNode<T>();
- root.setKey("");
- size = 0;
- }
-
- public T find(String key) {
- Visitor<T,T> visitor = new VisitorImpl<T,T>() {
-
- public void visit(String key, RadixTreeNode<T> parent,
- RadixTreeNode<T> node) {
- if (node.isReal())
- result = node.getValue();
- }
- };
-
- visit(key, visitor);
-
- return visitor.getResult();
- }
-
- public boolean replace(String key, final T value) {
- Visitor<T,T> visitor = new VisitorImpl<T,T>() {
- public void visit(String key, RadixTreeNode<T> parent, RadixTreeNode<T> node) {
- if (node.isReal()) {
- node.setValue(value);
- result = value;
- } else {
- result = null;
- }
- }
- };
-
- visit(key, visitor);
-
- return visitor.getResult() != null;
- }
-
- public boolean delete(String key) {
- Visitor<T, Boolean> visitor = new VisitorImpl<T, Boolean>(Boolean.FALSE) {
- public void visit(String key, RadixTreeNode<T> parent,
- RadixTreeNode<T> node) {
- result = node.isReal();
-
- // if it is a real node
- if (result) {
- // If there no children of the node we need to
- // delete it from the its parent children list
- if (node.getChildern().size() == 0) {
- Iterator<RadixTreeNode<T>> it = parent.getChildern()
- .iterator();
- while (it.hasNext()) {
- if (it.next().getKey().equals(node.getKey())) {
- it.remove();
- break;
- }
- }
-
- // if parent is not real node and has only one child
- // then they need to be merged.
- if (parent.getChildern().size() == 1
- && parent.isReal() == false) {
- mergeNodes(parent, parent.getChildern().get(0));
- }
- } else if (node.getChildern().size() == 1) {
- // we need to merge the only child of this node with
- // itself
- mergeNodes(node, node.getChildern().get(0));
- } else { // we jus need to mark the node as non real.
- node.setReal(false);
- }
- }
- }
-
- /**
- * Merge a child into its parent node. Operation only valid if it is
- * only child of the parent node and parent node is not a real node.
- *
- * @param parent
- * The parent Node
- * @param child
- * The child Node
- */
- private void mergeNodes(RadixTreeNode<T> parent,
- RadixTreeNode<T> child) {
- parent.setKey(parent.getKey() + child.getKey());
- parent.setReal(child.isReal());
- parent.setValue(child.getValue());
- parent.setChildern(child.getChildern());
- }
-
- };
-
- visit(key, visitor);
-
- if(visitor.getResult()) {
- size--;
- }
- return visitor.getResult().booleanValue();
- }
-
- /*
- * (non-Javadoc)
- * @see ds.tree.RadixTree#insert(java.lang.String, java.lang.Object)
- */
- public void insert(String key, T value) throws DuplicateKeyException {
- try {
- insert(key, root, value);
- } catch (DuplicateKeyException e) {
- // re-throw the exception with 'key' in the message
- throw new DuplicateKeyException("Duplicate key: '" + key + "'");
- }
- size++;
- }
-
- /**
- * Recursively insert the key in the radix tree.
- *
- * @param key The key to be inserted
- * @param node The current node
- * @param value The value associated with the key
- * @throws DuplicateKeyException If the key already exists in the database.
- */
- private void insert(String key, RadixTreeNode<T> node, T value)
- throws DuplicateKeyException {
-
- int numberOfMatchingCharacters = node.getNumberOfMatchingCharacters(key);
-
- // we are either at the root node
- // or we need to go down the tree
- if (node.getKey().equals("") == true || numberOfMatchingCharacters == 0 || (numberOfMatchingCharacters < key.length() && numberOfMatchingCharacters >= node.getKey().length())) {
- boolean flag = false;
- String newText = key.substring(numberOfMatchingCharacters, key.length());
- for (RadixTreeNode<T> child : node.getChildern()) {
- if (child.getKey().startsWith(newText.charAt(0) + "")) {
- flag = true;
- insert(newText, child, value);
- break;
- }
- }
-
- // just add the node as the child of the current node
- if (flag == false) {
- RadixTreeNode<T> n = new RadixTreeNode<T>();
- n.setKey(newText);
- n.setReal(true);
- n.setValue(value);
-
- node.getChildern().add(n);
- }
- }
- // there is a exact match just make the current node as data node
- else if (numberOfMatchingCharacters == key.length() && numberOfMatchingCharacters == node.getKey().length()) {
- if (node.isReal() == true) {
- throw new DuplicateKeyException("Duplicate key");
- }
-
- node.setReal(true);
- node.setValue(value);
- }
- // This node need to be split as the key to be inserted
- // is a prefix of the current node key
- else if (numberOfMatchingCharacters > 0 && numberOfMatchingCharacters < node.getKey().length()) {
- RadixTreeNode<T> n1 = new RadixTreeNode<T>();
- n1.setKey(node.getKey().substring(numberOfMatchingCharacters, node.getKey().length()));
- n1.setReal(node.isReal());
- n1.setValue(node.getValue());
- n1.setChildern(node.getChildern());
-
- node.setKey(key.substring(0, numberOfMatchingCharacters));
- node.setReal(false);
- node.setChildern(new ArrayList<RadixTreeNode<T>>());
- node.getChildern().add(n1);
-
- if(numberOfMatchingCharacters < key.length()) {
- RadixTreeNode<T> n2 = new RadixTreeNode<T>();
- n2.setKey(key.substring(numberOfMatchingCharacters, key.length()));
- n2.setReal(true);
- n2.setValue(value);
-
- node.getChildern().add(n2);
- } else {
- node.setValue(value);
- node.setReal(true);
- }
- }
- // this key need to be added as the child of the current node
- else {
- RadixTreeNode<T> n = new RadixTreeNode<T>();
- n.setKey(node.getKey().substring(numberOfMatchingCharacters, node.getKey().length()));
- n.setChildern(node.getChildern());
- n.setReal(node.isReal());
- n.setValue(node.getValue());
-
- node.setKey(key);
- node.setReal(true);
- node.setValue(value);
-
- node.getChildern().add(n);
- }
- }
-
- public ArrayList<T> searchPrefix(String key, int recordLimit) {
- ArrayList<T> keys = new ArrayList<T>();
-
- RadixTreeNode<T> node = searchPefix(key, root);
-
- if (node != null) {
- if (node.isReal()) {
- keys.add(node.getValue());
- }
- getNodes(node, keys, recordLimit);
- }
-
- return keys;
- }
-
- private void getNodes(RadixTreeNode<T> parent, ArrayList<T> keys, int limit) {
- Queue<RadixTreeNode<T>> queue = new LinkedList<RadixTreeNode<T>>();
-
- queue.addAll(parent.getChildern());
-
- while (!queue.isEmpty()) {
- RadixTreeNode<T> node = queue.remove();
- if (node.isReal() == true) {
- keys.add(node.getValue());
- }
-
- if (keys.size() == limit) {
- break;
- }
-
- queue.addAll(node.getChildern());
- }
- }
-
- private RadixTreeNode<T> searchPefix(String key, RadixTreeNode<T> node) {
- RadixTreeNode<T> result = null;
-
- int numberOfMatchingCharacters = node.getNumberOfMatchingCharacters(key);
-
- if (numberOfMatchingCharacters == key.length() && numberOfMatchingCharacters <= node.getKey().length()) {
- result = node;
- } else if (node.getKey().equals("") == true
- || (numberOfMatchingCharacters < key.length() && numberOfMatchingCharacters >= node.getKey().length())) {
- String newText = key.substring(numberOfMatchingCharacters, key.length());
- for (RadixTreeNode<T> child : node.getChildern()) {
- if (child.getKey().startsWith(newText.charAt(0) + "")) {
- result = searchPefix(newText, child);
- break;
- }
- }
- }
-
- return result;
- }
-
- public boolean contains(String key) {
- Visitor<T, Boolean> visitor = new VisitorImpl<T,Boolean>(Boolean.FALSE) {
- public void visit(String key, RadixTreeNode<T> parent,
- RadixTreeNode<T> node) {
- result = node.isReal();
- }
- };
-
- visit(key, visitor);
-
- return visitor.getResult().booleanValue();
- }
-
- /**
- * visit the node those key matches the given key
- * @param key The key that need to be visited
- * @param visitor The visitor object
- */
- public <R> void visit(String key, Visitor<T, R> visitor) {
- if (root != null) {
- visit(key, visitor, null, root);
- }
- }
-
- /**
- * recursively visit the tree based on the supplied "key". calls the Visitor
- * for the node those key matches the given prefix
- *
- * @param prefix
- * The key o prefix to search in the tree
- * @param visitor
- * The Visitor that will be called if a node with "key" as its
- * key is found
- * @param node
- * The Node from where onward to search
- */
- private <R> void visit(String prefix, Visitor<T, R> visitor,
- RadixTreeNode<T> parent, RadixTreeNode<T> node) {
-
- int numberOfMatchingCharacters = node.getNumberOfMatchingCharacters(prefix);
-
- // if the node key and prefix match, we found a match!
- if (numberOfMatchingCharacters == prefix.length() && numberOfMatchingCharacters == node.getKey().length()) {
- visitor.visit(prefix, parent, node);
- } else if (node.getKey().equals("") == true // either we are at the
- // root
- || (numberOfMatchingCharacters < prefix.length() && numberOfMatchingCharacters >= node.getKey().length())) { // OR we need to
- // traverse the childern
- String newText = prefix.substring(numberOfMatchingCharacters, prefix.length());
- for (RadixTreeNode<T> child : node.getChildern()) {
- // recursively search the child nodes
- if (child.getKey().startsWith(newText.charAt(0) + "")) {
- visit(newText, visitor, node, child);
- break;
- }
- }
- }
- }
-
- public long getSize() {
- return size;
- }
-
- /**
- * Display the Trie on console.
- *
- * WARNING! Do not use this for a large Trie, it's for testing purpose only.
- * @see formatTo
- */
- @Deprecated
- public void display() {
- formatNodeTo(new Formatter(System.out), 0, root);
- }
-
- @Deprecated
- private void display(int level, RadixTreeNode<T> node) {
- formatNodeTo(new Formatter(System.out), level, node);
- }
-
- /**
- * WARNING! Do not use this for a large Trie, it's for testing purpose only.
- */
- private void formatNodeTo(Formatter f, int level, RadixTreeNode<T> node) {
- for (int i = 0; i < level; i++) {
- f.format(" ");
- }
- f.format("|");
- for (int i = 0; i < level; i++) {
- f.format("-");
- }
-
- if (node.isReal() == true)
- f.format("%s[%s]*%n", node.getKey(), node.getValue());
- else
- f.format("%s%n", node.getKey());
-
- for (RadixTreeNode<T> child : node.getChildern()) {
- formatNodeTo(f, level + 1, child);
- }
- }
-
- /**
- * Writes a textual representation of this tree to the given formatter.
- *
- * Currently, all options are simply ignored.
- *
- * WARNING! Do not use this for a large Trie, it's for testing purpose only.
- */
- public void formatTo(Formatter formatter, int flags, int width, int precision) {
- formatNodeTo(formatter, 0, root);
- }
-
- /**
- * Complete the a prefix to the point where ambiguity starts.
- *
- * Example:
- * If a tree contain "blah1", "blah2"
- * complete("b") -> return "blah"
- *
- * @param prefix The prefix we want to complete
- * @return The unambiguous completion of the string.
- */
- public String complete(String prefix) {
- return complete(prefix, root, "");
- }
-
- private String complete(String key, RadixTreeNode<T> node, String base) {
- int i = 0;
- int keylen = key.length();
- int nodelen = node.getKey().length();
-
- while (i < keylen && i < nodelen) {
- if (key.charAt(i) != node.getKey().charAt(i)) {
- break;
- }
- i++;
- }
-
- if (i == keylen && i <= nodelen) {
- return base + node.getKey();
- }
- else if (nodelen == 0 || (i < keylen && i >= nodelen)) {
- String beginning = key.substring(0, i);
- String ending = key.substring(i, keylen);
- for (RadixTreeNode<T> child : node.getChildern()) {
- if (child.getKey().startsWith(ending.charAt(0) + "")) {
- return complete(ending, child, base + beginning);
- }
- }
- }
-
- return "";
- }
-} \ No newline at end of file
diff --git a/util/src/main/java/ds/tree/RadixTreeNode.java b/util/src/main/java/ds/tree/RadixTreeNode.java
deleted file mode 100644
index fabdd389..00000000
--- a/util/src/main/java/ds/tree/RadixTreeNode.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
-The MIT License
-
-Copyright (c) 2008 Tahseen Ur Rehman
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-package ds.tree;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Represents a node of a Radix tree {@link RadixTreeImpl}
- *
- * @author Tahseen Ur Rehman
- * @email tahseen.ur.rehman {at.spam.me.not} gmail.com
- * @param <T>
- */
-class RadixTreeNode<T> {
- private String key;
-
- private List<RadixTreeNode<T>> childern;
-
- private boolean real;
-
- private T value;
-
- /**
- * intailize the fields with default values to avoid null reference checks
- * all over the places
- */
- public RadixTreeNode() {
- key = "";
- childern = new ArrayList<RadixTreeNode<T>>();
- real = false;
- }
-
- public T getValue() {
- return value;
- }
-
- public void setValue(T data) {
- this.value = data;
- }
-
- public String getKey() {
- return key;
- }
-
- public void setKey(String value) {
- this.key = value;
- }
-
- public boolean isReal() {
- return real;
- }
-
- public void setReal(boolean datanode) {
- this.real = datanode;
- }
-
- public List<RadixTreeNode<T>> getChildern() {
- return childern;
- }
-
- public void setChildern(List<RadixTreeNode<T>> childern) {
- this.childern = childern;
- }
-
- public int getNumberOfMatchingCharacters(String key) {
- int numberOfMatchingCharacters = 0;
- while (numberOfMatchingCharacters < key.length() && numberOfMatchingCharacters < this.getKey().length()) {
- if (key.charAt(numberOfMatchingCharacters) != this.getKey().charAt(numberOfMatchingCharacters)) {
- break;
- }
- numberOfMatchingCharacters++;
- }
- return numberOfMatchingCharacters;
- }
-
- @Override
- public String toString() {
- return key;
- }
-}
diff --git a/util/src/main/java/ds/tree/Visitor.java b/util/src/main/java/ds/tree/Visitor.java
deleted file mode 100644
index 816e08b0..00000000
--- a/util/src/main/java/ds/tree/Visitor.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
-The MIT License
-
-Copyright (c) 2008 Tahseen Ur Rehman, Javid Jamae
-
-http://code.google.com/p/radixtree/
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-package ds.tree;
-
-/**
- * The visitor interface that is used by {@link RadixTreeImpl} for perfroming
- * task on a searched node.
- *
- * @author Tahseen Ur Rehman (tahseen.ur.rehman {at.spam.me.not} gmail.com)
- * @author Javid Jamae
- * @author Dennis Heidsiek
- * @param <T,R>
- */
-public interface Visitor<T, R> {
- /**
- * This method gets called by {@link RadixTreeImpl#visit(String, Visitor) visit}
- * when it finds a node matching the key given to it.
- *
- * @param key The key that matched the node
- * @param parent The parent of the node being visited
- * @param node The node that is being visited
- */
- public void visit(String key, RadixTreeNode<T> parent, RadixTreeNode<T> node);
-
- /**
- * The visitor can store any type of result object, depending on the context of
- * what it is being used for.
- *
- * @return The result captured by the visitor.
- */
- public R getResult();
-}
diff --git a/util/src/main/java/ds/tree/VisitorImpl.java b/util/src/main/java/ds/tree/VisitorImpl.java
deleted file mode 100644
index ff4e8d17..00000000
--- a/util/src/main/java/ds/tree/VisitorImpl.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package ds.tree;
-
-
-/**
- * A simple standard implementation for a {@link visitor}.
- *
- * @author Dennis Heidsiek
- * @param <T,R>
- */
-public abstract class VisitorImpl<T, R> implements Visitor<T, R> {
-
- protected R result;
-
- public VisitorImpl() {
- this.result = null;
- }
-
- public VisitorImpl(R initialValue) {
- this.result = initialValue;
- }
-
- public R getResult() {
- return result;
- }
-
- abstract public void visit(String key, RadixTreeNode<T> parent, RadixTreeNode<T> node);
-} \ No newline at end of file
diff --git a/util/src/main/java/org/jf/util/ClassFileNameHandler.java b/util/src/main/java/org/jf/util/ClassFileNameHandler.java
index aede10e8..67037817 100644
--- a/util/src/main/java/org/jf/util/ClassFileNameHandler.java
+++ b/util/src/main/java/org/jf/util/ClassFileNameHandler.java
@@ -28,33 +28,62 @@
package org.jf.util;
-import ds.tree.RadixTree;
-import ds.tree.RadixTreeImpl;
+import com.google.common.collect.ArrayListMultimap;
+import com.google.common.collect.Multimap;
import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.io.*;
+import java.nio.ByteBuffer;
import java.nio.CharBuffer;
+import java.nio.IntBuffer;
+import java.util.Collection;
import java.util.regex.Pattern;
/**
- * This class checks for case-insensitive file systems, and generates file names based on a given class name, that are
- * guaranteed to be unique. When "colliding" class names are found, it appends a numeric identifier to the end of the
- * class name to distinguish it from another class with a name that differes only by case. i.e. a.smali and a_2.smali
+ * This class handles the complexities of translating a class name into a file name. i.e. dealing with case insensitive
+ * file systems, windows reserved filenames, class names with extremely long package/class elements, etc.
+ *
+ * The types of transformations this class does include:
+ * - append a '#123' style numeric suffix if 2 physical representations collide
+ * - replace some number of characters in the middle with a '#' character name if an individual path element is too long
+ * - append a '#' if an individual path element would otherwise be considered a reserved filename
*/
public class ClassFileNameHandler {
- // we leave an extra 10 characters to allow for a numeric suffix to be added, if it's needed
- private static final int MAX_FILENAME_LENGTH = 245;
-
- private PackageNameEntry top;
+ private static final int MAX_FILENAME_LENGTH = 255;
+ // How many characters to reserve in the physical filename for numeric suffixes
+ // Dex files can currently only have 64k classes, so 5 digits plus 1 for an '#' should
+ // be sufficient to handle the case when every class has a conflicting name
+ private static final int NUMERIC_SUFFIX_RESERVE = 6;
+
+ private final int NO_VALUE = -1;
+ private final int CASE_INSENSITIVE = 0;
+ private final int CASE_SENSITIVE = 1;
+ private int forcedCaseSensitivity = NO_VALUE;
+
+ private DirectoryEntry top;
private String fileExtension;
private boolean modifyWindowsReservedFilenames;
public ClassFileNameHandler(File path, String fileExtension) {
- this.top = new PackageNameEntry(path);
+ this.top = new DirectoryEntry(path);
this.fileExtension = fileExtension;
this.modifyWindowsReservedFilenames = testForWindowsReservedFileNames(path);
}
+ // for testing
+ public ClassFileNameHandler(File path, String fileExtension, boolean caseSensitive,
+ boolean modifyWindowsReservedFilenames) {
+ this.top = new DirectoryEntry(path);
+ this.fileExtension = fileExtension;
+ this.forcedCaseSensitivity = caseSensitive?CASE_SENSITIVE:CASE_INSENSITIVE;
+ this.modifyWindowsReservedFilenames = modifyWindowsReservedFilenames;
+ }
+
+ private int getMaxFilenameLength() {
+ return MAX_FILENAME_LENGTH - NUMERIC_SUFFIX_RESERVE;
+ }
+
public File getUniqueFilenameForClass(String className) {
//class names should be passed in the normal dalvik style, with a leading L, a trailing ;, and using
//'/' as a separator.
@@ -69,7 +98,6 @@ public class ClassFileNameHandler {
}
}
- String packageElement;
String[] packageElements = new String[packageElementCount];
int elementIndex = 0;
int elementStart = 1;
@@ -81,17 +109,7 @@ public class ClassFileNameHandler {
throw new RuntimeException("Not a valid dalvik class name");
}
- packageElement = className.substring(elementStart, i);
-
- if (modifyWindowsReservedFilenames && isReservedFileName(packageElement)) {
- packageElement += "#";
- }
-
- if (packageElement.length() > MAX_FILENAME_LENGTH) {
- packageElement = shortenPathComponent(packageElement, MAX_FILENAME_LENGTH);
- }
-
- packageElements[elementIndex++] = packageElement;
+ packageElements[elementIndex++] = className.substring(elementStart, i);
elementStart = ++i;
}
}
@@ -104,26 +122,111 @@ public class ClassFileNameHandler {
throw new RuntimeException("Not a valid dalvik class name");
}
- packageElement = className.substring(elementStart, className.length()-1);
- if (modifyWindowsReservedFilenames && isReservedFileName(packageElement)) {
- packageElement += "#";
- }
+ packageElements[elementIndex] = className.substring(elementStart, className.length()-1);
+
+ return addUniqueChild(top, packageElements, 0);
+ }
- if ((packageElement.length() + fileExtension.length()) > MAX_FILENAME_LENGTH) {
- packageElement = shortenPathComponent(packageElement, MAX_FILENAME_LENGTH - fileExtension.length());
+ @Nonnull
+ private File addUniqueChild(@Nonnull DirectoryEntry parent, @Nonnull String[] packageElements,
+ int packageElementIndex) {
+ if (packageElementIndex == packageElements.length - 1) {
+ FileEntry fileEntry = new FileEntry(parent, packageElements[packageElementIndex] + fileExtension);
+ parent.addChild(fileEntry);
+
+ String physicalName = fileEntry.getPhysicalName();
+
+ // the physical name should be set when adding it as a child to the parent
+ assert physicalName != null;
+
+ return new File(parent.file, physicalName);
+ } else {
+ DirectoryEntry directoryEntry = new DirectoryEntry(parent, packageElements[packageElementIndex]);
+ directoryEntry = (DirectoryEntry)parent.addChild(directoryEntry);
+ return addUniqueChild(directoryEntry, packageElements, packageElementIndex+1);
}
+ }
- packageElements[elementIndex] = packageElement;
+ private static int utf8Length(String str) {
+ int utf8Length = 0;
+ int i=0;
+ while (i<str.length()) {
+ int c = str.codePointAt(i);
+ utf8Length += utf8Length(c);
+ i += Character.charCount(c);
+ }
+ return utf8Length;
+ }
- return top.addUniqueChild(packageElements, 0);
+ private static int utf8Length(int codePoint) {
+ if (codePoint < 0x80) {
+ return 1;
+ } else if (codePoint < 0x800) {
+ return 2;
+ } else if (codePoint < 0x10000) {
+ return 3;
+ } else {
+ return 4;
+ }
}
+ /**
+ * Shortens an individual file/directory name, removing the necessary number of code points
+ * from the middle of the string such that the utf-8 encoding of the string is at least
+ * bytesToRemove bytes shorter than the original.
+ *
+ * The removed codePoints in the middle of the string will be replaced with a # character.
+ */
@Nonnull
- static String shortenPathComponent(@Nonnull String pathComponent, int maxLength) {
- int toRemove = pathComponent.length() - maxLength + 1;
+ static String shortenPathComponent(@Nonnull String pathComponent, int bytesToRemove) {
+ // We replace the removed part with a #, so we need to remove 1 extra char
+ bytesToRemove++;
+
+ int[] codePoints;
+ try {
+ IntBuffer intBuffer = ByteBuffer.wrap(pathComponent.getBytes("UTF-32BE")).asIntBuffer();
+ codePoints = new int[intBuffer.limit()];
+ intBuffer.get(codePoints);
+ } catch (UnsupportedEncodingException ex) {
+ throw new RuntimeException(ex);
+ }
+
+ int midPoint = codePoints.length/2;
+
+ int firstEnd = midPoint; // exclusive
+ int secondStart = midPoint+1; // inclusive
+ int bytesRemoved = utf8Length(codePoints[midPoint]);
- int firstIndex = (pathComponent.length()/2) - (toRemove/2);
- return pathComponent.substring(0, firstIndex) + "#" + pathComponent.substring(firstIndex+toRemove);
+ // if we have an even number of codepoints, start by removing both middle characters,
+ // unless just removing the first already removes enough bytes
+ if (((codePoints.length % 2) == 0) && bytesRemoved < bytesToRemove) {
+ bytesRemoved += utf8Length(codePoints[secondStart]);
+ secondStart++;
+ }
+
+ while ((bytesRemoved < bytesToRemove) &&
+ (firstEnd > 0 || secondStart < codePoints.length)) {
+ if (firstEnd > 0) {
+ firstEnd--;
+ bytesRemoved += utf8Length(codePoints[firstEnd]);
+ }
+
+ if (bytesRemoved < bytesToRemove && secondStart < codePoints.length) {
+ bytesRemoved += utf8Length(codePoints[secondStart]);
+ secondStart++;
+ }
+ }
+
+ StringBuilder sb = new StringBuilder();
+ for (int i=0; i<firstEnd; i++) {
+ sb.appendCodePoint(codePoints[i]);
+ }
+ sb.append('#');
+ for (int i=secondStart; i<codePoints.length; i++) {
+ sb.appendCodePoint(codePoints[i]);
+ }
+
+ return sb.toString();
}
private static boolean testForWindowsReservedFileNames(File path) {
@@ -149,166 +252,133 @@ public class ClassFileNameHandler {
return false;
}
- private static Pattern reservedFileNameRegex = Pattern.compile("^CON|PRN|AUX|NUL|COM[1-9]|LPT[1-9]$",
+ private static Pattern reservedFileNameRegex = Pattern.compile("^(CON|PRN|AUX|NUL|COM[1-9]|LPT[1-9])(\\..*)?$",
Pattern.CASE_INSENSITIVE);
private static boolean isReservedFileName(String className) {
return reservedFileNameRegex.matcher(className).matches();
}
private abstract class FileSystemEntry {
- public final File file;
+ @Nullable public final DirectoryEntry parent;
+ @Nonnull public final String logicalName;
+ @Nullable protected String physicalName = null;
- public FileSystemEntry(File file) {
- this.file = file;
+ private FileSystemEntry(@Nullable DirectoryEntry parent, @Nonnull String logicalName) {
+ this.parent = parent;
+ this.logicalName = logicalName;
}
- public abstract File addUniqueChild(String[] pathElements, int pathElementsIndex);
-
- public FileSystemEntry makeVirtual(File parent) {
- return new VirtualGroupEntry(this, parent);
- }
- }
+ @Nonnull public String getNormalizedName(boolean preserveCase) {
+ String elementName = logicalName;
+ if (!preserveCase && parent != null && !parent.isCaseSensitive()) {
+ elementName = elementName.toLowerCase();
+ }
- private class PackageNameEntry extends FileSystemEntry {
- //this contains the FileSystemEntries for all of this package's children
- //the associated keys are all lowercase
- private RadixTree<FileSystemEntry> children = new RadixTreeImpl<FileSystemEntry>();
+ if (modifyWindowsReservedFilenames && isReservedFileName(elementName)) {
+ elementName = addSuffixBeforeExtension(elementName, "#");
+ }
- public PackageNameEntry(File parent, String name) {
- super(new File(parent, name));
+ int utf8Length = utf8Length(elementName);
+ if (utf8Length > getMaxFilenameLength()) {
+ elementName = shortenPathComponent(elementName, utf8Length - getMaxFilenameLength());
+ }
+ return elementName;
}
- public PackageNameEntry(File path) {
- super(path);
+ @Nullable
+ public String getPhysicalName() {
+ return physicalName;
}
- @Override
- public synchronized File addUniqueChild(String[] pathElements, int pathElementsIndex) {
- String elementName;
- String elementNameLower;
-
- if (pathElementsIndex == pathElements.length - 1) {
- elementName = pathElements[pathElementsIndex];
- elementName += fileExtension;
- } else {
- elementName = pathElements[pathElementsIndex];
- }
- elementNameLower = elementName.toLowerCase();
-
- FileSystemEntry existingEntry = children.find(elementNameLower);
- if (existingEntry != null) {
- FileSystemEntry virtualEntry = existingEntry;
- //if there is already another entry with the same name but different case, we need to
- //add a virtual group, and then add the existing entry and the new entry to that group
- if (!(existingEntry instanceof VirtualGroupEntry)) {
- if (existingEntry.file.getName().equals(elementName)) {
- if (pathElementsIndex == pathElements.length - 1) {
- return existingEntry.file;
- } else {
- return existingEntry.addUniqueChild(pathElements, pathElementsIndex + 1);
- }
- } else {
- virtualEntry = existingEntry.makeVirtual(file);
- children.replace(elementNameLower, virtualEntry);
- }
- }
-
- return virtualEntry.addUniqueChild(pathElements, pathElementsIndex);
+ public void setSuffix(int suffix) {
+ if (suffix < 0 || suffix > 99999) {
+ throw new IllegalArgumentException("suffix must be in [0, 100000)");
}
- if (pathElementsIndex == pathElements.length - 1) {
- ClassNameEntry classNameEntry = new ClassNameEntry(file, elementName);
- children.insert(elementNameLower, classNameEntry);
- return classNameEntry.file;
- } else {
- PackageNameEntry packageNameEntry = new PackageNameEntry(file, elementName);
- children.insert(elementNameLower, packageNameEntry);
- return packageNameEntry.addUniqueChild(pathElements, pathElementsIndex + 1);
+ if (this.physicalName != null) {
+ throw new IllegalStateException("The suffix can only be set once");
}
+ this.physicalName = makePhysicalName(suffix);
}
+
+ protected abstract String makePhysicalName(int suffix);
}
- /**
- * A virtual group that groups together file system entries with the same name, differing only in case
- */
- private class VirtualGroupEntry extends FileSystemEntry {
- //this contains the FileSystemEntries for all of the files/directories in this group
- //the key is the unmodified name of the entry, before it is modified to be made unique (if needed).
- private RadixTree<FileSystemEntry> groupEntries = new RadixTreeImpl<FileSystemEntry>();
-
- //whether the containing directory is case sensitive or not.
- //-1 = unset
- //0 = false;
- //1 = true;
- private int isCaseSensitive = -1;
-
- public VirtualGroupEntry(FileSystemEntry firstChild, File parent) {
- super(parent);
-
- //use the name of the first child in the group as-is
- groupEntries.insert(firstChild.file.getName(), firstChild);
- }
+ private class DirectoryEntry extends FileSystemEntry {
+ @Nullable private File file = null;
+ private int caseSensitivity = forcedCaseSensitivity;
- @Override
- public File addUniqueChild(String[] pathElements, int pathElementsIndex) {
- String elementName = pathElements[pathElementsIndex];
+ // maps a normalized (but not suffixed) entry name to 1 or more FileSystemEntries.
+ // Each FileSystemEntry asociated with a normalized entry name must have a distinct
+ // physical name
+ private final Multimap<String, FileSystemEntry> children = ArrayListMultimap.create();
- if (pathElementsIndex == pathElements.length - 1) {
- elementName = elementName + fileExtension;
- }
+ public DirectoryEntry(@Nonnull File path) {
+ super(null, path.getName());
+ file = path;
+ physicalName = file.getName();
+ }
- FileSystemEntry existingEntry = groupEntries.find(elementName);
- if (existingEntry != null) {
- if (pathElementsIndex == pathElements.length - 1) {
- return existingEntry.file;
- } else {
- return existingEntry.addUniqueChild(pathElements, pathElementsIndex+1);
- }
- }
+ public DirectoryEntry(@Nullable DirectoryEntry parent, @Nonnull String logicalName) {
+ super(parent, logicalName);
+ }
- if (pathElementsIndex == pathElements.length - 1) {
- String fileName;
- if (!isCaseSensitive()) {
- fileName = pathElements[pathElementsIndex] + "." + (groupEntries.getSize()+1) + fileExtension;
- } else {
- fileName = elementName;
+ public synchronized FileSystemEntry addChild(FileSystemEntry entry) {
+ String normalizedChildName = entry.getNormalizedName(false);
+ Collection<FileSystemEntry> entries = children.get(normalizedChildName);
+ if (entry instanceof DirectoryEntry) {
+ for (FileSystemEntry childEntry: entries) {
+ if (childEntry.logicalName.equals(entry.logicalName)) {
+ return childEntry;
+ }
}
+ }
+ entry.setSuffix(entries.size());
+ entries.add(entry);
+ return entry;
+ }
- ClassNameEntry classNameEntry = new ClassNameEntry(file, fileName);
- groupEntries.insert(elementName, classNameEntry);
- return classNameEntry.file;
- } else {
- String fileName;
- if (!isCaseSensitive()) {
- fileName = pathElements[pathElementsIndex] + "." + (groupEntries.getSize()+1);
- } else {
- fileName = elementName;
- }
+ @Override
+ protected String makePhysicalName(int suffix) {
+ if (suffix > 0) {
+ return getNormalizedName(true) + "." + Integer.toString(suffix);
+ }
+ return getNormalizedName(true);
+ }
- PackageNameEntry packageNameEntry = new PackageNameEntry(file, fileName);
- groupEntries.insert(elementName, packageNameEntry);
- return packageNameEntry.addUniqueChild(pathElements, pathElementsIndex + 1);
+ @Override
+ public void setSuffix(int suffix) {
+ super.setSuffix(suffix);
+ String physicalName = getPhysicalName();
+ if (parent != null && physicalName != null) {
+ file = new File(parent.file, physicalName);
}
}
- private boolean isCaseSensitive() {
- if (isCaseSensitive != -1) {
- return isCaseSensitive == 1;
+ protected boolean isCaseSensitive() {
+ if (getPhysicalName() == null || file == null) {
+ throw new IllegalStateException("Must call setSuffix() first");
}
- File path = file;
+ if (caseSensitivity != NO_VALUE) {
+ return caseSensitivity == CASE_SENSITIVE;
+ }
+ File path = file;
if (path.exists() && path.isFile()) {
- path = path.getParentFile();
+ if (!path.delete()) {
+ throw new ExceptionWithContext("Can't delete %s to make it into a directory",
+ path.getAbsolutePath());
+ }
}
- if ((!file.exists() && !file.mkdirs())) {
- return false;
+ if (!path.exists() && !path.mkdirs()) {
+ throw new ExceptionWithContext("Couldn't create directory %s", path.getAbsolutePath());
}
try {
boolean result = testCaseSensitivity(path);
- isCaseSensitive = result?1:0;
+ caseSensitivity = result?CASE_SENSITIVE:CASE_INSENSITIVE;
return result;
} catch (IOException ex) {
return false;
@@ -368,22 +438,34 @@ public class ClassFileNameHandler {
try { f2.delete(); } catch (Exception ex) {}
}
}
-
- @Override
- public FileSystemEntry makeVirtual(File parent) {
- return this;
- }
}
- private class ClassNameEntry extends FileSystemEntry {
- public ClassNameEntry(File parent, String name) {
- super(new File(parent, name));
+ private class FileEntry extends FileSystemEntry {
+ private FileEntry(@Nullable DirectoryEntry parent, @Nonnull String logicalName) {
+ super(parent, logicalName);
}
@Override
- public File addUniqueChild(String[] pathElements, int pathElementsIndex) {
- assert false;
- return file;
+ protected String makePhysicalName(int suffix) {
+ if (suffix > 0) {
+ return addSuffixBeforeExtension(getNormalizedName(true), '.' + Integer.toString(suffix));
+ }
+ return getNormalizedName(true);
+ }
+ }
+
+ private static String addSuffixBeforeExtension(String pathElement, String suffix) {
+ int extensionStart = pathElement.lastIndexOf('.');
+
+ StringBuilder newName = new StringBuilder(pathElement.length() + suffix.length() + 1);
+ if (extensionStart < 0) {
+ newName.append(pathElement);
+ newName.append(suffix);
+ } else {
+ newName.append(pathElement.subSequence(0, extensionStart));
+ newName.append(suffix);
+ newName.append(pathElement.subSequence(extensionStart, pathElement.length()));
}
+ return newName.toString();
}
}
diff --git a/util/src/main/java/org/jf/util/ConsoleUtil.java b/util/src/main/java/org/jf/util/ConsoleUtil.java
index 4d1e030f..21e5567d 100644
--- a/util/src/main/java/org/jf/util/ConsoleUtil.java
+++ b/util/src/main/java/org/jf/util/ConsoleUtil.java
@@ -35,7 +35,7 @@ import java.util.regex.Pattern;
public class ConsoleUtil {
/**
* Attempt to find the width of the console. If it can't get the width, return a default of 80
- * @return
+ * @return The current console width
*/
public static int getConsoleWidth() {
if (System.getProperty("os.name").toLowerCase().contains("windows")) {
diff --git a/util/src/main/java/org/jf/util/TextUtils.java b/util/src/main/java/org/jf/util/TextUtils.java
new file mode 100644
index 00000000..a01e68e7
--- /dev/null
+++ b/util/src/main/java/org/jf/util/TextUtils.java
@@ -0,0 +1,59 @@
+/*
+ * Copyright 2014, 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 javax.annotation.Nonnull;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+public class TextUtils {
+ private static String newline = System.getProperty("line.separator");
+
+ @Nonnull
+ public static String normalizeNewlines(@Nonnull String source) {
+ return normalizeNewlines(source, newline);
+ }
+
+ @Nonnull
+ public static String normalizeNewlines(@Nonnull String source, String newlineValue) {
+ return source.replace("\r", "").replace("\n", newlineValue);
+ }
+
+ @Nonnull
+ public static String normalizeWhitespace(@Nonnull String source) {
+ source = normalizeNewlines(source, "\n");
+
+ Pattern pattern = Pattern.compile("(\n[ \t]*)+");
+ Matcher matcher = pattern.matcher(source);
+ return matcher.replaceAll("\n");
+ }
+}
diff --git a/util/src/test/java/org/jf/util/ClassFileNameHandlerTest.java b/util/src/test/java/org/jf/util/ClassFileNameHandlerTest.java
index 7aa47adf..125fbd2f 100644
--- a/util/src/test/java/org/jf/util/ClassFileNameHandlerTest.java
+++ b/util/src/test/java/org/jf/util/ClassFileNameHandlerTest.java
@@ -31,19 +31,215 @@
package org.jf.util;
+import com.google.common.base.Strings;
+import com.google.common.io.Files;
import junit.framework.Assert;
import org.junit.Test;
+import java.io.File;
+import java.nio.charset.Charset;
+
public class ClassFileNameHandlerTest {
+ private final Charset UTF8 = Charset.forName("UTF-8");
+
+ @Test
+ public void test1ByteEncodings() {
+ StringBuilder sb = new StringBuilder();
+ for (int i=0; i<100; i++) {
+ sb.append((char)i);
+ }
+
+ String result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 5);
+ Assert.assertEquals(95, result.getBytes(UTF8).length);
+ Assert.assertEquals(95, result.length());
+ }
+
@Test
- public void testShortedPathComponent() {
+ public void test2ByteEncodings() {
StringBuilder sb = new StringBuilder();
- for (int i=0; i<300; i++) {
+ for (int i=0x80; i<0x80+100; i++) {
sb.append((char)i);
}
- String result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 255);
+ // remove a total of 3 2-byte characters, and then add back in the 1-byte '#'
+ String result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 4);
+ Assert.assertEquals(200, sb.toString().getBytes(UTF8).length);
+ Assert.assertEquals(195, result.getBytes(UTF8).length);
+ Assert.assertEquals(98, result.length());
+
+ // remove a total of 3 2-byte characters, and then add back in the 1-byte '#'
+ result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 5);
+ Assert.assertEquals(200, sb.toString().getBytes(UTF8).length);
+ Assert.assertEquals(195, result.getBytes(UTF8).length);
+ Assert.assertEquals(98, result.length());
+ }
+
+ @Test
+ public void test3ByteEncodings() {
+ StringBuilder sb = new StringBuilder();
+ for (int i=0x800; i<0x800+100; i++) {
+ sb.append((char)i);
+ }
+
+ // remove a total of 3 3-byte characters, and then add back in the 1-byte '#'
+ String result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 6);
+ Assert.assertEquals(300, sb.toString().getBytes(UTF8).length);
+ Assert.assertEquals(292, result.getBytes(UTF8).length);
+ Assert.assertEquals(98, result.length());
+
+ // remove a total of 3 3-byte characters, and then add back in the 1-byte '#'
+ result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 7);
+ Assert.assertEquals(300, sb.toString().getBytes(UTF8).length);
+ Assert.assertEquals(292, result.getBytes(UTF8).length);
+ Assert.assertEquals(98, result.length());
+ }
+
+ @Test
+ public void test4ByteEncodings() {
+ StringBuilder sb = new StringBuilder();
+ for (int i=0x10000; i<0x10000+100; i++) {
+ sb.appendCodePoint(i);
+ }
+
+ // we remove 3 codepoints == 6 characters == 12 bytes, and then add back in the 1-byte '#'
+ String result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 8);
+ Assert.assertEquals(400, sb.toString().getBytes(UTF8).length);
+ Assert.assertEquals(389, result.getBytes(UTF8).length);
+ Assert.assertEquals(195, result.length());
+
+ // we remove 2 codepoints == 4 characters == 8 bytes, and then add back in the 1-byte '#'
+ result = ClassFileNameHandler.shortenPathComponent(sb.toString(), 7);
+ Assert.assertEquals(400, sb.toString().getBytes(UTF8).length);
+ Assert.assertEquals(393, result.getBytes(UTF8).length);
+ Assert.assertEquals(197, result.length());
+ }
+
+ @Test
+ public void testMultipleLongNames() {
+ String filenameFragment = Strings.repeat("a", 512);
+
+ File tempDir = Files.createTempDir();
+ ClassFileNameHandler handler = new ClassFileNameHandler(tempDir, ".smali");
+
+ // put the differentiating character in the middle, where it will get stripped out by the filename shortening
+ // logic
+ File file1 = handler.getUniqueFilenameForClass("La/a/" + filenameFragment + "1" + filenameFragment + ";");
+ checkFilename(tempDir, file1, "a", "a", Strings.repeat("a", 124) + "#" + Strings.repeat("a", 118) + ".smali");
+
+ File file2 = handler.getUniqueFilenameForClass("La/a/" + filenameFragment + "2" + filenameFragment + ";");
+ checkFilename(tempDir, file2, "a", "a", Strings.repeat("a", 124) + "#" + Strings.repeat("a", 118) + ".1.smali");
+
+ Assert.assertFalse(file1.getAbsolutePath().equals(file2.getAbsolutePath()));
+ }
+
+ @Test
+ public void testBasicFunctionality() {
+ File tempDir = Files.createTempDir();
+ ClassFileNameHandler handler = new ClassFileNameHandler(tempDir, ".smali");
+
+ File file = handler.getUniqueFilenameForClass("La/b/c/d;");
+ checkFilename(tempDir, file, "a", "b", "c", "d.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/c/e;");
+ checkFilename(tempDir, file, "a", "b", "c", "e.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/d/d;");
+ checkFilename(tempDir, file, "a", "b", "d", "d.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b;");
+ checkFilename(tempDir, file, "a", "b.smali");
+
+ file = handler.getUniqueFilenameForClass("Lb;");
+ checkFilename(tempDir, file, "b.smali");
+ }
+
+ @Test
+ public void testCaseInsensitiveFilesystem() {
+ File tempDir = Files.createTempDir();
+ ClassFileNameHandler handler = new ClassFileNameHandler(tempDir, ".smali", false, false);
+
+ File file = handler.getUniqueFilenameForClass("La/b/c;");
+ checkFilename(tempDir, file, "a", "b", "c.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/C;");
+ checkFilename(tempDir, file, "a", "b", "C.1.smali");
+
+ file = handler.getUniqueFilenameForClass("La/B/c;");
+ checkFilename(tempDir, file, "a", "B.1", "c.smali");
+ }
+
+ @Test
+ public void testCaseSensitiveFilesystem() {
+ File tempDir = Files.createTempDir();
+ ClassFileNameHandler handler = new ClassFileNameHandler(tempDir, ".smali", true, false);
+
+ File file = handler.getUniqueFilenameForClass("La/b/c;");
+ checkFilename(tempDir, file, "a", "b", "c.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/C;");
+ checkFilename(tempDir, file, "a", "b", "C.smali");
+
+ file = handler.getUniqueFilenameForClass("La/B/c;");
+ checkFilename(tempDir, file, "a", "B", "c.smali");
+ }
+
+ @Test
+ public void testWindowsReservedFilenames() {
+ File tempDir = Files.createTempDir();
+ ClassFileNameHandler handler = new ClassFileNameHandler(tempDir, ".smali", false, true);
+
+ File file = handler.getUniqueFilenameForClass("La/con/c;");
+ checkFilename(tempDir, file, "a", "con#", "c.smali");
+
+ file = handler.getUniqueFilenameForClass("La/Con/c;");
+ checkFilename(tempDir, file, "a", "Con#.1", "c.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/PRN;");
+ checkFilename(tempDir, file, "a", "b", "PRN#.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/prN;");
+ checkFilename(tempDir, file, "a", "b", "prN#.1.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/com0;");
+ checkFilename(tempDir, file, "a", "b", "com0.smali");
+
+ for (String reservedName: new String[] {"con", "prn", "aux", "nul", "com1", "com9", "lpt1", "lpt9"}) {
+ file = handler.getUniqueFilenameForClass("L" + reservedName + ";");
+ checkFilename(tempDir, file, reservedName +"#.smali");
+ }
+ }
+
+ @Test
+ public void testIgnoringWindowsReservedFilenames() {
+ File tempDir = Files.createTempDir();
+ ClassFileNameHandler handler = new ClassFileNameHandler(tempDir, ".smali", true, false);
+
+ File file = handler.getUniqueFilenameForClass("La/con/c;");
+ checkFilename(tempDir, file, "a", "con", "c.smali");
+
+ file = handler.getUniqueFilenameForClass("La/Con/c;");
+ checkFilename(tempDir, file, "a", "Con", "c.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/PRN;");
+ checkFilename(tempDir, file, "a", "b", "PRN.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/prN;");
+ checkFilename(tempDir, file, "a", "b", "prN.smali");
+
+ file = handler.getUniqueFilenameForClass("La/b/com0;");
+ checkFilename(tempDir, file, "a", "b", "com0.smali");
- Assert.assertEquals(255, result.length());
+ for (String reservedName: new String[] {"con", "prn", "aux", "nul", "com1", "com9", "lpt1", "lpt9"}) {
+ file = handler.getUniqueFilenameForClass("L" + reservedName + ";");
+ checkFilename(tempDir, file, reservedName +".smali");
+ }
+ }
+
+ private void checkFilename(File base, File file, String... elements) {
+ for (int i=elements.length-1; i>=0; i--) {
+ Assert.assertEquals(elements[i], file.getName());
+ file = file.getParentFile();
+ }
+ Assert.assertEquals(base.getAbsolutePath(), file.getAbsolutePath());
}
}