Merge "dx: Minor code clean-up"
diff --git a/dx/src/com/android/dex/Annotation.java b/dx/src/com/android/dex/Annotation.java
index e5ef978..e9627ac 100644
--- a/dx/src/com/android/dex/Annotation.java
+++ b/dx/src/com/android/dex/Annotation.java
@@ -51,11 +51,13 @@
         encodedAnnotation.writeTo(out);
     }
 
-    @Override public int compareTo(Annotation other) {
+    @Override
+    public int compareTo(Annotation other) {
         return encodedAnnotation.compareTo(other.encodedAnnotation);
     }
 
-    @Override public String toString() {
+    @Override
+    public String toString() {
         return dex == null
                 ? visibility + " " + getTypeIndex()
                 : visibility + " " + dex.typeNames().get(getTypeIndex());
diff --git a/dx/src/com/android/dex/ClassDef.java b/dx/src/com/android/dex/ClassDef.java
index b3225ec..4432e14 100644
--- a/dx/src/com/android/dex/ClassDef.java
+++ b/dx/src/com/android/dex/ClassDef.java
@@ -87,7 +87,8 @@
         return staticValuesOffset;
     }
 
-    @Override public String toString() {
+    @Override
+    public String toString() {
         if (buffer == null) {
             return typeIndex + " " + supertypeIndex;
         }
diff --git a/dx/src/com/android/dex/Dex.java b/dx/src/com/android/dex/Dex.java
index 5d58171..6b1bb5b 100644
--- a/dx/src/com/android/dex/Dex.java
+++ b/dx/src/com/android/dex/Dex.java
@@ -22,7 +22,6 @@
 import com.android.dex.util.ByteInput;
 import com.android.dex.util.ByteOutput;
 import com.android.dex.util.FileUtils;
-
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.FileInputStream;
@@ -712,65 +711,77 @@
     }
 
     private final class StringTable extends AbstractList<String> implements RandomAccess {
-        @Override public String get(int index) {
+        @Override
+        public String get(int index) {
             checkBounds(index, tableOfContents.stringIds.size);
             return open(tableOfContents.stringIds.off + (index * SizeOf.STRING_ID_ITEM))
                     .readString();
         }
-        @Override public int size() {
+        @Override
+        public int size() {
             return tableOfContents.stringIds.size;
         }
     }
 
     private final class TypeIndexToDescriptorIndexTable extends AbstractList<Integer>
             implements RandomAccess {
-        @Override public Integer get(int index) {
+        @Override
+        public Integer get(int index) {
             return descriptorIndexFromTypeIndex(index);
         }
-        @Override public int size() {
+        @Override
+        public int size() {
             return tableOfContents.typeIds.size;
         }
     }
 
     private final class TypeIndexToDescriptorTable extends AbstractList<String>
             implements RandomAccess {
-        @Override public String get(int index) {
+        @Override
+        public String get(int index) {
             return strings.get(descriptorIndexFromTypeIndex(index));
         }
-        @Override public int size() {
+        @Override
+        public int size() {
             return tableOfContents.typeIds.size;
         }
     }
 
     private final class ProtoIdTable extends AbstractList<ProtoId> implements RandomAccess {
-        @Override public ProtoId get(int index) {
+        @Override
+        public ProtoId get(int index) {
             checkBounds(index, tableOfContents.protoIds.size);
             return open(tableOfContents.protoIds.off + (SizeOf.PROTO_ID_ITEM * index))
                     .readProtoId();
         }
-        @Override public int size() {
+        @Override
+        public int size() {
             return tableOfContents.protoIds.size;
         }
     }
 
     private final class FieldIdTable extends AbstractList<FieldId> implements RandomAccess {
-        @Override public FieldId get(int index) {
+        @Override
+        public FieldId get(int index) {
             checkBounds(index, tableOfContents.fieldIds.size);
             return open(tableOfContents.fieldIds.off + (SizeOf.MEMBER_ID_ITEM * index))
                     .readFieldId();
         }
-        @Override public int size() {
+        @Override
+        public int size() {
             return tableOfContents.fieldIds.size;
         }
     }
 
     private final class MethodIdTable extends AbstractList<MethodId> implements RandomAccess {
-        @Override public MethodId get(int index) {
+        @Override
+        public MethodId get(int index) {
             checkBounds(index, tableOfContents.methodIds.size);
             return open(tableOfContents.methodIds.off + (SizeOf.MEMBER_ID_ITEM * index))
                     .readMethodId();
         }
-        @Override public int size() {
+        @Override
+        public int size() {
             return tableOfContents.methodIds.size;
         }
     }
diff --git a/dx/src/com/android/dex/EncodedValue.java b/dx/src/com/android/dex/EncodedValue.java
index 8d0c3ad..d5e75b0 100644
--- a/dx/src/com/android/dex/EncodedValue.java
+++ b/dx/src/com/android/dex/EncodedValue.java
@@ -41,7 +41,8 @@
         out.write(data);
     }
 
-    @Override public int compareTo(EncodedValue other) {
+    @Override
+    public int compareTo(EncodedValue other) {
         int size = Math.min(data.length, other.data.length);
         for (int i = 0; i < size; i++) {
             if (data[i] != other.data[i]) {
@@ -51,7 +52,8 @@
         return data.length - other.data.length;
     }
 
-    @Override public String toString() {
+    @Override
+    public String toString() {
         return Integer.toHexString(data[0] & 0xff) + "...(" + data.length + ")";
     }
 }
diff --git a/dx/src/com/android/dex/FieldId.java b/dx/src/com/android/dex/FieldId.java
index 2f41708..f78df9e 100644
--- a/dx/src/com/android/dex/FieldId.java
+++ b/dx/src/com/android/dex/FieldId.java
@@ -43,6 +43,7 @@
         return nameIndex;
     }
 
+    @Override
     public int compareTo(FieldId other) {
         if (declaringClassIndex != other.declaringClassIndex) {
             return Unsigned.compare(declaringClassIndex, other.declaringClassIndex);
@@ -59,7 +60,8 @@
         out.writeInt(nameIndex);
     }
 
-    @Override public String toString() {
+    @Override
+    public String toString() {
         if (dex == null) {
             return declaringClassIndex + " " + typeIndex + " " + nameIndex;
         }
diff --git a/dx/src/com/android/dex/MethodId.java b/dx/src/com/android/dex/MethodId.java
index e518740..ff3ca3e 100644
--- a/dx/src/com/android/dex/MethodId.java
+++ b/dx/src/com/android/dex/MethodId.java
@@ -43,6 +43,7 @@
         return nameIndex;
     }
 
+    @Override
     public int compareTo(MethodId other) {
         if (declaringClassIndex != other.declaringClassIndex) {
             return Unsigned.compare(declaringClassIndex, other.declaringClassIndex);
@@ -59,7 +60,8 @@
         out.writeInt(nameIndex);
     }
 
-    @Override public String toString() {
+    @Override
+    public String toString() {
         if (dex == null) {
             return declaringClassIndex + " " + protoIndex + " " + nameIndex;
         }
diff --git a/dx/src/com/android/dex/ProtoId.java b/dx/src/com/android/dex/ProtoId.java
index 9d9f484..b603620 100644
--- a/dx/src/com/android/dex/ProtoId.java
+++ b/dx/src/com/android/dex/ProtoId.java
@@ -31,6 +31,7 @@
         this.parametersOffset = parametersOffset;
     }
 
+    @Override
     public int compareTo(ProtoId other) {
         if (returnTypeIndex != other.returnTypeIndex) {
             return Unsigned.compare(returnTypeIndex, other.returnTypeIndex);
@@ -56,7 +57,8 @@
         out.writeInt(parametersOffset);
     }
 
-    @Override public String toString() {
+    @Override
+    public String toString() {
         if (dex == null) {
             return shortyIndex + " " + returnTypeIndex + " " + parametersOffset;
         }
diff --git a/dx/src/com/android/dex/TableOfContents.java b/dx/src/com/android/dex/TableOfContents.java
index b33a749..3483610 100644
--- a/dx/src/com/android/dex/TableOfContents.java
+++ b/dx/src/com/android/dex/TableOfContents.java
@@ -230,6 +230,7 @@
             return size > 0;
         }
 
+        @Override
         public int compareTo(Section section) {
             if (off != section.off) {
                 return off < section.off ? -1 : 1;
@@ -237,7 +238,8 @@
             return 0;
         }
 
-        @Override public String toString() {
+        @Override
+        public String toString() {
             return String.format("Section[type=%#x,off=%#x,size=%#x]", type, off, size);
         }
     }
diff --git a/dx/src/com/android/dex/TypeList.java b/dx/src/com/android/dex/TypeList.java
index 123e82c..b54e184 100644
--- a/dx/src/com/android/dex/TypeList.java
+++ b/dx/src/com/android/dex/TypeList.java
@@ -34,7 +34,8 @@
         return types;
     }
 
-    @Override public int compareTo(TypeList other) {
+    @Override
+    public int compareTo(TypeList other) {
         for (int i = 0; i < types.length && i < other.types.length; i++) {
             if (types[i] != other.types[i]) {
                 return Unsigned.compare(types[i], other.types[i]);
@@ -43,7 +44,8 @@
         return Unsigned.compare(types.length, other.types.length);
     }
 
-    @Override public String toString() {
+    @Override
+    public String toString() {
         StringBuilder result = new StringBuilder();
         result.append("(");
         for (int i = 0, typesLength = types.length; i < typesLength; i++) {
diff --git a/dx/src/com/android/dex/util/ByteArrayByteInput.java b/dx/src/com/android/dex/util/ByteArrayByteInput.java
index 889a936..054c9af 100644
--- a/dx/src/com/android/dex/util/ByteArrayByteInput.java
+++ b/dx/src/com/android/dex/util/ByteArrayByteInput.java
@@ -25,7 +25,8 @@
         this.bytes = bytes;
     }
 
-    @Override public byte readByte() {
+    @Override
+    public byte readByte() {
         return bytes[position++];
     }
 }
diff --git a/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java b/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java
index fe0b3ab..2fff0b8 100644
--- a/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java
+++ b/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java
@@ -51,6 +51,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         // Add six for the standard attribute header.
         return byteLength + 6;
diff --git a/dx/src/com/android/dx/cf/attrib/AttCode.java b/dx/src/com/android/dx/cf/attrib/AttCode.java
index 8d34c69..5cf1a54 100644
--- a/dx/src/com/android/dx/cf/attrib/AttCode.java
+++ b/dx/src/com/android/dx/cf/attrib/AttCode.java
@@ -93,6 +93,7 @@
         this.attributes = attributes;
     }
 
+    @Override
     public int byteLength() {
         return 10 + code.byteLength() + catches.byteLength() +
             attributes.byteLength();
diff --git a/dx/src/com/android/dx/cf/attrib/AttConstantValue.java b/dx/src/com/android/dx/cf/attrib/AttConstantValue.java
index aa6d1b3..6a4a64c 100644
--- a/dx/src/com/android/dx/cf/attrib/AttConstantValue.java
+++ b/dx/src/com/android/dx/cf/attrib/AttConstantValue.java
@@ -59,6 +59,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 8;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttDeprecated.java b/dx/src/com/android/dx/cf/attrib/AttDeprecated.java
index d440aae..ec65d35 100644
--- a/dx/src/com/android/dx/cf/attrib/AttDeprecated.java
+++ b/dx/src/com/android/dx/cf/attrib/AttDeprecated.java
@@ -31,6 +31,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 6;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java b/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java
index 6717e15..a413ca2 100644
--- a/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java
+++ b/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java
@@ -52,6 +52,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 10;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttExceptions.java b/dx/src/com/android/dx/cf/attrib/AttExceptions.java
index a17e009..0a15f09 100644
--- a/dx/src/com/android/dx/cf/attrib/AttExceptions.java
+++ b/dx/src/com/android/dx/cf/attrib/AttExceptions.java
@@ -51,6 +51,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 8 + exceptions.size() * 2;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java b/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java
index 77a4b08..5dc3607 100644
--- a/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java
+++ b/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java
@@ -49,6 +49,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 8 + innerClasses.size() * 8;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java b/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java
index 5eac8cb..1887984 100644
--- a/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java
+++ b/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java
@@ -50,6 +50,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 8 + 4 * lineNumbers.size();
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttSignature.java b/dx/src/com/android/dx/cf/attrib/AttSignature.java
index 52def9c..8709b48 100644
--- a/dx/src/com/android/dx/cf/attrib/AttSignature.java
+++ b/dx/src/com/android/dx/cf/attrib/AttSignature.java
@@ -44,6 +44,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 8;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttSourceFile.java b/dx/src/com/android/dx/cf/attrib/AttSourceFile.java
index cc19d27..20ab70d 100644
--- a/dx/src/com/android/dx/cf/attrib/AttSourceFile.java
+++ b/dx/src/com/android/dx/cf/attrib/AttSourceFile.java
@@ -44,6 +44,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 8;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/AttSynthetic.java b/dx/src/com/android/dx/cf/attrib/AttSynthetic.java
index e3841eb..1b2b405 100644
--- a/dx/src/com/android/dx/cf/attrib/AttSynthetic.java
+++ b/dx/src/com/android/dx/cf/attrib/AttSynthetic.java
@@ -31,6 +31,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return 6;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java b/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java
index bc138af..ce84487 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java
@@ -56,6 +56,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int byteLength() {
         // Add six for the standard attribute header.
         return byteLength + 6;
diff --git a/dx/src/com/android/dx/cf/attrib/BaseAttribute.java b/dx/src/com/android/dx/cf/attrib/BaseAttribute.java
index 9961725..1e5035c 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseAttribute.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseAttribute.java
@@ -40,6 +40,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getName() {
         return name;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java b/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java
index 27cd6fb..f8909db 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java
@@ -50,6 +50,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int byteLength() {
         return 8 + localVariables.size() * 10;
     }
diff --git a/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java b/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java
index 791f8cd..45bc9c0 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java
@@ -57,6 +57,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int byteLength() {
         // Add six for the standard attribute header.
         return byteLength + 6;
diff --git a/dx/src/com/android/dx/cf/attrib/RawAttribute.java b/dx/src/com/android/dx/cf/attrib/RawAttribute.java
index e905dd1..2ac08d4 100644
--- a/dx/src/com/android/dx/cf/attrib/RawAttribute.java
+++ b/dx/src/com/android/dx/cf/attrib/RawAttribute.java
@@ -74,6 +74,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         return data.size() + 6;
     }
diff --git a/dx/src/com/android/dx/cf/code/BaseMachine.java b/dx/src/com/android/dx/cf/code/BaseMachine.java
index 7bff2ff..7f31f64 100644
--- a/dx/src/com/android/dx/cf/code/BaseMachine.java
+++ b/dx/src/com/android/dx/cf/code/BaseMachine.java
@@ -96,11 +96,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Prototype getPrototype() {
         return prototype;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void clearArgs() {
         argCount = 0;
         auxType = null;
@@ -116,6 +118,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void popArgs(Frame frame, int count) {
         ExecutionStack stack = frame.getStack();
 
@@ -134,6 +137,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void popArgs(Frame frame, Prototype prototype) {
         StdTypeList types = prototype.getParameterTypes();
         int size = types.size();
@@ -152,6 +156,7 @@
         }
     }
 
+    @Override
     public final void popArgs(Frame frame, Type type) {
         // Use the above method to do the actual popping...
         popArgs(frame, 1);
@@ -164,6 +169,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void popArgs(Frame frame, Type type1, Type type2) {
         // Use the above method to do the actual popping...
         popArgs(frame, 2);
@@ -182,6 +188,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void popArgs(Frame frame, Type type1, Type type2,
             Type type3) {
         // Use the above method to do the actual popping...
@@ -206,6 +213,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void localArg(Frame frame, int idx) {
         clearArgs();
         args[0] = frame.getLocals().get(idx);
@@ -214,21 +222,25 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void localInfo(boolean local) {
         localInfo = local;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void auxType(Type type) {
         auxType = type;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void auxIntArg(int value) {
         auxInt = value;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void auxCstArg(Constant cst) {
         if (cst == null) {
             throw new NullPointerException("cst == null");
@@ -238,11 +250,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void auxTargetArg(int target) {
         auxTarget = target;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void auxSwitchArg(SwitchList cases) {
         if (cases == null) {
             throw new NullPointerException("cases == null");
@@ -252,11 +266,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void auxInitValues(ArrayList<Constant> initValues) {
         auxInitValues = initValues;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void localTarget(int idx, Type type, LocalItem local) {
         localTarget = RegisterSpec.makeLocalOptional(idx, type, local);
     }
diff --git a/dx/src/com/android/dx/cf/code/BasicBlocker.java b/dx/src/com/android/dx/cf/code/BasicBlocker.java
index 20f2e4b..31f9627 100644
--- a/dx/src/com/android/dx/cf/code/BasicBlocker.java
+++ b/dx/src/com/android/dx/cf/code/BasicBlocker.java
@@ -120,11 +120,13 @@
      */
 
     /** {@inheritDoc} */
+    @Override
     public void visitInvalid(int opcode, int offset, int length) {
         visitCommon(offset, length, true);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitNoArgs(int opcode, int offset, int length, Type type) {
         switch (opcode) {
             case ByteOps.IRETURN:
@@ -185,6 +187,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitLocal(int opcode, int offset, int length,
             int idx, Type type, int value) {
         if (opcode == ByteOps.RET) {
@@ -196,6 +199,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitConstant(int opcode, int offset, int length,
             Constant cst, int value) {
         visitCommon(offset, length, true);
@@ -213,6 +217,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitBranch(int opcode, int offset, int length,
             int target) {
         switch (opcode) {
@@ -244,6 +249,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitSwitch(int opcode, int offset, int length,
             SwitchList cases, int padding) {
         visitCommon(offset, length, false);
@@ -258,6 +264,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitNewarray(int offset, int length, CstType type,
             ArrayList<Constant> intVals) {
         visitCommon(offset, length, true);
@@ -440,6 +447,7 @@
     /**
      * {@inheritDoc}
      */
+    @Override
     public void setPreviousOffset(int offset) {
         previousOffset = offset;
     }
@@ -447,6 +455,7 @@
     /**
      * {@inheritDoc}
      */
+    @Override
     public int getPreviousOffset() {
         return previousOffset;
     }
diff --git a/dx/src/com/android/dx/cf/code/ByteBlock.java b/dx/src/com/android/dx/cf/code/ByteBlock.java
index 73bbbab..2c8e1f5 100644
--- a/dx/src/com/android/dx/cf/code/ByteBlock.java
+++ b/dx/src/com/android/dx/cf/code/ByteBlock.java
@@ -102,6 +102,7 @@
      *
      * @return {@code >= 0;} the label
      */
+    @Override
     public int getLabel() {
         return label;
     }
diff --git a/dx/src/com/android/dx/cf/code/BytecodeArray.java b/dx/src/com/android/dx/cf/code/BytecodeArray.java
index b1ea53e..fee66ec 100644
--- a/dx/src/com/android/dx/cf/code/BytecodeArray.java
+++ b/dx/src/com/android/dx/cf/code/BytecodeArray.java
@@ -18,7 +18,6 @@
 
 import com.android.dx.rop.cst.Constant;
 import com.android.dx.rop.cst.ConstantPool;
-import com.android.dx.rop.cst.CstCallSiteRef;
 import com.android.dx.rop.cst.CstDouble;
 import com.android.dx.rop.cst.CstFloat;
 import com.android.dx.rop.cst.CstInteger;
@@ -1297,52 +1296,61 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitInvalid(int opcode, int offset, int length) {
             // This space intentionally left blank.
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitNoArgs(int opcode, int offset, int length,
                 Type type) {
             // This space intentionally left blank.
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitLocal(int opcode, int offset, int length,
                 int idx, Type type, int value) {
             // This space intentionally left blank.
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitConstant(int opcode, int offset, int length,
                 Constant cst, int value) {
             // This space intentionally left blank.
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitBranch(int opcode, int offset, int length,
                 int target) {
             // This space intentionally left blank.
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitSwitch(int opcode, int offset, int length,
                 SwitchList cases, int padding) {
             // This space intentionally left blank.
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitNewarray(int offset, int length, CstType type,
                 ArrayList<Constant> initValues) {
             // This space intentionally left blank.
         }
 
         /** {@inheritDoc} */
+        @Override
         public void setPreviousOffset(int offset) {
             previousOffset = offset;
         }
 
         /** {@inheritDoc} */
+        @Override
         public int getPreviousOffset() {
             return previousOffset;
         }
diff --git a/dx/src/com/android/dx/cf/code/ConcreteMethod.java b/dx/src/com/android/dx/cf/code/ConcreteMethod.java
index f88d568..cf5422d 100644
--- a/dx/src/com/android/dx/cf/code/ConcreteMethod.java
+++ b/dx/src/com/android/dx/cf/code/ConcreteMethod.java
@@ -23,7 +23,6 @@
 import com.android.dx.cf.iface.AttributeList;
 import com.android.dx.cf.iface.ClassFile;
 import com.android.dx.cf.iface.Method;
-import com.android.dx.rop.code.AccessFlags;
 import com.android.dx.rop.code.SourcePosition;
 import com.android.dx.rop.cst.CstNat;
 import com.android.dx.rop.cst.CstString;
@@ -138,36 +137,43 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public CstNat getNat() {
         return method.getNat();
     }
 
     /** {@inheritDoc} */
+    @Override
     public CstString getName() {
         return method.getName();
     }
 
     /** {@inheritDoc} */
+    @Override
     public CstString getDescriptor() {
         return method.getDescriptor();
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getAccessFlags() {
         return method.getAccessFlags();
     }
 
     /** {@inheritDoc} */
+    @Override
     public AttributeList getAttributes() {
         return method.getAttributes();
     }
 
     /** {@inheritDoc} */
+    @Override
     public CstType getDefiningClass() {
         return method.getDefiningClass();
     }
 
     /** {@inheritDoc} */
+    @Override
     public Prototype getEffectiveDescriptor() {
         return method.getEffectiveDescriptor();
     }
diff --git a/dx/src/com/android/dx/cf/code/LocalsArraySet.java b/dx/src/com/android/dx/cf/code/LocalsArraySet.java
index 2138164..035c370 100644
--- a/dx/src/com/android/dx/cf/code/LocalsArraySet.java
+++ b/dx/src/com/android/dx/cf/code/LocalsArraySet.java
@@ -138,6 +138,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         StringBuilder sb = new StringBuilder();
 
diff --git a/dx/src/com/android/dx/cf/code/OneLocalsArray.java b/dx/src/com/android/dx/cf/code/OneLocalsArray.java
index f22cf58..78657bd 100644
--- a/dx/src/com/android/dx/cf/code/OneLocalsArray.java
+++ b/dx/src/com/android/dx/cf/code/OneLocalsArray.java
@@ -46,6 +46,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public OneLocalsArray copy() {
         OneLocalsArray result = new OneLocalsArray(locals.length);
 
@@ -55,6 +56,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void annotate(ExceptionWithContext ex) {
         for (int i = 0; i < locals.length; i++) {
             TypeBearer type = locals[i];
@@ -64,6 +66,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         StringBuilder sb = new StringBuilder();
 
@@ -77,6 +80,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void makeInitialized(Type type) {
         int len = locals.length;
 
@@ -97,11 +101,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getMaxLocals() {
         return locals.length;
     }
 
     /** {@inheritDoc} */
+    @Override
     public void set(int idx, TypeBearer type) {
         throwIfImmutable();
 
@@ -132,22 +138,26 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void set(RegisterSpec spec) {
         set(spec.getReg(), spec);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void invalidate(int idx) {
         throwIfImmutable();
         locals[idx] = null;
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeBearer getOrNull(int idx) {
         return locals[idx];
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeBearer get(int idx) {
         TypeBearer result = locals[idx];
 
@@ -159,6 +169,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeBearer getCategory1(int idx) {
         TypeBearer result = get(idx);
         Type type = result.getType();
@@ -175,6 +186,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeBearer getCategory2(int idx) {
         TypeBearer result = get(idx);
 
diff --git a/dx/src/com/android/dx/cf/code/ReturnAddress.java b/dx/src/com/android/dx/cf/code/ReturnAddress.java
index ee36450..2fc1173 100644
--- a/dx/src/com/android/dx/cf/code/ReturnAddress.java
+++ b/dx/src/com/android/dx/cf/code/ReturnAddress.java
@@ -52,31 +52,37 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return toString();
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.RETURN_ADDRESS;
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeBearer getFrameType() {
         return this;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getBasicType() {
         return Type.RETURN_ADDRESS.getBasicType();
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getBasicFrameType() {
         return Type.RETURN_ADDRESS.getBasicFrameType();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean isConstant() {
         return false;
     }
diff --git a/dx/src/com/android/dx/cf/code/Ropper.java b/dx/src/com/android/dx/cf/code/Ropper.java
index 12a48f5..e76110f 100644
--- a/dx/src/com/android/dx/cf/code/Ropper.java
+++ b/dx/src/com/android/dx/cf/code/Ropper.java
@@ -43,7 +43,6 @@
 import com.android.dx.util.Bits;
 import com.android.dx.util.Hex;
 import com.android.dx.util.IntList;
-
 import java.util.ArrayList;
 import java.util.BitSet;
 import java.util.Collection;
@@ -1354,6 +1353,7 @@
          * Start at label 0 --  the param assignment block has nothing for us
          */
         forEachNonSubBlockDepthFirst(0, new BasicBlock.Visitor() {
+            @Override
             public void visitBlock(BasicBlock b) {
                 if (isSubroutineCaller(b)) {
                     reachableSubroutineCallerLabels.add(b.getLabel());
@@ -1411,6 +1411,7 @@
         forEachNonSubBlockDepthFirst(getSpecialLabel(PARAM_ASSIGNMENT),
                 new BasicBlock.Visitor() {
 
+            @Override
             public void visitBlock(BasicBlock b) {
                 reachableLabels.add(b.getLabel());
             }
diff --git a/dx/src/com/android/dx/cf/code/Simulator.java b/dx/src/com/android/dx/cf/code/Simulator.java
index bbb4b2d..2fa625c 100644
--- a/dx/src/com/android/dx/cf/code/Simulator.java
+++ b/dx/src/com/android/dx/cf/code/Simulator.java
@@ -20,7 +20,6 @@
 import com.android.dx.dex.DexOptions;
 import com.android.dx.rop.code.LocalItem;
 import com.android.dx.rop.cst.Constant;
-import com.android.dx.rop.cst.CstCallSiteRef;
 import com.android.dx.rop.cst.CstFieldRef;
 import com.android.dx.rop.cst.CstInteger;
 import com.android.dx.rop.cst.CstInterfaceMethodRef;
@@ -238,11 +237,13 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitInvalid(int opcode, int offset, int length) {
             throw new SimException("invalid opcode " + Hex.u1(opcode));
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitNoArgs(int opcode, int offset, int length,
                 Type type) {
             switch (opcode) {
@@ -564,6 +565,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitLocal(int opcode, int offset, int length,
                 int idx, Type type, int value) {
             /*
@@ -634,6 +636,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitConstant(int opcode, int offset, int length,
                 Constant cst, int value) {
             switch (opcode) {
@@ -747,6 +750,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitBranch(int opcode, int offset, int length,
                 int target) {
             switch (opcode) {
@@ -796,6 +800,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitSwitch(int opcode, int offset, int length,
                 SwitchList cases, int padding) {
             machine.popArgs(frame, Type.INT);
@@ -805,6 +810,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitNewarray(int offset, int length, CstType type,
                 ArrayList<Constant> initValues) {
             machine.popArgs(frame, Type.INT);
@@ -814,11 +820,13 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void setPreviousOffset(int offset) {
             previousOffset = offset;
         }
 
         /** {@inheritDoc} */
+        @Override
         public int getPreviousOffset() {
             return previousOffset;
         }
diff --git a/dx/src/com/android/dx/cf/code/ValueAwareMachine.java b/dx/src/com/android/dx/cf/code/ValueAwareMachine.java
index c2c93f7..7a99d7d 100644
--- a/dx/src/com/android/dx/cf/code/ValueAwareMachine.java
+++ b/dx/src/com/android/dx/cf/code/ValueAwareMachine.java
@@ -39,6 +39,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void run(Frame frame, int offset, int opcode) {
         switch (opcode) {
             case ByteOps.NOP:
diff --git a/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java b/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java
index b3c336f..c2dca59 100644
--- a/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java
+++ b/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java
@@ -22,14 +22,14 @@
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_Float;
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_Integer;
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_InterfaceMethodref;
+import static com.android.dx.cf.cst.ConstantTags.CONSTANT_InvokeDynamic;
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_Long;
+import static com.android.dx.cf.cst.ConstantTags.CONSTANT_MethodHandle;
+import static com.android.dx.cf.cst.ConstantTags.CONSTANT_MethodType;
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_Methodref;
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_NameAndType;
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_String;
 import static com.android.dx.cf.cst.ConstantTags.CONSTANT_Utf8;
-import static com.android.dx.cf.cst.ConstantTags.CONSTANT_MethodHandle;
-import static com.android.dx.cf.cst.ConstantTags.CONSTANT_MethodType;
-import static com.android.dx.cf.cst.ConstantTags.CONSTANT_InvokeDynamic;
 import com.android.dx.cf.iface.ParseException;
 import com.android.dx.cf.iface.ParseObserver;
 import com.android.dx.rop.cst.Constant;
diff --git a/dx/src/com/android/dx/cf/direct/ClassPathOpener.java b/dx/src/com/android/dx/cf/direct/ClassPathOpener.java
index 26fbca0..2b0f680 100644
--- a/dx/src/com/android/dx/cf/direct/ClassPathOpener.java
+++ b/dx/src/com/android/dx/cf/direct/ClassPathOpener.java
@@ -17,7 +17,6 @@
 package com.android.dx.cf.direct;
 
 import com.android.dex.util.FileUtils;
-
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
@@ -219,6 +218,7 @@
 
         if (sort) {
             Arrays.sort(files, new Comparator<File>() {
+                @Override
                 public int compare(File a, File b) {
                     return compareClassNames(a.getName(), b.getName());
                 }
@@ -248,6 +248,7 @@
 
         if (sort) {
             Collections.sort(entriesList, new Comparator<ZipEntry>() {
+               @Override
                public int compare (ZipEntry a, ZipEntry b) {
                    return compareClassNames(a.getName(), b.getName());
                }
diff --git a/dx/src/com/android/dx/cf/direct/CodeObserver.java b/dx/src/com/android/dx/cf/direct/CodeObserver.java
index 4262cf8..153255d 100644
--- a/dx/src/com/android/dx/cf/direct/CodeObserver.java
+++ b/dx/src/com/android/dx/cf/direct/CodeObserver.java
@@ -62,16 +62,19 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitInvalid(int opcode, int offset, int length) {
         observer.parsed(bytes, offset, length, header(offset));
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitNoArgs(int opcode, int offset, int length, Type type) {
         observer.parsed(bytes, offset, length, header(offset));
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitLocal(int opcode, int offset, int length,
             int idx, Type type, int value) {
         String idxStr = (length <= 3) ? Hex.u1(idx) : Hex.u2(idx);
@@ -94,6 +97,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitConstant(int opcode, int offset, int length,
             Constant cst, int value) {
         if (cst instanceof CstKnownNull) {
@@ -140,6 +144,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitBranch(int opcode, int offset, int length,
                             int target) {
         String targetStr = (length <= 3) ? Hex.u2(target) : Hex.u4(target);
@@ -148,10 +153,11 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitSwitch(int opcode, int offset, int length,
             SwitchList cases, int padding) {
         int sz = cases.size();
-        StringBuffer sb = new StringBuffer(sz * 20 + 100);
+        StringBuilder sb = new StringBuilder(sz * 20 + 100);
 
         sb.append(header(offset));
         if (padding != 0) {
@@ -174,6 +180,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void visitNewarray(int offset, int length, CstType cst,
             ArrayList<Constant> intVals) {
         String commentOrSpace = (length == 1) ? " // " : " ";
@@ -184,11 +191,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setPreviousOffset(int offset) {
         // Do nothing
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getPreviousOffset() {
         return -1;
     }
diff --git a/dx/src/com/android/dx/cf/direct/DirectClassFile.java b/dx/src/com/android/dx/cf/direct/DirectClassFile.java
index 4aa1224..565cefc 100644
--- a/dx/src/com/android/dx/cf/direct/DirectClassFile.java
+++ b/dx/src/com/android/dx/cf/direct/DirectClassFile.java
@@ -251,66 +251,77 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getMagic() {
         parseToInterfacesIfNecessary();
         return getMagic0();
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getMinorVersion() {
         parseToInterfacesIfNecessary();
         return getMinorVersion0();
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getMajorVersion() {
         parseToInterfacesIfNecessary();
         return getMajorVersion0();
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getAccessFlags() {
         parseToInterfacesIfNecessary();
         return accessFlags;
     }
 
     /** {@inheritDoc} */
+    @Override
     public CstType getThisClass() {
         parseToInterfacesIfNecessary();
         return thisClass;
     }
 
     /** {@inheritDoc} */
+    @Override
     public CstType getSuperclass() {
         parseToInterfacesIfNecessary();
         return superClass;
     }
 
     /** {@inheritDoc} */
+    @Override
     public ConstantPool getConstantPool() {
         parseToInterfacesIfNecessary();
         return pool;
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeList getInterfaces() {
         parseToInterfacesIfNecessary();
         return interfaces;
     }
 
     /** {@inheritDoc} */
+    @Override
     public FieldList getFields() {
         parseToEndIfNecessary();
         return fields;
     }
 
     /** {@inheritDoc} */
+    @Override
     public MethodList getMethods() {
         parseToEndIfNecessary();
         return methods;
     }
 
     /** {@inheritDoc} */
+    @Override
     public AttributeList getAttributes() {
         parseToEndIfNecessary();
         return attributes;
@@ -329,6 +340,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public CstString getSourceFile() {
         AttributeList attribs = getAttributes();
         Attribute attSf = attribs.findFirst(AttSourceFile.ATTRIBUTE_NAME);
@@ -642,28 +654,33 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public boolean isMutable() {
             return false;
         }
 
         /** {@inheritDoc} */
+        @Override
         public int size() {
             return size;
         }
 
         /** {@inheritDoc} */
+        @Override
         public int getWordCount() {
             // It is the same as size because all elements are classes.
             return size;
         }
 
         /** {@inheritDoc} */
+        @Override
         public Type getType(int n) {
             int idx = bytes.getUnsignedShort(n * 2);
             return ((CstType) pool.get(idx)).getClassType();
         }
 
         /** {@inheritDoc} */
+        @Override
         public TypeList withAddedType(Type type) {
             throw new UnsupportedOperationException("unsupported");
         }
diff --git a/dx/src/com/android/dx/cf/iface/ClassFile.java b/dx/src/com/android/dx/cf/iface/ClassFile.java
index f7e5d7e..b2f29ee 100644
--- a/dx/src/com/android/dx/cf/iface/ClassFile.java
+++ b/dx/src/com/android/dx/cf/iface/ClassFile.java
@@ -111,6 +111,7 @@
      *
      * @return {@code non-null;} the list of attributes
      */
+    @Override
     public AttributeList getAttributes();
 
     /**
diff --git a/dx/src/com/android/dx/cf/iface/Member.java b/dx/src/com/android/dx/cf/iface/Member.java
index 1097d19..878bfed 100644
--- a/dx/src/com/android/dx/cf/iface/Member.java
+++ b/dx/src/com/android/dx/cf/iface/Member.java
@@ -70,5 +70,6 @@
      *
      * @return {@code non-null;} the constant pool
      */
+    @Override
     public AttributeList getAttributes();
 }
diff --git a/dx/src/com/android/dx/cf/iface/StdAttributeList.java b/dx/src/com/android/dx/cf/iface/StdAttributeList.java
index 287b8c7..31a9047 100644
--- a/dx/src/com/android/dx/cf/iface/StdAttributeList.java
+++ b/dx/src/com/android/dx/cf/iface/StdAttributeList.java
@@ -34,11 +34,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Attribute get(int n) {
         return (Attribute) get0(n);
     }
 
     /** {@inheritDoc} */
+    @Override
     public int byteLength() {
         int sz = size();
         int result = 2; // u2 attributes_count
@@ -51,6 +53,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Attribute findFirst(String name) {
         int sz = size();
 
@@ -65,6 +68,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Attribute findNext(Attribute attrib) {
         int sz = size();
         int at;
diff --git a/dx/src/com/android/dx/cf/iface/StdField.java b/dx/src/com/android/dx/cf/iface/StdField.java
index ef9873d..022d757 100644
--- a/dx/src/com/android/dx/cf/iface/StdField.java
+++ b/dx/src/com/android/dx/cf/iface/StdField.java
@@ -40,6 +40,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypedConstant getConstantValue() {
         AttributeList attribs = getAttributes();
         AttConstantValue cval = (AttConstantValue)
diff --git a/dx/src/com/android/dx/cf/iface/StdFieldList.java b/dx/src/com/android/dx/cf/iface/StdFieldList.java
index f27bd22..b2fcbcf 100644
--- a/dx/src/com/android/dx/cf/iface/StdFieldList.java
+++ b/dx/src/com/android/dx/cf/iface/StdFieldList.java
@@ -33,6 +33,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Field get(int n) {
         return (Field) get0(n);
     }
diff --git a/dx/src/com/android/dx/cf/iface/StdMember.java b/dx/src/com/android/dx/cf/iface/StdMember.java
index e67b216..30c395e 100644
--- a/dx/src/com/android/dx/cf/iface/StdMember.java
+++ b/dx/src/com/android/dx/cf/iface/StdMember.java
@@ -68,7 +68,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append(getClass().getName());
         sb.append('{');
@@ -79,31 +79,37 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final CstType getDefiningClass() {
         return definingClass;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int getAccessFlags() {
         return accessFlags;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final CstNat getNat() {
         return nat;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final CstString getName() {
         return nat.getName();
     }
 
     /** {@inheritDoc} */
+    @Override
     public final CstString getDescriptor() {
         return nat.getDescriptor();
     }
 
     /** {@inheritDoc} */
+    @Override
     public final AttributeList getAttributes() {
         return attributes;
     }
diff --git a/dx/src/com/android/dx/cf/iface/StdMethod.java b/dx/src/com/android/dx/cf/iface/StdMethod.java
index c511d7d..5ff86ad 100644
--- a/dx/src/com/android/dx/cf/iface/StdMethod.java
+++ b/dx/src/com/android/dx/cf/iface/StdMethod.java
@@ -49,6 +49,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Prototype getEffectiveDescriptor() {
         return effectiveDescriptor;
     }
diff --git a/dx/src/com/android/dx/cf/iface/StdMethodList.java b/dx/src/com/android/dx/cf/iface/StdMethodList.java
index 417cdee..114b682 100644
--- a/dx/src/com/android/dx/cf/iface/StdMethodList.java
+++ b/dx/src/com/android/dx/cf/iface/StdMethodList.java
@@ -33,6 +33,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Method get(int n) {
         return (Method) get0(n);
     }
diff --git a/dx/src/com/android/dx/command/annotool/AnnotationLister.java b/dx/src/com/android/dx/command/annotool/AnnotationLister.java
index 2de899c..02e1c69 100644
--- a/dx/src/com/android/dx/command/annotool/AnnotationLister.java
+++ b/dx/src/com/android/dx/command/annotool/AnnotationLister.java
@@ -62,6 +62,7 @@
 
             opener = new ClassPathOpener(path, true,
                     new ClassPathOpener.Consumer() {
+                @Override
                 public boolean processFileBytes(String name, long lastModified, byte[] bytes) {
                     if (!name.endsWith(".class")) {
                         return true;
@@ -118,10 +119,12 @@
                     return true;
                 }
 
+                @Override
                 public void onException(Exception ex) {
                     throw new RuntimeException(ex);
                 }
 
+                @Override
                 public void onProcessArchiveStart(File file) {
 
                 }
diff --git a/dx/src/com/android/dx/command/dexer/DxContext.java b/dx/src/com/android/dx/command/dexer/DxContext.java
index fe972f9..db106cd 100644
--- a/dx/src/com/android/dx/command/dexer/DxContext.java
+++ b/dx/src/com/android/dx/command/dexer/DxContext.java
@@ -2,7 +2,6 @@
 
 import com.android.dx.dex.cf.CodeStatistics;
 import com.android.dx.dex.cf.OptimizerOptions;
-
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.PrintStream;
diff --git a/dx/src/com/android/dx/command/dexer/Main.java b/dx/src/com/android/dx/command/dexer/Main.java
index 99d2715..f79734f 100644
--- a/dx/src/com/android/dx/command/dexer/Main.java
+++ b/dx/src/com/android/dx/command/dexer/Main.java
@@ -46,7 +46,6 @@
 import com.android.dx.rop.cst.CstType;
 import com.android.dx.rop.type.Prototype;
 import com.android.dx.rop.type.Type;
-
 import java.io.BufferedReader;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -1957,7 +1956,7 @@
     /** Callable helper class to convert dex files in worker threads */
     private class DexWriter implements Callable<byte[]> {
 
-        private DexFile dexFile;
+        private final DexFile dexFile;
 
         private DexWriter(DexFile dexFile) {
             this.dexFile = dexFile;
diff --git a/dx/src/com/android/dx/command/dump/BaseDumper.java b/dx/src/com/android/dx/command/dump/BaseDumper.java
index 7f7d6a7..e1ed000 100644
--- a/dx/src/com/android/dx/command/dump/BaseDumper.java
+++ b/dx/src/com/android/dx/command/dump/BaseDumper.java
@@ -117,6 +117,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void changeIndent(int indentDelta) {
         indent += indentDelta;
 
@@ -127,6 +128,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void parsed(ByteArray bytes, int offset, int len, String human) {
         offset = bytes.underlyingOffset(offset, getBytes());
 
@@ -147,12 +149,14 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void startParsingMember(ByteArray bytes, int offset, String name,
                                    String descriptor) {
         // This space intentionally left blank.
     }
 
     /** {@inheritDoc} */
+    @Override
     public void endParsingMember(ByteArray bytes, int offset, String name,
                                  String descriptor, Member member) {
         // This space intentionally left blank.
diff --git a/dx/src/com/android/dx/command/dump/BlockDumper.java b/dx/src/com/android/dx/command/dump/BlockDumper.java
index 93ba6a3..8dce7fc 100644
--- a/dx/src/com/android/dx/command/dump/BlockDumper.java
+++ b/dx/src/com/android/dx/command/dump/BlockDumper.java
@@ -28,7 +28,6 @@
 import com.android.dx.cf.direct.StdAttributeFactory;
 import com.android.dx.cf.iface.Member;
 import com.android.dx.cf.iface.Method;
-import com.android.dx.dex.DexOptions;
 import com.android.dx.rop.code.AccessFlags;
 import com.android.dx.rop.code.BasicBlock;
 import com.android.dx.rop.code.BasicBlockList;
@@ -50,7 +49,7 @@
 public class BlockDumper
         extends BaseDumper {
     /** whether or not to registerize (make rop blocks) */
-    private boolean rop;
+    private final boolean rop;
 
     /**
      * {@code null-ok;} the class file object being constructed;
@@ -65,7 +64,7 @@
     private boolean first;
 
     /** whether or not to run the ssa optimziations */
-    private boolean optimize;
+    private final boolean optimize;
 
     /**
      * Dumps the given array, interpreting it as a class file and dumping
@@ -287,7 +286,7 @@
         BytecodeArray code = meth.getCode();
         ByteArray bytes = code.getBytes();
         RopMethod rmeth = Ropper.convert(meth, advice, classFile.getMethods(), dexOptions);
-        StringBuffer sb = new StringBuffer(2000);
+        StringBuilder sb = new StringBuilder(2000);
 
         if (optimize) {
             boolean isStatic = AccessFlags.isStatic(meth.getAccessFlags());
diff --git a/dx/src/com/android/dx/command/dump/DotDumper.java b/dx/src/com/android/dx/command/dump/DotDumper.java
index 20d7ee1..1efb0a9 100644
--- a/dx/src/com/android/dx/command/dump/DotDumper.java
+++ b/dx/src/com/android/dx/command/dump/DotDumper.java
@@ -89,20 +89,24 @@
         return args.method == null || args.method.equals(name);
     }
 
+    @Override
     public void changeIndent(int indentDelta) {
         // This space intentionally left blank.
     }
 
+    @Override
     public void parsed(ByteArray bytes, int offset, int len, String human) {
         // This space intentionally left blank.
     }
 
     /** {@inheritDoc} */
+    @Override
     public void startParsingMember(ByteArray bytes, int offset, String name,
                                    String descriptor) {
         // This space intentionally left blank.
     }
 
+    @Override
     public void endParsingMember(ByteArray bytes, int offset, String name,
                                  String descriptor, Member member) {
         if (!(member instanceof Method)) {
diff --git a/dx/src/com/android/dx/command/dump/Main.java b/dx/src/com/android/dx/command/dump/Main.java
index a438f5e..5af6a11 100644
--- a/dx/src/com/android/dx/command/dump/Main.java
+++ b/dx/src/com/android/dx/command/dump/Main.java
@@ -19,7 +19,6 @@
 import com.android.dex.util.FileUtils;
 import com.android.dx.cf.iface.ParseException;
 import com.android.dx.util.HexParser;
-
 import java.io.UnsupportedEncodingException;
 
 /**
@@ -27,7 +26,7 @@
  */
 public class Main {
 
-    private Args parsedArgs = new Args();
+    private final Args parsedArgs = new Args();
 
     /**
      * This class is uninstantiable.
diff --git a/dx/src/com/android/dx/command/dump/SsaDumper.java b/dx/src/com/android/dx/command/dump/SsaDumper.java
index 5c305af..45e69ec 100644
--- a/dx/src/com/android/dx/command/dump/SsaDumper.java
+++ b/dx/src/com/android/dx/command/dump/SsaDumper.java
@@ -113,7 +113,7 @@
                     rmeth, paramWidth, isStatic,true, advice);
         }
 
-        StringBuffer sb = new StringBuffer(2000);
+        StringBuilder sb = new StringBuilder(2000);
 
         sb.append("first ");
         sb.append(Hex.u2(
diff --git a/dx/src/com/android/dx/command/findusages/FindUsages.java b/dx/src/com/android/dx/command/findusages/FindUsages.java
index f84d87d..99f91e9 100644
--- a/dx/src/com/android/dx/command/findusages/FindUsages.java
+++ b/dx/src/com/android/dx/command/findusages/FindUsages.java
@@ -76,6 +76,7 @@
         }
 
         codeReader.setFieldVisitor(new CodeReader.Visitor() {
+            @Override
             public void visit(DecodedInstruction[] all,
                     DecodedInstruction one) {
                 int fieldId = one.getIndex();
@@ -87,6 +88,7 @@
         });
 
         codeReader.setMethodVisitor(new CodeReader.Visitor() {
+            @Override
             public void visit(DecodedInstruction[] all, DecodedInstruction one) {
                 int methodId = one.getIndex();
                 if (methodIds.contains(methodId)) {
diff --git a/dx/src/com/android/dx/command/grep/Grep.java b/dx/src/com/android/dx/command/grep/Grep.java
index 5972fa1..1c03d20 100644
--- a/dx/src/com/android/dx/command/grep/Grep.java
+++ b/dx/src/com/android/dx/command/grep/Grep.java
@@ -46,6 +46,7 @@
         stringIds = getStringIds(dex, pattern);
 
         codeReader.setStringVisitor(new CodeReader.Visitor() {
+            @Override
             public void visit(DecodedInstruction[] all, DecodedInstruction one) {
                 encounterString(one.getIndex());
             }
diff --git a/dx/src/com/android/dx/dex/DexOptions.java b/dx/src/com/android/dx/dex/DexOptions.java
index 2e2755a..34f4b6f 100644
--- a/dx/src/com/android/dx/dex/DexOptions.java
+++ b/dx/src/com/android/dx/dex/DexOptions.java
@@ -17,7 +17,6 @@
 package com.android.dx.dex;
 
 import com.android.dex.DexFormat;
-
 import com.android.dx.dex.code.DalvInsnList;
 
 /**
diff --git a/dx/src/com/android/dx/dex/cf/CfTranslator.java b/dx/src/com/android/dx/dex/cf/CfTranslator.java
index 9a1e13a..0253da7 100644
--- a/dx/src/com/android/dx/dex/cf/CfTranslator.java
+++ b/dx/src/com/android/dx/dex/cf/CfTranslator.java
@@ -426,6 +426,7 @@
 
         DalvCode.AssignIndicesCallback callback =
             new DalvCode.AssignIndicesCallback() {
+                @Override
                 public int getIndex(Constant cst) {
                     // Everything is at index 0!
                     return 0;
diff --git a/dx/src/com/android/dx/dex/code/ArrayData.java b/dx/src/com/android/dx/dex/code/ArrayData.java
index fd28712..a93d2e7 100644
--- a/dx/src/com/android/dx/dex/code/ArrayData.java
+++ b/dx/src/com/android/dx/dex/code/ArrayData.java
@@ -166,7 +166,7 @@
     /** {@inheritDoc} */
     @Override
     protected String argString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         int sz = values.size();
         for (int i = 0; i < sz; i++) {
@@ -183,7 +183,7 @@
     @Override
     protected String listingString0(boolean noteIndices) {
         int baseAddress = user.getAddress();
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
         int sz = values.size();
 
         sb.append("fill-array-data-payload // for fill-array-data @ ");
diff --git a/dx/src/com/android/dx/dex/code/CatchHandlerList.java b/dx/src/com/android/dx/dex/code/CatchHandlerList.java
index 8472584..c7653ef 100644
--- a/dx/src/com/android/dx/dex/code/CatchHandlerList.java
+++ b/dx/src/com/android/dx/dex/code/CatchHandlerList.java
@@ -50,6 +50,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return toHuman("", "");
     }
@@ -133,6 +134,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(CatchHandlerList other) {
         if (this == other) {
             // Easy out.
@@ -207,6 +209,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public int compareTo(Entry other) {
             if (handler < other.handler) {
                 return -1;
diff --git a/dx/src/com/android/dx/dex/code/CatchTable.java b/dx/src/com/android/dx/dex/code/CatchTable.java
index 8470789..08cc90c 100644
--- a/dx/src/com/android/dx/dex/code/CatchTable.java
+++ b/dx/src/com/android/dx/dex/code/CatchTable.java
@@ -60,6 +60,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(CatchTable other) {
         if (this == other) {
             // Easy out.
@@ -145,6 +146,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public int compareTo(Entry other) {
             if (start < other.start) {
                 return -1;
diff --git a/dx/src/com/android/dx/dex/code/DalvInsn.java b/dx/src/com/android/dx/dex/code/DalvInsn.java
index 1bbfea8..94acfab 100644
--- a/dx/src/com/android/dx/dex/code/DalvInsn.java
+++ b/dx/src/com/android/dx/dex/code/DalvInsn.java
@@ -23,7 +23,6 @@
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
 import com.android.dx.util.TwoColumnOutput;
-
 import java.util.BitSet;
 
 /**
@@ -115,7 +114,7 @@
     /** {@inheritDoc} */
     @Override
     public final String toString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append(identifierString());
         sb.append(' ');
diff --git a/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java b/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java
index 060743e..a88a39c 100644
--- a/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java
+++ b/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java
@@ -112,7 +112,7 @@
     protected String listingString0(boolean noteIndices) {
         RegisterSpecList registers = getRegisters();
         int sz = registers.size();
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         for (int i = 0, outAt = 0; i < sz; i++) {
             RegisterSpec src = registers.get(i);
diff --git a/dx/src/com/android/dx/dex/code/InsnFormat.java b/dx/src/com/android/dx/dex/code/InsnFormat.java
index 5be0433..61515bb 100644
--- a/dx/src/com/android/dx/dex/code/InsnFormat.java
+++ b/dx/src/com/android/dx/dex/code/InsnFormat.java
@@ -18,12 +18,10 @@
 
 import com.android.dx.rop.code.RegisterSpec;
 import com.android.dx.rop.code.RegisterSpecList;
-import com.android.dx.rop.cst.Constant;
 import com.android.dx.rop.cst.CstInteger;
 import com.android.dx.rop.cst.CstKnownNull;
 import com.android.dx.rop.cst.CstLiteral64;
 import com.android.dx.rop.cst.CstLiteralBits;
-import com.android.dx.rop.cst.CstString;
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
 import java.util.BitSet;
@@ -180,7 +178,7 @@
      */
     protected static String regListString(RegisterSpecList list) {
         int sz = list.size();
-        StringBuffer sb = new StringBuffer(sz * 5 + 2);
+        StringBuilder sb = new StringBuilder(sz * 5 + 2);
 
         sb.append('{');
 
@@ -246,7 +244,7 @@
      * @return {@code non-null;} the string form
      */
     protected static String literalBitsString(CstLiteralBits value) {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append('#');
 
@@ -271,7 +269,7 @@
      */
     protected static String literalBitsComment(CstLiteralBits value,
             int width) {
-        StringBuffer sb = new StringBuffer(20);
+        StringBuilder sb = new StringBuilder(20);
 
         sb.append("#");
 
diff --git a/dx/src/com/android/dx/dex/code/LocalList.java b/dx/src/com/android/dx/dex/code/LocalList.java
index 31e3fd0..bb10aa8 100644
--- a/dx/src/com/android/dx/dex/code/LocalList.java
+++ b/dx/src/com/android/dx/dex/code/LocalList.java
@@ -163,12 +163,14 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public String toString() {
             return Integer.toHexString(address) + " " + disposition + " " +
                 spec;
         }
 
         /** {@inheritDoc} */
+        @Override
         public boolean equals(Object other) {
             if (!(other instanceof Entry)) {
                 return false;
@@ -185,6 +187,7 @@
          * @param other {@code non-null;} entry to compare to
          * @return {@code -1..1;} standard result of comparison
          */
+        @Override
         public int compareTo(Entry other) {
             if (address < other.address) {
                 return -1;
@@ -467,7 +470,7 @@
         private int[] endIndices;
 
         /** {@code >= 0;} last address seen */
-        private int lastAddress;
+        private final int lastAddress;
 
         /**
          * Constructs an instance.
diff --git a/dx/src/com/android/dx/dex/code/LocalSnapshot.java b/dx/src/com/android/dx/dex/code/LocalSnapshot.java
index 863a0ef..28c08ef 100644
--- a/dx/src/com/android/dx/dex/code/LocalSnapshot.java
+++ b/dx/src/com/android/dx/dex/code/LocalSnapshot.java
@@ -80,7 +80,7 @@
     protected String listingString0(boolean noteIndices) {
         int sz = locals.size();
         int max = locals.getMaxSize();
-        StringBuffer sb = new StringBuffer(100 + sz * 40);
+        StringBuilder sb = new StringBuilder(100 + sz * 40);
 
         sb.append("local-snapshot");
 
diff --git a/dx/src/com/android/dx/dex/code/OutputFinisher.java b/dx/src/com/android/dx/dex/code/OutputFinisher.java
index 06616b1..3b711fb 100644
--- a/dx/src/com/android/dx/dex/code/OutputFinisher.java
+++ b/dx/src/com/android/dx/dex/code/OutputFinisher.java
@@ -16,6 +16,7 @@
 
 package com.android.dx.dex.code;
 
+import com.android.dex.DexException;
 import com.android.dx.dex.DexOptions;
 import com.android.dx.io.Opcodes;
 import com.android.dx.rop.code.LocalItem;
@@ -29,8 +30,6 @@
 import com.android.dx.rop.cst.CstType;
 import com.android.dx.rop.type.Type;
 import com.android.dx.ssa.BasicRegisterMapper;
-
-import com.android.dex.DexException;
 import java.util.ArrayList;
 import java.util.BitSet;
 import java.util.HashSet;
diff --git a/dx/src/com/android/dx/dex/code/RopTranslator.java b/dx/src/com/android/dx/dex/code/RopTranslator.java
index d45e1be..3630740 100644
--- a/dx/src/com/android/dx/dex/code/RopTranslator.java
+++ b/dx/src/com/android/dx/dex/code/RopTranslator.java
@@ -84,7 +84,7 @@
      * true if the parameters to this method happen to be in proper order
      * at the end of the frame (as the optimizer emits them)
      */
-    private boolean paramsAreInOrder;
+    private final boolean paramsAreInOrder;
 
     /**
      * Translates a {@link RopMethod}. This may modify the given
@@ -527,6 +527,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitPlainInsn(PlainInsn insn) {
             Rop rop = insn.getOpcode();
             if (rop.getOpcode() == RegOps.MARK_LOCAL) {
@@ -794,6 +795,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitFillArrayDataInsn(FillArrayDataInsn insn) {
             SourcePosition pos = insn.getPosition();
             Constant cst = insn.getConstant();
@@ -845,7 +847,7 @@
     private class LocalVariableAwareTranslationVisitor
             extends TranslationVisitor {
         /** {@code non-null;} local variable info */
-        private LocalVariableInfo locals;
+        private final LocalVariableInfo locals;
 
         /**
          * Constructs an instance.
diff --git a/dx/src/com/android/dx/dex/code/StdCatchBuilder.java b/dx/src/com/android/dx/dex/code/StdCatchBuilder.java
index afac946..d812849 100644
--- a/dx/src/com/android/dx/dex/code/StdCatchBuilder.java
+++ b/dx/src/com/android/dx/dex/code/StdCatchBuilder.java
@@ -71,11 +71,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public CatchTable build() {
         return build(method, order, addresses);
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean hasAnyCatches() {
         BasicBlockList blocks = method.getBlocks();
         int size = blocks.size();
@@ -92,6 +94,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public HashSet<Type> getCatchTypes() {
         HashSet<Type> result = new HashSet<Type>(20);
         BasicBlockList blocks = method.getBlocks();
diff --git a/dx/src/com/android/dx/dex/code/SwitchData.java b/dx/src/com/android/dx/dex/code/SwitchData.java
index 8fc80b1..fa60684 100644
--- a/dx/src/com/android/dx/dex/code/SwitchData.java
+++ b/dx/src/com/android/dx/dex/code/SwitchData.java
@@ -161,7 +161,7 @@
     /** {@inheritDoc} */
     @Override
     protected String argString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         int sz = targets.length;
         for (int i = 0; i < sz; i++) {
@@ -178,7 +178,7 @@
     @Override
     protected String listingString0(boolean noteIndices) {
         int baseAddress = user.getAddress();
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
         int sz = targets.length;
 
         sb.append(packed ? "packed" : "sparse");
diff --git a/dx/src/com/android/dx/dex/file/AnnotationItem.java b/dx/src/com/android/dx/dex/file/AnnotationItem.java
index 2b634a4..7635e9a 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationItem.java
@@ -23,7 +23,6 @@
 import com.android.dx.rop.cst.CstString;
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.ByteArrayAnnotatedOutput;
-
 import java.util.Arrays;
 import java.util.Comparator;
 
@@ -67,6 +66,7 @@
      */
     private static class TypeIdSorter implements Comparator<AnnotationItem> {
         /** {@inheritDoc} */
+        @Override
         public int compare(AnnotationItem item1, AnnotationItem item2) {
             int index1 = item1.type.getIndex();
             int index2 = item2.type.getIndex();
@@ -142,6 +142,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addContents(DexFile file) {
         type = file.getTypeIds().intern(annotation.getType());
         ValueEncoder.addContents(file, annotation);
diff --git a/dx/src/com/android/dx/dex/file/AnnotationSetItem.java b/dx/src/com/android/dx/dex/file/AnnotationSetItem.java
index 048f40a..4464372 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationSetItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationSetItem.java
@@ -113,6 +113,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addContents(DexFile file) {
         MixedItemSection byteData = file.getByteData();
         int size = items.length;
diff --git a/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java b/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java
index 53072d8..872068f 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java
@@ -54,6 +54,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addContents(DexFile file) {
         MixedItemSection wordData = file.getWordData();
 
diff --git a/dx/src/com/android/dx/dex/file/AnnotationUtils.java b/dx/src/com/android/dx/dex/file/AnnotationUtils.java
index 109583e..ca2f454 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationUtils.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationUtils.java
@@ -16,9 +16,8 @@
 
 package com.android.dx.dex.file;
 
-import static com.android.dx.rop.annotation.AnnotationVisibility.SYSTEM;
-
 import com.android.dx.rop.annotation.Annotation;
+import static com.android.dx.rop.annotation.AnnotationVisibility.SYSTEM;
 import com.android.dx.rop.annotation.NameValuePair;
 import com.android.dx.rop.cst.Constant;
 import com.android.dx.rop.cst.CstAnnotation;
@@ -30,7 +29,6 @@
 import com.android.dx.rop.cst.CstType;
 import com.android.dx.rop.type.Type;
 import com.android.dx.rop.type.TypeList;
-
 import java.util.ArrayList;
 
 /**
diff --git a/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java b/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java
index 21b0bf3..f25f7ba 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java
@@ -22,7 +22,6 @@
 import com.android.dx.rop.cst.CstMethodRef;
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
-
 import java.io.PrintWriter;
 import java.util.ArrayList;
 import java.util.Collections;
@@ -241,6 +240,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addContents(DexFile file) {
         MixedItemSection wordData = file.getWordData();
 
diff --git a/dx/src/com/android/dx/dex/file/ClassDefItem.java b/dx/src/com/android/dx/dex/file/ClassDefItem.java
index 47f9b69..1b79bde 100644
--- a/dx/src/com/android/dx/dex/file/ClassDefItem.java
+++ b/dx/src/com/android/dx/dex/file/ClassDefItem.java
@@ -31,7 +31,6 @@
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
 import com.android.dx.util.Writers;
-
 import java.io.PrintWriter;
 import java.io.Writer;
 import java.util.ArrayList;
diff --git a/dx/src/com/android/dx/dex/file/CodeItem.java b/dx/src/com/android/dx/dex/file/CodeItem.java
index 9e3ae74..500dbff 100644
--- a/dx/src/com/android/dx/dex/file/CodeItem.java
+++ b/dx/src/com/android/dx/dex/file/CodeItem.java
@@ -104,6 +104,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addContents(DexFile file) {
         MixedItemSection byteData = file.getByteData();
         TypeIdsSection typeIds = file.getTypeIds();
@@ -189,6 +190,7 @@
          * constants need to be assigned indices.
          */
         code.assignIndices(new DalvCode.AssignIndicesCallback() {
+                @Override
                 public int getIndex(Constant cst) {
                     IndexedItem item = file.findItemOrNull(cst);
                     if (item == null) {
diff --git a/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java b/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java
index 203b0f8..912f12a 100644
--- a/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java
+++ b/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java
@@ -16,10 +16,10 @@
 
 package com.android.dx.dex.file;
 
+import com.android.dex.Leb128;
 import com.android.dex.util.ByteArrayByteInput;
 import com.android.dex.util.ByteInput;
 import com.android.dex.util.ExceptionWithContext;
-import com.android.dex.Leb128;
 import com.android.dx.dex.code.DalvCode;
 import com.android.dx.dex.code.DalvInsnList;
 import com.android.dx.dex.code.LocalList;
@@ -182,6 +182,7 @@
             this.signatureIndex = signatureIndex;
         }
 
+        @Override
         public String toString() {
             return String.format("[%x %s v%d %04x %04x %04x]",
                     address, isStart ? "start" : "end", reg,
diff --git a/dx/src/com/android/dx/dex/file/DebugInfoEncoder.java b/dx/src/com/android/dx/dex/file/DebugInfoEncoder.java
index 9f57b6b..352c1f4 100644
--- a/dx/src/com/android/dx/dex/file/DebugInfoEncoder.java
+++ b/dx/src/com/android/dx/dex/file/DebugInfoEncoder.java
@@ -501,10 +501,12 @@
 
         // Sort ascending by address.
         Collections.sort (result, new Comparator<PositionList.Entry>() {
+            @Override
             public int compare (PositionList.Entry a, PositionList.Entry b) {
                 return a.getAddress() - b.getAddress();
             }
 
+            @Override
             public boolean equals (Object obj) {
                return obj == this;
             }
@@ -558,10 +560,12 @@
 
         // Sort by ascending register.
         Collections.sort(result, new Comparator<LocalList.Entry>() {
+            @Override
             public int compare(LocalList.Entry a, LocalList.Entry b) {
                 return a.getRegister() - b.getRegister();
             }
 
+            @Override
             public boolean equals(Object obj) {
                return obj == this;
             }
diff --git a/dx/src/com/android/dx/dex/file/DexFile.java b/dx/src/com/android/dx/dex/file/DexFile.java
index 08e5d4b..577e603 100644
--- a/dx/src/com/android/dx/dex/file/DexFile.java
+++ b/dx/src/com/android/dx/dex/file/DexFile.java
@@ -21,7 +21,6 @@
 import com.android.dx.dex.file.MixedItemSection.SortType;
 import com.android.dx.rop.cst.Constant;
 import com.android.dx.rop.cst.CstBaseMethodRef;
-import com.android.dx.rop.cst.CstCallSite;
 import com.android.dx.rop.cst.CstCallSiteRef;
 import com.android.dx.rop.cst.CstEnumRef;
 import com.android.dx.rop.cst.CstFieldRef;
@@ -31,7 +30,6 @@
 import com.android.dx.rop.cst.CstType;
 import com.android.dx.rop.type.Type;
 import com.android.dx.util.ByteArrayAnnotatedOutput;
-
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.Writer;
diff --git a/dx/src/com/android/dx/dex/file/EncodedArrayItem.java b/dx/src/com/android/dx/dex/file/EncodedArrayItem.java
index 12d4b17..886e251 100644
--- a/dx/src/com/android/dx/dex/file/EncodedArrayItem.java
+++ b/dx/src/com/android/dx/dex/file/EncodedArrayItem.java
@@ -83,6 +83,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addContents(DexFile file) {
         ValueEncoder.addContents(file, array);
     }
diff --git a/dx/src/com/android/dx/dex/file/EncodedField.java b/dx/src/com/android/dx/dex/file/EncodedField.java
index 317c979..74ba64a 100644
--- a/dx/src/com/android/dx/dex/file/EncodedField.java
+++ b/dx/src/com/android/dx/dex/file/EncodedField.java
@@ -54,11 +54,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         return field.hashCode();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object other) {
         if (! (other instanceof EncodedField)) {
             return false;
@@ -75,6 +77,7 @@
      * case that two different items with the same method constant
      * ever appear in the same list (or same file, even).</p>
      */
+    @Override
     public int compareTo(EncodedField other) {
         return field.compareTo(other.field);
     }
@@ -82,7 +85,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append(getClass().getName());
         sb.append('{');
@@ -107,6 +110,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return field.toHuman();
     }
diff --git a/dx/src/com/android/dx/dex/file/EncodedMethod.java b/dx/src/com/android/dx/dex/file/EncodedMethod.java
index 0a177e6..f61be0f 100644
--- a/dx/src/com/android/dx/dex/file/EncodedMethod.java
+++ b/dx/src/com/android/dx/dex/file/EncodedMethod.java
@@ -69,6 +69,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object other) {
         if (! (other instanceof EncodedMethod)) {
             return false;
@@ -85,6 +86,7 @@
      * case that two different items with the same method constant
      * ever appear in the same list (or same file, even).</p>
      */
+    @Override
     public int compareTo(EncodedMethod other) {
         return method.compareTo(other.method);
     }
@@ -92,7 +94,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append(getClass().getName());
         sb.append('{');
@@ -124,6 +126,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final String toHuman() {
         return method.toHuman();
     }
diff --git a/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java b/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java
index f363d41..624ee4e 100644
--- a/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java
+++ b/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java
@@ -54,11 +54,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         return field.hashCode();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object other) {
         if (! (other instanceof FieldAnnotationStruct)) {
             return false;
@@ -68,6 +70,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(FieldAnnotationStruct other) {
         return field.compareTo(other.field);
     }
@@ -98,6 +101,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return field.toHuman() + ": " + annotations;
     }
diff --git a/dx/src/com/android/dx/dex/file/FieldIdsSection.java b/dx/src/com/android/dx/dex/file/FieldIdsSection.java
index f422bab..416f938 100644
--- a/dx/src/com/android/dx/dex/file/FieldIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/FieldIdsSection.java
@@ -20,7 +20,6 @@
 import com.android.dx.rop.cst.CstFieldRef;
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
-
 import java.util.Collection;
 import java.util.TreeMap;
 
diff --git a/dx/src/com/android/dx/dex/file/ItemType.java b/dx/src/com/android/dx/dex/file/ItemType.java
index 31f8d03..2288df8 100644
--- a/dx/src/com/android/dx/dex/file/ItemType.java
+++ b/dx/src/com/android/dx/dex/file/ItemType.java
@@ -93,6 +93,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return humanName;
     }
diff --git a/dx/src/com/android/dx/dex/file/MapItem.java b/dx/src/com/android/dx/dex/file/MapItem.java
index f68cd94..0d4901b 100644
--- a/dx/src/com/android/dx/dex/file/MapItem.java
+++ b/dx/src/com/android/dx/dex/file/MapItem.java
@@ -180,7 +180,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append(getClass().getName());
         sb.append('{');
diff --git a/dx/src/com/android/dx/dex/file/MemberIdsSection.java b/dx/src/com/android/dx/dex/file/MemberIdsSection.java
index 9fdada5..6be27de 100644
--- a/dx/src/com/android/dx/dex/file/MemberIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/MemberIdsSection.java
@@ -18,7 +18,6 @@
 
 import com.android.dex.DexFormat;
 import com.android.dex.DexIndexOverflowException;
-
 import java.util.Formatter;
 import java.util.Map;
 import java.util.TreeMap;
diff --git a/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java b/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java
index 38f7ce4..0636a2c 100644
--- a/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java
+++ b/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java
@@ -54,11 +54,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         return method.hashCode();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object other) {
         if (! (other instanceof MethodAnnotationStruct)) {
             return false;
@@ -68,6 +70,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(MethodAnnotationStruct other) {
         return method.compareTo(other.method);
     }
@@ -98,6 +101,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return method.toHuman() + ": " + annotations;
     }
diff --git a/dx/src/com/android/dx/dex/file/MethodIdsSection.java b/dx/src/com/android/dx/dex/file/MethodIdsSection.java
index 254d7fe..9652871 100644
--- a/dx/src/com/android/dx/dex/file/MethodIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/MethodIdsSection.java
@@ -20,7 +20,6 @@
 import com.android.dx.rop.cst.CstBaseMethodRef;
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
-
 import java.util.Collection;
 import java.util.TreeMap;
 
diff --git a/dx/src/com/android/dx/dex/file/MixedItemSection.java b/dx/src/com/android/dx/dex/file/MixedItemSection.java
index 9053043..6c6e672 100644
--- a/dx/src/com/android/dx/dex/file/MixedItemSection.java
+++ b/dx/src/com/android/dx/dex/file/MixedItemSection.java
@@ -52,6 +52,7 @@
     /** {@code non-null;} sorter which sorts instances by type */
     private static final Comparator<OffsettedItem> TYPE_SORTER =
         new Comparator<OffsettedItem>() {
+        @Override
         public int compare(OffsettedItem item1, OffsettedItem item2) {
             ItemType type1 = item1.itemType();
             ItemType type2 = item2.itemType();
diff --git a/dx/src/com/android/dx/dex/file/OffsettedItem.java b/dx/src/com/android/dx/dex/file/OffsettedItem.java
index 02787f9..e947ed0 100644
--- a/dx/src/com/android/dx/dex/file/OffsettedItem.java
+++ b/dx/src/com/android/dx/dex/file/OffsettedItem.java
@@ -111,6 +111,7 @@
      * classes don't match then the objects are not equal), with
      * {@link #compareTo0} deciding same-class comparisons.
      */
+    @Override
     public final int compareTo(OffsettedItem other) {
         if (this == other) {
             return 0;
diff --git a/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java b/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java
index 0fe92ab..73b63ff 100644
--- a/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java
+++ b/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java
@@ -22,7 +22,6 @@
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
 import com.android.dx.util.ToHuman;
-
 import java.util.ArrayList;
 
 /**
@@ -79,11 +78,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         return method.hashCode();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object other) {
         if (! (other instanceof ParameterAnnotationStruct)) {
             return false;
@@ -93,6 +94,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(ParameterAnnotationStruct other) {
         return method.compareTo(other.method);
     }
@@ -123,6 +125,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         StringBuilder sb = new StringBuilder();
 
diff --git a/dx/src/com/android/dx/dex/file/StringIdItem.java b/dx/src/com/android/dx/dex/file/StringIdItem.java
index b3e7d02..e4fb559 100644
--- a/dx/src/com/android/dx/dex/file/StringIdItem.java
+++ b/dx/src/com/android/dx/dex/file/StringIdItem.java
@@ -64,6 +64,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(Object other) {
         StringIdItem otherString = (StringIdItem) other;
         return value.compareTo(otherString.value);
diff --git a/dx/src/com/android/dx/dex/file/TypeIdsSection.java b/dx/src/com/android/dx/dex/file/TypeIdsSection.java
index 2245c1a..e8a093a 100644
--- a/dx/src/com/android/dx/dex/file/TypeIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/TypeIdsSection.java
@@ -23,7 +23,6 @@
 import com.android.dx.rop.type.Type;
 import com.android.dx.util.AnnotatedOutput;
 import com.android.dx.util.Hex;
-
 import java.util.Collection;
 import java.util.TreeMap;
 
diff --git a/dx/src/com/android/dx/dex/file/TypeListItem.java b/dx/src/com/android/dx/dex/file/TypeListItem.java
index 1f9b6a8..8a7a6e4 100644
--- a/dx/src/com/android/dx/dex/file/TypeListItem.java
+++ b/dx/src/com/android/dx/dex/file/TypeListItem.java
@@ -62,6 +62,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addContents(DexFile file) {
         TypeIdsSection typeIds = file.getTypeIds();
         int sz = list.size();
diff --git a/dx/src/com/android/dx/dex/file/UniformListItem.java b/dx/src/com/android/dx/dex/file/UniformListItem.java
index 0196ca1..a69a527 100644
--- a/dx/src/com/android/dx/dex/file/UniformListItem.java
+++ b/dx/src/com/android/dx/dex/file/UniformListItem.java
@@ -106,7 +106,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append(getClass().getName());
         sb.append(items);
@@ -125,7 +125,7 @@
     /** {@inheritDoc} */
     @Override
     public final String toHuman() {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
         boolean first = true;
 
         sb.append("{");
diff --git a/dx/src/com/android/dx/dex/file/ValueEncoder.java b/dx/src/com/android/dx/dex/file/ValueEncoder.java
index c6634ff..72f4cc3 100644
--- a/dx/src/com/android/dx/dex/file/ValueEncoder.java
+++ b/dx/src/com/android/dx/dex/file/ValueEncoder.java
@@ -24,7 +24,6 @@
 import com.android.dx.rop.cst.CstArray;
 import com.android.dx.rop.cst.CstBoolean;
 import com.android.dx.rop.cst.CstByte;
-import com.android.dx.rop.cst.CstCallSite;
 import com.android.dx.rop.cst.CstChar;
 import com.android.dx.rop.cst.CstDouble;
 import com.android.dx.rop.cst.CstEnumRef;
diff --git a/dx/src/com/android/dx/io/instructions/BaseCodeCursor.java b/dx/src/com/android/dx/io/instructions/BaseCodeCursor.java
index a5eec53..10f13a4 100644
--- a/dx/src/com/android/dx/io/instructions/BaseCodeCursor.java
+++ b/dx/src/com/android/dx/io/instructions/BaseCodeCursor.java
@@ -35,17 +35,20 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int cursor() {
         return cursor;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int baseAddressForCursor() {
         int mapped = baseAddressMap.get(cursor);
         return (mapped >= 0) ? mapped : cursor;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final void setBaseAddress(int targetAddress, int baseAddress) {
         baseAddressMap.put(targetAddress, baseAddress);
     }
diff --git a/dx/src/com/android/dx/io/instructions/FillArrayDataPayloadDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/FillArrayDataPayloadDecodedInstruction.java
index 6c4234e..f6cf860 100644
--- a/dx/src/com/android/dx/io/instructions/FillArrayDataPayloadDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/FillArrayDataPayloadDecodedInstruction.java
@@ -77,6 +77,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 0;
     }
@@ -94,6 +95,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         throw new UnsupportedOperationException("no index in instruction");
     }
diff --git a/dx/src/com/android/dx/io/instructions/FiveRegisterDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/FiveRegisterDecodedInstruction.java
index f36951c..2578416 100644
--- a/dx/src/com/android/dx/io/instructions/FiveRegisterDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/FiveRegisterDecodedInstruction.java
@@ -53,36 +53,43 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 5;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getA() {
         return a;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getB() {
         return b;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getC() {
         return c;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getD() {
         return d;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getE() {
         return e;
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         return new FiveRegisterDecodedInstruction(
                 getFormat(), getOpcode(), newIndex, getIndexType(),
diff --git a/dx/src/com/android/dx/io/instructions/FourRegisterDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/FourRegisterDecodedInstruction.java
index 234e370..6b39e50 100644
--- a/dx/src/com/android/dx/io/instructions/FourRegisterDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/FourRegisterDecodedInstruction.java
@@ -49,31 +49,37 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 4;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getA() {
         return a;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getB() {
         return b;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getC() {
         return c;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getD() {
         return d;
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         return new FourRegisterDecodedInstruction(
                 getFormat(), getOpcode(), newIndex, getIndexType(),
diff --git a/dx/src/com/android/dx/io/instructions/InstructionCodec.java b/dx/src/com/android/dx/io/instructions/InstructionCodec.java
index a8fbf39..4ce966a 100644
--- a/dx/src/com/android/dx/io/instructions/InstructionCodec.java
+++ b/dx/src/com/android/dx/io/instructions/InstructionCodec.java
@@ -22,10 +22,7 @@
 import com.android.dx.io.Opcodes;
 import com.android.dx.util.Hex;
 import java.io.EOFException;
-import java.util.ArrayDeque;
-import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.Deque;
 
 /**
  * Representation of an instruction format, which knows how to decode into
@@ -33,20 +30,23 @@
  */
 public enum InstructionCodec {
     FORMAT_00X() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             return new ZeroRegisterDecodedInstruction(
                     this, opcodeUnit, 0, null,
                     0, 0L);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(insn.getOpcodeUnit());
         }
     },
 
     FORMAT_10X() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int literal = byte1(opcodeUnit); // should be zero
@@ -55,13 +55,15 @@
                     0, literal);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(insn.getOpcodeUnit());
         }
     },
 
     FORMAT_12X() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = nibble2(opcodeUnit);
@@ -72,7 +74,8 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcodeUnit(),
                              makeByte(insn.getA(), insn.getB())));
@@ -80,7 +83,8 @@
     },
 
     FORMAT_11N() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = nibble2(opcodeUnit);
@@ -91,7 +95,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcodeUnit(),
                              makeByte(insn.getA(), insn.getLiteralNibble())));
@@ -99,7 +104,8 @@
     },
 
     FORMAT_11X() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -109,13 +115,15 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(codeUnit(insn.getOpcode(), insn.getA()));
         }
     },
 
     FORMAT_10T() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.cursor() - 1;
             int opcode = byte0(opcodeUnit);
@@ -125,14 +133,16 @@
                     baseAddress + target, 0L);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             int relativeTarget = insn.getTargetByte(out.cursor());
             out.write(codeUnit(insn.getOpcode(), relativeTarget));
         }
     },
 
     FORMAT_20T() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.cursor() - 1;
             int opcode = byte0(opcodeUnit);
@@ -143,14 +153,16 @@
                     baseAddress + target, literal);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             short relativeTarget = insn.getTargetUnit(out.cursor());
             out.write(insn.getOpcodeUnit(), relativeTarget);
         }
     },
 
     FORMAT_20BC() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             // Note: We use the literal field to hold the decoded AA value.
             int opcode = byte0(opcodeUnit);
@@ -161,7 +173,8 @@
                     0, literal);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(), insn.getLiteralByte()),
                     insn.getIndexUnit());
@@ -169,7 +182,8 @@
     },
 
     FORMAT_22X() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -180,7 +194,8 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
                     insn.getBUnit());
@@ -188,7 +203,8 @@
     },
 
     FORMAT_21T() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.cursor() - 1;
             int opcode = byte0(opcodeUnit);
@@ -200,14 +216,16 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             short relativeTarget = insn.getTargetUnit(out.cursor());
             out.write(codeUnit(insn.getOpcode(), insn.getA()), relativeTarget);
         }
     },
 
     FORMAT_21S() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -218,7 +236,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
                     insn.getLiteralUnit());
@@ -226,7 +245,8 @@
     },
 
     FORMAT_21H() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -245,7 +265,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             // See above.
             int opcode = insn.getOpcode();
             int shift = (opcode == Opcodes.CONST_HIGH16) ? 16 : 48;
@@ -256,7 +277,8 @@
     },
 
     FORMAT_21C() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -268,7 +290,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
                     insn.getIndexUnit());
@@ -276,7 +299,8 @@
     },
 
     FORMAT_23X() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -289,7 +313,8 @@
                     a, b, c);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
                     codeUnit(insn.getB(), insn.getC()));
@@ -297,7 +322,8 @@
     },
 
     FORMAT_22B() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -310,7 +336,8 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
                     codeUnit(insn.getB(),
@@ -319,7 +346,8 @@
     },
 
     FORMAT_22T() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.cursor() - 1;
             int opcode = byte0(opcodeUnit);
@@ -332,7 +360,8 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             short relativeTarget = insn.getTargetUnit(out.cursor());
             out.write(
                     codeUnit(insn.getOpcode(),
@@ -342,7 +371,8 @@
     },
 
     FORMAT_22S() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = nibble2(opcodeUnit);
@@ -354,7 +384,8 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(),
                              makeByte(insn.getA(), insn.getB())),
@@ -363,7 +394,8 @@
     },
 
     FORMAT_22C() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = nibble2(opcodeUnit);
@@ -376,7 +408,8 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(),
                              makeByte(insn.getA(), insn.getB())),
@@ -385,7 +418,8 @@
     },
 
     FORMAT_22CS() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = nibble2(opcodeUnit);
@@ -397,7 +431,8 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(),
                              makeByte(insn.getA(), insn.getB())),
@@ -406,7 +441,8 @@
     },
 
     FORMAT_30T() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.cursor() - 1;
             int opcode = byte0(opcodeUnit);
@@ -417,7 +453,8 @@
                     baseAddress + target, literal);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             int relativeTarget = insn.getTarget(out.cursor());
             out.write(insn.getOpcodeUnit(),
                     unit0(relativeTarget), unit1(relativeTarget));
@@ -425,7 +462,8 @@
     },
 
     FORMAT_32X() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int literal = byte1(opcodeUnit); // should be zero
@@ -437,13 +475,15 @@
                     a, b);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(insn.getOpcodeUnit(), insn.getAUnit(), insn.getBUnit());
         }
     },
 
     FORMAT_31I() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -454,7 +494,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             int literal = insn.getLiteralInt();
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
@@ -464,7 +505,8 @@
     },
 
     FORMAT_31T() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.cursor() - 1;
             int opcode = byte0(opcodeUnit);
@@ -490,7 +532,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             int relativeTarget = insn.getTarget(out.cursor());
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
@@ -499,7 +542,8 @@
     },
 
     FORMAT_31C() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -511,7 +555,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             int index = insn.getIndex();
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
@@ -521,73 +566,86 @@
     },
 
     FORMAT_35C() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             return decodeRegisterList(this, opcodeUnit, in);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             encodeRegisterList(insn, out);
         }
     },
 
     FORMAT_35MS() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             return decodeRegisterList(this, opcodeUnit, in);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             encodeRegisterList(insn, out);
         }
     },
 
     FORMAT_35MI() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             return decodeRegisterList(this, opcodeUnit, in);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             encodeRegisterList(insn, out);
         }
     },
 
     FORMAT_3RC() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             return decodeRegisterRange(this, opcodeUnit, in);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             encodeRegisterRange(insn, out);
         }
     },
 
     FORMAT_3RMS() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             return decodeRegisterRange(this, opcodeUnit, in);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             encodeRegisterRange(insn, out);
         }
     },
 
     FORMAT_3RMI() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             return decodeRegisterRange(this, opcodeUnit, in);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             encodeRegisterRange(insn, out);
         }
     },
 
     FORMAT_51L() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             int a = byte1(opcodeUnit);
@@ -598,7 +656,8 @@
                     a);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             long literal = insn.getLiteral();
             out.write(
                     codeUnit(insn.getOpcode(), insn.getA()),
@@ -610,7 +669,8 @@
     },
 
     FORMAT_45CC() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             if (opcode != Opcodes.INVOKE_POLYMORPHIC) {
@@ -639,7 +699,8 @@
                     this, opcode, methodIndex, indexType, protoIndex, registers);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             InvokePolymorphicDecodedInstruction polyInsn =
                     (InvokePolymorphicDecodedInstruction) insn;
             out.write(codeUnit(polyInsn.getOpcode(),
@@ -652,7 +713,8 @@
     },
 
     FORMAT_4RCC() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int opcode = byte0(opcodeUnit);
             if (opcode != Opcodes.INVOKE_POLYMORPHIC_RANGE) {
@@ -670,7 +732,8 @@
 
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             out.write(
                     codeUnit(insn.getOpcode(), insn.getRegisterCount()),
                     insn.getIndexUnit(),
@@ -681,7 +744,8 @@
     },
 
     FORMAT_PACKED_SWITCH_PAYLOAD() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.baseAddressForCursor() - 1; // already read opcode
             int size = in.read();
@@ -696,7 +760,8 @@
                     this, opcodeUnit, firstKey, targets);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             PackedSwitchPayloadDecodedInstruction payload =
                 (PackedSwitchPayloadDecodedInstruction) insn;
             int[] targets = payload.getTargets();
@@ -713,7 +778,8 @@
     },
 
     FORMAT_SPARSE_SWITCH_PAYLOAD() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int baseAddress = in.baseAddressForCursor() - 1; // already read opcode
             int size = in.read();
@@ -732,7 +798,8 @@
                     this, opcodeUnit, keys, targets);
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             SparseSwitchPayloadDecodedInstruction payload =
                 (SparseSwitchPayloadDecodedInstruction) insn;
             int[] keys = payload.getKeys();
@@ -753,7 +820,8 @@
     },
 
     FORMAT_FILL_ARRAY_DATA_PAYLOAD() {
-        @Override public DecodedInstruction decode(int opcodeUnit,
+        @Override
+        public DecodedInstruction decode(int opcodeUnit,
                 CodeInput in) throws EOFException {
             int elementWidth = in.read();
             int size = in.readInt();
@@ -803,7 +871,8 @@
                     + Hex.u2(elementWidth));
         }
 
-        @Override public void encode(DecodedInstruction insn, CodeOutput out) {
+        @Override
+        public void encode(DecodedInstruction insn, CodeOutput out) {
             FillArrayDataPayloadDecodedInstruction payload =
                 (FillArrayDataPayloadDecodedInstruction) insn;
             short elementWidth = payload.getElementWidthUnit();
diff --git a/dx/src/com/android/dx/io/instructions/InvokePolymorphicDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/InvokePolymorphicDecodedInstruction.java
index 72cd32f..4797dcc 100644
--- a/dx/src/com/android/dx/io/instructions/InvokePolymorphicDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/InvokePolymorphicDecodedInstruction.java
@@ -57,14 +57,17 @@
                 getFormat(), getOpcode(), newIndex, getIndexType(), newProtoIndex, registers);
     }
 
+    @Override
     public int getC() {
         return registers.length > 0 ? registers[0] : 0;
     }
 
+    @Override
     public int getD() {
         return registers.length > 1 ? registers[1] : 0;
     }
 
+    @Override
     public int getE() {
         return registers.length > 2 ? registers[2] : 0;
     }
diff --git a/dx/src/com/android/dx/io/instructions/OneRegisterDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/OneRegisterDecodedInstruction.java
index 642ce40..b88aa18 100644
--- a/dx/src/com/android/dx/io/instructions/OneRegisterDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/OneRegisterDecodedInstruction.java
@@ -37,16 +37,19 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 1;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getA() {
         return a;
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         return new OneRegisterDecodedInstruction(
                 getFormat(), getOpcode(), newIndex, getIndexType(),
diff --git a/dx/src/com/android/dx/io/instructions/PackedSwitchPayloadDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/PackedSwitchPayloadDecodedInstruction.java
index 1e277e7..9750798 100644
--- a/dx/src/com/android/dx/io/instructions/PackedSwitchPayloadDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/PackedSwitchPayloadDecodedInstruction.java
@@ -43,6 +43,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 0;
     }
@@ -56,6 +57,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         throw new UnsupportedOperationException("no index in instruction");
     }
diff --git a/dx/src/com/android/dx/io/instructions/RegisterRangeDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/RegisterRangeDecodedInstruction.java
index 9878477..c7b15e2 100644
--- a/dx/src/com/android/dx/io/instructions/RegisterRangeDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/RegisterRangeDecodedInstruction.java
@@ -42,16 +42,19 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return registerCount;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getA() {
         return a;
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         return new RegisterRangeDecodedInstruction(
                 getFormat(), getOpcode(), newIndex, getIndexType(),
diff --git a/dx/src/com/android/dx/io/instructions/ShortArrayCodeInput.java b/dx/src/com/android/dx/io/instructions/ShortArrayCodeInput.java
index 59cbc07..f93d770 100644
--- a/dx/src/com/android/dx/io/instructions/ShortArrayCodeInput.java
+++ b/dx/src/com/android/dx/io/instructions/ShortArrayCodeInput.java
@@ -38,11 +38,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean hasMore() {
         return cursor() < array.length;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int read() throws EOFException {
         try {
             int value = array[cursor()];
@@ -54,6 +56,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int readInt() throws EOFException {
         int short0 = read();
         int short1 = read();
@@ -62,6 +65,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public long readLong() throws EOFException {
         long short0 = read();
         long short1 = read();
diff --git a/dx/src/com/android/dx/io/instructions/ShortArrayCodeOutput.java b/dx/src/com/android/dx/io/instructions/ShortArrayCodeOutput.java
index 053af07..7a0fc4d 100644
--- a/dx/src/com/android/dx/io/instructions/ShortArrayCodeOutput.java
+++ b/dx/src/com/android/dx/io/instructions/ShortArrayCodeOutput.java
@@ -54,18 +54,21 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(short codeUnit) {
         array[cursor()] = codeUnit;
         advance(1);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(short u0, short u1) {
         write(u0);
         write(u1);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(short u0, short u1, short u2) {
         write(u0);
         write(u1);
@@ -73,6 +76,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(short u0, short u1, short u2, short u3) {
         write(u0);
         write(u1);
@@ -81,6 +85,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(short u0, short u1, short u2, short u3, short u4) {
         write(u0);
         write(u1);
@@ -90,12 +95,14 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void writeInt(int value) {
         write((short) value);
         write((short) (value >> 16));
     }
 
     /** {@inheritDoc} */
+    @Override
     public void writeLong(long value) {
         write((short) value);
         write((short) (value >> 16));
@@ -104,6 +111,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(byte[] data) {
         int value = 0;
         boolean even = true;
@@ -124,6 +132,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(short[] data) {
         for (short unit : data) {
             write(unit);
@@ -131,6 +140,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(int[] data) {
         for (int i : data) {
             writeInt(i);
@@ -138,6 +148,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(long[] data) {
         for (long l : data) {
             writeLong(l);
diff --git a/dx/src/com/android/dx/io/instructions/SparseSwitchPayloadDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/SparseSwitchPayloadDecodedInstruction.java
index 8d64313..b599fc1 100644
--- a/dx/src/com/android/dx/io/instructions/SparseSwitchPayloadDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/SparseSwitchPayloadDecodedInstruction.java
@@ -47,6 +47,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 0;
     }
@@ -60,6 +61,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         throw new UnsupportedOperationException("no index in instruction");
     }
diff --git a/dx/src/com/android/dx/io/instructions/ThreeRegisterDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/ThreeRegisterDecodedInstruction.java
index f914217..33c0330 100644
--- a/dx/src/com/android/dx/io/instructions/ThreeRegisterDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/ThreeRegisterDecodedInstruction.java
@@ -45,26 +45,31 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 3;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getA() {
         return a;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getB() {
         return b;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getC() {
         return c;
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         return new ThreeRegisterDecodedInstruction(
                 getFormat(), getOpcode(), newIndex, getIndexType(),
diff --git a/dx/src/com/android/dx/io/instructions/TwoRegisterDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/TwoRegisterDecodedInstruction.java
index 88b1a48..fd5e128 100644
--- a/dx/src/com/android/dx/io/instructions/TwoRegisterDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/TwoRegisterDecodedInstruction.java
@@ -41,21 +41,25 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 2;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getA() {
         return a;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getB() {
         return b;
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         return new TwoRegisterDecodedInstruction(
                 getFormat(), getOpcode(), newIndex, getIndexType(),
diff --git a/dx/src/com/android/dx/io/instructions/ZeroRegisterDecodedInstruction.java b/dx/src/com/android/dx/io/instructions/ZeroRegisterDecodedInstruction.java
index 47fc414..af7fe47 100644
--- a/dx/src/com/android/dx/io/instructions/ZeroRegisterDecodedInstruction.java
+++ b/dx/src/com/android/dx/io/instructions/ZeroRegisterDecodedInstruction.java
@@ -31,11 +31,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getRegisterCount() {
         return 0;
     }
 
     /** {@inheritDoc} */
+    @Override
     public DecodedInstruction withIndex(int newIndex) {
         return new ZeroRegisterDecodedInstruction(
                 getFormat(), getOpcode(), newIndex, getIndexType(),
diff --git a/dx/src/com/android/dx/merge/DexMerger.java b/dx/src/com/android/dx/merge/DexMerger.java
index 268e33d..0747603 100644
--- a/dx/src/com/android/dx/merge/DexMerger.java
+++ b/dx/src/com/android/dx/merge/DexMerger.java
@@ -32,7 +32,6 @@
 import com.android.dex.TableOfContents;
 import com.android.dex.TypeList;
 import com.android.dx.command.dexer.DxContext;
-
 import java.io.File;
 import java.io.IOException;
 import java.util.*;
diff --git a/dx/src/com/android/dx/merge/IndexMap.java b/dx/src/com/android/dx/merge/IndexMap.java
index 7033bfc..9b4354b 100644
--- a/dx/src/com/android/dx/merge/IndexMap.java
+++ b/dx/src/com/android/dx/merge/IndexMap.java
@@ -22,9 +22,8 @@
 import com.android.dex.Dex;
 import com.android.dex.DexException;
 import com.android.dex.EncodedValue;
+import com.android.dex.EncodedValueCodec;
 import com.android.dex.EncodedValueReader;
-import com.android.dex.MethodHandle;
-import com.android.dex.util.ByteOutput;
 import static com.android.dex.EncodedValueReader.ENCODED_ANNOTATION;
 import static com.android.dex.EncodedValueReader.ENCODED_ARRAY;
 import static com.android.dex.EncodedValueReader.ENCODED_BOOLEAN;
@@ -43,13 +42,14 @@
 import static com.android.dex.EncodedValueReader.ENCODED_SHORT;
 import static com.android.dex.EncodedValueReader.ENCODED_STRING;
 import static com.android.dex.EncodedValueReader.ENCODED_TYPE;
-import com.android.dex.EncodedValueCodec;
 import com.android.dex.FieldId;
 import com.android.dex.Leb128;
+import com.android.dex.MethodHandle;
 import com.android.dex.MethodId;
 import com.android.dex.ProtoId;
 import com.android.dex.TableOfContents;
 import com.android.dex.TypeList;
+import com.android.dex.util.ByteOutput;
 import com.android.dx.util.ByteArrayAnnotatedOutput;
 import java.util.HashMap;
 
diff --git a/dx/src/com/android/dx/merge/InstructionTransformer.java b/dx/src/com/android/dx/merge/InstructionTransformer.java
index 6a785b0..dc99108 100644
--- a/dx/src/com/android/dx/merge/InstructionTransformer.java
+++ b/dx/src/com/android/dx/merge/InstructionTransformer.java
@@ -63,12 +63,14 @@
     }
 
     private class GenericVisitor implements CodeReader.Visitor {
+        @Override
         public void visit(DecodedInstruction[] all, DecodedInstruction one) {
             mappedInstructions[mappedAt++] = one;
         }
     }
 
     private class StringVisitor implements CodeReader.Visitor {
+        @Override
         public void visit(DecodedInstruction[] all, DecodedInstruction one) {
             int stringId = one.getIndex();
             int mappedId = indexMap.adjustString(stringId);
@@ -79,6 +81,7 @@
     }
 
     private class FieldVisitor implements CodeReader.Visitor {
+        @Override
         public void visit(DecodedInstruction[] all, DecodedInstruction one) {
             int fieldId = one.getIndex();
             int mappedId = indexMap.adjustField(fieldId);
@@ -89,6 +92,7 @@
     }
 
     private class TypeVisitor implements CodeReader.Visitor {
+        @Override
         public void visit(DecodedInstruction[] all, DecodedInstruction one) {
             int typeId = one.getIndex();
             int mappedId = indexMap.adjustType(typeId);
@@ -99,6 +103,7 @@
     }
 
     private class MethodVisitor implements CodeReader.Visitor {
+        @Override
         public void visit(DecodedInstruction[] all, DecodedInstruction one) {
             int methodId = one.getIndex();
             int mappedId = indexMap.adjustMethod(methodId);
diff --git a/dx/src/com/android/dx/merge/SortableType.java b/dx/src/com/android/dx/merge/SortableType.java
index 99c5ce1..1f3fa74 100644
--- a/dx/src/com/android/dx/merge/SortableType.java
+++ b/dx/src/com/android/dx/merge/SortableType.java
@@ -27,6 +27,7 @@
  */
 final class SortableType {
     public static final Comparator<SortableType> NULLS_LAST_ORDER = new Comparator<SortableType>() {
+        @Override
         public int compare(SortableType a, SortableType b) {
             if (a == b) {
                 return 0;
@@ -46,7 +47,7 @@
 
     private final Dex dex;
     private final IndexMap indexMap;
-    private ClassDef classDef;
+    private final ClassDef classDef;
     private int depth = -1;
 
     public SortableType(Dex dex, IndexMap indexMap, ClassDef classDef) {
diff --git a/dx/src/com/android/dx/rop/annotation/Annotation.java b/dx/src/com/android/dx/rop/annotation/Annotation.java
index e4af15d..c2d9601 100644
--- a/dx/src/com/android/dx/rop/annotation/Annotation.java
+++ b/dx/src/com/android/dx/rop/annotation/Annotation.java
@@ -79,6 +79,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         int hash = type.hashCode();
         hash = (hash * 31) + elements.hashCode();
@@ -87,6 +88,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(Annotation other) {
         int result = type.compareTo(other.type);
 
@@ -129,6 +131,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         StringBuilder sb = new StringBuilder();
 
diff --git a/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java b/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java
index c717b8c..fab43be 100644
--- a/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java
+++ b/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java
@@ -40,6 +40,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return human;
     }
diff --git a/dx/src/com/android/dx/rop/annotation/Annotations.java b/dx/src/com/android/dx/rop/annotation/Annotations.java
index aea4f24..17e22d1 100644
--- a/dx/src/com/android/dx/rop/annotation/Annotations.java
+++ b/dx/src/com/android/dx/rop/annotation/Annotations.java
@@ -105,6 +105,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(Annotations other) {
         Iterator<Annotation> thisIter = annotations.values().iterator();
         Iterator<Annotation> otherIter = other.annotations.values().iterator();
@@ -129,6 +130,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
         boolean first = true;
diff --git a/dx/src/com/android/dx/rop/annotation/NameValuePair.java b/dx/src/com/android/dx/rop/annotation/NameValuePair.java
index 56c4936..c44dd06 100644
--- a/dx/src/com/android/dx/rop/annotation/NameValuePair.java
+++ b/dx/src/com/android/dx/rop/annotation/NameValuePair.java
@@ -49,16 +49,19 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toString() {
         return name.toHuman() + ":" + value;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         return name.hashCode() * 31 + value.hashCode();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object other) {
         if (! (other instanceof NameValuePair)) {
             return false;
@@ -76,6 +79,7 @@
      * <p>Instances of this class compare in name-major and value-minor
      * order.</p>
      */
+    @Override
     public int compareTo(NameValuePair other) {
         int result = name.compareTo(other.name);
 
diff --git a/dx/src/com/android/dx/rop/code/AccessFlags.java b/dx/src/com/android/dx/rop/code/AccessFlags.java
index f516950..018a01c 100644
--- a/dx/src/com/android/dx/rop/code/AccessFlags.java
+++ b/dx/src/com/android/dx/rop/code/AccessFlags.java
@@ -327,7 +327,7 @@
      * @return {@code non-null;} human-oriented string
      */
     private static String humanHelper(int flags, int mask, int what) {
-        StringBuffer sb = new StringBuffer(80);
+        StringBuilder sb = new StringBuilder(80);
         int extra = flags & ~mask;
 
         flags &= mask;
diff --git a/dx/src/com/android/dx/rop/code/BasicBlock.java b/dx/src/com/android/dx/rop/code/BasicBlock.java
index 9d99833..daea41a 100644
--- a/dx/src/com/android/dx/rop/code/BasicBlock.java
+++ b/dx/src/com/android/dx/rop/code/BasicBlock.java
@@ -139,6 +139,7 @@
      *
      * @return {@code >= 0;} the label
      */
+    @Override
     public int getLabel() {
         return label;
     }
@@ -264,6 +265,7 @@
                               successors, primarySuccessor);
     }
 
+    @Override
     public String toString() {
         return '{' + Hex.u2(label) + '}';
     }
diff --git a/dx/src/com/android/dx/rop/code/BasicBlockList.java b/dx/src/com/android/dx/rop/code/BasicBlockList.java
index 56d1482..816e67f 100644
--- a/dx/src/com/android/dx/rop/code/BasicBlockList.java
+++ b/dx/src/com/android/dx/rop/code/BasicBlockList.java
@@ -331,36 +331,43 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitPlainInsn(PlainInsn insn) {
             visit(insn);
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitPlainCstInsn(PlainCstInsn insn) {
             visit(insn);
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitSwitchInsn(SwitchInsn insn) {
             visit(insn);
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitThrowingCstInsn(ThrowingCstInsn insn) {
             visit(insn);
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitThrowingInsn(ThrowingInsn insn) {
             visit(insn);
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitFillArrayDataInsn(FillArrayDataInsn insn) {
             visit(insn);
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitInvokePolymorphicInsn(InvokePolymorphicInsn insn) {
             visit(insn);
         }
diff --git a/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java b/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java
index 6c48acf..5269ef9 100644
--- a/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java
+++ b/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java
@@ -34,18 +34,21 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean hasConstantOperation(Rop opcode,
             RegisterSpec sourceA, RegisterSpec sourceB) {
         return false;
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean requiresSourcesInOrder(Rop opcode,
             RegisterSpecList sources) {
         return false;
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getMaxOptimalRegisterCount() {
         return Integer.MAX_VALUE;
     }
diff --git a/dx/src/com/android/dx/rop/code/DexTranslationAdvice.java b/dx/src/com/android/dx/rop/code/DexTranslationAdvice.java
index 35ce2f2..54533ce 100644
--- a/dx/src/com/android/dx/rop/code/DexTranslationAdvice.java
+++ b/dx/src/com/android/dx/rop/code/DexTranslationAdvice.java
@@ -54,6 +54,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean hasConstantOperation(Rop opcode,
             RegisterSpec sourceA, RegisterSpec sourceB) {
         if (sourceA.getType() != Type.INT) {
@@ -99,6 +100,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean requiresSourcesInOrder(Rop opcode,
             RegisterSpecList sources) {
 
@@ -124,6 +126,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getMaxOptimalRegisterCount() {
         return 16;
     }
diff --git a/dx/src/com/android/dx/rop/code/Insn.java b/dx/src/com/android/dx/rop/code/Insn.java
index 322cbae..d08d58f 100644
--- a/dx/src/com/android/dx/rop/code/Insn.java
+++ b/dx/src/com/android/dx/rop/code/Insn.java
@@ -102,6 +102,7 @@
      *
      * @return {@code non-null;} the human string form
      */
+    @Override
     public String toHuman() {
         return toHumanWithInline(getInlineString());
     }
@@ -303,7 +304,7 @@
      * @return {@code non-null;} the string form
      */
     protected final String toStringWithInline(String extra) {
-        StringBuffer sb = new StringBuffer(80);
+        StringBuilder sb = new StringBuilder(80);
 
         sb.append("Insn{");
         sb.append(position);
@@ -336,7 +337,7 @@
      * @return {@code non-null;} the human string form
      */
     protected final String toHumanWithInline(String extra) {
-        StringBuffer sb = new StringBuffer(80);
+        StringBuilder sb = new StringBuilder(80);
 
         sb.append(position);
         sb.append(": ");
diff --git a/dx/src/com/android/dx/rop/code/LocalItem.java b/dx/src/com/android/dx/rop/code/LocalItem.java
index d238f21..ca5e394 100644
--- a/dx/src/com/android/dx/rop/code/LocalItem.java
+++ b/dx/src/com/android/dx/rop/code/LocalItem.java
@@ -88,6 +88,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(LocalItem local) {
         int ret;
 
diff --git a/dx/src/com/android/dx/rop/code/RegisterSpec.java b/dx/src/com/android/dx/rop/code/RegisterSpec.java
index c31478f..677eaa4 100644
--- a/dx/src/com/android/dx/rop/code/RegisterSpec.java
+++ b/dx/src/com/android/dx/rop/code/RegisterSpec.java
@@ -16,7 +16,6 @@
 
 package com.android.dx.rop.code;
 
-import com.android.dx.command.dexer.Main;
 import com.android.dx.rop.cst.Constant;
 import com.android.dx.rop.cst.CstString;
 import com.android.dx.rop.type.Type;
@@ -580,7 +579,7 @@
      * @return {@code non-null;} the string form
      */
     private String toString0(boolean human) {
-        StringBuffer sb = new StringBuffer(40);
+        StringBuilder sb = new StringBuilder(40);
 
         sb.append(regString());
         sb.append(":");
diff --git a/dx/src/com/android/dx/rop/code/RegisterSpecList.java b/dx/src/com/android/dx/rop/code/RegisterSpecList.java
index c9680e7..1784497 100644
--- a/dx/src/com/android/dx/rop/code/RegisterSpecList.java
+++ b/dx/src/com/android/dx/rop/code/RegisterSpecList.java
@@ -103,11 +103,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType(int n) {
         return get(n).getType().getType();
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getWordCount() {
         int sz = size();
         int result = 0;
@@ -120,6 +122,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeList withAddedType(Type type) {
         throw new UnsupportedOperationException("unsupported");
     }
@@ -389,10 +392,10 @@
     }
 
     private static class Expander {
-      private BitSet compatRegs;
-      private RegisterSpecList regSpecList;
+      private final BitSet compatRegs;
+      private final RegisterSpecList regSpecList;
       private int base;
-      private RegisterSpecList result;
+      private final RegisterSpecList result;
       private boolean duplicateFirst;
 
       private Expander(RegisterSpecList regSpecList, BitSet compatRegs, int base,
diff --git a/dx/src/com/android/dx/rop/code/RegisterSpecSet.java b/dx/src/com/android/dx/rop/code/RegisterSpecSet.java
index 14ef778..7ba5efc 100644
--- a/dx/src/com/android/dx/rop/code/RegisterSpecSet.java
+++ b/dx/src/com/android/dx/rop/code/RegisterSpecSet.java
@@ -100,7 +100,7 @@
     @Override
     public String toString() {
         int len = specs.length;
-        StringBuffer sb = new StringBuffer(len * 25);
+        StringBuilder sb = new StringBuilder(len * 25);
 
         sb.append('{');
 
diff --git a/dx/src/com/android/dx/rop/code/Rop.java b/dx/src/com/android/dx/rop/code/Rop.java
index 02e3328..3e7148f 100644
--- a/dx/src/com/android/dx/rop/code/Rop.java
+++ b/dx/src/com/android/dx/rop/code/Rop.java
@@ -247,7 +247,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(40);
+        StringBuilder sb = new StringBuilder(40);
 
         sb.append("Rop{");
 
diff --git a/dx/src/com/android/dx/rop/code/SourcePosition.java b/dx/src/com/android/dx/rop/code/SourcePosition.java
index 11ac992..76938c5 100644
--- a/dx/src/com/android/dx/rop/code/SourcePosition.java
+++ b/dx/src/com/android/dx/rop/code/SourcePosition.java
@@ -70,7 +70,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(50);
+        StringBuilder sb = new StringBuilder(50);
 
         if (sourceFile != null) {
             sb.append(sourceFile.toHuman());
diff --git a/dx/src/com/android/dx/rop/code/ThrowingInsn.java b/dx/src/com/android/dx/rop/code/ThrowingInsn.java
index cb3f679..7e69cc0 100644
--- a/dx/src/com/android/dx/rop/code/ThrowingInsn.java
+++ b/dx/src/com/android/dx/rop/code/ThrowingInsn.java
@@ -38,7 +38,7 @@
      * @return {@code non-null;} the string form
      */
     public static String toCatchString(TypeList catches) {
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append("catch");
 
diff --git a/dx/src/com/android/dx/rop/cst/Constant.java b/dx/src/com/android/dx/rop/cst/Constant.java
index 3ef035e..3a26579 100644
--- a/dx/src/com/android/dx/rop/cst/Constant.java
+++ b/dx/src/com/android/dx/rop/cst/Constant.java
@@ -45,6 +45,7 @@
      *
      * This compares in class-major and value-minor order.
      */
+    @Override
     public final int compareTo(Constant other) {
         Class clazz = getClass();
         Class otherClazz = other.getClass();
diff --git a/dx/src/com/android/dx/rop/cst/CstAnnotation.java b/dx/src/com/android/dx/rop/cst/CstAnnotation.java
index 8cdf1df..b3d138d 100644
--- a/dx/src/com/android/dx/rop/cst/CstAnnotation.java
+++ b/dx/src/com/android/dx/rop/cst/CstAnnotation.java
@@ -81,6 +81,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return annotation.toString();
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstArray.java b/dx/src/com/android/dx/rop/cst/CstArray.java
index 3aa7ab4..43a0a44 100644
--- a/dx/src/com/android/dx/rop/cst/CstArray.java
+++ b/dx/src/com/android/dx/rop/cst/CstArray.java
@@ -81,6 +81,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return list.toHuman("{", ", ", "}");
     }
@@ -110,6 +111,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public int compareTo(List other) {
             int thisSize = size();
             int otherSize = other.size();
diff --git a/dx/src/com/android/dx/rop/cst/CstBaseMethodRef.java b/dx/src/com/android/dx/rop/cst/CstBaseMethodRef.java
index e772231..c964a49 100644
--- a/dx/src/com/android/dx/rop/cst/CstBaseMethodRef.java
+++ b/dx/src/com/android/dx/rop/cst/CstBaseMethodRef.java
@@ -113,6 +113,7 @@
      *
      * @return {@code non-null;} the method's return type
      */
+    @Override
     public final Type getType() {
         return prototype.getReturnType();
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstBoolean.java b/dx/src/com/android/dx/rop/cst/CstBoolean.java
index 5ff858a..de9a890 100644
--- a/dx/src/com/android/dx/rop/cst/CstBoolean.java
+++ b/dx/src/com/android/dx/rop/cst/CstBoolean.java
@@ -73,6 +73,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.BOOLEAN;
     }
@@ -84,6 +85,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return getValue() ? "true" : "false";
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstByte.java b/dx/src/com/android/dx/rop/cst/CstByte.java
index fc8f58f..0c63a12 100644
--- a/dx/src/com/android/dx/rop/cst/CstByte.java
+++ b/dx/src/com/android/dx/rop/cst/CstByte.java
@@ -73,6 +73,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.BYTE;
     }
@@ -84,6 +85,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return Integer.toString(getIntBits());
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstChar.java b/dx/src/com/android/dx/rop/cst/CstChar.java
index 21d8b67..4ad9598 100644
--- a/dx/src/com/android/dx/rop/cst/CstChar.java
+++ b/dx/src/com/android/dx/rop/cst/CstChar.java
@@ -73,6 +73,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.CHAR;
     }
@@ -84,6 +85,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return Integer.toString(getIntBits());
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstDouble.java b/dx/src/com/android/dx/rop/cst/CstDouble.java
index 8f1766f..ff20474 100644
--- a/dx/src/com/android/dx/rop/cst/CstDouble.java
+++ b/dx/src/com/android/dx/rop/cst/CstDouble.java
@@ -64,6 +64,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.DOUBLE;
     }
@@ -75,6 +76,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return Double.toString(Double.longBitsToDouble(getLongBits()));
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstEnumRef.java b/dx/src/com/android/dx/rop/cst/CstEnumRef.java
index 641ab3f..b737fcc 100644
--- a/dx/src/com/android/dx/rop/cst/CstEnumRef.java
+++ b/dx/src/com/android/dx/rop/cst/CstEnumRef.java
@@ -49,6 +49,7 @@
      *
      * <b>Note:</b> This returns the enumerated type.
      */
+    @Override
     public Type getType() {
         return getDefiningClass().getClassType();
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstFieldRef.java b/dx/src/com/android/dx/rop/cst/CstFieldRef.java
index a4d7180..d4fc9f7 100644
--- a/dx/src/com/android/dx/rop/cst/CstFieldRef.java
+++ b/dx/src/com/android/dx/rop/cst/CstFieldRef.java
@@ -58,6 +58,7 @@
      *
      * @return {@code non-null;} the field's type
      */
+    @Override
     public Type getType() {
         return getNat().getFieldType();
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstFloat.java b/dx/src/com/android/dx/rop/cst/CstFloat.java
index 0a2354a..b7056ae 100644
--- a/dx/src/com/android/dx/rop/cst/CstFloat.java
+++ b/dx/src/com/android/dx/rop/cst/CstFloat.java
@@ -65,6 +65,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.FLOAT;
     }
@@ -76,6 +77,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return Float.toString(Float.intBitsToFloat(getIntBits()));
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstInteger.java b/dx/src/com/android/dx/rop/cst/CstInteger.java
index 3691fc0..7ed2cc3 100644
--- a/dx/src/com/android/dx/rop/cst/CstInteger.java
+++ b/dx/src/com/android/dx/rop/cst/CstInteger.java
@@ -90,6 +90,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.INT;
     }
@@ -101,6 +102,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return Integer.toString(getIntBits());
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstKnownNull.java b/dx/src/com/android/dx/rop/cst/CstKnownNull.java
index a80322c..e764419 100644
--- a/dx/src/com/android/dx/rop/cst/CstKnownNull.java
+++ b/dx/src/com/android/dx/rop/cst/CstKnownNull.java
@@ -58,6 +58,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.KNOWN_NULL;
     }
@@ -75,6 +76,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return "null";
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstLong.java b/dx/src/com/android/dx/rop/cst/CstLong.java
index d159529..88a57a8 100644
--- a/dx/src/com/android/dx/rop/cst/CstLong.java
+++ b/dx/src/com/android/dx/rop/cst/CstLong.java
@@ -61,6 +61,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.LONG;
     }
@@ -72,6 +73,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return Long.toString(getLongBits());
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstMemberRef.java b/dx/src/com/android/dx/rop/cst/CstMemberRef.java
index 1775398..0306847 100644
--- a/dx/src/com/android/dx/rop/cst/CstMemberRef.java
+++ b/dx/src/com/android/dx/rop/cst/CstMemberRef.java
@@ -98,6 +98,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public final String toHuman() {
         return definingClass.toHuman() + '.' + nat.toHuman();
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstNat.java b/dx/src/com/android/dx/rop/cst/CstNat.java
index 501e973..dbb682c 100644
--- a/dx/src/com/android/dx/rop/cst/CstNat.java
+++ b/dx/src/com/android/dx/rop/cst/CstNat.java
@@ -129,6 +129,7 @@
      *
      * @return {@code non-null;} the human form
      */
+    @Override
     public String toHuman() {
         return name.toHuman() + ':' + descriptor.toHuman();
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstShort.java b/dx/src/com/android/dx/rop/cst/CstShort.java
index 5be1022..2761da1 100644
--- a/dx/src/com/android/dx/rop/cst/CstShort.java
+++ b/dx/src/com/android/dx/rop/cst/CstShort.java
@@ -74,6 +74,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType() {
         return Type.SHORT;
     }
@@ -85,6 +86,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return Integer.toString(getIntBits());
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstString.java b/dx/src/com/android/dx/rop/cst/CstString.java
index a778e97..c1a8c23 100644
--- a/dx/src/com/android/dx/rop/cst/CstString.java
+++ b/dx/src/com/android/dx/rop/cst/CstString.java
@@ -241,6 +241,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         int len = string.length();
         StringBuilder sb = new StringBuilder(len * 3 / 2);
@@ -369,6 +370,7 @@
         return string.length();
     }
 
+    @Override
     public Type getType() {
         return Type.STRING;
     }
diff --git a/dx/src/com/android/dx/rop/cst/CstType.java b/dx/src/com/android/dx/rop/cst/CstType.java
index 4b524e5..b42e717 100644
--- a/dx/src/com/android/dx/rop/cst/CstType.java
+++ b/dx/src/com/android/dx/rop/cst/CstType.java
@@ -18,7 +18,6 @@
 
 import com.android.dx.command.dexer.Main;
 import com.android.dx.rop.type.Type;
-
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
 
diff --git a/dx/src/com/android/dx/rop/cst/StdConstantPool.java b/dx/src/com/android/dx/rop/cst/StdConstantPool.java
index f941f7d..1001038 100644
--- a/dx/src/com/android/dx/rop/cst/StdConstantPool.java
+++ b/dx/src/com/android/dx/rop/cst/StdConstantPool.java
@@ -48,11 +48,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int size() {
         return entries.length;
     }
 
     /** {@inheritDoc} */
+    @Override
     public Constant getOrNull(int n) {
         try {
             return entries[n];
@@ -63,6 +65,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Constant get0Ok(int n) {
         if (n == 0) {
             return null;
@@ -72,6 +75,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Constant get(int n) {
         try {
             Constant result = entries[n];
@@ -92,6 +96,7 @@
      *
      * @return the returned array may contain null entries.
      */
+    @Override
     public Constant[] getEntries() {
         return entries;
     }
diff --git a/dx/src/com/android/dx/rop/cst/TypedConstant.java b/dx/src/com/android/dx/rop/cst/TypedConstant.java
index 1c738ee..f52f547 100644
--- a/dx/src/com/android/dx/rop/cst/TypedConstant.java
+++ b/dx/src/com/android/dx/rop/cst/TypedConstant.java
@@ -28,21 +28,25 @@
      *
      * This implementation always returns {@code this}.
      */
+    @Override
     public final TypeBearer getFrameType() {
         return this;
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int getBasicType() {
         return getType().getBasicType();
     }
 
     /** {@inheritDoc} */
+    @Override
     public final int getBasicFrameType() {
         return getType().getBasicFrameType();
     }
 
     /** {@inheritDoc} */
+    @Override
     public final boolean isConstant() {
         return true;
     }
diff --git a/dx/src/com/android/dx/rop/type/Prototype.java b/dx/src/com/android/dx/rop/type/Prototype.java
index c54c869..796d064 100644
--- a/dx/src/com/android/dx/rop/type/Prototype.java
+++ b/dx/src/com/android/dx/rop/type/Prototype.java
@@ -219,7 +219,7 @@
     public static Prototype internInts(Type returnType, int count) {
         // Make the descriptor...
 
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         sb.append('(');
 
diff --git a/dx/src/com/android/dx/rop/type/StdTypeList.java b/dx/src/com/android/dx/rop/type/StdTypeList.java
index fe6647c0..943e9a1 100644
--- a/dx/src/com/android/dx/rop/type/StdTypeList.java
+++ b/dx/src/com/android/dx/rop/type/StdTypeList.java
@@ -237,7 +237,7 @@
             return "<empty>";
         }
 
-        StringBuffer sb = new StringBuffer(100);
+        StringBuilder sb = new StringBuilder(100);
 
         for (int i = 0; i < size; i++) {
             if (i != 0) {
@@ -333,11 +333,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public Type getType(int n) {
         return get(n);
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getWordCount() {
         int sz = size();
         int result = 0;
@@ -350,6 +352,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public TypeList withAddedType(Type type) {
         int sz = size();
         StdTypeList result = new StdTypeList(sz + 1);
diff --git a/dx/src/com/android/dx/ssa/BasicRegisterMapper.java b/dx/src/com/android/dx/ssa/BasicRegisterMapper.java
index 45e93c3..fe8bee4 100644
--- a/dx/src/com/android/dx/ssa/BasicRegisterMapper.java
+++ b/dx/src/com/android/dx/ssa/BasicRegisterMapper.java
@@ -25,7 +25,7 @@
  */
 public class BasicRegisterMapper extends RegisterMapper {
     /** indexed by old register, containing new name */
-    private IntList oldToNew;
+    private final IntList oldToNew;
 
     /** running count of used registers in new namespace */
     private int runningCountNewRegisters;
diff --git a/dx/src/com/android/dx/ssa/ConstCollector.java b/dx/src/com/android/dx/ssa/ConstCollector.java
index 9055544..38812e0 100644
--- a/dx/src/com/android/dx/ssa/ConstCollector.java
+++ b/dx/src/com/android/dx/ssa/ConstCollector.java
@@ -240,6 +240,7 @@
 
         // Sort by use, with most used at the beginning of the list.
         Collections.sort(constantList, new Comparator<Constant>() {
+            @Override
             public int compare(Constant a, Constant b) {
                 int ret;
                 ret = countUses.get(b) - countUses.get(a);
diff --git a/dx/src/com/android/dx/ssa/DeadCodeRemover.java b/dx/src/com/android/dx/ssa/DeadCodeRemover.java
index 4a2f59d..12915f7 100644
--- a/dx/src/com/android/dx/ssa/DeadCodeRemover.java
+++ b/dx/src/com/android/dx/ssa/DeadCodeRemover.java
@@ -239,6 +239,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitMoveInsn (NormalSsaInsn insn) {
             // If we're tracking local vars, some moves have side effects.
             if (!hasSideEffect(insn)) {
@@ -247,6 +248,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitPhiInsn (PhiInsn phi) {
             // If we're tracking local vars, then some phis have side effects.
             if (!hasSideEffect(phi)) {
@@ -255,6 +257,7 @@
         }
 
         /** {@inheritDoc} */
+        @Override
         public void visitNonMoveInsn (NormalSsaInsn insn) {
             RegisterSpec result = insn.getResult();
             if (!hasSideEffect(insn) && result != null) {
diff --git a/dx/src/com/android/dx/ssa/Dominators.java b/dx/src/com/android/dx/ssa/Dominators.java
index bffea61..a65012c 100644
--- a/dx/src/com/android/dx/ssa/Dominators.java
+++ b/dx/src/com/android/dx/ssa/Dominators.java
@@ -255,6 +255,7 @@
     private class DfsWalker implements SsaBasicBlock.Visitor {
         private int dfsNum = 0;
 
+        @Override
         public void visitBlock(SsaBasicBlock v, SsaBasicBlock parent) {
             DFSInfo bbInfo = new DFSInfo();
             bbInfo.semidom = ++dfsNum;
diff --git a/dx/src/com/android/dx/ssa/EscapeAnalysis.java b/dx/src/com/android/dx/ssa/EscapeAnalysis.java
index 8533de8..a53787a 100644
--- a/dx/src/com/android/dx/ssa/EscapeAnalysis.java
+++ b/dx/src/com/android/dx/ssa/EscapeAnalysis.java
@@ -97,11 +97,11 @@
     }
 
     /** method we're processing */
-    private SsaMethod ssaMeth;
+    private final SsaMethod ssaMeth;
     /** ssaMeth.getRegCount() */
-    private int regCount;
+    private final int regCount;
     /** Lattice values for each object register group */
-    private ArrayList<EscapeSet> latticeValues;
+    private final ArrayList<EscapeSet> latticeValues;
 
     /**
      * Constructs an instance.
@@ -689,17 +689,21 @@
      */
     private void run() {
         ssaMeth.forEachBlockDepthFirstDom(new SsaBasicBlock.Visitor() {
+            @Override
             public void visitBlock (SsaBasicBlock block,
                     SsaBasicBlock unused) {
                 block.forEachInsn(new SsaInsn.Visitor() {
+                    @Override
                     public void visitMoveInsn(NormalSsaInsn insn) {
                         // do nothing
                     }
 
+                    @Override
                     public void visitPhiInsn(PhiInsn insn) {
                         // do nothing
                     }
 
+                    @Override
                     public void visitNonMoveInsn(NormalSsaInsn insn) {
                         processInsn(insn);
                     }
diff --git a/dx/src/com/android/dx/ssa/LiteralOpUpgrader.java b/dx/src/com/android/dx/ssa/LiteralOpUpgrader.java
index ad017e2..9024c8b 100644
--- a/dx/src/com/android/dx/ssa/LiteralOpUpgrader.java
+++ b/dx/src/com/android/dx/ssa/LiteralOpUpgrader.java
@@ -82,14 +82,17 @@
         final TranslationAdvice advice = Optimizer.getAdvice();
 
         ssaMeth.forEachInsn(new SsaInsn.Visitor() {
+            @Override
             public void visitMoveInsn(NormalSsaInsn insn) {
                 // do nothing
             }
 
+            @Override
             public void visitPhiInsn(PhiInsn insn) {
                 // do nothing
             }
 
+            @Override
             public void visitNonMoveInsn(NormalSsaInsn insn) {
 
                 Insn originalRopInsn = insn.getOriginalRopInsn();
diff --git a/dx/src/com/android/dx/ssa/MoveParamCombiner.java b/dx/src/com/android/dx/ssa/MoveParamCombiner.java
index 5676447..c8c6def 100644
--- a/dx/src/com/android/dx/ssa/MoveParamCombiner.java
+++ b/dx/src/com/android/dx/ssa/MoveParamCombiner.java
@@ -58,10 +58,13 @@
         final HashSet<SsaInsn> deletedInsns = new HashSet();
 
         ssaMeth.forEachInsn(new SsaInsn.Visitor() {
+            @Override
             public void visitMoveInsn (NormalSsaInsn insn) {
             }
+            @Override
             public void visitPhiInsn (PhiInsn phi) {
             }
+            @Override
             public void visitNonMoveInsn (NormalSsaInsn insn) {
                 if (insn.getOpcode().getOpcode() != RegOps.MOVE_PARAM) {
                     return;
@@ -105,11 +108,13 @@
 
                     RegisterMapper mapper = new RegisterMapper() {
                         /** {@inheritDoc} */
+                        @Override
                         public int getNewRegisterCount() {
                             return ssaMeth.getRegCount();
                         }
 
                         /** {@inheritDoc} */
+                        @Override
                         public RegisterSpec map(RegisterSpec registerSpec) {
                             if (registerSpec.getReg() == specB.getReg()) {
                                 return specA;
diff --git a/dx/src/com/android/dx/ssa/NormalSsaInsn.java b/dx/src/com/android/dx/ssa/NormalSsaInsn.java
index 61c12e5..8f1d433 100644
--- a/dx/src/com/android/dx/ssa/NormalSsaInsn.java
+++ b/dx/src/com/android/dx/ssa/NormalSsaInsn.java
@@ -116,6 +116,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return toRopInsn().toHuman();
     }
diff --git a/dx/src/com/android/dx/ssa/PhiInsn.java b/dx/src/com/android/dx/ssa/PhiInsn.java
index 0a39864..81ef5b3 100644
--- a/dx/src/com/android/dx/ssa/PhiInsn.java
+++ b/dx/src/com/android/dx/ssa/PhiInsn.java
@@ -328,6 +328,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toHuman() {
         return toHumanWithInline(null);
     }
@@ -340,7 +341,7 @@
      * @return human-readable string for listing dumps
      */
     protected final String toHumanWithInline(String extra) {
-        StringBuffer sb = new StringBuffer(80);
+        StringBuilder sb = new StringBuilder(80);
 
         sb.append(SourcePosition.NO_INFO);
         sb.append(": phi");
diff --git a/dx/src/com/android/dx/ssa/SCCP.java b/dx/src/com/android/dx/ssa/SCCP.java
index a6dee34..c3c044f 100644
--- a/dx/src/com/android/dx/ssa/SCCP.java
+++ b/dx/src/com/android/dx/ssa/SCCP.java
@@ -42,29 +42,29 @@
     private static final int CONSTANT = 1;
     private static final int VARYING = 2;
     /** method we're processing */
-    private SsaMethod ssaMeth;
+    private final SsaMethod ssaMeth;
     /** ssaMeth.getRegCount() */
-    private int regCount;
+    private final int regCount;
     /** Lattice values for each SSA register */
-    private int[] latticeValues;
+    private final int[] latticeValues;
     /** For those registers that are constant, this is the constant value */
-    private Constant[] latticeConstants;
+    private final Constant[] latticeConstants;
     /** Worklist of basic blocks to be processed */
-    private ArrayList<SsaBasicBlock> cfgWorklist;
+    private final ArrayList<SsaBasicBlock> cfgWorklist;
     /** Worklist of executed basic blocks with phis to be processed */
-    private ArrayList<SsaBasicBlock> cfgPhiWorklist;
+    private final ArrayList<SsaBasicBlock> cfgPhiWorklist;
     /** Bitset containing bits for each block that has been found executable */
-    private BitSet executableBlocks;
+    private final BitSet executableBlocks;
     /** Worklist for SSA edges.  This is a list of registers to process */
-    private ArrayList<SsaInsn> ssaWorklist;
+    private final ArrayList<SsaInsn> ssaWorklist;
     /**
      * Worklist for SSA edges that represent varying values.  It makes the
      * algorithm much faster if you move all values to VARYING as fast as
      * possible.
      */
-    private ArrayList<SsaInsn> varyingWorklist;
+    private final ArrayList<SsaInsn> varyingWorklist;
     /** Worklist of potential branches to convert to gotos */
-    private ArrayList<SsaInsn> branchWorklist;
+    private final ArrayList<SsaInsn> branchWorklist;
 
     private SCCP(SsaMethod ssaMeth) {
         this.ssaMeth = ssaMeth;
diff --git a/dx/src/com/android/dx/ssa/SsaBasicBlock.java b/dx/src/com/android/dx/ssa/SsaBasicBlock.java
index 56d8c8c..50b849f 100644
--- a/dx/src/com/android/dx/ssa/SsaBasicBlock.java
+++ b/dx/src/com/android/dx/ssa/SsaBasicBlock.java
@@ -48,7 +48,7 @@
         new LabelComparator();
 
     /** {@code non-null;} insn list associated with this instance */
-    private ArrayList<SsaInsn> insns;
+    private final ArrayList<SsaInsn> insns;
 
     /** {@code non-null;} predecessor set (by block list index) */
     private BitSet predecessors;
@@ -69,13 +69,13 @@
     private int primarySuccessor = -1;
 
     /** label of block in rop form */
-    private int ropLabel;
+    private final int ropLabel;
 
     /** {@code non-null;} method we belong to */
-    private SsaMethod parent;
+    private final SsaMethod parent;
 
     /** our index into parent.getBlock() */
-    private int index;
+    private final int index;
 
     /** list of dom children */
     private final ArrayList<SsaBasicBlock> domChildren;
@@ -1015,6 +1015,7 @@
     public static final class LabelComparator
             implements Comparator<SsaBasicBlock> {
         /** {@inheritDoc} */
+        @Override
         public int compare(SsaBasicBlock b1, SsaBasicBlock b2) {
             int label1 = b1.ropLabel;
             int label2 = b2.ropLabel;
diff --git a/dx/src/com/android/dx/ssa/SsaMethod.java b/dx/src/com/android/dx/ssa/SsaMethod.java
index 7d7b565..9167c7f 100644
--- a/dx/src/com/android/dx/ssa/SsaMethod.java
+++ b/dx/src/com/android/dx/ssa/SsaMethod.java
@@ -417,12 +417,15 @@
         definitionList = new SsaInsn[getRegCount()];
 
         forEachInsn(new SsaInsn.Visitor() {
+            @Override
             public void visitMoveInsn (NormalSsaInsn insn) {
                 definitionList[insn.getResult().getReg()] = insn;
             }
+            @Override
             public void visitPhiInsn (PhiInsn phi) {
                 definitionList[phi.getResult().getReg()] = phi;
             }
+            @Override
             public void visitNonMoveInsn (NormalSsaInsn insn) {
                 RegisterSpec result = insn.getResult();
                 if (result != null) {
@@ -450,14 +453,17 @@
 
         forEachInsn(new SsaInsn.Visitor() {
             /** {@inheritDoc} */
+            @Override
             public void visitMoveInsn (NormalSsaInsn insn) {
                 addToUses(insn);
             }
             /** {@inheritDoc} */
+            @Override
             public void visitPhiInsn (PhiInsn phi) {
                 addToUses(phi);
             }
             /** {@inheritDoc} */
+            @Override
             public void visitNonMoveInsn (NormalSsaInsn insn) {
                 addToUses(insn);
             }
diff --git a/dx/src/com/android/dx/ssa/SsaRenamer.java b/dx/src/com/android/dx/ssa/SsaRenamer.java
index 66391a0..1167f98 100644
--- a/dx/src/com/android/dx/ssa/SsaRenamer.java
+++ b/dx/src/com/android/dx/ssa/SsaRenamer.java
@@ -158,9 +158,11 @@
      * Performs renaming transformation, modifying the method's instructions
      * in-place.
      */
+    @Override
     public void run() {
         // Rename each block in dom-tree DFS order.
         ssaMeth.forEachBlockDepthFirstDom(new SsaBasicBlock.Visitor() {
+            @Override
             public void visitBlock (SsaBasicBlock block,
                     SsaBasicBlock unused) {
                 new BlockRenamer(block).process();
@@ -471,6 +473,7 @@
          *
          * Phi insns have their result registers renamed.
          */
+        @Override
         public void visitPhiInsn(PhiInsn phi) {
             /* don't process sources for phi's */
             processResultReg(phi);
@@ -484,6 +487,7 @@
          * assignment. If they represent a local variable assignement, they
          * are preserved.
          */
+        @Override
         public void visitMoveInsn(NormalSsaInsn insn) {
             /*
              * For moves: copy propogate the move if we can, but don't
@@ -584,6 +588,7 @@
          * renamed to a new SSA register which is then added to the current
          * register mapping.
          */
+        @Override
         public void visitNonMoveInsn(NormalSsaInsn insn) {
             /* for each use of some variable X in S */
             insn.mapSourceRegisters(mapper);
@@ -626,6 +631,7 @@
          */
         private void updateSuccessorPhis() {
             PhiInsn.Visitor visitor = new PhiInsn.Visitor() {
+                @Override
                 public void visitPhiInsn (PhiInsn insn) {
                     int ropReg;
 
diff --git a/dx/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java b/dx/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java
index 0fc5323..ec917d5 100644
--- a/dx/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java
+++ b/dx/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java
@@ -698,16 +698,19 @@
     private void analyzeInstructions() {
         ssaMeth.forEachInsn(new SsaInsn.Visitor() {
             /** {@inheritDoc} */
+            @Override
             public void visitMoveInsn(NormalSsaInsn insn) {
                 processInsn(insn);
             }
 
             /** {@inheritDoc} */
+            @Override
             public void visitPhiInsn(PhiInsn insn) {
                 processInsn(insn);
             }
 
             /** {@inheritDoc} */
+            @Override
             public void visitNonMoveInsn(NormalSsaInsn insn) {
                 processInsn(insn);
             }
diff --git a/dx/src/com/android/dx/ssa/back/SsaToRop.java b/dx/src/com/android/dx/ssa/back/SsaToRop.java
index 401c67f..ea5e800 100644
--- a/dx/src/com/android/dx/ssa/back/SsaToRop.java
+++ b/dx/src/com/android/dx/ssa/back/SsaToRop.java
@@ -139,6 +139,7 @@
         final ArrayList<SsaBasicBlock> blocks = ssaMeth.getBlocks();
 
         ssaMeth.forEachBlockDepthFirst(false, new SsaBasicBlock.Visitor() {
+            @Override
             public void visitBlock(SsaBasicBlock b, SsaBasicBlock parent) {
                 ArrayList<SsaInsn> insns = b.getInsns();
 
@@ -193,6 +194,7 @@
             this.blocks = blocks;
         }
 
+        @Override
         public void visitPhiInsn(PhiInsn insn) {
             RegisterSpecList sources = insn.getSources();
             RegisterSpec result = insn.getResult();
@@ -362,6 +364,7 @@
         }
 
         Arrays.sort(ret, new Comparator<Integer>() {
+            @Override
             public int compare(Integer o1, Integer o2) {
                 return ssaMeth.getUseListForRegister(o2).size()
                         - ssaMeth.getUseListForRegister(o1).size();
diff --git a/dx/src/com/android/dx/util/BitIntSet.java b/dx/src/com/android/dx/util/BitIntSet.java
index 8a75ed6..da1c39c 100644
--- a/dx/src/com/android/dx/util/BitIntSet.java
+++ b/dx/src/com/android/dx/util/BitIntSet.java
@@ -36,6 +36,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void add(int value) {
         ensureCapacity(value);
         Bits.set(bits, value, true);
@@ -56,6 +57,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void remove(int value) {
         if (value < Bits.getMax(bits)) {
             Bits.set(bits, value, false);
@@ -63,11 +65,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean has(int value) {
         return (value < Bits.getMax(bits)) && Bits.get(bits, value);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void merge(IntSet other) {
         if (other instanceof BitIntSet) {
             BitIntSet o = (BitIntSet) other;
@@ -92,21 +96,25 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int elements() {
         return Bits.bitCount(bits);
     }
 
     /** {@inheritDoc} */
+    @Override
     public IntIterator iterator() {
         return new IntIterator() {
             private int idx = Bits.findFirst(bits, 0);
 
             /** {@inheritDoc} */
+            @Override
             public boolean hasNext() {
                 return idx >= 0;
             }
 
             /** {@inheritDoc} */
+            @Override
             public int next() {
                 if (!hasNext()) {
                     throw new NoSuchElementException();
@@ -122,6 +130,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
 
diff --git a/dx/src/com/android/dx/util/ByteArray.java b/dx/src/com/android/dx/util/ByteArray.java
index bc885ad..aeab048 100644
--- a/dx/src/com/android/dx/util/ByteArray.java
+++ b/dx/src/com/android/dx/util/ByteArray.java
@@ -301,6 +301,7 @@
             mark = 0;
         }
 
+        @Override
         public int read() throws IOException {
             if (cursor >= size) {
                 return -1;
@@ -311,6 +312,7 @@
             return result;
         }
 
+        @Override
         public int read(byte[] arr, int offset, int length) {
             if ((offset + length) > arr.length) {
                 length = arr.length - offset;
@@ -326,18 +328,22 @@
             return length;
         }
 
+        @Override
         public int available() {
             return size - cursor;
         }
 
+        @Override
         public void mark(int reserve) {
             mark = cursor;
         }
 
+        @Override
         public void reset() {
             cursor = mark;
         }
 
+        @Override
         public boolean markSupported() {
             return true;
         }
diff --git a/dx/src/com/android/dx/util/ByteArrayAnnotatedOutput.java b/dx/src/com/android/dx/util/ByteArrayAnnotatedOutput.java
index 187d886..226f1a1 100644
--- a/dx/src/com/android/dx/util/ByteArrayAnnotatedOutput.java
+++ b/dx/src/com/android/dx/util/ByteArrayAnnotatedOutput.java
@@ -16,9 +16,9 @@
 
 package com.android.dx.util;
 
+import com.android.dex.Leb128;
 import com.android.dex.util.ByteOutput;
 import com.android.dex.util.ExceptionWithContext;
-import com.android.dex.Leb128;
 import java.io.IOException;
 import java.io.Writer;
 import java.util.ArrayList;
@@ -144,11 +144,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getCursor() {
         return cursor;
     }
 
     /** {@inheritDoc} */
+    @Override
     public void assertCursor(int expectedCursor) {
         if (cursor != expectedCursor) {
             throw new ExceptionWithContext("expected cursor " +
@@ -157,6 +159,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void writeByte(int value) {
         int writeAt = cursor;
         int end = writeAt + 1;
@@ -173,6 +176,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void writeShort(int value) {
         int writeAt = cursor;
         int end = writeAt + 2;
@@ -190,6 +194,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void writeInt(int value) {
         int writeAt = cursor;
         int end = writeAt + 4;
@@ -209,6 +214,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void writeLong(long value) {
         int writeAt = cursor;
         int end = writeAt + 8;
@@ -236,6 +242,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int writeUleb128(int value) {
         if (stretchy) {
             ensureCapacity(cursor + 5); // pessimistic
@@ -246,6 +253,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int writeSleb128(int value) {
         if (stretchy) {
             ensureCapacity(cursor + 5); // pessimistic
@@ -256,6 +264,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(ByteArray bytes) {
         int blen = bytes.size();
         int writeAt = cursor;
@@ -273,6 +282,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(byte[] bytes, int offset, int length) {
         int writeAt = cursor;
         int end = writeAt + length;
@@ -297,11 +307,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void write(byte[] bytes) {
         write(bytes, 0, bytes.length);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void writeZeroes(int count) {
         if (count < 0) {
             throw new IllegalArgumentException("count < 0");
@@ -325,6 +337,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void alignTo(int alignment) {
         int mask = alignment - 1;
 
@@ -350,16 +363,19 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean annotates() {
         return (annotations != null);
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean isVerbose() {
         return verbose;
     }
 
     /** {@inheritDoc} */
+    @Override
     public void annotate(String msg) {
         if (annotations == null) {
             return;
@@ -370,6 +386,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void annotate(int amt, String msg) {
         if (annotations == null) {
             return;
@@ -391,6 +408,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void endAnnotation() {
         if (annotations == null) {
             return;
@@ -404,6 +422,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int getAnnotationWidth() {
         int leftWidth = 8 + (hexCols * 2) + (hexCols / 2);
 
diff --git a/dx/src/com/android/dx/util/FixedSizeList.java b/dx/src/com/android/dx/util/FixedSizeList.java
index fb3af04..d5425a4 100644
--- a/dx/src/com/android/dx/util/FixedSizeList.java
+++ b/dx/src/com/android/dx/util/FixedSizeList.java
@@ -82,6 +82,7 @@
      * This method will only work if every element of the list
      * implements {@link ToHuman}.
      */
+    @Override
     public String toHuman() {
         String name = getClass().getName();
 
@@ -248,7 +249,7 @@
     private String toString0(String prefix, String separator, String suffix,
                              boolean human) {
         int len = arr.length;
-        StringBuffer sb = new StringBuffer(len * 10 + 10);
+        StringBuilder sb = new StringBuilder(len * 10 + 10);
 
         if (prefix != null) {
             sb.append(prefix);
diff --git a/dx/src/com/android/dx/util/Hex.java b/dx/src/com/android/dx/util/Hex.java
index e95669c..27862ab 100644
--- a/dx/src/com/android/dx/util/Hex.java
+++ b/dx/src/com/android/dx/util/Hex.java
@@ -265,7 +265,7 @@
             return "";
         }
 
-        StringBuffer sb = new StringBuffer(length * 4 + 6);
+        StringBuilder sb = new StringBuilder(length * 4 + 6);
         boolean bol = true;
         int col = 0;
 
diff --git a/dx/src/com/android/dx/util/IntList.java b/dx/src/com/android/dx/util/IntList.java
index be400aa..e0fdefe 100644
--- a/dx/src/com/android/dx/util/IntList.java
+++ b/dx/src/com/android/dx/util/IntList.java
@@ -139,7 +139,7 @@
     /** {@inheritDoc} */
     @Override
     public String toString() {
-        StringBuffer sb = new StringBuffer(size * 5 + 10);
+        StringBuilder sb = new StringBuilder(size * 5 + 10);
 
         sb.append('{');
 
diff --git a/dx/src/com/android/dx/util/ListIntSet.java b/dx/src/com/android/dx/util/ListIntSet.java
index 129b305..3bb0ea6 100644
--- a/dx/src/com/android/dx/util/ListIntSet.java
+++ b/dx/src/com/android/dx/util/ListIntSet.java
@@ -35,6 +35,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void add(int value) {
         int index = ints.binarysearch(value);
 
@@ -44,6 +45,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public void remove(int value) {
         int index = ints.indexOf(value);
 
@@ -53,11 +55,13 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean has(int value) {
         return ints.indexOf(value) >= 0;
     }
 
     /** {@inheritDoc} */
+    @Override
     public void merge(IntSet other) {
         if (other instanceof ListIntSet) {
             ListIntSet o = (ListIntSet) other;
@@ -100,21 +104,25 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public int elements() {
         return ints.size();
     }
 
     /** {@inheritDoc} */
+    @Override
     public IntIterator iterator() {
         return new IntIterator() {
             private int idx = 0;
 
             /** {@inheritDoc} */
+            @Override
             public boolean hasNext() {
                 return idx < ints.size();
             }
 
             /** {@inheritDoc} */
+            @Override
             public int next() {
                 if (!hasNext()) {
                     throw new NoSuchElementException();
@@ -126,6 +134,7 @@
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toString() {
         return ints.toString();
     }
diff --git a/dx/src/com/android/dx/util/Output.java b/dx/src/com/android/dx/util/Output.java
index 8ddec2e..5f6f470 100644
--- a/dx/src/com/android/dx/util/Output.java
+++ b/dx/src/com/android/dx/util/Output.java
@@ -46,6 +46,7 @@
      *
      * @param value the value to write; all but the low 8 bits are ignored
      */
+    @Override
     public void writeByte(int value);
 
     /**
diff --git a/dx/src/com/android/multidex/ClassReferenceListBuilder.java b/dx/src/com/android/multidex/ClassReferenceListBuilder.java
index 6901ece..6f2fe38 100644
--- a/dx/src/com/android/multidex/ClassReferenceListBuilder.java
+++ b/dx/src/com/android/multidex/ClassReferenceListBuilder.java
@@ -26,7 +26,6 @@
 import com.android.dx.rop.type.Prototype;
 import com.android.dx.rop.type.StdTypeList;
 import com.android.dx.rop.type.TypeList;
-
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.util.Enumeration;
diff --git a/dx/src/com/android/multidex/FolderPathElement.java b/dx/src/com/android/multidex/FolderPathElement.java
index 97fb11f..254c509 100644
--- a/dx/src/com/android/multidex/FolderPathElement.java
+++ b/dx/src/com/android/multidex/FolderPathElement.java
@@ -27,7 +27,7 @@
  */
 class FolderPathElement implements ClassPathElement {
 
-    private File baseFolder;
+    private final File baseFolder;
 
     public FolderPathElement(File baseFolder) {
         this.baseFolder = baseFolder;
diff --git a/dx/src/com/android/multidex/MainDexListBuilder.java b/dx/src/com/android/multidex/MainDexListBuilder.java
index 7fed119..e0cd34c 100644
--- a/dx/src/com/android/multidex/MainDexListBuilder.java
+++ b/dx/src/com/android/multidex/MainDexListBuilder.java
@@ -22,7 +22,6 @@
 import com.android.dx.cf.iface.FieldList;
 import com.android.dx.cf.iface.HasAttribute;
 import com.android.dx.cf.iface.MethodList;
-
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.util.HashSet;
@@ -47,7 +46,7 @@
 
     private static final String EOL = System.getProperty("line.separator");
 
-    private static String USAGE_MESSAGE =
+    private static final String USAGE_MESSAGE =
             "Usage:" + EOL + EOL +
             "Short version: Don't use this." + EOL + EOL +
             "Slightly longer version: This tool is used by mainDexClasses script to build" + EOL +
diff --git a/dx/src/com/android/multidex/Path.java b/dx/src/com/android/multidex/Path.java
index 155b40f..adac5a0 100644
--- a/dx/src/com/android/multidex/Path.java
+++ b/dx/src/com/android/multidex/Path.java
@@ -18,7 +18,6 @@
 
 import com.android.dx.cf.direct.DirectClassFile;
 import com.android.dx.cf.direct.StdAttributeFactory;
-
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.FileNotFoundException;
@@ -116,4 +115,4 @@
         }
         return classFile;
     }
-}
\ No newline at end of file
+}