Remove trailing whitespace.

Change-Id: I95534bb2b88eaf48f2329282041118cd034c812b
diff --git a/dexdump/DexDump.c b/dexdump/DexDump.c
index e5527ca..318f840 100644
--- a/dexdump/DexDump.c
+++ b/dexdump/DexDump.c
@@ -80,20 +80,20 @@
 } FieldMethodInfo;
 
 /*
- * Get 2 little-endian bytes. 
- */ 
+ * Get 2 little-endian bytes.
+ */
 static inline u2 get2LE(unsigned char const* pSrc)
 {
     return pSrc[0] | (pSrc[1] << 8);
-}   
+}
 
 /*
- * Get 4 little-endian bytes. 
- */ 
+ * Get 4 little-endian bytes.
+ */
 static inline u4 get4LE(unsigned char const* pSrc)
 {
     return pSrc[0] | (pSrc[1] << 8) | (pSrc[2] << 16) | (pSrc[3] << 24);
-}   
+}
 
 /*
  * Converts a single-character primitive type into its human-readable
@@ -255,7 +255,7 @@
 {
 #define NUM_FLAGS   18
     static const char* kAccessStrings[kAccessForMAX][NUM_FLAGS] = {
-        {   
+        {
             /* class, inner class */
             "PUBLIC",           /* 0x0001 */
             "PRIVATE",          /* 0x0002 */
@@ -573,7 +573,7 @@
     if (triesSize == 0) {
         printf("      catches       : (none)\n");
         return;
-    } 
+    }
 
     printf("      catches       : %d\n", triesSize);
 
@@ -585,7 +585,7 @@
         u4 start = pTry->startAddr;
         u4 end = start + pTry->insnCount;
         DexCatchIterator iterator;
-        
+
         printf("        0x%04x - 0x%04x\n", start, end);
 
         dexCatchIteratorInit(&iterator, pCode, pTry->handlerOff);
@@ -593,14 +593,14 @@
         for (;;) {
             DexCatchHandler* handler = dexCatchIteratorNext(&iterator);
             const char* descriptor;
-            
+
             if (handler == NULL) {
                 break;
             }
-            
-            descriptor = (handler->typeIdx == kDexNoIndex) ? "<any>" : 
+
+            descriptor = (handler->typeIdx == kDexNoIndex) ? "<any>" :
                 dexStringByTypeIdx(pDexFile, handler->typeIdx);
-            
+
             printf("          %s -> 0x%04x\n", descriptor,
                     handler->address);
         }
@@ -616,11 +616,11 @@
 /*
  * Dump the positions list.
  */
-void dumpPositions(DexFile* pDexFile, const DexCode* pCode, 
+void dumpPositions(DexFile* pDexFile, const DexCode* pCode,
         const DexMethod *pDexMethod)
 {
     printf("      positions     : \n");
-    const DexMethodId *pMethodId 
+    const DexMethodId *pMethodId
             = dexGetMethodId(pDexFile, pDexMethod->methodIdx);
     const char *classDescriptor
             = dexStringByTypeIdx(pDexFile, pMethodId->classIdx);
@@ -634,7 +634,7 @@
         const char *signature)
 {
     printf("        0x%04x - 0x%04x reg=%d %s %s %s\n",
-            startAddress, endAddress, reg, name, descriptor, 
+            startAddress, endAddress, reg, name, descriptor,
             signature);
 }
 
@@ -646,9 +646,9 @@
 {
     printf("      locals        : \n");
 
-    const DexMethodId *pMethodId 
+    const DexMethodId *pMethodId
             = dexGetMethodId(pDexFile, pDexMethod->methodIdx);
-    const char *classDescriptor 
+    const char *classDescriptor
             = dexStringByTypeIdx(pDexFile, pMethodId->classIdx);
 
     dexDecodeDebugInfo(pDexFile, pCode, classDescriptor, pMethodId->protoIdx,
@@ -669,7 +669,7 @@
     pMethInfo->name = dexStringById(pDexFile, pMethodId->nameIdx);
     pMethInfo->signature = dexCopyDescriptorFromMethodId(pDexFile, pMethodId);
 
-    pMethInfo->classDescriptor = 
+    pMethInfo->classDescriptor =
             dexStringByTypeIdx(pDexFile, pMethodId->classIdx);
     return true;
 }
@@ -1067,9 +1067,9 @@
             insnWidth = 2 + get2LE((const u1*)(insns+1)) * 4;
         } else if (instr == kArrayDataSignature) {
             int width = get2LE((const u1*)(insns+1));
-            int size = get2LE((const u1*)(insns+2)) | 
+            int size = get2LE((const u1*)(insns+2)) |
                        (get2LE((const u1*)(insns+3))<<16);
-            // The plus 1 is to round up for odd size and width 
+            // The plus 1 is to round up for odd size and width
             insnWidth = 4 + ((size * width) + 1) / 2;
         } else {
             opCode = instr & 0xff;
@@ -1355,7 +1355,7 @@
         printf("Trouble reading class data (#%d)\n", idx);
         goto bail;
     }
-    
+
     classDescriptor = dexStringByTypeIdx(pDexFile, pClassDef->classIdx);
 
     /*
diff --git a/dexdump/OpCodeNames.h b/dexdump/OpCodeNames.h
index 1aec0d1..3965c6d 100644
--- a/dexdump/OpCodeNames.h
+++ b/dexdump/OpCodeNames.h
@@ -15,7 +15,7 @@
  */
 /*
  * Dalvik opcode names.
- */ 
+ */
 #ifndef _DEXDUMP_OPCODENAMES
 #define _DEXDUMP_OPCODENAMES
 
diff --git a/dexlist/DexList.c b/dexlist/DexList.c
index 841c17f..f2bec09 100644
--- a/dexlist/DexList.c
+++ b/dexlist/DexList.c
@@ -165,19 +165,19 @@
         fprintf(stderr, "Trouble reading class data\n");
         return;
     }
-    
+
     if (pClassDef->sourceFileIdx == 0xffffffff) {
         fileName = NULL;
     } else {
         fileName = dexStringById(pDexFile, pClassDef->sourceFileIdx);
     }
-    
-    /* 
+
+    /*
      * TODO: Each class def points at a sourceFile, so maybe that
      * should be printed out. However, this needs to be coordinated
      * with the tools that parse this output.
      */
-       
+
     for (i = 0; i < (int) pClassData->header.directMethodsSize; i++) {
         dumpMethod(pDexFile, fileName, &pClassData->directMethods[i], i);
     }
diff --git a/docs/dalvik-bytecode.html b/docs/dalvik-bytecode.html
index 6d6c4f1..e69a962 100644
--- a/docs/dalvik-bytecode.html
+++ b/docs/dalvik-bytecode.html
@@ -448,7 +448,7 @@
     no arrays of <code>long</code> or <code>double</code>, but reference
     types are acceptable). The constructed
     instance is stored as a "result" in the same way that the method invocation
-    instructions store their results, so the constructed instance must 
+    instructions store their results, so the constructed instance must
     be moved to a register with an immediately subsequent
     <code>move-result-object</code> instruction (if it is to be used).</td>
 </tr>
@@ -1453,7 +1453,7 @@
     float result = a % b;
   </td>
   <td>Floating point remainder after division. This function is different
-    than IEEE 754 remainder and is defined as 
+    than IEEE 754 remainder and is defined as
     <code>result == a - roundTowardZero(a / b) * b</code>.
   </td>
 </tr>
@@ -1491,7 +1491,7 @@
     double result = a % b;
   </td>
   <td>Floating point remainder after division. This function is different
-    than IEEE 754 remainder and is defined as 
+    than IEEE 754 remainder and is defined as
     <code>result == a - roundTowardZero(a / b) * b</code>.
   </td>
 </tr>
diff --git a/docs/dalvik-constraints.html b/docs/dalvik-constraints.html
index 105225a..69abf3a 100644
--- a/docs/dalvik-constraints.html
+++ b/docs/dalvik-constraints.html
@@ -5,11 +5,11 @@
     <title>Dalvik bytecode constraints</title>
     <link rel=stylesheet href="dalvik-constraints.css">
   </head>
-  
+
   <body>
-  
+
     <h1>Dalvik bytecode constraints</h1>
-  
+
 <!--
     <h1>General integrity constraints</h1>
 
@@ -18,17 +18,17 @@
         <th>
           Identifier
         </th>
-        
+
         <th>
           Description
         </th>
       </tr>
-  
+
       <tr>
         <td>
           A1
         </td>
-        
+
         <td>
           The magic number of the DEX file must be "dex\n035\0".
         </td>
@@ -38,7 +38,7 @@
         <td>
           A1
         </td>
-        
+
         <td>
           The checksum must be an Adler-32 checksum of the whole file contents
           except magic and checksum field.
@@ -54,14 +54,14 @@
 The header_size must have the value 0x70.
 
 The endian_tag must have either the value ENDIAN_CONSTANT or
-REVERSE_ENDIAN_CONSTANT.   
- 
+REVERSE_ENDIAN_CONSTANT.
+
 For each of the link, string_ids, type_ids, proto_ids, field_ids, method_ids, class_defs
 and data sections, the offset and size fields must be either both zero or both
 non-zero. In the latter case, the offset must be four-byte-aligned.
 
 All offset fields in the header except map_off must be four-byte-aligned.
- 
+
 The map_off field must be either zero or point into the data section. In the
 latter case, the data section must exist.
 
@@ -124,7 +124,7 @@
 ...
 
 -->
- 
+
     <h2>
       Static constraints
     </h2>
@@ -134,153 +134,153 @@
     They usually can be checked without employing control or data-flow analysis
     techniques.
     </p>
-  
+
     <table>
       <tr>
         <th>
           Identifier
         </th>
-        
+
         <th>
           Description
         </th>
-        
+
         <th>
           Spec equivalent
         </th>
       </tr>
-  
+
       <tr>
         <td>
           A1
         </td>
-        
+
         <td>
-          The <code>insns</code> array must not be empty. 
+          The <code>insns</code> array must not be empty.
         </td>
-  
+
         <td>
           4.8.1.1
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A2
         </td>
-        
+
         <td>
           The first opcode in the <code>insns</code> array must have index zero.
         </td>
-  
+
         <td>
           4.8.1.3
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A3
         </td>
-        
+
         <td>
           The <code>insns</code> array must only contain valid Dalvik opcodes.
         </td>
-  
+
         <td>
           4.8.1.4
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A4
         </td>
-        
+
         <td>
           The index of instruction <code>n+1</code> must equal the index of
           instruction <code>n</code> plus the length of instruction
           <code>n</code>, taking into account possible operands.
         </td>
-  
+
         <td>
           4.8.1.5
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A5
         </td>
-        
+
         <td>
           The last instruction in the <code>insns</code> array must end at index
-          <code>insns_size-1</code>.   
+          <code>insns_size-1</code>.
         </td>
-  
+
         <td>
           4.8.1.6
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A6
         </td>
-        
+
         <td>
           All <code>goto</code> and <code>if-&lt;kind&gt;</code> targets must
           be opcodes within in the same method.
         </td>
-  
+
         <td>
           4.8.1.7
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A7
         </td>
-        
+
         <td>
           All targets of a <code>packed-switch</code> instruction must be
           opcodes within in the same method. The size and the list of targets
-          must be consistent. 
+          must be consistent.
         </td>
-  
+
         <td>
           4.8.1.8
         </td>
       </tr>
-          
+
       <tr>
         <td>
           A8
         </td>
-        
+
         <td>
           All targets of a <code>sparse-switch</code> instruction must be
           opcodes within in the same method. The corresponding table must be
-          consistent and sorted low-to-high. 
+          consistent and sorted low-to-high.
         </td>
-  
+
         <td>
           4.8.1.9
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A9
         </td>
-        
+
         <td>
           The <code>B</code> operand of the <code>const-string</code> and
           <code>const-string/jumbo</code> instructions must be a valid index
           into the string constant pool.
         </td>
-  
+
         <td>
           4.8.1.10
         </td>
@@ -290,31 +290,31 @@
         <td>
           A10
         </td>
-        
+
         <td>
           The <code>C</code> operand of the <code>iget&lt;kind&gt;</code> and
           <code>iput&lt;kind&gt;</code> instructions must be a valid index into
           the field constant pool. The referenced entry must represent an
           instance field.
         </td>
-  
+
         <td>
           4.8.1.12
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A11
         </td>
-        
+
         <td>
           The <code>C</code> operand of the <code>sget&lt;kind&gt;</code> and
           <code>sput&lt;kind&gt;</code> instructions must be a valid index into
           the field constant pool. The referenced entry must represent a static
           field.
         </td>
-  
+
         <td>
           4.8.1.12
         </td>
@@ -324,33 +324,33 @@
         <td>
           A12
         </td>
-        
+
         <td>
           The <code>C</code> operand of the <code>invoke-virtual</code>,
           <code>invoke-super</code>, <code<invoke-direct</code> and
           <code>invoke-static</code> instructions must be a valid index into the
           method constant pool. In all cases, the referenced
-          <code>method_id</code> must belong to a class (not an interface). 
+          <code>method_id</code> must belong to a class (not an interface).
         </td>
-  
+
         <td>
           4.8.1.13
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A13
         </td>
-        
+
         <td>
           The <code>B</code> operand of the <code>invoke-virtual/range</code>,
           <code>invoke-super/range</code>, <code>invoke-direct/range</code>, and
           <code>invoke-static/range</code> instructions must be a valid index
           into the method constant pool. In all cases, the referenced
-          <code>method_id</code> must belong to a class (not an interface). 
+          <code>method_id</code> must belong to a class (not an interface).
         </td>
-  
+
         <td>
           4.8.1.13
         </td>
@@ -360,81 +360,81 @@
         <td>
           A14
         </td>
-        
+
         <td>
           A method the name of which starts with a '<' must only be invoked
           implicitly by the VM, not by code originating from a Dex file. The
           only exception is the instance initializer, which may be invoked by
           <code>invoke-direct</code>.
         </td>
-  
+
         <td>
           4.8.1.14
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A15
         </td>
-        
+
         <td>
           The <code>C</code> operand of the <code>invoke-interface</code>
           instruction must be a valid index into the method constant pool. The
           referenced <code>method_id</code> must belong to an interface (not a
           class).
         </td>
-  
+
         <td>
           4.8.1.15
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A16
         </td>
-        
+
         <td>
           The <code>B</code> operand of the <code>invoke-interface/range</code>
           instruction must be a valid index into the method constant pool.
           The referenced <code>method_id</code> must belong to an interface (not
           a class).
         </td>
-  
+
         <td>
           4.8.1.15
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A17
         </td>
-        
+
         <td>
           The <code>B</code> operand of the <code>const-class</code>,
           <code>check-cast</code>, <code>new-instance</code>, and
           <code>filled-new-array/range</code> instructions must be a valid index
           into the type constant pool.
         </td>
-  
+
         <td>
           4.8.1.16
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A18
         </td>
-        
+
         <td>
           The <code>C</code> operand of the <code>instance-of</code>,
           <code>new-array</code>, and <code>filled-new-array</code>
           instructions must be a valid index into the type constant pool.
         </td>
-  
+
         <td>
           4.8.1.16
         </td>
@@ -444,85 +444,85 @@
         <td>
           A19
         </td>
-        
+
         <td>
           The dimensions of an array created by a <code>new-array</code>
           instruction must be less than <code>256</code>.
         </td>
-  
+
         <td>
           4.8.1.17
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A20
         </td>
-        
+
         <td>
           The <code>new</code> instruction must not refer to array classes,
           interfaces, or abstract classes.
         </td>
-  
+
         <td>
           4.8.1.18
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A21
         </td>
-        
+
         <td>
           The type referred to by a <code>new-array</code> instruction must be
           a valid, non-reference type.
         </td>
-  
+
         <td>
           4.8.1.20
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A22
         </td>
-        
+
         <td>
           All registers referred to by an instruction in a single-width
           (non-pair) fashion must be valid for the current method. That is,
           their indices must be non-negative and smaller than
-          <code>registers_size</code>. 
+          <code>registers_size</code>.
         </td>
-  
+
         <td>
           4.8.1.21
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A23
         </td>
-        
+
         <td>
           All registers referred to by an instruction in a double-width (pair)
           fashion must be valid for the current method. That is, their indices
-          must be non-negative and smaller than <code>registers_size-1</code>. 
+          must be non-negative and smaller than <code>registers_size-1</code>.
         </td>
-  
+
         <td>
           4.8.1.23
         </td>
       </tr>
     </table>
-      
+
     <h2>
       Structural constraints
     </h2>
-  
+
     <p>
     Structural constraints are constraints on relationships between several
     elements of the bytecode. They usually can't be checked without employing
@@ -534,291 +534,291 @@
         <th>
           Identifier
         </th>
-        
+
         <th>
           Description
         </th>
-        
+
         <th>
           Spec equivalent
         </th>
       </tr>
-  
+
       <tr>
         <td>
           B1
         </td>
-        
+
         <td>
           The number and types of arguments (registers and immediate values)
           must always match the instruction.
         </td>
-  
+
         <td>
           4.8.2.1
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B2
         </td>
-        
+
         <td>
-          Register pairs must never be broken up. 
+          Register pairs must never be broken up.
         </td>
-  
+
         <td>
           4.8.2.3
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B3
         </td>
-        
+
         <td>
           A register (or pair) has to be assigned first before it can be
           read.
         </td>
-  
+
         <td>
           4.8.2.4
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B4
         </td>
-        
+
         <td>
           An <code>invoke-direct</code> instruction must only invoke an instance
           initializer or a method in the current class or one of its
-          superclasses. 
+          superclasses.
         </td>
-  
+
         <td>
           4.8.2.7
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B5
         </td>
-        
+
         <td>
           An instance initializer must only be invoked on an uninitialized
           instance.
         </td>
-  
+
         <td>
           4.8.2.8
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B6
         </td>
-        
+
         <td>
           Instance methods may only be invoked on and instance fields may only
-          be accessed on already initialized instances.   
+          be accessed on already initialized instances.
         </td>
-  
+
         <td>
           4.8.2.9
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B7
         </td>
-        
+
         <td>
           A register which holds the result of a <code>new-instance</code>code>
           instruction must not be used if the same
           <code>new-instance</code>code> instruction is again executed before
-          the instance is initialized.           
+          the instance is initialized.
         </td>
-  
+
         <td>
           4.8.2.10
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B8
         </td>
-        
+
         <td>
            An instance initializer must call another instance initializer (same
            class or superclass) before any instance members can be accessed.
            Exceptions are non-inherited instance fields, which can be assigned
            before calling another initializer, and the <code>Object</code> class
-           in general.   
+           in general.
         </td>
-  
+
         <td>
           4.8.2.11
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B9
         </td>
-        
+
         <td>
            All actual method arguments must be assignment-compatible with their
-           respective formal arguments.    
+           respective formal arguments.
         </td>
-  
+
         <td>
           4.8.2.12
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B10
         </td>
-        
+
         <td>
            For each instance method invocation, the actual instance must be
            assignment-compatible with the class or interface specified in the
            instruction.
         </td>
-  
+
         <td>
           4.8.2.13
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B11
         </td>
-        
+
         <td>
            A <code>return&lt;kind&gt;</code> instruction must match its
-           method's return type.  
+           method's return type.
         </td>
-  
+
         <td>
           4.8.2.14
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B12
         </td>
-        
+
         <td>
            When accessing protected members of a superclass, the actual type of
            the instance being accessed must be either the current class or one
            of its subclasses.
         </td>
-  
+
         <td>
           4.8.2.15
         </td>
       </tr>
-  
+
      <tr>
         <td>
           B13
         </td>
-        
+
         <td>
            The type of a value stored into a static field must be
            assignment-compatible with or convertible to the field's type.
         </td>
-  
+
         <td>
           4.8.2.16
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B14
         </td>
-        
+
         <td>
            The type of a value stored into a field must be assignment-compatible
            with or convertible to the field's type.
         </td>
-  
+
         <td>
           4.8.2.17
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B15
         </td>
-        
+
         <td>
            The type of every value stored into an array must be
            assignment-compatible with the array's component type.
         </td>
-  
+
         <td>
           4.8.2.18
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B16
         </td>
-        
+
         <td>
            The <code>A</code> operand of a <code>throw</code> instruction must
-           be assignment-compatible with <code>java.lang.Throwable</code>. 
+           be assignment-compatible with <code>java.lang.Throwable</code>.
         </td>
-  
+
         <td>
           4.8.2.19
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B17
         </td>
-        
+
         <td>
            The last reachable instruction of a method must either be a backwards
            <code>goto</code> or branch, a <code>return</code>, or a
            <code>throw</code> instruction. It must not be possible to leave the
            <code>insns</code> array at the bottom.
         </td>
-  
+
         <td>
           4.8.2.20
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B18
         </td>
-        
+
         <td>
           The unassigned half of a former register pair may not be read (is
           considered invalid) until it has been re-assigned by some other
           instruction.
-        </td>        
-  
+        </td>
+
         <td>
           4.8.2.3, 4.8.2.4
         </td>
@@ -828,15 +828,15 @@
         <td>
           B19
         </td>
-        
+
         <td>
           A <code>move-result&lt;kind&gt;</code> instruction must be immediately
           preceded (in the <code>insns</code> array) by an
           <code>&lt;invoke-kind&gt;</code> instruction. The only exception is
           the <code>move-result-object</code> instruction, which may also be
-          preceded by a <code>filled-new-array</code> instruction. 
+          preceded by a <code>filled-new-array</code> instruction.
         </td>
-  
+
         <td>
           -
         </td>
@@ -846,16 +846,16 @@
         <td>
           B20
         </td>
-        
+
         <td>
           A <code>move-result&lt;kind&gt;</code> instruction must be immediately
           preceded (in actual control flow) by a matching
           <code>return-&lt;kind&gt;</code> instruction (it must not be jumped
           to). The only exception is the <code>move-result-object</code>
           instruction, which may also be preceded by a
-          <code>filled-new-array</code> instruction. 
+          <code>filled-new-array</code> instruction.
         </td>
-  
+
         <td>
           -
         </td>
@@ -865,28 +865,28 @@
         <td>
           B21
         </td>
-        
+
         <td>
           A <code>move-exception</code> instruction must only appear as the
           first instruction in an exception handler.
         </td>
-  
+
         <td>
           -
         </td>
       </tr>
-      
+
       <tr>
         <td>
           B22
         </td>
-        
+
         <td>
           The <code>packed-switch-data</code>, <code>sparse-switch-data</code>,
           and <code>fill-array-data</code> pseudo-instructions must not be
           reachable by control flow.
         </td>
-  
+
         <td>
           -
         </td>
diff --git a/docs/dex-format.css b/docs/dex-format.css
index 17e935f..153dd4e 100644
--- a/docs/dex-format.css
+++ b/docs/dex-format.css
@@ -85,13 +85,13 @@
     background: #eeeeff;
 }
 
-table p { 
+table p {
     margin-bottom: 0pt;
 }
 
 /* for the bnf syntax sections */
 
-table.bnf { 
+table.bnf {
     background: #eeeeff;
     border-color: #aaaaff;
     border-style: solid;
@@ -104,7 +104,7 @@
     padding-right: 6pt;
 }
 
-table.bnf td { 
+table.bnf td {
     border: none;
     padding-left: 6pt;
     padding-right: 6pt;
@@ -112,12 +112,12 @@
     padding-bottom: 1pt;
 }
 
-table.bnf td:first-child { 
+table.bnf td:first-child {
     padding-right: 0pt;
     width: 8pt;
 }
 
-table.bnf td:first-child td { 
+table.bnf td:first-child td {
     padding-left: 0pt;
 }
 
diff --git a/docs/dex-format.html b/docs/dex-format.html
index bc69dd0..cab9d4c 100644
--- a/docs/dex-format.html
+++ b/docs/dex-format.html
@@ -1305,7 +1305,7 @@
 <tr>
   <td>data_off</td>
   <td>uint</td>
-  <td>offset from the start of the file to the start of the 
+  <td>offset from the start of the file to the start of the
    <code>data</code> section.
   </td>
 </tr>
@@ -1559,7 +1559,7 @@
   <td>data</td>
   <td>ubyte[]</td>
   <td>a series of MUTF-8 code units (a.k.a. octets, a.k.a. bytes)
-    followed by a byte of value <code>0</code>. See 
+    followed by a byte of value <code>0</code>. See
     "MUTF-8 (Modified UTF-8) Encoding" above for details and
     discussion about the data format.
     <p><b>Note:</b> It is acceptable to have a string which includes
@@ -1892,7 +1892,7 @@
 </tbody>
 </table>
 
-<p><b>Note:</b> All elements' <code>field_id</code>s and 
+<p><b>Note:</b> All elements' <code>field_id</code>s and
 <code>method_id</code>s must refer to the same defining class.</p>
 
 <h3><code>encoded_field</code> Format</h3>
@@ -2055,10 +2055,10 @@
 <tr>
   <td>debug_info_off</td>
   <td>uint</td>
-  <td>offset from the start of the file to the debug info (line numbers + 
-    local variable info) sequence for this code, or <code>0</code> if 
-    there simply is no information. The offset, if non-zero, should be 
-    to a location in the <code>data</code> section. The format of 
+  <td>offset from the start of the file to the debug info (line numbers +
+    local variable info) sequence for this code, or <code>0</code> if
+    there simply is no information. The offset, if non-zero, should be
+    to a location in the <code>data</code> section. The format of
     the data is specified by "<code>debug_info_item</code>" below.
   </td>
 </tr>
@@ -2258,7 +2258,7 @@
 should be associated with the next positions table entry emitted by
 the state machine. It is initialized in the sequence header, and may
 change in positive or negative directions but must never be less than
-<code>1</code>. The <code>source_file</code> register represents the 
+<code>1</code>. The <code>source_file</code> register represents the
 source file that the line number entries refer to. It is initialized to
 the value of <code>source_file_idx</code> in <code>class_def_item</code>.
 The other two variables, <code>prologue_end</code> and
@@ -2282,7 +2282,7 @@
 <tr>
  <td>line_start</td>
  <td>uleb128</td>
- <td>the initial value for the state machine's <code>line</code> register. 
+ <td>the initial value for the state machine's <code>line</code> register.
     Does not represent an actual positions entry.
  </td>
 </tr>
@@ -2351,7 +2351,7 @@
     <code>name_idx</code>: string index of the name<br/>
     <code>type_idx</code>: type index of the type
   </td>
-  <td>introduces a local variable at the current address. Either 
+  <td>introduces a local variable at the current address. Either
     <code>name_idx</code> or <code>type_idx</code> may be
     <code>NO_INDEX</code> to indicate that that value is unknown.
   </td>
@@ -2363,7 +2363,7 @@
     uleb128p1&nbsp;name_idx<br/>
     uleb128p1&nbsp;type_idx<br/>
     uleb128p1&nbsp;sig_idx
-  </td> 
+  </td>
   <td><code>register_num</code>: register that will contain local<br/>
     <code>name_idx</code>: string index of the name<br/>
     <code>type_idx</code>: type index of the type<br/>
@@ -2385,7 +2385,7 @@
   <td>0x05</td>
   <td>uleb128&nbsp;register_num</td>
   <td><code>register_num</code>: register that contained local</td>
-  <td>marks a currently-live local variable as out of scope at the current 
+  <td>marks a currently-live local variable as out of scope at the current
     address
   </td>
 </tr>
@@ -2404,9 +2404,9 @@
   <td>0x07</td>
   <td></td>
   <td><i>(none)</i></td>
-  <td>sets the <code>prologue_end</code> state machine register, 
-    indicating that the next position entry that is added should be 
-    considered the end of a method prologue (an appropriate place for 
+  <td>sets the <code>prologue_end</code> state machine register,
+    indicating that the next position entry that is added should be
+    considered the end of a method prologue (an appropriate place for
     a method breakpoint). The <code>prologue_end</code> register is
     cleared by any special (<code>&gt;= 0x0a</code>) opcode.
   </td>
@@ -2416,9 +2416,9 @@
   <td>0x08</td>
   <td></td>
   <td><i>(none)</i></td>
-  <td>sets the <code>epilogue_begin</code> state machine register, 
-    indicating that the next position entry that is added should be 
-    considered the beginning of a method epilogue (an appropriate place 
+  <td>sets the <code>epilogue_begin</code> state machine register,
+    indicating that the next position entry that is added should be
+    considered the beginning of a method epilogue (an appropriate place
     to suspend execution before method exit).
     The <code>epilogue_begin</code> register is cleared by any special
     (<code>&gt;= 0x0a</code>) opcode.
@@ -2427,7 +2427,7 @@
 <tr>
   <td>DBG_SET_FILE</td>
   <td>0x09</td>
-  <td>uleb128p1&nbsp;name_idx</td> 
+  <td>uleb128p1&nbsp;name_idx</td>
   <td><code>name_idx</code>: string index of source file name;
     <code>NO_INDEX</code> if unknown
   </td>
@@ -2438,7 +2438,7 @@
 </tr>
 <tr>
   <td><i>Special Opcodes</i></td>
-  <!-- When updating the range below, make sure to search for other 
+  <!-- When updating the range below, make sure to search for other
   instances of 0x0a in this section. -->
   <td>0x0a&hellip;0xff</td>
   <td></td>
@@ -2532,7 +2532,7 @@
 </tbody>
 </table>
 
-<p><b>Note:</b> All elements' <code>field_id</code>s and 
+<p><b>Note:</b> All elements' <code>field_id</code>s and
 <code>method_id</code>s must refer to the same defining class.</p>
 
 <h3><code>field_annotation</code> Format</h3>
diff --git a/docs/hello-world.html b/docs/hello-world.html
index dbbaea6..7491a28 100644
--- a/docs/hello-world.html
+++ b/docs/hello-world.html
@@ -22,7 +22,7 @@
 % <font color="green">dx --dex --output=foo.jar Foo.class</font><br>
 % <font color="green">adb push foo.jar /sdcard</font><br>
 % <font color="green">adb shell dalvikvm -cp /sdcard/foo.jar Foo</font><br>
-Hello, world 
+Hello, world
 </code>
 </p><p>
 The <code>-cp</code> option sets the classpath.  The initial directory
diff --git a/docs/instruction-formats.css b/docs/instruction-formats.css
index ee23c5c..a2dc42f 100644
--- a/docs/instruction-formats.css
+++ b/docs/instruction-formats.css
@@ -124,6 +124,6 @@
     width: 22%;
 }
 
-table.format p { 
+table.format p {
     margin-bottom: 0pt;
 }
\ No newline at end of file
diff --git a/docs/java-bytecode.css b/docs/java-bytecode.css
index 6075c0d..48984b2 100644
--- a/docs/java-bytecode.css
+++ b/docs/java-bytecode.css
@@ -10,7 +10,7 @@
     }
 }
 
-h1 { 
+h1 {
     text-align: center;
 }
 
@@ -26,16 +26,16 @@
     border-width: 0;
 }
 
-td.outer { 
+td.outer {
     width: 25%;
     padding: 0;
 }
 
-td.outer table { 
+td.outer table {
     width: 100%;
 }
 
-td.outer td { 
+td.outer td {
     border-width: 0;
     background: #f8f8f8;
     padding: 1pt;
@@ -43,11 +43,11 @@
     padding-right: 2pt;
 }
 
-tr.d td { 
+tr.d td {
     background: #dddddd;
 }
 
-td.outer td + td + td { 
+td.outer td + td + td {
     font-family: monospace;
     font-weight: bold;
     padding-right: 5pt;
diff --git a/docs/java-constraints.html b/docs/java-constraints.html
index 2410a1e..9d3c434 100644
--- a/docs/java-constraints.html
+++ b/docs/java-constraints.html
@@ -30,7 +30,7 @@
       constraint will fail during the Dx conversion or during verification in
       the VM itself.
     </p>
-  
+
     <h2>
       Static constraints
     </h2>
@@ -40,311 +40,311 @@
     They usually can be checked without employing control or data-flow analysis
     techniques.
     </p>
-    
+
     <table>
       <tr>
         <th>
           Identifier
         </th>
-        
+
         <th>
           Description
         </th>
-        
+
         <th>
           Spec equivalent
         </th>
-        
+
         <th>
           Failure mode
         </th>
       </tr>
-  
+
       <tr>
         <td>
           A1
         </td>
-        
+
         <td>
-          The <code>code</code> array must not be empty. 
+          The <code>code</code> array must not be empty.
         </td>
-  
+
         <td>
           4.8.1.1
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A2
         </td>
-        
+
         <td>
-          The <code>code</code> array must not be larger than 65535 bytes. 
+          The <code>code</code> array must not be larger than 65535 bytes.
         </td>
-  
+
         <td>
           4.8.1.2
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A3
         </td>
-        
+
         <td>
           The first opcode in <code>code</code> array must have index
           <code>0</code>.
         </td>
-  
+
         <td>
           4.8.1.3
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A4
         </td>
-        
+
         <td>
           The <code>code</code> array must only contain valid opcodes.
         </td>
-  
+
         <td>
           4.8.1.4
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A5
         </td>
-        
+
         <td>
           The index of instruction <code>n+1</code> must equal the index of
           instruction <code>n</code> plus the length of instruction
           <code>n</code>, taking into account a possible <code>wide</code>
           instruction. Opcodes modified by a <code>wide</code> instruction must
-          not be directly reachable. 
+          not be directly reachable.
         </td>
-  
+
         <td>
           4.8.1.5
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A6
         </td>
-        
+
         <td>
           The last instruction in <code>code</code> array must end at index
-          <code>code_length-1</code>.   
+          <code>code_length-1</code>.
         </td>
-  
+
         <td>
           4.8.1.6
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A7
         </td>
-        
+
         <td>
           All jump and branch targets must be opcodes within the same method.
           Opcodes modified by a <code>wide</code> instruction must not be
-          directly reachable via a jump or branch instruction. 
+          directly reachable via a jump or branch instruction.
         </td>
-  
+
         <td>
           4.8.1.7
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A8
         </td>
-        
+
         <td>
           All targets of a <code>tableswitch</code> instruction must be opcodes
           within the same method. Upper and lower bounds must be consistent.
           Opcodes modified by a <code>wide</code> instruction must not be
-          directly reachable via a <code>tableswitch</code> instruction. 
+          directly reachable via a <code>tableswitch</code> instruction.
         </td>
-  
+
         <td>
           4.8.1.8
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-          
+
       <tr>
         <td>
           A9
         </td>
-        
+
         <td>
           All targets of a <code>lookupswitch</code> instruction must be opcodes
           within the same method. Its table must be consistent and sorted
           low-to-high. Opcodes modified by a <code>wide</code> instruction must
-          not be directly reachable via a <code>lookupswitch</code> instruction. 
+          not be directly reachable via a <code>lookupswitch</code> instruction.
         </td>
-  
+
         <td>
           4.8.1.9
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A10
         </td>
-        
+
         <td>
           The operands of <code>ldc</code> and <code>ldc_w</code> instructions
           must be valid indices into the constant pool. The respective entries
           must be of type <code>CONSTANT_Integer</code>,
-          <code>CONSTANT_Float</code>, or <code>CONSTANT_String</code>. 
+          <code>CONSTANT_Float</code>, or <code>CONSTANT_String</code>.
         </td>
-  
+
         <td>
           4.8.1.10
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A11
         </td>
-        
+
         <td>
           The operands of <code>ldc2_w</code> instructions must be valid indices
           into the constant pool. The respective entries must be of type
           <code>CONSTANT_Long</code> or <code>CONSTANT_Double</code>. The
           subsequent constant pool entry must be valid and remain unused.
         </td>
-  
+
         <td>
           4.8.1.11
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A12
         </td>
-        
+
         <td>
           The Operands of <code>get&lt;kind&gt;</code> and
           <code>put&lt;kind&gt;</code> instructions must be valid indices into
           constant pool. The respective entries must be of type
           <code>CONSTANT_Fieldref</code>.
         </td>
-  
+
         <td>
           4.8.1.12
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A13
         </td>
-        
+
         <td>
           The first two operands of <code>invokevirtual</code>,
           <code>invokespecial</code>, and <code>invokestatic</code> must form a
           valid 16-bit index into the constant pool. The respective entries must
           be of type <code>CONSTANT_Methodref</code>.
         </td>
-  
+
         <td>
           4.8.1.13
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A14
         </td>
-        
+
         <td>
           Methods whose names start with '<' must only be invoked implicitly by
           the VM, not by class file code. The only exception is the instance
           initializer, which may be invoked by <code>invokespecial</code>.
         </td>
-  
+
         <td>
           4.8.1.14
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           A15
         </td>
-        
+
         <td>
           The first two operands of <code>invokeinterface</code> must form a
           valid 16-bit index into the constant pool. The entry must be of type
@@ -352,21 +352,21 @@
           specify number of local variables and the fourth operand must always
           be zero.
         </td>
-  
+
         <td>
           4.8.1.15
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A16
         </td>
-        
+
         <td>
           The operands of <code>instanceof</code>, <code>checkcast</code>,
           <code>new</code>, and <code>anewarray</code> instructions must
@@ -375,218 +375,218 @@
           into the constant pool. All respective entries must be of type
           <code>CONSTANT_Class</code>.
         </td>
-  
+
         <td>
           4.8.1.16
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
      <tr>
         <td>
           A17
         </td>
-        
+
         <td>
           The dimensions of an array created by <code>anewarray</code>
           instructions must be less than <code>256</code>.
         </td>
-  
+
         <td>
           4.8.1.17
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A18
         </td>
-        
+
         <td>
           The <code>new</code> instruction must not reference array classes,
           interfaces, or abstract classes.
         </td>
-  
+
         <td>
           4.8.1.18
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A19
         </td>
-        
+
         <td>
           The type referenced by a <code>multinewarray</code> instruction must
           have at least as many dimensions as specified in the instruction. The
-          dimensions operand must not be <code>0</code>  
+          dimensions operand must not be <code>0</code>
         </td>
-  
+
         <td>
           4.8.1.19
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A20
         </td>
-        
+
         <td>
           The type referenced by a <code>newarray</code> instruction must be a
           valid, non-reference type.
         </td>
-  
+
         <td>
           4.8.1.20
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A21
         </td>
-        
+
         <td>
           The index operand of instructions explicitly referencing single-width
           local variables must be non-negative and smaller than
           <code>max_locals</code>.
         </td>
-  
+
         <td>
           4.8.1.21
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A22
         </td>
-        
+
         <td>
           The index operand of instructions implicitly referencing single-width
           local variables must be non-negative and smaller than
           <code>max_locals</code>.
         </td>
-  
+
         <td>
           4.8.1.22
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A23
         </td>
-        
+
         <td>
           The index operand of instructions explicitly referencing double-width
           local variables must be non-negative and smaller than
           <code>max_locals-1</code>.
         </td>
-  
+
         <td>
           4.8.1.23
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A24
         </td>
-        
+
         <td>
           The index operand of instructions implicitly referencing double-width
           local variables must be non-negative and smaller than
           <code>max_locals-1</code>.
         </td>
-  
+
         <td>
           4.8.1.24
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A25
         </td>
-        
+
         <td>
           The index operand of <code>wide</code> instructions explicitly
           referencing single-width local variables must be non-negative and
           smaller than <code>max_locals</code>.
         </td>
-  
+
         <td>
           4.8.1.25
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           A26
         </td>
-        
+
         <td>
           The index operand of <code>wide</code> instructions explicitly
           referencing double-width local variables must be non-negative and
           smaller than <code>max_locals-1</code>.
         </td>
-  
+
         <td>
           4.8.1.25
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
     </table>
-      
+
     <h2>
       Structural constraints
     </h2>
-  
+
     <p>
     Structural constraints are constraints on relationships between several
     elements of the bytecode. They usually can't be checked without employing
@@ -598,466 +598,466 @@
         <th>
           Identifier
         </th>
-        
+
         <th>
           Description
         </th>
-        
+
         <th>
           Spec equivalent
         </th>
-        
+
         <th>
           Failure mode
         </th>
       </tr>
-  
+
       <tr>
         <td>
           B1
         </td>
-        
+
         <td>
           The number and types of arguments (operands and local variables) must
           always match the instruction.
         </td>
-  
+
         <td>
           4.8.2.1
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-      
+
       <tr>
         <td>
           B2
         </td>
-        
+
         <td>
           The operand stack must have the same depth for all executions paths
-          leading to an instruction. 
+          leading to an instruction.
         </td>
-  
+
         <td>
           4.8.2.2
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B3
         </td>
-        
+
         <td>
-          Local variable pairs must never be broken up. 
+          Local variable pairs must never be broken up.
         </td>
-  
+
         <td>
           4.8.2.3
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B4
         </td>
-        
+
         <td>
           A local variable (or pair) has to be assigned first before it can be
           read.
         </td>
-  
+
         <td>
           4.8.2.4
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B5
         </td>
-        
+
         <td>
-          The operand stack must never grow beyond <code>max_stack</code>. 
+          The operand stack must never grow beyond <code>max_stack</code>.
         </td>
-  
+
         <td>
           4.8.2.5
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B6
         </td>
-        
+
         <td>
-          The operand stack must never underflow. 
+          The operand stack must never underflow.
         </td>
-  
+
         <td>
           4.8.2.6
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B7
         </td>
-        
+
         <td>
           An <code>invokespecial</code> instruction must only invoke an instance
           initializer or a method in the current class or one of its
-          superclasses. 
+          superclasses.
         </td>
-  
+
         <td>
           4.8.2.7
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B8
         </td>
-        
+
         <td>
           An instance initializer must only be invoked on an uninitialized
-          instance residing on the operand stack. 
+          instance residing on the operand stack.
         </td>
-  
+
         <td>
           4.8.2.8
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B9
         </td>
-        
+
         <td>
           Instance methods may only be invoked on and instance fields may only
-          be accessed on already initialized instances.   
+          be accessed on already initialized instances.
         </td>
-  
+
         <td>
           4.8.2.9
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B10
         </td>
-        
+
         <td>
            The must be no backwards branches with uninitialized instances on the
            operand stack or in local variables. There must be no code protected
            by an exception handler that contains local variables with
            uninitialized instances.
         </td>
-  
+
         <td>
           4.8.2.10
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B11
         </td>
-        
+
         <td>
            An instance initializer must call another instance initializer (same
            class or superclass) before any instance members can be accessed.
            Exceptions are non-inherited instance fields, which can be assigned
            before calling another initializer, and the <code>Object</code> class
-           in general.   
+           in general.
         </td>
-  
+
         <td>
           4.8.2.11
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B12
         </td>
-        
+
         <td>
            All actual method arguments must be assignment-compatible with formal
-           arguments.    
+           arguments.
         </td>
-  
+
         <td>
           4.8.2.12
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B13
         </td>
-        
+
         <td>
            For each instance method invocation, the actual instance must be
            assignment-compatible with the class or interface specified in the
            instruction.
         </td>
-  
+
         <td>
           4.8.2.13
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B14
         </td>
-        
+
         <td>
-           A returns instruction must match its method's return type.   
+           A returns instruction must match its method's return type.
         </td>
-  
+
         <td>
           4.8.2.14
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B15
         </td>
-        
+
         <td>
            When accessing protected members of a superclass, the actual type of
            the instance being accessed must be either the current class or one
            of its subclasses.
         </td>
-  
+
         <td>
           4.8.2.15
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
      <tr>
         <td>
           B16
         </td>
-        
+
         <td>
            The type of a value stored into a static field must be
            assignment-compatible with or convertible to the field's type.
         </td>
-  
+
         <td>
           4.8.2.16
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B17
         </td>
-        
+
         <td>
            The type of a value stored into a field must be assignment-compatible
            with or convertible to the field's type.
         </td>
-  
+
         <td>
           4.8.2.17
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B18
         </td>
-        
+
         <td>
            The type of every value stored into an array must be
            assignment-compatible with the array's component type.
         </td>
-  
+
         <td>
           4.8.2.18
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B19
         </td>
-        
+
         <td>
            The operand of an <code>athrow</code> instruction must be
-           assignment-compatible with <code>java.lang.Throwable</code>. 
+           assignment-compatible with <code>java.lang.Throwable</code>.
         </td>
-  
+
         <td>
           4.8.2.19
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B20
         </td>
-        
+
         <td>
            The last reachable instruction of a method must either be a backwards
            jump or branch, a return, or an <code>athrow</code> instruction. It
            must not be possible to leave the <code>code</code> array at the
            bottom.
         </td>
-  
+
         <td>
           4.8.2.20
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B21
         </td>
-        
+
         <td>
            Local variable values must not be used as return addresses.
         </td>
-  
+
         <td>
           4.8.2.21
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B22
         </td>
-        
+
         <td>
           There must be a single, uniquely determined return instruction per
           subroutine call.
         </td>
-  
+
         <td>
           4.8.2.22
         </td>
-  
+
         <td>
           VM
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B23
         </td>
-        
+
         <td>
           Subroutine calls must not be directly or indirectly self-recursive.
         </td>
-  
+
         <td>
           4.8.2.23
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
       <tr>
         <td>
           B24
         </td>
-        
+
         <td>
            <code>ReturnAddress</code> instances must not be reused. If a
            subroutine returns to a <code>ReturnAddress</code> further up the
@@ -1065,16 +1065,16 @@
            <code>ReturnAddress</code> instances further down the stack must
            never be used.
         </td>
-  
+
         <td>
           4.8.2.24
         </td>
-  
+
         <td>
           DX
         </td>
       </tr>
-  
+
     </table>
   </body>
 </html>
diff --git a/docs/jni-tips.html b/docs/jni-tips.html
index fc63cca..76cb03f 100644
--- a/docs/jni-tips.html
+++ b/docs/jni-tips.html
@@ -124,7 +124,7 @@
      * class/field/method IDs for this class.  Returns false on failure.
      */
     native private static boolean nativeClassInit();
- 
+
     /*
      * Invoke the native initializer when the class is loaded.
      */
diff --git a/docs/libraries.html b/docs/libraries.html
index e1c3035..ed2fa72 100644
--- a/docs/libraries.html
+++ b/docs/libraries.html
@@ -6,7 +6,7 @@
 <head>
 
 <title>Dalvik Libraries</title>
-    
+
 <link rel=stylesheet href="dex-format.css">
 <link href="prettify.css" type="text/css" rel="stylesheet" />
 <script type="text/javascript" src="prettify.js"></script>
diff --git a/docs/opcodes/opcode-04-move-wide.html b/docs/opcodes/opcode-04-move-wide.html
index e043be9..8a3bd00 100644
--- a/docs/opcodes/opcode-04-move-wide.html
+++ b/docs/opcodes/opcode-04-move-wide.html
@@ -19,7 +19,7 @@
 <p>
 Note: It is legal to move from vN to either vN-1 or vN+1, so implementations
 must arrange for both halves of a register pair to be read before anything is
-written. 
+written.
 </p>
 
 <h2>Details</h2>
diff --git a/docs/opcodes/opcode-07-move-object.html b/docs/opcodes/opcode-07-move-object.html
index e62750d..f290277 100644
--- a/docs/opcodes/opcode-07-move-object.html
+++ b/docs/opcodes/opcode-07-move-object.html
@@ -79,7 +79,7 @@
     becomes undefined.
   </li>
 </ul>
- 
+
 <h2>Exceptions</h2>
 
 <p>
diff --git a/docs/opcodes/opcode-0a-move-result.html b/docs/opcodes/opcode-0a-move-result.html
index f043d13..616087f 100644
--- a/docs/opcodes/opcode-0a-move-result.html
+++ b/docs/opcodes/opcode-0a-move-result.html
@@ -17,7 +17,7 @@
 Move the single-word non-object result of the most recent invoke-kind into the
 indicated register. This must be done as the instruction immediately after an
 invoke-kind whose (single-word, non-object) result is not to be ignored;
-anywhere else is invalid. 
+anywhere else is invalid.
 </p>
 
 <h2>Details</h2>
@@ -57,7 +57,7 @@
   <li>
     The result delivered by the invoke-kind instruction must not be a reference
     value or require a register pair.
-  </li> 
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -76,7 +76,7 @@
     becomes undefined.
   </li>
 </ul>
- 
+
 <h2>Exceptions</h2>
 
 <p>
@@ -89,7 +89,7 @@
 This instruction can also be thought of as reading the contents of a special
 "result" register that is made valid and defined by executing a non-void return
 instruction or a filled-new-array instruction. The execution of any other
-instruction (including this one) renders this special register invalid. 
+instruction (including this one) renders this special register invalid.
 </p>
 
 </body>
diff --git a/docs/opcodes/opcode-0b-move-result-wide.html b/docs/opcodes/opcode-0b-move-result-wide.html
index c3e5779..c53517a 100644
--- a/docs/opcodes/opcode-0b-move-result-wide.html
+++ b/docs/opcodes/opcode-0b-move-result-wide.html
@@ -17,7 +17,7 @@
 Move the double-word result of the most recent invoke-kind into the indicated
 register pair. This must be done as the instruction immediately after an
 invoke-kind whose (double-word) result is not to be ignored; anywhere else is
-invalid. 
+invalid.
 </p>
 
 <h2>Details</h2>
@@ -60,7 +60,7 @@
     or a double value.
   </li>
 </ul>
- 
+
 <h2>Behavior</h2>
 
 <ul>
@@ -81,7 +81,7 @@
     becomes undefined.
   </li>
 </ul>
- 
+
 <h2>Exceptions</h2>
 
 <p>
diff --git a/docs/opcodes/opcode-0c-move-result-object.html b/docs/opcodes/opcode-0c-move-result-object.html
index f065fed..1538735 100644
--- a/docs/opcodes/opcode-0c-move-result-object.html
+++ b/docs/opcodes/opcode-0c-move-result-object.html
@@ -77,7 +77,7 @@
     becomes undefined.
   </li>
 </ul>
- 
+
 <h2>Exceptions</h2>
 
 <p>
@@ -90,7 +90,7 @@
 This instruction can also be thought of as reading the contents of a special
 "result" register that is made valid and defined by executing a non-void return
 instruction or a filled-new-array instruction. The execution of any other
-instruction (including this one) renders this special register invalid. 
+instruction (including this one) renders this special register invalid.
 </p>
 
 </body>
diff --git a/docs/opcodes/opcode-0d-move-exception.html b/docs/opcodes/opcode-0d-move-exception.html
index 3c3bc83..0f756d0 100644
--- a/docs/opcodes/opcode-0d-move-exception.html
+++ b/docs/opcodes/opcode-0d-move-exception.html
@@ -17,7 +17,7 @@
 Save a just-caught exception into the given register. This should be the first
 instruction of any exception handler whose caught exception is not to be
 ignored, and this instruction may only ever occur as the first instruction of an
-exception handler; anywhere else is invalid. 
+exception handler; anywhere else is invalid.
 </p>
 
 <h2>Details</h2>
@@ -51,7 +51,7 @@
     the handlers defined for the method in the Dex file.
   </li>
 </ul>
- 
+
 <h2>Behavior</h2>
 
 <ul>
diff --git a/docs/opcodes/opcode-0e-return-void.html b/docs/opcodes/opcode-0e-return-void.html
index 7a9431e..0498f81 100644
--- a/docs/opcodes/opcode-0e-return-void.html
+++ b/docs/opcodes/opcode-0e-return-void.html
@@ -14,7 +14,7 @@
 <h2>Purpose</h2>
 
 <p>
-Return from a void method. 
+Return from a void method.
 </p>
 
 <h2>Details</h2>
@@ -72,8 +72,8 @@
       </li>
     </ul>
   </li>
-</ul> 
-          
+</ul>
+
 <h2>Exceptions</h2>
 
 <p>
diff --git a/docs/opcodes/opcode-0f-return.html b/docs/opcodes/opcode-0f-return.html
index 33e0b7c..4de55ea 100644
--- a/docs/opcodes/opcode-0f-return.html
+++ b/docs/opcodes/opcode-0f-return.html
@@ -52,8 +52,8 @@
   <li>
     The type of vA must match the return type of the method.
   </li>
-</ul> 
-    
+</ul>
+
 <h2>Behavior</h2>
 
 <ul>
@@ -89,7 +89,7 @@
     </ul>
   </li>
 </ul>
- 
+
 <h2>Exceptions</h2>
 
 <p>
diff --git a/docs/opcodes/opcode-10-return-wide.html b/docs/opcodes/opcode-10-return-wide.html
index f1a6b83..4ccfce4 100644
--- a/docs/opcodes/opcode-10-return-wide.html
+++ b/docs/opcodes/opcode-10-return-wide.html
@@ -53,7 +53,7 @@
     The type of vA must match the return type of the method.
   </li>
 </ul>
- 
+
 <h2>Behavior</h2>
 
 <ul>
diff --git a/docs/opcodes/opcode-11-return-object.html b/docs/opcodes/opcode-11-return-object.html
index 369233c..b4866ed 100644
--- a/docs/opcodes/opcode-11-return-object.html
+++ b/docs/opcodes/opcode-11-return-object.html
@@ -84,7 +84,7 @@
       </li>
     </ul>
   </li>
-</ul> 
+</ul>
 
 <h2>Exceptions</h2>
 
diff --git a/docs/opcodes/opcode-12-const.html b/docs/opcodes/opcode-12-const.html
index b2d894f..d2b6ef9 100644
--- a/docs/opcodes/opcode-12-const.html
+++ b/docs/opcodes/opcode-12-const.html
@@ -15,7 +15,7 @@
 
 <p>
 Move the given literal value (sign-extended to 32 bits, if necessary) into the
-specified register. 
+specified register.
 </p>
 
 <h2>Details</h2>
@@ -72,7 +72,7 @@
     <ul>
       <li>
         If we are executing the /high16 variant, then B is left-shifted by 16
-        bits, that is, B'=B << 0x10 
+        bits, that is, B'=B << 0x10
       <li>
         Otherwise, if B is a 4 bit or 16 bit constant, it is sign-extended to 32
         bits, that is, B'=sign-extended(B).
@@ -91,7 +91,7 @@
     If v(A+1) is the upper half of a register pair, v(A+1)' becomes undefined.
   </li>
 </ul>
-     
+
 <h2>Exceptions</h2>
 
 <p>
diff --git a/docs/opcodes/opcode-16-const-wide.html b/docs/opcodes/opcode-16-const-wide.html
index ac92b04..6197e35 100644
--- a/docs/opcodes/opcode-16-const-wide.html
+++ b/docs/opcodes/opcode-16-const-wide.html
@@ -15,7 +15,7 @@
 
 <p>
 Move the given literal value (sign-extended to 64 bits) into the specified
-register-pair. 
+register-pair.
 </p>
 
 <h2>Details</h2>
@@ -98,7 +98,7 @@
   <li>
     If v(A+2) is the upper half of a register pair, v(A+2)' becomes undefined.
   </li>
-</ul> 
+</ul>
 
 <h2>Exceptions</h2>
 
diff --git a/docs/opcodes/opcode-1a-const-string.html b/docs/opcodes/opcode-1a-const-string.html
index bd89b70..d10c115 100644
--- a/docs/opcodes/opcode-1a-const-string.html
+++ b/docs/opcodes/opcode-1a-const-string.html
@@ -15,7 +15,7 @@
 
 <p>
 Move a reference to the string specified by the given index into the specified
-register. 
+register.
 </p>
 
 <h2>Details</h2>
@@ -52,7 +52,7 @@
   </li>
   <li>
     B must be a valid index into the string constant pool.
-  </li>     
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -72,7 +72,7 @@
   </li>
   <li>
     If v(A+1) is the upper half of a register pair, v(A+1)' becomes undefined.
-  </li> 
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
diff --git a/docs/opcodes/opcode-1b-const-class.html b/docs/opcodes/opcode-1b-const-class.html
index 7a33e77..f40b986 100644
--- a/docs/opcodes/opcode-1b-const-class.html
+++ b/docs/opcodes/opcode-1b-const-class.html
@@ -16,7 +16,7 @@
 <p>
 Move a reference to the class specified by the given index into the specified
 register. In the case where the indicated type is primitive, this will store a
-reference to the primitive type's degenerate class. 
+reference to the primitive type's degenerate class.
 </p>
 
 <h2>Details</h2>
diff --git a/docs/opcodes/opcode-1d-monitor-enter.html b/docs/opcodes/opcode-1d-monitor-enter.html
index cecc939..28c10f4 100644
--- a/docs/opcodes/opcode-1d-monitor-enter.html
+++ b/docs/opcodes/opcode-1d-monitor-enter.html
@@ -14,7 +14,7 @@
 <h2>Purpose</h2>
 
 <p>
-Acquire the monitor for the indicated object. 
+Acquire the monitor for the indicated object.
 </p>
 
 <h2>Details</h2>
@@ -46,7 +46,7 @@
     Register vA must contain a reference to an object.
   </li>
 </ul>
- 
+
 <h2>Behavior</h2>
 
 <ul>
diff --git a/docs/opcodes/opcode-1e-monitor-exit.html b/docs/opcodes/opcode-1e-monitor-exit.html
index bee711d..cd7b165 100644
--- a/docs/opcodes/opcode-1e-monitor-exit.html
+++ b/docs/opcodes/opcode-1e-monitor-exit.html
@@ -25,7 +25,7 @@
 catch-all (e.g., finally) block as the monitor cleanup for that block itself,
 as a way to handle the arbitrary exceptions that might get thrown due to the
 historical implementation of Thread.stop(), while still managing to have proper
-monitor hygiene. 
+monitor hygiene.
 </p>
 
 <h2>Details</h2>
@@ -57,7 +57,7 @@
     Register vA must contain a reference to an object.
   </li>
 </ul>
- 
+
 <h2>Behavior</h2>
 
 <ul>
@@ -83,7 +83,7 @@
     an exception handler it cannot be distinguished from the same type of
     exception being thrown immediately after the monitor-exit instruction.
   </li>
-</ul> 
+</ul>
 
 <h2>Exceptions</h2>
 
diff --git a/docs/opcodes/opcode-1f-check-cast.html b/docs/opcodes/opcode-1f-check-cast.html
index 6325ca4..8eedd2d 100644
--- a/docs/opcodes/opcode-1f-check-cast.html
+++ b/docs/opcodes/opcode-1f-check-cast.html
@@ -15,7 +15,7 @@
 
 <p>
 Throw if the reference in the given register cannot be cast to the indicated
-type. The type must be a reference type (not a primitive type). 
+type. The type must be a reference type (not a primitive type).
 </p>
 
 <h2>Details</h2>
@@ -53,8 +53,8 @@
   <li>
     Type pool entry B must contain a valid type descriptor for a reference type.
   </li>
-</ul> 
-    
+</ul>
+
 <h2>Behavior</h2>
 
 <ul>
diff --git a/docs/opcodes/opcode-20-instance-of.html b/docs/opcodes/opcode-20-instance-of.html
index 5dbfef7..88076d8 100644
--- a/docs/opcodes/opcode-20-instance-of.html
+++ b/docs/opcodes/opcode-20-instance-of.html
@@ -55,7 +55,7 @@
   <li>
     Type constant pool entry C must contain a valid type descriptor for a
     reference type.
-  </li> 
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -88,7 +88,7 @@
   </li>
   <li>
     If v(A+1) is the upper half of a register pair, v(A+1)' becomes undefined.
-  </li> 
+  </li>
 
 <h2>Exceptions</h2>
 
diff --git a/docs/opcodes/opcode-21-array-length.html b/docs/opcodes/opcode-21-array-length.html
index 5767742..8072a7c 100644
--- a/docs/opcodes/opcode-21-array-length.html
+++ b/docs/opcodes/opcode-21-array-length.html
@@ -48,7 +48,7 @@
     Register vB must contain a reference to an array.
   </li>
 </ul>
-    
+
 <h2>Behavior</h2>
 
 <ul>
diff --git a/docs/opcodes/opcode-22-new-instance.html b/docs/opcodes/opcode-22-new-instance.html
index ec0a347..bdcfc3e 100644
--- a/docs/opcodes/opcode-22-new-instance.html
+++ b/docs/opcodes/opcode-22-new-instance.html
@@ -15,7 +15,7 @@
 
 <p>
 Construct a new instance of the indicated type, storing a reference to it in the
-destination. The type must refer to a non-array class. 
+destination. The type must refer to a non-array class.
 </p>
 
 <h2>Details</h2>
@@ -77,7 +77,7 @@
   </li>
   <li>
     If v(A+1) is the upper part of a register pair, v(A+1)' becomes undefined.
-  </li>     
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
@@ -88,7 +88,7 @@
   </li>
   <li>
     All exceptions that are possible during instantiation can occur.
-  </li> 
+  </li>
 </ul>
 
 </body>
diff --git a/docs/opcodes/opcode-23-new-array.html b/docs/opcodes/opcode-23-new-array.html
index be46a49..29327e9 100644
--- a/docs/opcodes/opcode-23-new-array.html
+++ b/docs/opcodes/opcode-23-new-array.html
@@ -15,7 +15,7 @@
 
 <p>
 Construct a new array of the indicated type and size. The type must be an array
-type. 
+type.
 </p>
 
 <h2>Details</h2>
@@ -56,7 +56,7 @@
   </li>
   <li>
     Type constant pool entry C must contain a valid array type descriptor.
-  </li>   
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -87,7 +87,7 @@
   </li>
   <li>
     If v(A+1) is the upper half of a register pair, v(A+1)' becomes undefined.
-  </li> 
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
@@ -101,7 +101,7 @@
   </li>
   <li>
     All exceptions that are possible during instantiation can occur.
-  </li> 
+  </li>
 </ul>
 
 </body>
diff --git a/docs/opcodes/opcode-24-filled-new-array.html b/docs/opcodes/opcode-24-filled-new-array.html
index cba0c5d..1dfa089 100644
--- a/docs/opcodes/opcode-24-filled-new-array.html
+++ b/docs/opcodes/opcode-24-filled-new-array.html
@@ -21,7 +21,7 @@
 store their results, so the constructed instance must be moved to a register
 with a subsequent move-result-object instruction (if it is to be used).
 </p>
- 
+
 <h2>Details</h2>
 
 <table class="instruc">
@@ -80,9 +80,9 @@
   <li>
     If the element type is a reference type, then all actual arguments
     (vD .. vA, depending on B) must be references, too.
-  </li> 
+  </li>
 </ul>
-    
+
 <h2>Behavior</h2>
 
 <ul>
@@ -115,7 +115,7 @@
         If B > 3 then R[3] = vG
       </li>
       <li>
-        If B > 4 then R[4] = vA 
+        If B > 4 then R[4] = vA
       </li>
     </ul>
   </li>
@@ -123,7 +123,7 @@
     No reference to R is stored in any register. Instead, R can be accessed by a
     move-result-object instruction immediately following this filled-new-array
     instruction.
-  </li> 
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
@@ -137,7 +137,7 @@
   </li>
   <li>
     All exceptions that are possible during instantiation can occur.
-  </li> 
+  </li>
 </ul>
 
 </body>
diff --git a/docs/opcodes/opcode-25-filled-new-array-range.html b/docs/opcodes/opcode-25-filled-new-array-range.html
index 944a8b1..2ee7505 100644
--- a/docs/opcodes/opcode-25-filled-new-array-range.html
+++ b/docs/opcodes/opcode-25-filled-new-array-range.html
@@ -16,7 +16,7 @@
 <p>
 Construct an array of the given type and size, filling it with the supplied
 contents. Clarifications and restrictions are the same as filled-new-array,
-described above. 
+described above.
 </p>
 
 <h2>Details</h2>
@@ -70,7 +70,7 @@
   </li>
   <li>
     The element size of the type denoted by B must be no larger than 32 bits.
-  </li> 
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -102,7 +102,7 @@
         ...
       </li>
       <li>
-        J[vA] = vN 
+        J[vA] = vN
       </li>
     </ul>
   </li>
@@ -110,7 +110,7 @@
     No reference to J is stored in any register. Instead, J can be accessed by a
     move-result-object instruction immediately following this filled-new-array
     instruction.
-  </li> 
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
diff --git a/docs/opcodes/opcode-26-fill-array-data.html b/docs/opcodes/opcode-26-fill-array-data.html
index c5040a5..77b45ae 100644
--- a/docs/opcodes/opcode-26-fill-array-data.html
+++ b/docs/opcodes/opcode-26-fill-array-data.html
@@ -21,7 +21,7 @@
 Note: The address of the table is guaranteed to be even (that is, 4-byte
 aligned). If the code size of the method is otherwise odd, then an extra code
 unit is inserted between the main code and the table whose value is the same as
-a nop. 
+a nop.
 </p>
 
 <h2>Details</h2>
@@ -69,8 +69,8 @@
   <li>
     The table size must be equal or smaller than the array length.
   </li>
-</ul>  
-     
+</ul>
+
 <h2>Behavior</h2>
 
 <ul>
@@ -88,7 +88,7 @@
 
 <ul>
   <li>
-    NullPointerException if vA is null.   
+    NullPointerException if vA is null.
   </li>
 </ul>
 
diff --git a/docs/opcodes/opcode-27-throw.html b/docs/opcodes/opcode-27-throw.html
index f4416ce..1a0eb09 100644
--- a/docs/opcodes/opcode-27-throw.html
+++ b/docs/opcodes/opcode-27-throw.html
@@ -50,7 +50,7 @@
     to the usual rules of the Java programming language.
   </li>
 </ul>
- 
+
 <h2>Behavior</h2>
 
 <ul>
@@ -73,7 +73,7 @@
   </li>
   <li>
     Otherwise, the indicated exception.
-  </li>   
+  </li>
 </ul>
 
 </body>
diff --git a/docs/opcodes/opcode-28-goto.html b/docs/opcodes/opcode-28-goto.html
index 5ca92b6..fec294c 100644
--- a/docs/opcodes/opcode-28-goto.html
+++ b/docs/opcodes/opcode-28-goto.html
@@ -18,7 +18,7 @@
 </p>
 <p>
 Note: The branch offset may not be 0. (A spin loop may be legally constructed
-either with goto/32 or by including a nop as a target before the branch.) 
+either with goto/32 or by including a nop as a target before the branch.)
 </p>
 
 <h2>Details</h2>
@@ -48,7 +48,7 @@
   </li>
   <li>
     A must not be 0.
-  </li>   
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -60,7 +60,7 @@
   </li>
   <li>
     Executions resumes at PC'.
-  </li>   
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
diff --git a/docs/opcodes/opcode-29-goto-16.html b/docs/opcodes/opcode-29-goto-16.html
index abe4aec..791456b 100644
--- a/docs/opcodes/opcode-29-goto-16.html
+++ b/docs/opcodes/opcode-29-goto-16.html
@@ -18,7 +18,7 @@
 </p>
 <p>
 Note: The branch offset may not be 0. (A spin loop may be legally constructed
-either with goto/32 or by including a nop as a target before the branch.) 
+either with goto/32 or by including a nop as a target before the branch.)
 </p>
 
 <h2>Details</h2>
@@ -48,7 +48,7 @@
   </li>
   <li>
     A must not be 0.
-  </li>   
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -60,7 +60,7 @@
   </li>
   <li>
     Executions resumes at PC'.
-  </li>   
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
diff --git a/docs/opcodes/opcode-2a-goto-32.html b/docs/opcodes/opcode-2a-goto-32.html
index 7d64ac9..b98dd85 100644
--- a/docs/opcodes/opcode-2a-goto-32.html
+++ b/docs/opcodes/opcode-2a-goto-32.html
@@ -53,7 +53,7 @@
   </li>
   <li>
     Executions resumes at PC'.
-  </li>   
+  </li>
 </ul>
 
 <h2>Exceptions</h2>
diff --git a/docs/opcodes/opcode-2b-packed-switch.html b/docs/opcodes/opcode-2b-packed-switch.html
index 73125bd..b2d5251 100644
--- a/docs/opcodes/opcode-2b-packed-switch.html
+++ b/docs/opcodes/opcode-2b-packed-switch.html
@@ -22,7 +22,7 @@
 Note: The address of the table is guaranteed to be even (that is, 4-byte
 aligned). If the code size of the method is otherwise odd, then an extra code
 unit is inserted between the main code and the table whose value is the same as
-a nop. 
+a nop.
 </p>
 
 <h2>Details</h2>
@@ -92,7 +92,7 @@
     statement.
   </li>
 </ul>
- 
+
 <h2>Exceptions</h2>
 
 <p>
diff --git a/docs/opcodes/opcode-2c-sparse-switch.html b/docs/opcodes/opcode-2c-sparse-switch.html
index cec581e..9d81eda 100644
--- a/docs/opcodes/opcode-2c-sparse-switch.html
+++ b/docs/opcodes/opcode-2c-sparse-switch.html
@@ -22,7 +22,7 @@
 Note: The address of the table is guaranteed to be even (that is, 4-byte
 aligned). If the code size of the method is otherwise odd, then an extra code
 unit is inserted between the main code and the table whose value is the same as
-a nop. 
+a nop.
 </p>
 
 <h2>Details</h2>
@@ -87,11 +87,11 @@
       </li>
     </ul>
   </li>
-  <li> 
+  <li>
     Otherwise execution continues at the instruction following the sparse-switch
     statement.
   </li>
-</ul> 
+</ul>
 
 <h2>Exceptions</h2>
 
diff --git a/docs/opcodes/opcode-2d-cmp-kind.html b/docs/opcodes/opcode-2d-cmp-kind.html
index 431ccd4..f55a006 100644
--- a/docs/opcodes/opcode-2d-cmp-kind.html
+++ b/docs/opcodes/opcode-2d-cmp-kind.html
@@ -24,7 +24,7 @@
 For example, to check to see if floating point a < b, then it is advisable to
 use cmpg-float; a result of -1 indicates that the test was true, and the other
 values indicate it was false either due to a valid comparison or because one
-or the other values was NaN. 
+or the other values was NaN.
 </p>
 
 <h2>Details</h2>
@@ -71,7 +71,7 @@
     For the -long variant, both both vB and vC must be the lower part of a
     register pair holding a long value.
   </li>
-</ul> 
+</ul>
 
 <h2>Behavior</h2>
 
@@ -109,8 +109,8 @@
   <li>
     If v(A+1) is the upper half of a register pair, v(A+1)' becomes undefined.
   </li>
-</ul> 
-    
+</ul>
+
 <h2>Exceptions</h2>
 
 <p>
diff --git a/docs/opcodes/opcode-32-if-test.html b/docs/opcodes/opcode-32-if-test.html
index af0adb2..ee394f6 100644
--- a/docs/opcodes/opcode-32-if-test.html
+++ b/docs/opcodes/opcode-32-if-test.html
@@ -20,7 +20,7 @@
 <p>
 Note: The branch offset may not be 0. (A spin loop may be legally constructed
 either by branching around a backward goto or by including a nop as a target
-before the branch.) 
+before the branch.)
 </p>
 
 <h2>Details</h2>
@@ -68,7 +68,7 @@
   </li>
     C must of a signed offset that, when added to the PC of the instruction,
     points to a valid bytecode instruction inside the same method.
-  </li> 
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -89,7 +89,7 @@
       </li>
     </ul>
   </li>
-</ul> 
+</ul>
 
 <h2>Exceptions</h2>
 
diff --git a/docs/opcodes/opcode-38-if-testz.html b/docs/opcodes/opcode-38-if-testz.html
index 354e894..060bbdb 100644
--- a/docs/opcodes/opcode-38-if-testz.html
+++ b/docs/opcodes/opcode-38-if-testz.html
@@ -20,7 +20,7 @@
 <p>
   Note: The branch offset may not be 0. (A spin loop may be legally constructed
   either by branching around a backward goto or by including a nop as a target
-  before the branch.) 
+  before the branch.)
 </p>
 
 <h2>Details</h2>
@@ -67,7 +67,7 @@
   </li>
   <li>
     B must not be 0.
-  </li> 
+  </li>
 </ul>
 
 <h2>Behavior</h2>
diff --git a/docs/opcodes/opcode-44-aget.html b/docs/opcodes/opcode-44-aget.html
index b9d6f23..6e8836f 100644
--- a/docs/opcodes/opcode-44-aget.html
+++ b/docs/opcodes/opcode-44-aget.html
@@ -15,7 +15,7 @@
 
 <p>
 Perform the identified array operation at the identified index of the given
-array, storing into the value register. 
+array, storing into the value register.
 </p>
 
 <h2>Details</h2>
@@ -63,7 +63,7 @@
   </li>
   <li>
     Register vC must contain an integer value.
-  </li> 
+  </li>
 </ul>
 
 <h2>Behavior</h2>
@@ -97,7 +97,7 @@
     v(A+2)' becomes undefined.
   </li>
 </ul>
-    
+
 <h2>Exceptions</h2>
 
 <ul>
@@ -107,7 +107,7 @@
   <li>
     ArrayIndexOutOfBoundsException if vC < 0 or vC >= array.length.
   </li>
-</ul> 
+</ul>
 
 </body>
 </html>
diff --git a/docs/opcodes/opcode-7b-unop.html b/docs/opcodes/opcode-7b-unop.html
index 1068a25..8b06092 100644
--- a/docs/opcodes/opcode-7b-unop.html
+++ b/docs/opcodes/opcode-7b-unop.html
@@ -84,7 +84,7 @@
 
 <ul>
   <li>
-    The given operation &lt;unop&gt; is performed according to the semantics 
+    The given operation &lt;unop&gt; is performed according to the semantics
     specified in table XXX.
   </li>
   <li>
diff --git a/docs/prettify.js b/docs/prettify.js
index c954118..9e99fc6 100644
--- a/docs/prettify.js
+++ b/docs/prettify.js
@@ -969,7 +969,7 @@
     var newlineRe = /\r\n?|\n/g;
     var trailingSpaceRe = /[ \r\n]$/;
     var lastWasSpace = true;  // the last text chunk emitted ended with a space.
-    
+
     // A helper function that is responsible for opening sections of decoration
     // and outputing properly escaped chunks of source
     function emitTextUpTo(sourceIdx) {
diff --git a/dvz/Android.mk b/dvz/Android.mk
index 56b7890..72b92a0 100644
--- a/dvz/Android.mk
+++ b/dvz/Android.mk
@@ -9,10 +9,10 @@
 LOCAL_SHARED_LIBRARIES := \
 	libcutils
 
-LOCAL_C_INCLUDES := 
+LOCAL_C_INCLUDES :=
 
-LOCAL_CFLAGS := 
+LOCAL_CFLAGS :=
 
-LOCAL_MODULE := dvz 
+LOCAL_MODULE := dvz
 
 include $(BUILD_EXECUTABLE)
diff --git a/dvz/dvz.c b/dvz/dvz.c
index 2d204bb..88fe086 100644
--- a/dvz/dvz.c
+++ b/dvz/dvz.c
@@ -45,7 +45,7 @@
     int err;
 
     g_pid = pid;
-    
+
     my_pgid = getpgid(0);
     if (my_pgid < 0) {
         perror ("error with getpgid()");
@@ -62,8 +62,8 @@
         // The zygote was unable to move this process into our pgid
         // We have to forward signals
 
-        int forward_signals[] 
-            = {SIGHUP, SIGINT, SIGTERM, SIGWINCH, 
+        int forward_signals[]
+            = {SIGHUP, SIGINT, SIGTERM, SIGWINCH,
             SIGTSTP, SIGTTIN, SIGTTOU, SIGCONT};
 
         struct sigaction sa;
diff --git a/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java b/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java
index acf5a9e..fe0b3ab 100644
--- a/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java
+++ b/dx/src/com/android/dx/cf/attrib/AttAnnotationDefault.java
@@ -34,7 +34,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param value {@code non-null;} the annotation default value
      * @param byteLength {@code >= 0;} attribute data length in the original
      * classfile (not including the attribute header)
@@ -58,7 +58,7 @@
 
     /**
      * Gets the annotation default value.
-     * 
+     *
      * @return {@code non-null;} the value
      */
     public Constant getValue() {
diff --git a/dx/src/com/android/dx/cf/attrib/AttCode.java b/dx/src/com/android/dx/cf/attrib/AttCode.java
index 89ba895..8d34c69 100644
--- a/dx/src/com/android/dx/cf/attrib/AttCode.java
+++ b/dx/src/com/android/dx/cf/attrib/AttCode.java
@@ -45,7 +45,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param maxStack {@code >= 0;} the stack size
      * @param maxLocals {@code >= 0;} the number of locals
      * @param code {@code non-null;} array containing the bytecode per se
@@ -100,7 +100,7 @@
 
     /**
      * Gets the maximum stack size.
-     * 
+     *
      * @return {@code >= 0;} the maximum stack size
      */
     public int getMaxStack() {
@@ -109,7 +109,7 @@
 
     /**
      * Gets the number of locals.
-     * 
+     *
      * @return {@code >= 0;} the number of locals
      */
     public int getMaxLocals() {
@@ -118,7 +118,7 @@
 
     /**
      * Gets the bytecode array.
-     * 
+     *
      * @return {@code non-null;} the bytecode array
      */
     public BytecodeArray getCode() {
@@ -127,7 +127,7 @@
 
     /**
      * Gets the exception table.
-     * 
+     *
      * @return {@code non-null;} the exception table
      */
     public ByteCatchList getCatches() {
@@ -136,7 +136,7 @@
 
     /**
      * Gets the associated attribute list.
-     * 
+     *
      * @return {@code non-null;} the attribute list
      */
     public AttributeList getAttributes() {
diff --git a/dx/src/com/android/dx/cf/attrib/AttConstantValue.java b/dx/src/com/android/dx/cf/attrib/AttConstantValue.java
index a7436f3..aa6d1b3 100644
--- a/dx/src/com/android/dx/cf/attrib/AttConstantValue.java
+++ b/dx/src/com/android/dx/cf/attrib/AttConstantValue.java
@@ -35,7 +35,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param constantValue {@code non-null;} the constant value, which must
      * be an instance of one of: {@code CstString},
      * {@code CstInteger}, {@code CstLong},
@@ -68,7 +68,7 @@
      * is an instance of one of: {@code CstString},
      * {@code CstInteger}, {@code CstLong},
      * {@code CstFloat}, or {@code CstDouble}.
-     * 
+     *
      * @return {@code non-null;} the constant value
      */
     public TypedConstant getConstantValue() {
diff --git a/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java b/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java
index 68a24d9..6717e15 100644
--- a/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java
+++ b/dx/src/com/android/dx/cf/attrib/AttEnclosingMethod.java
@@ -35,7 +35,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param type {@code non-null;} the innermost enclosing class
      * @param method {@code null-ok;} the name-and-type of the innermost enclosing
      * method, if any
@@ -58,7 +58,7 @@
 
     /**
      * Gets the innermost enclosing class.
-     * 
+     *
      * @return {@code non-null;} the innermost enclosing class
      */
     public CstType getEnclosingClass() {
@@ -68,7 +68,7 @@
     /**
      * Gets the name-and-type of the innermost enclosing method, if
      * any.
-     * 
+     *
      * @return {@code null-ok;} the name-and-type of the innermost enclosing
      * method, if any
      */
diff --git a/dx/src/com/android/dx/cf/attrib/AttExceptions.java b/dx/src/com/android/dx/cf/attrib/AttExceptions.java
index c592047..a17e009 100644
--- a/dx/src/com/android/dx/cf/attrib/AttExceptions.java
+++ b/dx/src/com/android/dx/cf/attrib/AttExceptions.java
@@ -31,7 +31,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param exceptions {@code non-null;} list of classes, presumed but not
      * verified to be subclasses of {@code Throwable}
      */
@@ -59,7 +59,7 @@
      * Gets the list of classes associated with this instance. In
      * general, these classes are not pre-verified to be subclasses of
      * {@code Throwable}.
-     * 
+     *
      * @return {@code non-null;} the list of classes
      */
     public TypeList getExceptions() {
diff --git a/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java b/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java
index bd6c7cd..77a4b08 100644
--- a/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java
+++ b/dx/src/com/android/dx/cf/attrib/AttInnerClasses.java
@@ -30,7 +30,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param innerClasses {@code non-null;} list of inner class entries
      */
     public AttInnerClasses(InnerClassList innerClasses) {
@@ -55,7 +55,7 @@
 
     /**
      * Gets the list of "inner class" entries associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public InnerClassList getInnerClasses() {
diff --git a/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java b/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java
index 38980be..5eac8cb 100644
--- a/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java
+++ b/dx/src/com/android/dx/cf/attrib/AttLineNumberTable.java
@@ -31,7 +31,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param lineNumbers {@code non-null;} list of line number entries
      */
     public AttLineNumberTable(LineNumberList lineNumbers) {
@@ -56,7 +56,7 @@
 
     /**
      * Gets the list of "line number" entries associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public LineNumberList getLineNumbers() {
diff --git a/dx/src/com/android/dx/cf/attrib/AttLocalVariableTable.java b/dx/src/com/android/dx/cf/attrib/AttLocalVariableTable.java
index 53ba64f..1d2b4aa 100644
--- a/dx/src/com/android/dx/cf/attrib/AttLocalVariableTable.java
+++ b/dx/src/com/android/dx/cf/attrib/AttLocalVariableTable.java
@@ -27,7 +27,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param localVariables {@code non-null;} list of local variable entries
      */
     public AttLocalVariableTable(LocalVariableList localVariables) {
diff --git a/dx/src/com/android/dx/cf/attrib/AttLocalVariableTypeTable.java b/dx/src/com/android/dx/cf/attrib/AttLocalVariableTypeTable.java
index 49cdb0c..2520bf6 100644
--- a/dx/src/com/android/dx/cf/attrib/AttLocalVariableTypeTable.java
+++ b/dx/src/com/android/dx/cf/attrib/AttLocalVariableTypeTable.java
@@ -27,7 +27,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param localVariables {@code non-null;} list of local variable entries
      */
     public AttLocalVariableTypeTable(LocalVariableList localVariables) {
diff --git a/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleAnnotations.java b/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleAnnotations.java
index e83b76f..d3afe27 100644
--- a/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleAnnotations.java
@@ -28,7 +28,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param annotations {@code non-null;} the list of annotations
      * @param byteLength {@code >= 0;} attribute data length in the original
      * classfile (not including the attribute header)
diff --git a/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleParameterAnnotations.java b/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleParameterAnnotations.java
index 7dfe206..c9c5136 100644
--- a/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleParameterAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/AttRuntimeInvisibleParameterAnnotations.java
@@ -30,7 +30,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param parameterAnnotations {@code non-null;} the parameter annotations
      * @param byteLength {@code >= 0;} attribute data length in the original
      * classfile (not including the attribute header)
diff --git a/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleAnnotations.java b/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleAnnotations.java
index 9de0588..a6a640d 100644
--- a/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleAnnotations.java
@@ -28,7 +28,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param annotations {@code non-null;} the list of annotations
      * @param byteLength {@code >= 0;} attribute data length in the original
      * classfile (not including the attribute header)
diff --git a/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleParameterAnnotations.java b/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleParameterAnnotations.java
index 76607c0..177eb4c 100644
--- a/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleParameterAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/AttRuntimeVisibleParameterAnnotations.java
@@ -30,7 +30,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param annotations {@code non-null;} the parameter annotations
      * @param byteLength {@code >= 0;} attribute data length in the original
      * classfile (not including the attribute header)
diff --git a/dx/src/com/android/dx/cf/attrib/AttSignature.java b/dx/src/com/android/dx/cf/attrib/AttSignature.java
index b9cb97d..f6023f3 100644
--- a/dx/src/com/android/dx/cf/attrib/AttSignature.java
+++ b/dx/src/com/android/dx/cf/attrib/AttSignature.java
@@ -30,7 +30,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param signature {@code non-null;} the signature string
      */
     public AttSignature(CstUtf8 signature) {
@@ -50,7 +50,7 @@
 
     /**
      * Gets the signature string.
-     * 
+     *
      * @return {@code non-null;} the signature string
      */
     public CstUtf8 getSignature() {
diff --git a/dx/src/com/android/dx/cf/attrib/AttSourceFile.java b/dx/src/com/android/dx/cf/attrib/AttSourceFile.java
index 941a2b0..b84ff4d 100644
--- a/dx/src/com/android/dx/cf/attrib/AttSourceFile.java
+++ b/dx/src/com/android/dx/cf/attrib/AttSourceFile.java
@@ -30,7 +30,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param sourceFile {@code non-null;} the name of the source file
      */
     public AttSourceFile(CstUtf8 sourceFile) {
@@ -50,7 +50,7 @@
 
     /**
      * Gets the source file name of this instance.
-     * 
+     *
      * @return {@code non-null;} the source file
      */
     public CstUtf8 getSourceFile() {
diff --git a/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java b/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java
index 4d9201e..bc138af 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseAnnotations.java
@@ -32,7 +32,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param attributeName {@code non-null;} the name of the attribute
      * @param annotations {@code non-null;} the list of annotations
      * @param byteLength {@code >= 0;} attribute data length in the original
@@ -63,7 +63,7 @@
 
     /**
      * Gets the list of annotations associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public final Annotations getAnnotations() {
diff --git a/dx/src/com/android/dx/cf/attrib/BaseAttribute.java b/dx/src/com/android/dx/cf/attrib/BaseAttribute.java
index c9c1b33..9961725 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseAttribute.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseAttribute.java
@@ -28,7 +28,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param name {@code non-null;} attribute name
      */
     public BaseAttribute(String name) {
diff --git a/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java b/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java
index 5ba5889..27cd6fb 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseLocalVariables.java
@@ -29,7 +29,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param name {@code non-null;} attribute name
      * @param localVariables {@code non-null;} list of local variable entries
      */
@@ -56,7 +56,7 @@
 
     /**
      * Gets the list of "local variable" entries associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public final LocalVariableList getLocalVariables() {
diff --git a/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java b/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java
index 1b204b3..791f8cd 100644
--- a/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java
+++ b/dx/src/com/android/dx/cf/attrib/BaseParameterAnnotations.java
@@ -32,7 +32,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param attributeName {@code non-null;} the name of the attribute
      * @param parameterAnnotations {@code non-null;} the annotations
      * @param byteLength {@code >= 0;} attribute data length in the original
@@ -64,7 +64,7 @@
 
     /**
      * Gets the list of annotation lists associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public final AnnotationsList getParameterAnnotations() {
diff --git a/dx/src/com/android/dx/cf/attrib/RawAttribute.java b/dx/src/com/android/dx/cf/attrib/RawAttribute.java
index 585e5c5..e905dd1 100644
--- a/dx/src/com/android/dx/cf/attrib/RawAttribute.java
+++ b/dx/src/com/android/dx/cf/attrib/RawAttribute.java
@@ -28,13 +28,13 @@
 
     /**
      * {@code null-ok;} constant pool to use for resolution of cpis in {@link
-     * #data} 
+     * #data}
      */
     private final ConstantPool pool;
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param name {@code non-null;} attribute name
      * @param data {@code non-null;} attribute data
      * @param pool {@code null-ok;} constant pool to use for cpi resolution
@@ -52,7 +52,7 @@
 
     /**
      * Constructs an instance from a sub-array of a {@link ByteArray}.
-     * 
+     *
      * @param name {@code non-null;} attribute name
      * @param data {@code non-null;} array containing the attribute data
      * @param offset offset in {@code data} to the attribute data
@@ -66,7 +66,7 @@
 
     /**
      * Get the raw data of the attribute.
-     * 
+     *
      * @return {@code non-null;} the data
      */
     public ByteArray getData() {
@@ -82,7 +82,7 @@
      * Gets the constant pool to use for cpi resolution, if any. It
      * presumably came from the class file that this attribute came
      * from.
-     * 
+     *
      * @return {@code null-ok;} the constant pool
      */
     public ConstantPool getPool() {
diff --git a/dx/src/com/android/dx/cf/code/BaseMachine.java b/dx/src/com/android/dx/cf/code/BaseMachine.java
index b7e700d..aae6056 100644
--- a/dx/src/com/android/dx/cf/code/BaseMachine.java
+++ b/dx/src/com/android/dx/cf/code/BaseMachine.java
@@ -27,7 +27,7 @@
 
 /**
  * Base implementation of {@link Machine}.
- * 
+ *
  * <p><b>Note:</b> For the most part, the documentation for this class
  * ignores the distinction between {@link Type} and {@link
  * TypeBearer}.</p>
@@ -35,7 +35,7 @@
 public abstract class BaseMachine implements Machine {
     /* {@code non-null;} the prototype for the associated method */
     private final Prototype prototype;
-    
+
     /** {@code non-null;} primary arguments */
     private TypeBearer[] args;
 
@@ -77,7 +77,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param prototype {@code non-null;} the prototype for the associated method
      */
     public BaseMachine(Prototype prototype) {
@@ -132,7 +132,7 @@
     public void popArgs(Frame frame, Prototype prototype) {
         StdTypeList types = prototype.getParameterTypes();
         int size = types.size();
-        
+
         // Use the above method to do the actual popping...
         popArgs(frame, size);
 
@@ -253,7 +253,7 @@
 
     /**
      * Gets the number of primary arguments.
-     * 
+     *
      * @return {@code >= 0;} the number of primary arguments
      */
     protected final int argCount() {
@@ -263,7 +263,7 @@
     /**
      * Gets the width of the arguments (where a category-2 value counts as
      * two).
-     * 
+     *
      * @return {@code >= 0;} the argument width
      */
     protected final int argWidth() {
@@ -278,7 +278,7 @@
 
     /**
      * Gets the {@code n}th primary argument.
-     * 
+     *
      * @param n {@code >= 0, < argCount();} which argument
      * @return {@code non-null;} the indicated argument
      */
@@ -297,7 +297,7 @@
 
     /**
      * Gets the type auxiliary argument.
-     * 
+     *
      * @return {@code null-ok;} the salient type
      */
     protected final Type getAuxType() {
@@ -306,7 +306,7 @@
 
     /**
      * Gets the {@code int} auxiliary argument.
-     * 
+     *
      * @return the argument value
      */
     protected final int getAuxInt() {
@@ -315,7 +315,7 @@
 
     /**
      * Gets the constant auxiliary argument.
-     * 
+     *
      * @return {@code null-ok;} the argument value
      */
     protected final Constant getAuxCst() {
@@ -324,7 +324,7 @@
 
     /**
      * Gets the branch target auxiliary argument.
-     * 
+     *
      * @return the argument value
      */
     protected final int getAuxTarget() {
@@ -333,7 +333,7 @@
 
     /**
      * Gets the switch cases auxiliary argument.
-     * 
+     *
      * @return {@code null-ok;} the argument value
      */
     protected final SwitchList getAuxCases() {
@@ -350,7 +350,7 @@
     }
     /**
      * Gets the last local index accessed.
-     * 
+     *
      * @return {@code >= -1;} the salient local index or {@code -1} if none
      * was set since the last time {@link #clearArgs} was called
      */
@@ -364,7 +364,7 @@
      * by a previous call to {@link #localTarget} with the type of what
      * should be the sole result set by a call to {@link #setResult} (or
      * the combination {@link #clearResult} then {@link #addResult}.
-     * 
+     *
      * @return {@code null-ok;} the salient register spec or {@code null} if no
      * local target was set since the last time {@link #clearArgs} was
      * called
@@ -375,7 +375,7 @@
         }
 
         if (resultCount != 1) {
-            throw new SimException("local target with " + 
+            throw new SimException("local target with " +
                     ((resultCount == 0) ? "no" : "multiple") + " results");
         }
 
@@ -413,10 +413,10 @@
 
     /**
      * Sets the results list to be the given single value.
-     * 
+     *
      * <p><b>Note:</b> If there is more than one result value, the
      * others may be added by using {@link #addResult}.</p>
-     * 
+     *
      * @param result {@code non-null;} result value
      */
     protected final void setResult(TypeBearer result) {
@@ -430,9 +430,9 @@
 
     /**
      * Adds an additional element to the list of results.
-     * 
+     *
      * @see #setResult
-     * 
+     *
      * @param result {@code non-null;} result value
      */
     protected final void addResult(TypeBearer result) {
@@ -447,7 +447,7 @@
     /**
      * Gets the count of results. This throws an exception if results were
      * never set. (Explicitly clearing the results counts as setting them.)
-     * 
+     *
      * @return {@code >= 0;} the count
      */
     protected final int resultCount() {
@@ -461,7 +461,7 @@
     /**
      * Gets the width of the results (where a category-2 value counts as
      * two).
-     * 
+     *
      * @return {@code >= 0;} the result width
      */
     protected final int resultWidth() {
@@ -476,7 +476,7 @@
 
     /**
      * Gets the {@code n}th result value.
-     * 
+     *
      * @param n {@code >= 0, < resultCount();} which result
      * @return {@code non-null;} the indicated result value
      */
@@ -498,7 +498,7 @@
      * there is a local target (see {@link #localTarget}), then the sole
      * result is stored to that target; otherwise any results are pushed
      * onto the stack.
-     * 
+     *
      * @param frame {@code non-null;} frame to operate on
      */
     protected final void storeResults(Frame frame) {
@@ -528,7 +528,7 @@
     /**
      * Throws an exception that indicates a mismatch in local variable
      * types.
-     * 
+     *
      * @param found {@code non-null;} the encountered type
      * @param local {@code non-null;} the local variable's claimed type
      */
@@ -536,8 +536,8 @@
             TypeBearer local) {
         throw new SimException("local variable type mismatch: " +
                 "attempt to set or access a value of type " +
-                found.toHuman() + 
-                " using a local variable of type " + 
+                found.toHuman() +
+                " using a local variable of type " +
                 local.toHuman() +
                 ". This is symptomatic of .class transformation tools " +
                 "that ignore local variable information.");
diff --git a/dx/src/com/android/dx/cf/code/BasicBlocker.java b/dx/src/com/android/dx/cf/code/BasicBlocker.java
index d67e525..8fb9560 100644
--- a/dx/src/com/android/dx/cf/code/BasicBlocker.java
+++ b/dx/src/com/android/dx/cf/code/BasicBlocker.java
@@ -54,13 +54,13 @@
 
     /**
      * {@code non-null, sparse;} for each instruction offset to a branch of
-     * some sort, the list of targets for that instruction 
+     * some sort, the list of targets for that instruction
      */
     private final IntList[] targetLists;
 
     /**
      * {@code non-null, sparse;} for each instruction offset to a throwing
-     * instruction, the list of exception handlers for that instruction 
+     * instruction, the list of exception handlers for that instruction
      */
     private final ByteCatchList[] catchLists;
 
@@ -71,7 +71,7 @@
      * Identifies and enumerates the basic blocks in the given method,
      * returning a list of them. The returned list notably omits any
      * definitely-dead code that is identified in the process.
-     * 
+     *
      * @param method {@code non-null;} method to convert
      * @return {@code non-null;} list of basic blocks
      */
@@ -85,7 +85,7 @@
     /**
      * Constructs an instance. This class is not publicly instantiable; use
      * {@link #identifyBlocks}.
-     * 
+     *
      * @param method {@code non-null;} method to convert
      */
     private BasicBlocker(ConcreteMethod method) {
@@ -174,7 +174,7 @@
                 if ((type == Type.INT) || (type == Type.LONG)) {
                     visitThrowing(offset, length, true);
                 }
-                break;                
+                break;
             }
             default: {
                 visitCommon(offset, length, true);
@@ -265,7 +265,7 @@
 
     /**
      * Extracts the list of basic blocks from the bit sets.
-     * 
+     *
      * @return {@code non-null;} the list of basic blocks
      */
     private ByteBlockList getBlockList() {
@@ -367,7 +367,7 @@
     /**
      * Sets a bit in the work set, but only if the instruction in question
      * isn't yet known to be possibly-live.
-     * 
+     *
      * @param offset offset to the instruction in question
      * @param blockStart {@code true} iff this instruction starts a
      * basic block
@@ -384,7 +384,7 @@
 
     /**
      * Helper method used by all the visitor methods.
-     * 
+     *
      * @param offset offset to the instruction
      * @param length length of the instruction, in bytes
      * @param nextIsLive {@code true} iff the instruction after
@@ -417,7 +417,7 @@
      * Helper method used by all the visitor methods that deal with
      * opcodes that possibly throw. This method should be called after calling
      * {@link #visitCommon}.
-     * 
+     *
      * @param offset offset to the instruction
      * @param length length of the instruction, in bytes
      * @param nextIsLive {@code true} iff the instruction after
diff --git a/dx/src/com/android/dx/cf/code/ByteBlock.java b/dx/src/com/android/dx/cf/code/ByteBlock.java
index 40b91c3..73bbbab 100644
--- a/dx/src/com/android/dx/cf/code/ByteBlock.java
+++ b/dx/src/com/android/dx/cf/code/ByteBlock.java
@@ -40,8 +40,8 @@
     private final ByteCatchList catches;
 
     /**
-     * Constructs an instance. 
-     * 
+     * Constructs an instance.
+     *
      * @param label {@code >= 0;} target label for this block
      * @param start {@code >= 0;} bytecode offset (inclusive) of the start
      * of the block
@@ -99,7 +99,7 @@
 
     /**
      * Gets the label of this block.
-     * 
+     *
      * @return {@code >= 0;} the label
      */
     public int getLabel() {
@@ -108,7 +108,7 @@
 
     /**
      * Gets the bytecode offset (inclusive) of the start of this block.
-     * 
+     *
      * @return {@code >= 0;} the start offset
      */
     public int getStart() {
@@ -117,7 +117,7 @@
 
     /**
      * Gets the bytecode offset (exclusive) of the end of this block.
-     * 
+     *
      * @return {@code > getStart();} the end offset
      */
     public int getEnd() {
@@ -125,9 +125,9 @@
     }
 
     /**
-     * Gets the list of successors that this block may branch to 
+     * Gets the list of successors that this block may branch to
      * non-exceptionally.
-     * 
+     *
      * @return {@code non-null;} the successor list
      */
     public IntList getSuccessors() {
@@ -136,7 +136,7 @@
 
     /**
      * Gets the list of exceptions caught and their handler targets.
-     * 
+     *
      * @return {@code non-null;} the catch list
      */
     public ByteCatchList getCatches() {
diff --git a/dx/src/com/android/dx/cf/code/ByteCatchList.java b/dx/src/com/android/dx/cf/code/ByteCatchList.java
index aab2087..36c37af 100644
--- a/dx/src/com/android/dx/cf/code/ByteCatchList.java
+++ b/dx/src/com/android/dx/cf/code/ByteCatchList.java
@@ -129,7 +129,7 @@
      * is <i>not</i> found for the exception type of the given item in
      * the given array. A match is considered to be either an exact type
      * match or the class {@code Object} which represents a catch-all.
-     * 
+     *
      * @param item {@code non-null;} item with the exception type to look for
      * @param arr {@code non-null;} array to search in
      * @param count {@code non-null;} maximum number of elements in the array to check
@@ -153,7 +153,7 @@
      * is a list of all the exception handler addresses, with the given
      * {@code noException} address appended if appropriate. The
      * result is automatically made immutable.
-     * 
+     *
      * @param noException {@code >= -1;} the no-exception address to append, or
      * {@code -1} not to append anything
      * @return {@code non-null;} list of exception targets, with
diff --git a/dx/src/com/android/dx/cf/code/ByteOps.java b/dx/src/com/android/dx/cf/code/ByteOps.java
index ea7b514..1376008 100644
--- a/dx/src/com/android/dx/cf/code/ByteOps.java
+++ b/dx/src/com/android/dx/cf/code/ByteOps.java
@@ -272,20 +272,20 @@
     /**
      * "l": {@code op local}; category-1 local; implies
      * {@code max_locals} is at least two more than the given
-     * local number 
+     * local number
      */
     public static final int FMT_LOCAL_1 = 10;
 
     /**
      * "m": {@code op local}; category-2 local; implies
      * {@code max_locals} is at least two more than the given
-     * local number 
+     * local number
      */
     public static final int FMT_LOCAL_2 = 11;
 
     /**
      * "y": {@code op #byte} ({@code bipush} and
-     * {@code newarray}) 
+     * {@code newarray})
      */
     public static final int FMT_LITERAL_BYTE = 12;
 
@@ -342,7 +342,7 @@
 
     /**
      * {@code non-null;} map from opcodes to format or'ed with allowed constant
-     * pool types 
+     * pool types
      */
     private static final int[] OPCODE_INFO = new int[256];
 
@@ -622,7 +622,7 @@
 
     /**
      * Gets the name of the given opcode.
-     * 
+     *
      * @param opcode {@code >= 0, <= 255;} the opcode
      * @return {@code non-null;} its name
      */
@@ -639,7 +639,7 @@
 
     /**
      * Gets the format and allowed cp types of the given opcode.
-     * 
+     *
      * @param opcode {@code >= 0, <= 255;} the opcode
      * @return its format and allowed cp types
      */
diff --git a/dx/src/com/android/dx/cf/code/BytecodeArray.java b/dx/src/com/android/dx/cf/code/BytecodeArray.java
index 83cff5d..80e94bf 100644
--- a/dx/src/com/android/dx/cf/code/BytecodeArray.java
+++ b/dx/src/com/android/dx/cf/code/BytecodeArray.java
@@ -46,7 +46,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param bytes {@code non-null;} underlying bytes
      * @param pool {@code non-null;} constant pool to use when resolving constant
      * pool indices
@@ -66,7 +66,7 @@
 
     /**
      * Gets the underlying byte array.
-     * 
+     *
      * @return {@code non-null;} the byte array
      */
     public ByteArray getBytes() {
@@ -75,7 +75,7 @@
 
     /**
      * Gets the size of the bytecode array, per se.
-     * 
+     *
      * @return {@code >= 0;} the length of the bytecode array
      */
     public int size() {
@@ -86,7 +86,7 @@
      * Gets the total length of this structure in bytes, when included in
      * a {@code Code} attribute. The returned value includes the
      * array size plus four bytes for {@code code_length}.
-     * 
+     *
      * @return {@code >= 4;} the total length, in bytes
      */
     public int byteLength() {
@@ -95,7 +95,7 @@
 
     /**
      * Parses each instruction in the array, in order.
-     * 
+     *
      * @param visitor {@code null-ok;} visitor to call back to for each instruction
      */
     public void forEach(Visitor visitor) {
@@ -114,7 +114,7 @@
     /**
      * Finds the offset to each instruction in the bytecode array. The
      * result is a bit set with the offset of each opcode-per-se flipped on.
-     * 
+     *
      * @see Bits
      * @return {@code non-null;} appropriately constructed bit set
      */
@@ -138,7 +138,7 @@
      * the indicated offset (that is, the bit index), repeating until the
      * work set is empty. It is expected that the visitor will regularly
      * set new bits in the work set during the process.
-     * 
+     *
      * @param workSet {@code non-null;} the work set to process
      * @param visitor {@code non-null;} visitor to call back to for each instruction
      */
@@ -162,16 +162,16 @@
      * Parses the instruction at the indicated offset. Indicate the
      * result by calling the visitor if supplied and by returning the
      * number of bytes consumed by the instruction.
-     * 
+     *
      * <p>In order to simplify further processing, the opcodes passed
      * to the visitor are canonicalized, altering the opcode to a more
      * universal one and making formerly implicit arguments
      * explicit. In particular:</p>
-     * 
+     *
      * <ul>
      * <li>The opcodes to push literal constants of primitive types all become
      *   {@code ldc}.
-     *   E.g., {@code fconst_0}, {@code sipush}, and 
+     *   E.g., {@code fconst_0}, {@code sipush}, and
      *   {@code lconst_0} qualify for this treatment.</li>
      * <li>{@code aconst_null} becomes {@code ldc} of a
      *   "known null."</li>
@@ -202,7 +202,7 @@
      *   their pushed type. E.g., {@code arraylength} gets type
      *   {@code Type.INT}.</li>
      * </ul>
-     * 
+     *
      * @param offset {@code >= 0, < bytes.size();} offset to the start of the
      * instruction
      * @param visitor {@code null-ok;} visitor to call back to
@@ -313,7 +313,7 @@
                 case ByteOps.LDC: {
                     int idx = bytes.getUnsignedByte(offset + 1);
                     Constant cst = pool.get(idx);
-                    int value = (cst instanceof CstInteger) ? 
+                    int value = (cst instanceof CstInteger) ?
                         ((CstInteger) cst).getValue() : 0;
                     visitor.visitConstant(ByteOps.LDC, offset, 2, cst, value);
                     return 2;
@@ -321,7 +321,7 @@
                 case ByteOps.LDC_W: {
                     int idx = bytes.getUnsignedShort(offset + 1);
                     Constant cst = pool.get(idx);
-                    int value = (cst instanceof CstInteger) ? 
+                    int value = (cst instanceof CstInteger) ?
                         ((CstInteger) cst).getValue() : 0;
                     visitor.visitConstant(ByteOps.LDC, offset, 3, cst, value);
                     return 3;
@@ -798,7 +798,7 @@
 
     /**
      * Helper to deal with {@code tableswitch}.
-     * 
+     *
      * @param offset the offset to the {@code tableswitch} opcode itself
      * @param visitor {@code non-null;} visitor to use
      * @return instruction length, in bytes
@@ -841,7 +841,7 @@
 
     /**
      * Helper to deal with {@code lookupswitch}.
-     * 
+     *
      * @param offset the offset to the {@code lookupswitch} opcode itself
      * @param visitor {@code non-null;} visitor to use
      * @return instruction length, in bytes
@@ -1059,10 +1059,10 @@
         }
      }
 
-    
+
     /**
      * Helper to deal with {@code wide}.
-     * 
+     *
      * @param offset the offset to the {@code wide} opcode itself
      * @param visitor {@code non-null;} visitor to use
      * @return instruction length, in bytes
@@ -1145,7 +1145,7 @@
     public interface Visitor {
         /**
          * Visits an invalid instruction.
-         * 
+         *
          * @param opcode the opcode
          * @param offset offset to the instruction
          * @param length length of the instruction, in bytes
@@ -1155,7 +1155,7 @@
         /**
          * Visits an instruction which has no inline arguments
          * (implicit or explicit).
-         * 
+         *
          * @param opcode the opcode
          * @param offset offset to the instruction
          * @param length length of the instruction, in bytes
@@ -1166,7 +1166,7 @@
 
         /**
          * Visits an instruction which has a local variable index argument.
-         * 
+         *
          * @param opcode the opcode
          * @param offset offset to the instruction
          * @param length length of the instruction, in bytes
@@ -1188,13 +1188,13 @@
          * should-be-zero value left-shifted by 8. In the case of entries
          * of type {@code int}, the {@code value} field always
          * holds the raw value (for convenience of clients).
-         * 
+         *
          * <p><b>Note:</b> In order to avoid giving it a barely-useful
          * visitor all its own, {@code newarray} also uses this
          * form, passing {@code value} as the array type code and
          * {@code cst} as a {@link CstType} instance
          * corresponding to the array type.</p>
-         * 
+         *
          * @param opcode the opcode
          * @param offset offset to the instruction
          * @param length length of the instruction, in bytes
@@ -1207,7 +1207,7 @@
 
         /**
          * Visits an instruction which has a branch target argument.
-         * 
+         *
          * @param opcode the opcode
          * @param offset offset to the instruction
          * @param length length of the instruction, in bytes
@@ -1218,7 +1218,7 @@
 
         /**
          * Visits a switch instruction.
-         * 
+         *
          * @param opcode the opcode
          * @param offset offset to the instruction
          * @param length length of the instruction, in bytes
@@ -1318,7 +1318,7 @@
             return previousOffset;
         }
     }
-    
+
     /**
      * Base implementation of {@link Visitor}, which has empty method
      * bodies for all methods.
diff --git a/dx/src/com/android/dx/cf/code/ConcreteMethod.java b/dx/src/com/android/dx/cf/code/ConcreteMethod.java
index 70b6b45..da6cff7 100644
--- a/dx/src/com/android/dx/cf/code/ConcreteMethod.java
+++ b/dx/src/com/android/dx/cf/code/ConcreteMethod.java
@@ -43,13 +43,13 @@
 
     /**
      * {@code null-ok;} the class's {@code SourceFile} attribute value,
-     * if any 
+     * if any
      */
     private final CstUtf8 sourceFile;
 
     /**
      * whether the class that this method is part of is defined with
-     * {@code ACC_SUPER} 
+     * {@code ACC_SUPER}
      */
     private final boolean accSuper;
 
@@ -64,7 +64,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param method {@code non-null;} the method to be based on
      * @param cf {@code non-null;} the class file that contains this method
      * @param keepLines whether to keep the line number information
@@ -179,7 +179,7 @@
     /**
      * Gets whether the class that this method is part of is defined with
      * {@code ACC_SUPER}.
-     * 
+     *
      * @return the {@code ACC_SUPER} value
      */
     public boolean getAccSuper() {
@@ -188,7 +188,7 @@
 
     /**
      * Gets the maximum stack size.
-     * 
+     *
      * @return {@code >= 0;} the maximum stack size
      */
     public int getMaxStack() {
@@ -197,7 +197,7 @@
 
     /**
      * Gets the number of locals.
-     * 
+     *
      * @return {@code >= 0;} the number of locals
      */
     public int getMaxLocals() {
@@ -206,7 +206,7 @@
 
     /**
      * Gets the bytecode array.
-     * 
+     *
      * @return {@code non-null;} the bytecode array
      */
     public BytecodeArray getCode() {
@@ -215,7 +215,7 @@
 
     /**
      * Gets the exception table.
-     * 
+     *
      * @return {@code non-null;} the exception table
      */
     public ByteCatchList getCatches() {
@@ -224,7 +224,7 @@
 
     /**
      * Gets the line number list.
-     * 
+     *
      * @return {@code non-null;} the line number list
      */
     public LineNumberList getLineNumbers() {
@@ -233,7 +233,7 @@
 
     /**
      * Gets the local variable list.
-     * 
+     *
      * @return {@code non-null;} the local variable list
      */
     public LocalVariableList getLocalVariables() {
@@ -243,7 +243,7 @@
     /**
      * Returns a {@link SourcePosition} instance corresponding to the
      * given bytecode offset.
-     * 
+     *
      * @param offset {@code >= 0;} the bytecode offset
      * @return {@code non-null;} an appropriate instance
      */
diff --git a/dx/src/com/android/dx/cf/code/ExecutionStack.java b/dx/src/com/android/dx/cf/code/ExecutionStack.java
index 15a9e6c..8f5b528 100644
--- a/dx/src/com/android/dx/cf/code/ExecutionStack.java
+++ b/dx/src/com/android/dx/cf/code/ExecutionStack.java
@@ -24,7 +24,7 @@
 
 /**
  * Representation of a Java method execution stack.
- * 
+ *
  * <p><b>Note:</b> For the most part, the documentation for this class
  * ignores the distinction between {@link Type} and {@link
  * TypeBearer}.</p>
@@ -35,13 +35,13 @@
 
     /**
      * {@code >= 0;} stack pointer (points one past the end) / current stack
-     * size 
+     * size
      */
     private int stackPtr;
 
     /**
-     * Constructs an instance. 
-     * 
+     * Constructs an instance.
+     *
      * @param maxStack {@code >= 0;} the maximum size of the stack for this
      * instance
      */
@@ -53,7 +53,7 @@
 
     /**
      * Makes and returns a mutable copy of this instance.
-     * 
+     *
      * @return {@code non-null;} the copy
      */
     public ExecutionStack copy() {
@@ -68,7 +68,7 @@
     /**
      * Annotates (adds context to) the given exception with information
      * about this instance.
-     * 
+     *
      * @param ex {@code non-null;} the exception to annotate
      */
     public void annotate(ExceptionWithContext ex) {
@@ -85,7 +85,7 @@
     /**
      * Replaces all the occurrences of the given uninitialized type in
      * this stack with its initialized equivalent.
-     * 
+     *
      * @param type {@code non-null;} type to replace
      */
     public void makeInitialized(Type type) {
@@ -107,7 +107,7 @@
 
     /**
      * Gets the maximum stack size for this instance.
-     * 
+     *
      * @return {@code >= 0;} the max stack size
      */
     public int getMaxStack() {
@@ -116,7 +116,7 @@
 
     /**
      * Gets the current stack size.
-     * 
+     *
      * @return {@code >= 0, < getMaxStack();} the current stack size
      */
     public int size() {
@@ -138,7 +138,7 @@
 
     /**
      * Pushes a value of the given type onto the stack.
-     * 
+     *
      * @param type {@code non-null;} type of the value
      * @throws SimException thrown if there is insufficient room on the
      * stack for the value
@@ -175,10 +175,10 @@
      * {@code n == 0} means to peek at the top of the stack. Note that
      * this will return {@code null} if the indicated element is the
      * deeper half of a category-2 value.
-     * 
+     *
      * @param n {@code >= 0;} which element to peek at
      * @return {@code null-ok;} the type of value stored at that element
-     * @throws SimException thrown if {@code n >= size()} 
+     * @throws SimException thrown if {@code n >= size()}
      */
     public TypeBearer peek(int n) {
         if (n < 0) {
@@ -197,7 +197,7 @@
      * stack, returning the type per se, as opposed to the
      * <i>type-bearer</i>.  This method is just a convenient shorthand
      * for {@code peek(n).getType()}.
-     * 
+     *
      * @see #peek
      */
     public Type peekType(int n) {
@@ -206,7 +206,7 @@
 
     /**
      * Pops the top element off of the stack.
-     * 
+     *
      * @return {@code non-null;} the type formerly on the top of the stack
      * @throws SimException thrown if the stack is empty
      */
@@ -226,7 +226,7 @@
      * contexts, particularly when merging two instances. As such, it places
      * the following restriction on its behavior: You may only replace
      * values with other values of the same category.
-     * 
+     *
      * @param n {@code >= 0;} which element to change, where {@code 0} is
      * the top element of the stack
      * @param type {@code non-null;} type of the new value
@@ -281,7 +281,7 @@
      * Gets the string form for a stack element. This is the same as
      * {@code toString()} except that {@code null} is converted
      * to {@code "<invalid>"}.
-     * 
+     *
      * @param type {@code null-ok;} the stack element
      * @return {@code non-null;} the string form
      */
@@ -295,7 +295,7 @@
 
     /**
      * Throws a properly-formatted exception.
-     * 
+     *
      * @param msg {@code non-null;} useful message
      * @return never (keeps compiler happy)
      */
diff --git a/dx/src/com/android/dx/cf/code/Frame.java b/dx/src/com/android/dx/cf/code/Frame.java
index f345335..002a4fb 100644
--- a/dx/src/com/android/dx/cf/code/Frame.java
+++ b/dx/src/com/android/dx/cf/code/Frame.java
@@ -197,7 +197,7 @@
         } catch (NullPointerException ex) {
             throw new NullPointerException("can't return from non-subroutine");
         }
-       
+
         return (subLocals == null) ? null
                 : new Frame(subLocals, stack, newSubroutines);
     }
@@ -234,7 +234,7 @@
      * Merges this frame's subroutine lists with another. The result
      * is the deepest common nesting (effectively, the common prefix of the
      * two lists).
-     * 
+     *
      * @param otherSubroutines label list of subroutine start blocks, from
      * least-nested to most-nested.
      * @return {@code non-null;} merged subroutine nest list as described above
@@ -359,7 +359,7 @@
                             RuntimeException("Incompatible merged subroutines");
                 }
             }
-            
+
         }
 
         return new Frame(resultLocals, resultStack, resultSubroutines);
diff --git a/dx/src/com/android/dx/cf/code/LineNumberList.java b/dx/src/com/android/dx/cf/code/LineNumberList.java
index 7af3f4e..f54f8b5 100644
--- a/dx/src/com/android/dx/cf/code/LineNumberList.java
+++ b/dx/src/com/android/dx/cf/code/LineNumberList.java
@@ -29,7 +29,7 @@
     /**
      * Returns an instance which is the concatenation of the two given
      * instances.
-     * 
+     *
      * @param list1 {@code non-null;} first instance
      * @param list2 {@code non-null;} second instance
      * @return {@code non-null;} combined instance
@@ -58,7 +58,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param count the number of elements to be in the list
      */
     public LineNumberList(int count) {
@@ -67,7 +67,7 @@
 
     /**
      * Gets the indicated item.
-     * 
+     *
      * @param n {@code >= 0;} which item
      * @return {@code null-ok;} the indicated item
      */
@@ -77,7 +77,7 @@
 
     /**
      * Sets the item at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which element
      * @param item {@code non-null;} the item
      */
@@ -91,7 +91,7 @@
 
     /**
      * Sets the item at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which element
      * @param startPc {@code >= 0;} start pc of this item
      * @param lineNumber {@code >= 0;} corresponding line number
@@ -102,7 +102,7 @@
 
     /**
      * Gets the line number associated with the given address.
-     * 
+     *
      * @param pc {@code >= 0;} the address to look up
      * @return {@code >= -1;} the associated line number, or {@code -1} if
      * none is known
@@ -146,7 +146,7 @@
 
         /**
          * Constructs an instance.
-         * 
+         *
          * @param startPc {@code >= 0;} start pc of this item
          * @param lineNumber {@code >= 0;} corresponding line number
          */
@@ -165,7 +165,7 @@
 
         /**
          * Gets the start pc of this item.
-         * 
+         *
          * @return the start pc
          */
         public int getStartPc() {
@@ -174,7 +174,7 @@
 
         /**
          * Gets the line number of this item.
-         * 
+         *
          * @return the line number
          */
         public int getLineNumber() {
diff --git a/dx/src/com/android/dx/cf/code/LocalVariableList.java b/dx/src/com/android/dx/cf/code/LocalVariableList.java
index 8f49a33..dbf8ba2 100644
--- a/dx/src/com/android/dx/cf/code/LocalVariableList.java
+++ b/dx/src/com/android/dx/cf/code/LocalVariableList.java
@@ -33,7 +33,7 @@
     /**
      * Returns an instance which is the concatenation of the two given
      * instances. The result is immutable.
-     * 
+     *
      * @param list1 {@code non-null;} first instance
      * @param list2 {@code non-null;} second instance
      * @return {@code non-null;} combined instance
@@ -69,7 +69,7 @@
      * any element whose {name, index, start, length} matches an
      * element in the signature list gets augmented with the
      * corresponding signature. The result is immutable.
-     * 
+     *
      * @param descriptorList {@code non-null;} list with descriptors
      * @param signatureList {@code non-null;} list with signatures
      * @return {@code non-null;} the merged result
@@ -88,7 +88,7 @@
                 item = item.withSignature(signature);
             }
             result.set(i, item);
-        }        
+        }
 
         result.setImmutable();
         return result;
@@ -96,7 +96,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param count the number of elements to be in the list
      */
     public LocalVariableList(int count) {
@@ -105,7 +105,7 @@
 
     /**
      * Gets the indicated item.
-     * 
+     *
      * @param n {@code >= 0;} which item
      * @return {@code null-ok;} the indicated item
      */
@@ -115,7 +115,7 @@
 
     /**
      * Sets the item at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which element
      * @param item {@code non-null;} the item
      */
@@ -129,10 +129,10 @@
 
     /**
      * Sets the item at the given index.
-     * 
+     *
      * <p><b>Note:</b> At least one of {@code descriptor} or
      * {@code signature} must be passed as non-null.</p>
-     * 
+     *
      * @param n {@code >= 0, < size();} which element
      * @param startPc {@code >= 0;} the start pc of this variable's scope
      * @param length {@code >= 0;} the length (in bytecodes) of this variable's
@@ -151,7 +151,7 @@
      * Gets the local variable information in this instance which matches
      * the given {@link com.android.dx.cf.code.LocalVariableList.Item}
      * in all respects but the type descriptor and signature, if any.
-     * 
+     *
      * @param item {@code non-null;} local variable information to match
      * @return {@code null-ok;} the corresponding local variable information stored
      * in this instance, or {@code null} if there is no matching
@@ -176,7 +176,7 @@
      * and local index, if any. <b>Note:</b> In standard classfiles, a
      * variable's start point is listed as the address of the instruction
      * <i>just past</i> the one that sets the variable.
-     * 
+     *
      * @param pc {@code >= 0;} the address to look up
      * @param index {@code >= 0;} the local variable index
      * @return {@code null-ok;} the associated local variable information, or
@@ -220,10 +220,10 @@
 
         /**
          * Constructs an instance.
-         * 
+         *
          * <p><b>Note:</b> At least one of {@code descriptor} or
          * {@code signature} must be passed as non-null.</p>
-         * 
+         *
          * @param startPc {@code >= 0;} the start pc of this variable's scope
          * @param length {@code >= 0;} the length (in bytecodes) of this variable's
          * scope
@@ -265,7 +265,7 @@
 
         /**
          * Gets the start pc of this variable's scope.
-         * 
+         *
          * @return {@code >= 0;} the start pc of this variable's scope
          */
         public int getStartPc() {
@@ -274,7 +274,7 @@
 
         /**
          * Gets the length (in bytecodes) of this variable's scope.
-         * 
+         *
          * @return {@code >= 0;} the length (in bytecodes) of this variable's scope
          */
         public int getLength() {
@@ -311,7 +311,7 @@
 
         /**
          * Gets the variable's local index.
-         * 
+         *
          * @return {@code >= 0;} the variable's local index
          */
         public int getIndex() {
@@ -321,7 +321,7 @@
         /**
          * Gets the variable's type descriptor. This is a convenient shorthand
          * for {@code Type.intern(getDescriptor().getString())}.
-         * 
+         *
          * @return {@code non-null;} the variable's type
          */
         public Type getType() {
@@ -331,7 +331,7 @@
         /**
          * Constructs and returns an instance which is identical to this
          * one, except that the signature is changed to the given value.
-         * 
+         *
          * @param newSignature {@code non-null;} the new signature
          * @return {@code non-null;} an appropriately-constructed instance
          */
@@ -343,7 +343,7 @@
         /**
          * Gets whether this instance matches (describes) the given
          * address and index.
-         * 
+         *
          * @param pc {@code >= 0;} the address in question
          * @param index {@code >= 0;} the local variable index in question
          * @return {@code true} iff this instance matches {@code pc}
@@ -359,7 +359,7 @@
          * Gets whether this instance matches (describes) the given
          * other instance exactly in all fields except type descriptor and
          * type signature.
-         * 
+         *
          * @param other {@code non-null;} the instance to compare to
          * @return {@code true} iff this instance matches
          */
diff --git a/dx/src/com/android/dx/cf/code/LocalsArray.java b/dx/src/com/android/dx/cf/code/LocalsArray.java
index b2c2689..75af047 100644
--- a/dx/src/com/android/dx/cf/code/LocalsArray.java
+++ b/dx/src/com/android/dx/cf/code/LocalsArray.java
@@ -26,7 +26,7 @@
 
 /**
  * Representation of an array of local variables, with Java semantics.
- * 
+ *
  * <p><b>Note:</b> For the most part, the documentation for this class
  * ignores the distinction between {@link Type} and {@link
  * TypeBearer}.</p>
@@ -37,14 +37,14 @@
      * Constructs an instance, explicitly indicating the mutability.
      *
      * @param mutable {@code true} if this instance is mutable
-     */   
+     */
     protected LocalsArray(boolean mutable) {
         super(mutable);
     }
 
     /**
      * Makes and returns a mutable copy of this instance.
-     * 
+     *
      * @return {@code non-null;} the copy
      */
     public abstract LocalsArray copy();
@@ -52,7 +52,7 @@
     /**
      * Annotates (adds context to) the given exception with information
      * about this instance.
-     * 
+     *
      * @param ex {@code non-null;} the exception to annotate
      */
     public abstract void annotate(ExceptionWithContext ex);
@@ -60,14 +60,14 @@
     /**
      * Replaces all the occurrences of the given uninitialized type in
      * this array with its initialized equivalent.
-     * 
+     *
      * @param type {@code non-null;} type to replace
      */
     public abstract void makeInitialized(Type type);
 
     /**
      * Gets the maximum number of locals this instance can refer to.
-     * 
+     *
      * @return the max locals
      */
     public abstract int getMaxLocals();
@@ -79,7 +79,7 @@
      * by the operation. In case of either category, if the <i>previous</i>
      * local contains a category-2 value, then it too is invalidated by
      * this operation.
-     * 
+     *
      * @param idx {@code >= 0, < getMaxLocals();} which local
      * @param type {@code non-null;} new type for the local at {@code idx}
      */
@@ -90,14 +90,14 @@
      * to that register spec (which includes type and optional name
      * information). This is identical to calling
      * {@code set(spec.getReg(), spec)}.
-     * 
+     *
      * @param spec {@code non-null;} register spec to use as the basis for the update
      */
     public abstract void set(RegisterSpec spec);
 
     /**
      * Invalidates the local at the given index.
-     * 
+     *
      * @param idx {@code >= 0, < getMaxLocals();} which local
      */
     public abstract void invalidate(int idx);
@@ -105,7 +105,7 @@
     /**
      * Gets the type stored at the given local index, or {@code null}
      * if the given local is uninitialized / invalid.
-     * 
+     *
      * @param idx {@code >= 0, < getMaxLocals();} which local
      * @return {@code null-ok;} the type of value stored in that local
      */
@@ -115,7 +115,7 @@
      * Gets the type stored at the given local index, only succeeding if
      * the given local contains a valid type (though it is allowed to
      * be an uninitialized instance).
-     * 
+     *
      * @param idx {@code >= 0, < getMaxLocals();} which local
      * @return {@code non-null;} the type of value stored in that local
      * @throws SimException thrown if {@code idx} is valid, but
@@ -126,7 +126,7 @@
     /**
      * Gets the type stored at the given local index, which is expected
      * to be an initialized category-1 value.
-     * 
+     *
      * @param idx {@code >= 0, < getMaxLocals();} which local
      * @return {@code non-null;} the type of value stored in that local
      * @throws SimException thrown if {@code idx} is valid, but
@@ -139,7 +139,7 @@
     /**
      * Gets the type stored at the given local index, which is expected
      * to be a category-2 value.
-     * 
+     *
      * @param idx {@code >= 0, < getMaxLocals();} which local
      * @return {@code non-null;} the type of value stored in that local
      * @throws SimException thrown if {@code idx} is valid, but
diff --git a/dx/src/com/android/dx/cf/code/LocalsArraySet.java b/dx/src/com/android/dx/cf/code/LocalsArraySet.java
index fa2acbe..5d03055 100644
--- a/dx/src/com/android/dx/cf/code/LocalsArraySet.java
+++ b/dx/src/com/android/dx/cf/code/LocalsArraySet.java
@@ -74,7 +74,7 @@
         super(primary.getMaxLocals() > 0);
 
         this.primary = primary;
-        this.secondaries = secondaries;        
+        this.secondaries = secondaries;
     }
 
     /**
diff --git a/dx/src/com/android/dx/cf/code/Machine.java b/dx/src/com/android/dx/cf/code/Machine.java
index aff50b2..72ba3b4 100644
--- a/dx/src/com/android/dx/cf/code/Machine.java
+++ b/dx/src/com/android/dx/cf/code/Machine.java
@@ -33,11 +33,11 @@
      * Gets the effective prototype of the method that this instance is
      * being used for. The <i>effective</i> prototype includes an initial
      * {@code this} argument for instance methods.
-     * 
+     *
      * @return {@code non-null;} the method prototype
      */
     public Prototype getPrototype();
-    
+
     /**
      * Clears the regular and auxiliary arguments area.
      */
diff --git a/dx/src/com/android/dx/cf/code/Merger.java b/dx/src/com/android/dx/cf/code/Merger.java
index 8da9a18..51c31c3 100644
--- a/dx/src/com/android/dx/cf/code/Merger.java
+++ b/dx/src/com/android/dx/cf/code/Merger.java
@@ -34,7 +34,7 @@
     /**
      * Merges two locals arrays. If the merged result is the same as the first
      * argument, then return the first argument (not a copy).
-     * 
+     *
      * @param locals1 {@code non-null;} a locals array
      * @param locals2 {@code non-null;} another locals array
      * @return {@code non-null;} the result of merging the two locals arrays
@@ -86,7 +86,7 @@
     /**
      * Merges two stacks. If the merged result is the same as the first
      * argument, then return the first argument (not a copy).
-     * 
+     *
      * @param stack1 {@code non-null;} a stack
      * @param stack2 {@code non-null;} another stack
      * @return {@code non-null;} the result of merging the two stacks
@@ -143,7 +143,7 @@
 
     /**
      * Merges two frame types.
-     * 
+     *
      * @param ft1 {@code non-null;} a frame type
      * @param ft2 {@code non-null;} another frame type
      * @return {@code non-null;} the result of merging the two types
@@ -212,7 +212,7 @@
      * type {@code Object} is the supertype of all reference
      * types and all arrays are assignable to
      * {@code Serializable} and {@code Cloneable}.
-     * 
+     *
      * @param supertypeBearer {@code non-null;} the supertype
      * @param subtypeBearer {@code non-null;} the subtype
      */
diff --git a/dx/src/com/android/dx/cf/code/ReturnAddress.java b/dx/src/com/android/dx/cf/code/ReturnAddress.java
index 47c6071..ee36450 100644
--- a/dx/src/com/android/dx/cf/code/ReturnAddress.java
+++ b/dx/src/com/android/dx/cf/code/ReturnAddress.java
@@ -33,7 +33,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param subroutineAddress {@code >= 0;} the start address of the
      * subroutine being returned from
      */
@@ -99,7 +99,7 @@
 
     /**
      * Gets the subroutine address.
-     * 
+     *
      * @return {@code >= 0;} the subroutine address
      */
     public int getSubroutineAddress() {
diff --git a/dx/src/com/android/dx/cf/code/RopperMachine.java b/dx/src/com/android/dx/cf/code/RopperMachine.java
index dd7fcd4..ebff24b 100644
--- a/dx/src/com/android/dx/cf/code/RopperMachine.java
+++ b/dx/src/com/android/dx/cf/code/RopperMachine.java
@@ -53,7 +53,7 @@
 
     /**
      * {@code non-null;} method constant for use in converting
-     * {@code multianewarray} instructions 
+     * {@code multianewarray} instructions
      */
     private static final CstMethodRef MULTIANEWARRAY_METHOD =
         new CstMethodRef(ARRAY_REFLECT_TYPE,
@@ -106,19 +106,19 @@
 
     /**
      * {@code null-ok;} the appropriate {@code return} op or {@code null}
-     * if it is not yet known 
+     * if it is not yet known
      */
     private Rop returnOp;
 
     /**
      * {@code null-ok;} the source position for the return block or {@code null}
-     * if it is not yet known 
+     * if it is not yet known
      */
     private SourcePosition returnPosition;
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param ropper {@code non-null;} ropper controlling this instance
      * @param method {@code non-null;} method being converted
      * @param advice {@code non-null;} translation advice to use
@@ -126,7 +126,7 @@
     public RopperMachine(Ropper ropper, ConcreteMethod method,
             TranslationAdvice advice) {
         super(method.getEffectiveDescriptor());
-        
+
         if (ropper == null) {
             throw new NullPointerException("ropper == null");
         }
@@ -153,7 +153,7 @@
     /**
      * Gets the instructions array. It is shared and gets modified by
      * subsequent calls to this instance.
-     * 
+     *
      * @return {@code non-null;} the instructions array
      */
     public ArrayList<Insn> getInsns() {
@@ -162,7 +162,7 @@
 
     /**
      * Gets the return opcode encountered, if any.
-     * 
+     *
      * @return {@code null-ok;} the return opcode
      */
     public Rop getReturnOp() {
@@ -171,7 +171,7 @@
 
     /**
      * Gets the return position, if known.
-     * 
+     *
      * @return {@code null-ok;} the return position
      */
     public SourcePosition getReturnPosition() {
@@ -200,7 +200,7 @@
     /**
      * Gets whether {@link #catches} was used. This indicates that the
      * last instruction in the block is one of the ones that can throw.
-     * 
+     *
      * @return whether {@code catches} has been used
      */
     public boolean wereCatchesUsed() {
@@ -210,7 +210,7 @@
     /**
      * Gets whether the block just processed ended with a
      * {@code return}.
-     * 
+     *
      * @return whether the block returns
      */
     public boolean returns() {
@@ -224,7 +224,7 @@
      * successor. This may return something other than
      * {@code -1} in the case of an instruction with no
      * successors at all (primary or otherwise).
-     * 
+     *
      * @return {@code >= -1;} the primary successor index
      */
     public int getPrimarySuccessorIndex() {
@@ -235,7 +235,7 @@
      * Gets how many extra blocks will be needed to represent the
      * block currently being translated. Each extra block should consist
      * of one instruction from the end of the original block.
-     * 
+     *
      * @return {@code >= 0;} the number of extra blocks needed
      */
     public int getExtraBlockCount() {
@@ -318,7 +318,7 @@
              * the "temporary stack" area defined for the method, and
              * then move stuff back down onto the main "stack" in the
              * arrangement specified by the stack op pattern.
-             * 
+             *
              * Note: This code ends up emitting a lot of what will
              * turn out to be superfluous moves (e.g., moving back and
              * forth to the same local when doing a dup); however,
@@ -350,7 +350,7 @@
                 stackPointer += type.getType().getCategory();
             }
             return;
-        }                
+        }
 
         TypeBearer destType = (dest != null) ? dest : Type.VOID;
         Constant cst = getAuxCst();
@@ -369,7 +369,7 @@
              * Add an array constructor for the int[] containing all the
              * dimensions.
              */
-            RegisterSpec dimsReg = 
+            RegisterSpec dimsReg =
                 RegisterSpec.make(dest.getNextReg(), Type.INT_ARRAY);
             rop = Rops.opFilledNewArray(Type.INT_ARRAY, sourceCount);
             insn = new ThrowingCstInsn(rop, pos, sources, catches,
@@ -383,7 +383,7 @@
 
             /*
              * Add a const-class instruction for the specified array
-             * class. 
+             * class.
              */
 
             /*
@@ -438,7 +438,7 @@
 
             RegisterSpec objectReg =
                 RegisterSpec.make(dest.getReg(), Type.OBJECT);
-            
+
             insn = new ThrowingCstInsn(
                     Rops.opInvokeStatic(MULTIANEWARRAY_METHOD.getPrototype()),
                     pos, RegisterSpecList.make(classReg, dimsReg),
@@ -609,7 +609,7 @@
          * action we take here is to convert these initialization
          * bytecodes into a single fill-array-data ROP which lays out
          * all the constant values in a table.
-         */ 
+         */
         if (initValues != null) {
             extraBlockCount++;
             insn = new FillArrayDataInsn(Rops.FILL_ARRAY_DATA, pos,
@@ -622,7 +622,7 @@
     /**
      * Helper for {@link #run}, which gets the list of sources for the.
      * instruction.
-     * 
+     *
      * @param opcode the opcode being translated
      * @param stackPointer {@code >= 0;} the stack pointer after the
      * instruction's arguments have been popped
@@ -634,7 +634,7 @@
         if (count == 0) {
             // We get an easy out if there aren't any sources.
             return RegisterSpecList.EMPTY;
-        } 
+        }
 
         int localIndex = getLocalIndex();
         RegisterSpecList sources;
@@ -696,7 +696,7 @@
 
     /**
      * Sets or updates the information about the return block.
-     * 
+     *
      * @param op {@code non-null;} the opcode to use
      * @param pos {@code non-null;} the position to use
      */
@@ -727,7 +727,7 @@
 
     /**
      * Gets the register opcode for the given Java opcode.
-     * 
+     *
      * @param jop {@code >= 0;} the Java opcode
      * @param cst {@code null-ok;} the constant argument, if any
      * @return {@code >= 0;} the corresponding register opcode
@@ -756,7 +756,7 @@
             case ByteOps.LDC2_W: {
                 return RegOps.CONST;
             }
-            case ByteOps.ILOAD: 
+            case ByteOps.ILOAD:
             case ByteOps.ISTORE: {
                 return RegOps.MOVE;
             }
diff --git a/dx/src/com/android/dx/cf/code/Simulator.java b/dx/src/com/android/dx/cf/code/Simulator.java
index 408e126..f96699e 100644
--- a/dx/src/com/android/dx/cf/code/Simulator.java
+++ b/dx/src/com/android/dx/cf/code/Simulator.java
@@ -48,7 +48,7 @@
     private static final String LOCAL_MISMATCH_ERROR =
         "This is symptomatic of .class transformation tools that ignore " +
         "local variable information.";
-    
+
     /** {@code non-null;} machine to use when simulating */
     private final Machine machine;
 
@@ -63,7 +63,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param machine {@code non-null;} machine to use when simulating
      * @param method {@code non-null;} method data to use
      */
@@ -85,7 +85,7 @@
     /**
      * Simulates the effect of executing the given basic block. This modifies
      * the passed-in frame to represent the end result.
-     * 
+     *
      * @param bb {@code non-null;} the basic block
      * @param frame {@code non-null;} frame to operate on
      */
@@ -109,7 +109,7 @@
     /**
      * Simulates the effect of the instruction at the given offset, by
      * making appropriate calls on the given frame.
-     * 
+     *
      * @param offset {@code >= 0;} offset of the instruction to simulate
      * @param frame {@code non-null;} frame to operate on
      * @return the length of the instruction, in bytes
@@ -139,7 +139,7 @@
         private final Machine machine;
 
         /**
-         * {@code null-ok;} frame to use; set with each call to 
+         * {@code null-ok;} frame to use; set with each call to
          * {@link Simulator#simulate}
          */
         private Frame frame;
@@ -157,7 +157,7 @@
 
         /**
          * Sets the frame to act on.
-         * 
+         *
          * @param frame {@code non-null;} the frame
          */
         public void setFrame(Frame frame) {
@@ -382,7 +382,7 @@
                     if (stack.peekType(0).isCategory2()) {
                         throw illegalTos();
                     }
-                    
+
                     if (stack.peekType(1).isCategory2()) {
                         // "form 2" in vmspec-2
                         machine.popArgs(frame, 2);
@@ -474,7 +474,7 @@
         /**
          * Checks whether the prototype is compatible with returning the
          * given type, and throws if not.
-         * 
+         *
          * @param encountered {@code non-null;} the encountered return type
          */
         private void checkReturnType(Type encountered) {
@@ -503,7 +503,7 @@
              * possible, we replace the type with the one indicated in
              * the local variable table, though we still need to check
              * to make sure it's valid for the opcode.
-             * 
+             *
              * The reason we use (offset + length) for the localOffset
              * for a store is because it is only after the store that
              * the local type becomes valid. On the other hand, the
@@ -599,7 +599,7 @@
                      * Get the instance prototype, and use it to direct
                      * the machine.
                      */
-                    Prototype prototype = 
+                    Prototype prototype =
                         ((CstMethodRef) cst).getPrototype(false);
                     machine.popArgs(frame, prototype);
                     break;
@@ -609,7 +609,7 @@
                      * Get the static prototype, and use it to direct
                      * the machine.
                      */
-                    Prototype prototype = 
+                    Prototype prototype =
                         ((CstMethodRef) cst).getPrototype(true);
                     machine.popArgs(frame, prototype);
                     break;
diff --git a/dx/src/com/android/dx/cf/code/SwitchList.java b/dx/src/com/android/dx/cf/code/SwitchList.java
index fdd1596..621d728 100644
--- a/dx/src/com/android/dx/cf/code/SwitchList.java
+++ b/dx/src/com/android/dx/cf/code/SwitchList.java
@@ -31,7 +31,7 @@
     /**
      * {@code non-null;} list of targets corresponding to the test values; there
      * is always one extra element in the target list, to hold the
-     * default target 
+     * default target
      */
     private final IntList targets;
 
@@ -40,7 +40,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param size {@code >= 0;} the number of elements to be in the table
      */
     public SwitchList(int size) {
@@ -60,7 +60,7 @@
 
     /**
      * Gets the size of the list.
-     * 
+     *
      * @return {@code >= 0;} the list size
      */
     public int size() {
@@ -69,9 +69,9 @@
 
     /**
      * Gets the indicated test value.
-     * 
+     *
      * @param n {@code >= 0;}, &lt; size(); which index
-     * @return the test value 
+     * @return the test value
      */
     public int getValue(int n) {
         return values.get(n);
@@ -80,7 +80,7 @@
     /**
      * Gets the indicated target. Asking for the target at {@code size()}
      * returns the default target.
-     * 
+     *
      * @param n {@code >= 0, <= size();} which index
      * @return {@code >= 0;} the target
      */
@@ -91,7 +91,7 @@
     /**
      * Gets the default target. This is just a shorthand for
      * {@code getTarget(size())}.
-     * 
+     *
      * @return {@code >= 0;} the default target
      */
     public int getDefaultTarget() {
@@ -101,7 +101,7 @@
     /**
      * Gets the list of all targets. This includes one extra element at the
      * end of the list, which holds the default target.
-     * 
+     *
      * @return {@code non-null;} the target list
      */
     public IntList getTargets() {
@@ -110,7 +110,7 @@
 
     /**
      * Gets the list of all case values.
-     * 
+     *
      * @return {@code non-null;} the case value list
      */
     public IntList getValues() {
@@ -120,7 +120,7 @@
     /**
      * Sets the default target. It is only valid to call this method
      * when all the non-default elements have been set.
-     * 
+     *
      * @param target {@code >= 0;} the absolute (not relative) default target
      * address
      */
@@ -140,7 +140,7 @@
 
     /**
      * Adds the given item.
-     * 
+     *
      * @param value the test value
      * @param target {@code >= 0;} the absolute (not relative) target address
      */
diff --git a/dx/src/com/android/dx/cf/code/ValueAwareMachine.java b/dx/src/com/android/dx/cf/code/ValueAwareMachine.java
index 43aab8a..de75db5 100644
--- a/dx/src/com/android/dx/cf/code/ValueAwareMachine.java
+++ b/dx/src/com/android/dx/cf/code/ValueAwareMachine.java
@@ -29,7 +29,7 @@
 public class ValueAwareMachine extends BaseMachine {
     /**
      * Constructs an instance.
-     * 
+     *
      * @param prototype {@code non-null;} the prototype for the associated
      * method
      */
@@ -96,7 +96,7 @@
             case ByteOps.IUSHR:
             case ByteOps.IAND:
             case ByteOps.IOR:
-            case ByteOps.IXOR: 
+            case ByteOps.IXOR:
             case ByteOps.IINC:
             case ByteOps.I2L:
             case ByteOps.I2F:
@@ -161,7 +161,7 @@
                 }
                 Type type = ((TypeBearer) getAuxCst()).getType();
                 if (type == Type.VOID) {
-                    clearResult();                    
+                    clearResult();
                 } else {
                     setResult(type);
                 }
diff --git a/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java b/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java
index 7cd9c9b..5eecfa6 100644
--- a/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java
+++ b/dx/src/com/android/dx/cf/cst/ConstantPoolParser.java
@@ -53,7 +53,7 @@
     /**
      * -1 || &gt;= 10; the end offset of this constant pool in the
      * {@code byte[]} which it came from or {@code -1} if not
-     * yet parsed 
+     * yet parsed
      */
     private int endOffset;
 
@@ -62,7 +62,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param bytes {@code non-null;} the bytes of the file
      */
     public ConstantPoolParser(ByteArray bytes) {
@@ -76,7 +76,7 @@
 
     /**
      * Sets the parse observer for this instance.
-     * 
+     *
      * @param observer {@code null-ok;} the observer
      */
     public void setObserver(ParseObserver observer) {
@@ -86,7 +86,7 @@
     /**
      * Gets the end offset of this constant pool in the {@code byte[]}
      * which it came from.
-     * 
+     *
      * @return {@code >= 10;} the end offset
      */
     public int getEndOffset() {
@@ -96,7 +96,7 @@
 
     /**
      * Gets the actual constant pool.
-     * 
+     *
      * @return {@code non-null;} the constant pool
      */
     public StdConstantPool getPool() {
@@ -213,7 +213,7 @@
      * parsed, also storing it in the constant pool. This will also
      * have the side effect of parsing any entries the indicated one
      * depends on.
-     * 
+     *
      * @param idx which constant
      * @return {@code non-null;} the parsed constant
      */
@@ -314,7 +314,7 @@
 
     /**
      * Parses a utf8 constant.
-     * 
+     *
      * @param at offset to the start of the constant (where the tag byte is)
      * @return {@code non-null;} the parsed value
      */
diff --git a/dx/src/com/android/dx/cf/direct/AnnotationParser.java b/dx/src/com/android/dx/cf/direct/AnnotationParser.java
index 88e4cd2..ca38fc5 100644
--- a/dx/src/com/android/dx/cf/direct/AnnotationParser.java
+++ b/dx/src/com/android/dx/cf/direct/AnnotationParser.java
@@ -71,10 +71,10 @@
      * was parsed
      */
     private int parseCursor;
-    
+
     /**
      * Constructs an instance.
-     * 
+     *
      * @param cf {@code non-null;} class file to parse from
      * @param offset {@code >= 0;} offset into the class file data to parse at
      * @param length {@code >= 0;} number of bytes left in the attribute data
@@ -93,15 +93,15 @@
         this.input = bytes.makeDataInputStream();
         this.parseCursor = 0;
     }
-    
+
     /**
      * Parses an annotation value ({@code element_value}) attribute.
-     * 
+     *
      * @return {@code non-null;} the parsed constant value
      */
     public Constant parseValueAttribute() {
         Constant result;
-        
+
         try {
             result = parseValue();
 
@@ -118,14 +118,14 @@
 
     /**
      * Parses a parameter annotation attribute.
-     * 
+     *
      * @param visibility {@code non-null;} visibility of the parsed annotations
      * @return {@code non-null;} the parsed list of lists of annotations
      */
     public AnnotationsList parseParameterAttribute(
             AnnotationVisibility visibility) {
         AnnotationsList result;
-        
+
         try {
             result = parseAnnotationsList(visibility);
 
@@ -139,10 +139,10 @@
 
         return result;
     }
-    
+
     /**
      * Parses an annotation attribute, per se.
-     * 
+     *
      * @param visibility {@code non-null;} visibility of the parsed annotations
      * @return {@code non-null;} the list of annotations read from the attribute
      * data
@@ -150,7 +150,7 @@
     public Annotations parseAnnotationAttribute(
             AnnotationVisibility visibility) {
         Annotations result;
-        
+
         try {
             result = parseAnnotations(visibility);
 
@@ -167,7 +167,7 @@
 
     /**
      * Parses a list of annotation lists.
-     * 
+     *
      * @param visibility {@code non-null;} visibility of the parsed annotations
      * @return {@code non-null;} the list of annotation lists read from the attribute
      * data
@@ -202,7 +202,7 @@
 
     /**
      * Parses an annotation list.
-     * 
+     *
      * @param visibility {@code non-null;} visibility of the parsed annotations
      * @return {@code non-null;} the list of annotations read from the attribute
      * data
@@ -237,7 +237,7 @@
 
     /**
      * Parses a single annotation.
-     * 
+     *
      * @param visibility {@code non-null;} visibility of the parsed annotation
      * @return {@code non-null;} the parsed annotation
      */
@@ -274,18 +274,18 @@
         annotation.setImmutable();
         return annotation;
     }
-    
+
     /**
      * Parses a {@link NameValuePair}.
-     * 
+     *
      * @return {@code non-null;} the parsed element
      */
     private NameValuePair parseElement() throws IOException {
         requireLength(5);
-                
+
         int elementNameIndex = input.readUnsignedShort();
         CstUtf8 elementName = (CstUtf8) pool.get(elementNameIndex);
-                
+
         if (observer != null) {
             parsed(2, "element_name: " + elementName.toHuman());
             parsed(0, "value: ");
@@ -303,7 +303,7 @@
 
     /**
      * Parses an annotation value.
-     * 
+     *
      * @return {@code non-null;} the parsed value
      */
     private Constant parseValue() throws IOException {
@@ -352,7 +352,7 @@
                 int classInfoIndex = input.readUnsignedShort();
                 CstUtf8 value = (CstUtf8) pool.get(classInfoIndex);
                 Type type = Type.internReturnType(value.getString());
-                
+
                 if (observer != null) {
                     parsed(2, "class_info: " + type.toHuman());
                 }
@@ -370,7 +370,7 @@
                 int constNameIndex = input.readUnsignedShort();
                 CstUtf8 typeName = (CstUtf8) pool.get(typeNameIndex);
                 CstUtf8 constName = (CstUtf8) pool.get(constNameIndex);
-                
+
                 if (observer != null) {
                     parsed(2, "type_name: " + typeName.toHuman());
                     parsed(2, "const_name: " + constName.toHuman());
@@ -416,11 +416,11 @@
             }
         }
     }
-    
+
     /**
      * Helper for {@link #parseValue}, which parses a constant reference
      * and returns the referred-to constant value.
-     * 
+     *
      * @return {@code non-null;} the parsed value
      */
     private Constant parseConstant() throws IOException {
@@ -428,8 +428,8 @@
         Constant value = (Constant) pool.get(constValueIndex);
 
         if (observer != null) {
-            String human = (value instanceof CstUtf8) 
-                ? ((CstUtf8) value).toQuoted() 
+            String human = (value instanceof CstUtf8)
+                ? ((CstUtf8) value).toQuoted()
                 : value.toHuman();
             parsed(2, "constant_value: " + human);
         }
@@ -440,7 +440,7 @@
     /**
      * Helper which will throw an exception if the given number of bytes
      * is not available to be read.
-     * 
+     *
      * @param requiredLength the number of required bytes
      */
     private void requireLength(int requiredLength) throws IOException {
@@ -448,12 +448,12 @@
             throw new ParseException("truncated annotation attribute");
         }
     }
-    
+
     /**
      * Helper which indicates that some bytes were just parsed. This should
      * only be used (for efficiency sake) if the parse is known to be
      * observed.
-     * 
+     *
      * @param length {@code >= 0;} number of bytes parsed
      * @param message {@code non-null;} associated message
      */
@@ -465,7 +465,7 @@
     /**
      * Convenience wrapper that simply calls through to
      * {@code observer.changeIndent()}.
-     * 
+     *
      * @param indent the amount to change the indent by
      */
     private void changeIndent(int indent) {
diff --git a/dx/src/com/android/dx/cf/direct/AttributeFactory.java b/dx/src/com/android/dx/cf/direct/AttributeFactory.java
index d00a859..f98372c 100644
--- a/dx/src/com/android/dx/cf/direct/AttributeFactory.java
+++ b/dx/src/com/android/dx/cf/direct/AttributeFactory.java
@@ -57,7 +57,7 @@
      * indicated position in the given array. This method figures out
      * the name, and then does all the setup to call on to {@link #parse0},
      * which does the actual construction.
-     * 
+     *
      * @param cf {@code non-null;} class file to parse from
      * @param context context to parse in; one of the {@code CTX_*}
      * constants
@@ -96,7 +96,7 @@
             return parse0(cf, context, name.getString(), offset + 6, length,
                           observer);
         } catch (ParseException ex) {
-            ex.addContext("...while parsing " + 
+            ex.addContext("...while parsing " +
                     ((name != null) ? (name.toHuman() + " ") : "") +
                     "attribute at offset " + Hex.u4(offset));
             throw ex;
@@ -107,7 +107,7 @@
      * Parses attribute content. The base class implements this by constructing
      * an instance of {@link RawAttribute}. Subclasses are expected to
      * override this to do something better in most cases.
-     * 
+     *
      * @param cf {@code non-null;} class file to parse from
      * @param context context to parse in; one of the {@code CTX_*}
      * constants
diff --git a/dx/src/com/android/dx/cf/direct/ClassPathOpener.java b/dx/src/com/android/dx/cf/direct/ClassPathOpener.java
index 927e9bd..4e8c435 100644
--- a/dx/src/com/android/dx/cf/direct/ClassPathOpener.java
+++ b/dx/src/com/android/dx/cf/direct/ClassPathOpener.java
@@ -207,7 +207,7 @@
         byte[] buf = new byte[20000];
         boolean any = false;
 
-        ArrayList<? extends java.util.zip.ZipEntry> entriesList 
+        ArrayList<? extends java.util.zip.ZipEntry> entriesList
                 = Collections.list(zip.entries());
 
         if (sort) {
diff --git a/dx/src/com/android/dx/cf/direct/CodeObserver.java b/dx/src/com/android/dx/cf/direct/CodeObserver.java
index 952f1bc..efcc80b 100644
--- a/dx/src/com/android/dx/cf/direct/CodeObserver.java
+++ b/dx/src/com/android/dx/cf/direct/CodeObserver.java
@@ -47,7 +47,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param bytes {@code non-null;} actual array of bytecode
      * @param observer {@code non-null;} observer to inform of parsing
      */
@@ -198,7 +198,7 @@
 
     /**
      * Helper to produce the first bit of output for each instruction.
-     * 
+     *
      * @param offset the offset to the start of the instruction
      */
     private String header(int offset) {
@@ -220,7 +220,7 @@
     /**
      * Helper for {@link #visitConstant} where the constant is an
      * {@code int}.
-     * 
+     *
      * @param opcode the opcode
      * @param offset offset to the instruction
      * @param length instruction length
@@ -247,7 +247,7 @@
     /**
      * Helper for {@link #visitConstant} where the constant is a
      * {@code long}.
-     * 
+     *
      * @param opcode the opcode
      * @param offset offset to the instruction
      * @param length instruction length
@@ -271,7 +271,7 @@
     /**
      * Helper for {@link #visitConstant} where the constant is a
      * {@code float}.
-     * 
+     *
      * @param opcode the opcode
      * @param offset offset to the instruction
      * @param length instruction length
@@ -289,7 +289,7 @@
     /**
      * Helper for {@link #visitConstant} where the constant is a
      * {@code double}.
-     * 
+     *
      * @param opcode the opcode
      * @param offset offset to the instruction
      * @param length instruction length
diff --git a/dx/src/com/android/dx/cf/direct/DirectClassFile.java b/dx/src/com/android/dx/cf/direct/DirectClassFile.java
index ac227fa..b194572 100644
--- a/dx/src/com/android/dx/cf/direct/DirectClassFile.java
+++ b/dx/src/com/android/dx/cf/direct/DirectClassFile.java
@@ -46,18 +46,18 @@
 
     /**
      * minimum {@code .class} file major version
-     * 
+     *
      * The class file definition (vmspec/2nd-edition) says:
-     * 
+     *
      *     "Implementations of version 1.2 of the
      *     Java 2 platform can support class file
      *     formats of versions in the range 45.0
      *     through 46.0 inclusive."
-     * 
+     *
      * The class files generated by the build are currently
      * (as of 11/2006) reporting version 49.0 (0x31.0x00),
      * however, so we use that as our upper bound.
-     * 
+     *
      * Valid ranges are typically of the form
      * "A.0 through B.C inclusive" where A <= B and C >= 0,
      * which is why we don't have a CLASS_FILE_MIN_MINOR_VERSION.
@@ -72,7 +72,7 @@
 
     /**
      * {@code non-null;} the file path for the class, excluding any base directory
-     * specification 
+     * specification
      */
     private final String filePath;
 
@@ -83,19 +83,19 @@
      * whether to be strict about parsing; if
      * {@code false}, this avoids doing checks that only exist
      * for purposes of verification (such as magic number matching and
-     * path-package consistency checking) 
+     * path-package consistency checking)
      */
     private final boolean strictParse;
 
     /**
      * {@code null-ok;} the constant pool; only ever {@code null}
-     * before the constant pool is successfully parsed 
+     * before the constant pool is successfully parsed
      */
     private StdConstantPool pool;
 
     /**
      * the class file field {@code access_flags}; will be {@code -1}
-     * before the file is successfully parsed 
+     * before the file is successfully parsed
      */
     private int accessFlags;
 
@@ -108,33 +108,33 @@
 
     /**
      * {@code null-ok;} the class file field {@code super_class}, interpreted
-     * as a type constant if non-zero 
+     * as a type constant if non-zero
      */
     private CstType superClass;
 
     /**
      * {@code null-ok;} the class file field {@code interfaces}; only
      * ever {@code null} before the file is successfully
-     * parsed 
+     * parsed
      */
     private TypeList interfaces;
 
     /**
      * {@code null-ok;} the class file field {@code fields}; only ever
-     * {@code null} before the file is successfully parsed 
+     * {@code null} before the file is successfully parsed
      */
     private FieldList fields;
 
     /**
      * {@code null-ok;} the class file field {@code methods}; only ever
-     * {@code null} before the file is successfully parsed 
+     * {@code null} before the file is successfully parsed
      */
     private MethodList methods;
 
     /**
      * {@code null-ok;} the class file field {@code attributes}; only
      * ever {@code null} before the file is successfully
-     * parsed 
+     * parsed
      */
     private StdAttributeList attributes;
 
@@ -147,7 +147,7 @@
     /**
      * Returns the string form of an object or {@code "(none)"}
      * (rather than {@code "null"}) for {@code null}.
-     * 
+     *
      * @param obj {@code null-ok;} the object to stringify
      * @return {@code non-null;} the appropriate string form
      */
@@ -161,7 +161,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param bytes {@code non-null;} the bytes of the file
      * @param filePath {@code non-null;} the file path for the class,
      * excluding any base directory specification
@@ -188,7 +188,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param bytes {@code non-null;} the bytes of the file
      * @param filePath {@code non-null;} the file path for the class,
      * excluding any base directory specification
@@ -204,7 +204,7 @@
 
     /**
      * Sets the parse observer for this instance.
-     * 
+     *
      * @param observer {@code null-ok;} the observer
      */
     public void setObserver(ParseObserver observer) {
@@ -213,7 +213,7 @@
 
     /**
      * Sets the attribute factory to use.
-     * 
+     *
      * @param attributeFactory {@code non-null;} the attribute factory
      */
     public void setAttributeFactory(AttributeFactory attributeFactory) {
@@ -226,7 +226,7 @@
 
     /**
      * Gets the {@link ByteArray} that this instance's data comes from.
-     * 
+     *
      * @return {@code non-null;} the bytes
      */
     public ByteArray getBytes() {
@@ -318,7 +318,7 @@
      * translated to type constants. Instance construction will fail
      * if any of the (alleged) indices turn out not to refer to
      * constant pool entries of type {@code Class}.
-     * 
+     *
      * @param offset offset into {@link #bytes} for the start of the
      * data
      * @param size number of elements in the list (not number of bytes)
@@ -332,14 +332,14 @@
         if (pool == null) {
             throw new IllegalStateException("pool not yet initialized");
         }
-        
+
         return new DcfTypeList(bytes, offset, size, pool, observer);
     }
 
     /**
      * Gets the class file field {@code magic}, but without doing any
      * checks or parsing first.
-     * 
+     *
      * @return the magic value
      */
     public int getMagic0() {
@@ -349,7 +349,7 @@
     /**
      * Gets the class file field {@code minor_version}, but
      * without doing any checks or parsing first.
-     * 
+     *
      * @return the minor version
      */
     public int getMinorVersion0() {
@@ -359,7 +359,7 @@
     /**
      * Gets the class file field {@code major_version}, but
      * without doing any checks or parsing first.
-     * 
+     *
      * @return the major version
      */
     public int getMajorVersion0() {
@@ -404,7 +404,7 @@
     /**
      * Sees if the .class file header magic/version are within
      * range.
-     * 
+     *
      * @param magic the value of a classfile "magic" field
      * @param minorVersion the value of a classfile "minor_version" field
      * @param majorVersion the value of a classfile "major_version" field
@@ -479,7 +479,7 @@
 
         if (observer != null) {
             observer.parsed(bytes, at, 2,
-                            "access_flags: " + 
+                            "access_flags: " +
                             AccessFlags.classString(accessFlags));
             observer.parsed(bytes, at + 2, 2, "this_class: " + thisClass);
             observer.parsed(bytes, at + 4, 2, "super_class: " +
@@ -559,7 +559,7 @@
     private static class DcfTypeList implements TypeList {
         /** {@code non-null;} array containing the data */
         private final ByteArray bytes;
-        
+
         /** number of elements in the list (not number of bytes) */
         private final int size;
 
@@ -568,7 +568,7 @@
 
         /**
          * Constructs an instance.
-         * 
+         *
          * @param bytes {@code non-null;} original classfile's bytes
          * @param offset offset into {@link #bytes} for the start of the
          * data
@@ -628,6 +628,6 @@
         /** {@inheritDoc} */
         public TypeList withAddedType(Type type) {
             throw new UnsupportedOperationException("unsupported");
-        }        
+        }
     }
 }
diff --git a/dx/src/com/android/dx/cf/direct/FieldListParser.java b/dx/src/com/android/dx/cf/direct/FieldListParser.java
index 24ba7e0..2d8280d 100644
--- a/dx/src/com/android/dx/cf/direct/FieldListParser.java
+++ b/dx/src/com/android/dx/cf/direct/FieldListParser.java
@@ -33,7 +33,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param cf {@code non-null;} the class file to parse from
      * @param definer {@code non-null;} class being defined
      * @param offset offset in {@code bytes} to the start of the list
@@ -47,7 +47,7 @@
 
     /**
      * Gets the parsed list.
-     * 
+     *
      * @return {@code non-null;} the parsed list
      */
     public StdFieldList getList() {
diff --git a/dx/src/com/android/dx/cf/direct/MemberListParser.java b/dx/src/com/android/dx/cf/direct/MemberListParser.java
index a0023c6..91a5e1d 100644
--- a/dx/src/com/android/dx/cf/direct/MemberListParser.java
+++ b/dx/src/com/android/dx/cf/direct/MemberListParser.java
@@ -131,7 +131,7 @@
     /**
      * Gets the human-oriented name for what this instance is parsing.
      * Subclasses must override this method.
-     * 
+     *
      * @return {@code non-null;} the human oriented name
      */
     protected abstract String humanName();
@@ -148,7 +148,7 @@
     /**
      * Gets the {@code CTX_*} constant to use when parsing attributes.
      * Subclasses must override this method.
-     * 
+     *
      * @return {@code non-null;} the human oriented name
      */
     protected abstract int getAttributeContext();
diff --git a/dx/src/com/android/dx/cf/direct/MethodListParser.java b/dx/src/com/android/dx/cf/direct/MethodListParser.java
index 6ab1aba..9e3494e 100644
--- a/dx/src/com/android/dx/cf/direct/MethodListParser.java
+++ b/dx/src/com/android/dx/cf/direct/MethodListParser.java
@@ -33,7 +33,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param cf {@code non-null;} the class file to parse from
      * @param definer {@code non-null;} class being defined
      * @param offset offset in {@code bytes} to the start of the list
@@ -47,7 +47,7 @@
 
     /**
      * Gets the parsed list.
-     * 
+     *
      * @return {@code non-null;} the parsed list
      */
     public StdMethodList getList() {
diff --git a/dx/src/com/android/dx/cf/direct/StdAttributeFactory.java b/dx/src/com/android/dx/cf/direct/StdAttributeFactory.java
index da12a4e..a6a97af 100644
--- a/dx/src/com/android/dx/cf/direct/StdAttributeFactory.java
+++ b/dx/src/com/android/dx/cf/direct/StdAttributeFactory.java
@@ -366,7 +366,7 @@
 
         if (observer != null) {
             observer.parsed(bytes, offset, 2, "class: " + type);
-            observer.parsed(bytes, offset + 2, 2, "method: " + 
+            observer.parsed(bytes, offset + 2, 2, "method: " +
                             DirectClassFile.stringOrNone(method));
         }
 
@@ -439,13 +439,13 @@
             list.set(i, innerClass, outerClass, name, accessFlags);
             if (observer != null) {
                 observer.parsed(bytes, offset, 2,
-                                "inner_class: " + 
+                                "inner_class: " +
                                 DirectClassFile.stringOrNone(innerClass));
                 observer.parsed(bytes, offset + 2, 2,
-                                "  outer_class: " + 
+                                "  outer_class: " +
                                 DirectClassFile.stringOrNone(outerClass));
                 observer.parsed(bytes, offset + 4, 2,
-                                "  name: " + 
+                                "  name: " +
                                 DirectClassFile.stringOrNone(name));
                 observer.parsed(bytes, offset + 6, 2,
                                 "  access_flags: " +
@@ -548,7 +548,7 @@
     /**
      * Parse the table part of either a {@code LocalVariableTable}
      * or a {@code LocalVariableTypeTable}.
-     * 
+     *
      * @param bytes {@code non-null;} bytes to parse, which should <i>only</i>
      * contain the table data (no header)
      * @param pool {@code non-null;} constant pool to use
@@ -578,13 +578,13 @@
                 CstUtf8 type = (CstUtf8) pool.get(typeIdx);
                 CstUtf8 descriptor = null;
                 CstUtf8 signature = null;
-                
+
                 if (typeTable) {
                     signature = type;
                 } else {
                     descriptor = type;
                 }
-                
+
                 list.set(i, startPc, length, name,
                         descriptor, signature, index);
 
@@ -614,7 +614,7 @@
 
         AnnotationParser ap =
             new AnnotationParser(cf, offset, length, observer);
-        Annotations annotations = 
+        Annotations annotations =
             ap.parseAnnotationAttribute(AnnotationVisibility.BUILD);
 
         return new AttRuntimeInvisibleAnnotations(annotations, length);
@@ -631,7 +631,7 @@
 
         AnnotationParser ap =
             new AnnotationParser(cf, offset, length, observer);
-        Annotations annotations = 
+        Annotations annotations =
             ap.parseAnnotationAttribute(AnnotationVisibility.RUNTIME);
 
         return new AttRuntimeVisibleAnnotations(annotations, length);
@@ -730,7 +730,7 @@
     /**
      * Throws the right exception when a known attribute has a way too short
      * length.
-     * 
+     *
      * @return never
      * @throws ParseException always thrown
      */
@@ -741,7 +741,7 @@
     /**
      * Throws the right exception when a known attribute has a too short
      * length.
-     * 
+     *
      * @return never
      * @throws ParseException always thrown
      */
@@ -752,7 +752,7 @@
     /**
      * Throws the right exception when an attribute has an unexpected length
      * (given its contents).
-     * 
+     *
      * @param expected expected length
      * @return never
      * @throws ParseException always thrown
diff --git a/dx/src/com/android/dx/cf/iface/ClassFile.java b/dx/src/com/android/dx/cf/iface/ClassFile.java
index e37fec0..0f584ba 100644
--- a/dx/src/com/android/dx/cf/iface/ClassFile.java
+++ b/dx/src/com/android/dx/cf/iface/ClassFile.java
@@ -81,7 +81,7 @@
     public ConstantPool getConstantPool();
 
     /**
-     * Gets the field {@code interfaces} (along with 
+     * Gets the field {@code interfaces} (along with
      * {@code interfaces_count}).
      *
      * @return {@code non-null;} the list of interfaces
diff --git a/dx/src/com/android/dx/cf/iface/StdAttributeList.java b/dx/src/com/android/dx/cf/iface/StdAttributeList.java
index dd5dfd7..287b8c7 100644
--- a/dx/src/com/android/dx/cf/iface/StdAttributeList.java
+++ b/dx/src/com/android/dx/cf/iface/StdAttributeList.java
@@ -26,7 +26,7 @@
         implements AttributeList {
     /**
      * Constructs an instance. All indices initially contain {@code null}.
-     * 
+     *
      * @param size the size of the list
      */
     public StdAttributeList(int size) {
@@ -94,7 +94,7 @@
 
     /**
      * Sets the attribute at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which attribute
      * @param attribute {@code null-ok;} the attribute object
      */
diff --git a/dx/src/com/android/dx/cf/iface/StdField.java b/dx/src/com/android/dx/cf/iface/StdField.java
index c3a4da6..ef9873d 100644
--- a/dx/src/com/android/dx/cf/iface/StdField.java
+++ b/dx/src/com/android/dx/cf/iface/StdField.java
@@ -28,7 +28,7 @@
 public final class StdField extends StdMember implements Field {
     /**
      * Constructs an instance.
-     * 
+     *
      * @param definingClass {@code non-null;} the defining class
      * @param accessFlags access flags
      * @param nat {@code non-null;} member name and type (descriptor)
diff --git a/dx/src/com/android/dx/cf/iface/StdFieldList.java b/dx/src/com/android/dx/cf/iface/StdFieldList.java
index 044d6b7..f27bd22 100644
--- a/dx/src/com/android/dx/cf/iface/StdFieldList.java
+++ b/dx/src/com/android/dx/cf/iface/StdFieldList.java
@@ -25,7 +25,7 @@
 public final class StdFieldList extends FixedSizeList implements FieldList {
     /**
      * Constructs an instance. All indices initially contain {@code null}.
-     * 
+     *
      * @param size the size of the list
      */
     public StdFieldList(int size) {
@@ -39,7 +39,7 @@
 
     /**
      * Sets the field at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which field
      * @param field {@code null-ok;} the field object
      */
diff --git a/dx/src/com/android/dx/cf/iface/StdMember.java b/dx/src/com/android/dx/cf/iface/StdMember.java
index dfe45c3..9f15585 100644
--- a/dx/src/com/android/dx/cf/iface/StdMember.java
+++ b/dx/src/com/android/dx/cf/iface/StdMember.java
@@ -39,7 +39,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param definingClass {@code non-null;} the defining class
      * @param accessFlags access flags
      * @param nat {@code non-null;} member name and type (descriptor)
diff --git a/dx/src/com/android/dx/cf/iface/StdMethod.java b/dx/src/com/android/dx/cf/iface/StdMethod.java
index 15fd6e1..c511d7d 100644
--- a/dx/src/com/android/dx/cf/iface/StdMethod.java
+++ b/dx/src/com/android/dx/cf/iface/StdMethod.java
@@ -31,7 +31,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param definingClass {@code non-null;} the defining class
      * @param accessFlags access flags
      * @param nat {@code non-null;} member name and type (descriptor)
diff --git a/dx/src/com/android/dx/cf/iface/StdMethodList.java b/dx/src/com/android/dx/cf/iface/StdMethodList.java
index 521021e..417cdee 100644
--- a/dx/src/com/android/dx/cf/iface/StdMethodList.java
+++ b/dx/src/com/android/dx/cf/iface/StdMethodList.java
@@ -25,7 +25,7 @@
 public final class StdMethodList extends FixedSizeList implements MethodList {
     /**
      * Constructs an instance. All indices initially contain {@code null}.
-     * 
+     *
      * @param size the size of the list
      */
     public StdMethodList(int size) {
@@ -39,7 +39,7 @@
 
     /**
      * Sets the method at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which method
      * @param method {@code null-ok;} the method object
      */
diff --git a/dx/src/com/android/dx/command/Main.java b/dx/src/com/android/dx/command/Main.java
index 281a83e..626cf7a 100644
--- a/dx/src/com/android/dx/command/Main.java
+++ b/dx/src/com/android/dx/command/Main.java
@@ -50,7 +50,7 @@
         "    Dump classfiles, or transformations thereof, in a " +
         "human-oriented format.\n" +
         "  dx --junit [-wait] <TestClass>\n" +
-        "    Run the indicated unit test.\n" + 
+        "    Run the indicated unit test.\n" +
         "  dx -J<option> ... <arguments, in one of the above " +
         "forms>\n" +
         "    Pass VM-specific options to the virtual machine that " +
@@ -60,7 +60,7 @@
         ").\n" +
         "  dx --help\n" +
         "    Print this message.";
-        
+
     /**
      * This class is uninstantiable.
      */
@@ -117,7 +117,7 @@
         } catch (Throwable ex) {
             System.err.println("\nUNEXPECTED TOP-LEVEL ERROR:");
             ex.printStackTrace();
-            if ((ex instanceof NoClassDefFoundError) 
+            if ((ex instanceof NoClassDefFoundError)
                     || (ex instanceof NoSuchMethodError)) {
                 System.err.println(
                         "Note: You may be using an incompatible " +
@@ -126,7 +126,7 @@
                         "with recent releases of GCJ.)");
             }
             System.exit(3);
-        }            
+        }
 
         if (!gotCmd) {
             System.err.println("error: no command specified");
diff --git a/dx/src/com/android/dx/command/annotool/AnnotationLister.java b/dx/src/com/android/dx/command/annotool/AnnotationLister.java
index d3fb27c..a29e5ba 100644
--- a/dx/src/com/android/dx/command/annotool/AnnotationLister.java
+++ b/dx/src/com/android/dx/command/annotool/AnnotationLister.java
@@ -202,7 +202,7 @@
                 case CLASS:
                 case INNERCLASS:
                 case METHOD:
-                    matchPackages.add(packageName);                    
+                    matchPackages.add(packageName);
                     break;
                 case PACKAGE:
                     System.out.println(packageName.replace('/','.'));
diff --git a/dx/src/com/android/dx/command/annotool/Main.java b/dx/src/com/android/dx/command/annotool/Main.java
index 9fd1ac5..7661c3d 100644
--- a/dx/src/com/android/dx/command/annotool/Main.java
+++ b/dx/src/com/android/dx/command/annotool/Main.java
@@ -39,7 +39,7 @@
         InvalidArgumentException() {
             super();
         }
-        
+
         InvalidArgumentException(String s) {
             super(s);
         }
@@ -49,7 +49,7 @@
         CLASS,
         INNERCLASS,
         METHOD,
-        PACKAGE        
+        PACKAGE
     }
 
 
diff --git a/dx/src/com/android/dx/command/dexer/Main.java b/dx/src/com/android/dx/command/dexer/Main.java
index 5a9f417..8df1bea 100644
--- a/dx/src/com/android/dx/command/dexer/Main.java
+++ b/dx/src/com/android/dx/command/dexer/Main.java
@@ -244,7 +244,7 @@
             }
         });
 
-        return opener.process();     
+        return opener.process();
     }
 
     /**
@@ -294,7 +294,7 @@
         if (! args.coreLibrary) {
             checkClassName(name);
         }
-        
+
         try {
             ClassDefItem clazz =
                 CfTranslator.translate(name, bytes, args.cfOptions);
@@ -317,13 +317,13 @@
      * Check the class name to make sure it's not a "core library"
      * class. If there is a problem, this updates the error count and
      * throws an exception to stop processing.
-     * 
+     *
      * @param name {@code non-null;} the fully-qualified internal-form
      * class name
      */
     private static void checkClassName(String name) {
         boolean bogus = false;
-        
+
         if (name.startsWith("java/")) {
             bogus = true;
         } else if (name.startsWith("javax/")) {
@@ -348,7 +348,7 @@
          */
 
         DxConsole.err.println("\ntrouble processing \"" + name + "\":");
-        DxConsole.err.println("\n" + 
+        DxConsole.err.println("\n" +
                 "Attempt to include a core class (java.* or javax.*) in " +
                 "something other\n" +
                 "than a core library. It is likely that you have " +
@@ -690,7 +690,7 @@
             meth.debugPrint(pw, args.verboseDump);
 
             /*
-             * The (default) source file is an attribute of the class, but 
+             * The (default) source file is an attribute of the class, but
              * it's useful to see it in method dumps.
              */
             CstUtf8 sourceFile = clazz.getSourceFile();
@@ -732,7 +732,7 @@
     private static class StopProcessing extends RuntimeException {
         // This space intentionally left blank.
     }
-    
+
     /**
      * Command-line argument parser and access.
      */
diff --git a/dx/src/com/android/dx/command/dump/BaseDumper.java b/dx/src/com/android/dx/command/dump/BaseDumper.java
index d2c1e13..ad6540b 100644
--- a/dx/src/com/android/dx/command/dump/BaseDumper.java
+++ b/dx/src/com/android/dx/command/dump/BaseDumper.java
@@ -48,7 +48,7 @@
 
     /**
      * {@code non-null;} the file path for the class, excluding any base
-     * directory specification 
+     * directory specification
      */
     private final String filePath;
 
@@ -72,7 +72,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param bytes {@code non-null;} bytes of the (alleged) class file
      * on the left)
      * @param out {@code non-null;} where to dump to
@@ -157,7 +157,7 @@
     /**
      * Gets the current dump cursor (that is, the offset of the expected
      * next byte to dump).
-     * 
+     *
      * @return {@code >= 0;} the dump cursor
      */
     protected final int getAt() {
@@ -166,7 +166,7 @@
 
     /**
      * Sets the dump cursor to the indicated offset in the given array.
-     * 
+     *
      * @param arr {@code non-null;} array in question
      * @param offset {@code >= 0;} offset into the array
      */
@@ -176,7 +176,7 @@
 
     /**
      * Gets the array of {@code byte}s to process.
-     * 
+     *
      * @return {@code non-null;} the bytes
      */
     protected final byte[] getBytes() {
@@ -185,7 +185,7 @@
 
     /**
      * Gets the filesystem/jar path of the file being dumped.
-     * 
+     *
      * @return {@code non-null;} the path
      */
     protected final String getFilePath() {
@@ -194,7 +194,7 @@
 
     /**
      * Gets whether to be strict about parsing.
-     * 
+     *
      * @return whether to be strict about parsing
      */
     protected final boolean getStrictParse() {
@@ -203,7 +203,7 @@
 
     /**
      * Prints the given string to this instance's output stream.
-     * 
+     *
      * @param s {@code null-ok;} string to print
      */
     protected final void print(String s) {
@@ -213,7 +213,7 @@
     /**
      * Prints the given string to this instance's output stream, followed
      * by a newline.
-     * 
+     *
      * @param s {@code null-ok;} string to print
      */
     protected final void println(String s) {
@@ -222,7 +222,7 @@
 
     /**
      * Gets whether this dump is to include raw bytes.
-     * 
+     *
      * @return the raw bytes flag
      */
     protected final boolean getRawBytes() {
@@ -232,7 +232,7 @@
     /**
      * Gets the width of the first column of output. This is {@code 0}
      * unless raw bytes are being included in the output.
-     * 
+     *
      * @return {@code >= 0;} the width of the first column
      */
     protected final int getWidth1() {
@@ -245,7 +245,7 @@
 
     /**
      * Gets the width of the second column of output.
-     * 
+     *
      * @return {@code >= 0;} the width of the second column
      */
     protected final int getWidth2() {
@@ -255,7 +255,7 @@
 
     /**
      * Constructs a hex data dump of the given portion of {@link #bytes}.
-     * 
+     *
      * @param offset offset to start dumping at
      * @param len length to dump
      * @return {@code non-null;} the dump
@@ -267,7 +267,7 @@
     /**
      * Combines a pair of strings as two columns, or if this is one-column
      * output, format the otherwise-second column.
-     * 
+     *
      * @param s1 {@code non-null;} the first column's string
      * @param s2 {@code non-null;} the second column's string
      * @return {@code non-null;} the combined output
diff --git a/dx/src/com/android/dx/command/dump/BlockDumper.java b/dx/src/com/android/dx/command/dump/BlockDumper.java
index 0858eab..7a11888 100644
--- a/dx/src/com/android/dx/command/dump/BlockDumper.java
+++ b/dx/src/com/android/dx/command/dump/BlockDumper.java
@@ -55,7 +55,7 @@
 
     /**
      * {@code null-ok;} the class file object being constructed;
-     * becomes non-null during {@link #dump} 
+     * becomes non-null during {@link #dump}
      */
     protected DirectClassFile classFile;
 
@@ -71,7 +71,7 @@
     /**
      * Dumps the given array, interpreting it as a class file and dumping
      * methods with indications of block-level stuff.
-     * 
+     *
      * @param bytes {@code non-null;} bytes of the (alleged) class file
      * @param out {@code non-null;} where to dump to
      * @param filePath the file path for the class, excluding any base
@@ -189,7 +189,7 @@
         if (!shouldDumpMethod(name)) {
             return;
         }
-        
+
         ConcreteMethod meth = new ConcreteMethod((Method) member, classFile,
                                                  true, true);
 
@@ -202,7 +202,7 @@
 
     /**
      * Does a regular basic block dump.
-     * 
+     *
      * @param meth {@code non-null;} method data to dump
      */
     private void regularDump(ConcreteMethod meth) {
@@ -257,7 +257,7 @@
                 CstType exceptionClass = one.getExceptionClass();
                 parsed(bytes, end, 0,
                        "catch " +
-                       ((exceptionClass == CstType.OBJECT) ? "<any>" : 
+                       ((exceptionClass == CstType.OBJECT) ? "<any>" :
                         exceptionClass.toHuman()) + " -> " +
                        Hex.u2(one.getHandlerPc()));
             }
@@ -277,7 +277,7 @@
 
     /**
      * Does a registerizing dump.
-     * 
+     *
      * @param meth {@code non-null;} method data to dump
      */
     private void ropDump(ConcreteMethod meth) {
diff --git a/dx/src/com/android/dx/command/dump/SsaDumper.java b/dx/src/com/android/dx/command/dump/SsaDumper.java
index e5e9d97..de44c83 100644
--- a/dx/src/com/android/dx/command/dump/SsaDumper.java
+++ b/dx/src/com/android/dx/command/dump/SsaDumper.java
@@ -51,7 +51,7 @@
 public class SsaDumper extends BlockDumper {
     /**
      * Does the dump.
-     * 
+     *
      * @param bytes {@code non-null;} bytes of the original class file
      * @param out {@code non-null;} where to dump to
      * @param filePath the file path for the class, excluding any base
@@ -66,7 +66,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param bytes {@code non-null;} bytes of the original class file
      * @param out {@code non-null;} where to dump to
      * @param filePath the file path for the class, excluding any base
@@ -124,10 +124,10 @@
         sb.append('\n');
 
         ArrayList<SsaBasicBlock> blocks = ssaMeth.getBlocks();
-        ArrayList<SsaBasicBlock> sortedBlocks = 
+        ArrayList<SsaBasicBlock> sortedBlocks =
             (ArrayList<SsaBasicBlock>) blocks.clone();
         Collections.sort(sortedBlocks, SsaBasicBlock.LABEL_COMPARATOR);
-        
+
         for (SsaBasicBlock block : sortedBlocks) {
             sb.append("block ")
                     .append(Hex.u2(block.getRopLabel())).append('\n');
@@ -164,7 +164,7 @@
                     sb.append(Hex.u2(succLabelList.get(i)));
 
                     if (szSuccLabels != 1 && primary == succLabelList.get(i)) {
-                        sb.append(" *");                        
+                        sb.append(" *");
                     }
                     sb.append('\n');
                 }
diff --git a/dx/src/com/android/dx/dex/cf/AttributeTranslator.java b/dx/src/com/android/dx/dex/cf/AttributeTranslator.java
index cdd29d7..d021a7c 100644
--- a/dx/src/com/android/dx/dex/cf/AttributeTranslator.java
+++ b/dx/src/com/android/dx/dex/cf/AttributeTranslator.java
@@ -84,7 +84,7 @@
      * combines both visible and invisible annotations into a single
      * result set and also adds in a system annotation for the
      * {@code Signature} attribute if present.
-     * 
+     *
      * @param attribs {@code non-null;} the attributes list to search in
      * @return {@code non-null;} the set of annotations, which may be empty
      */
@@ -107,7 +107,7 @@
      * class is an annotation class, then this also includes a
      * representation of all the {@code AnnotationDefault}
      * values.
-     * 
+     *
      * @param cf {@code non-null;} the class in question
      * @param args {@code non-null;} the high-level options
      * @return {@code non-null;} the set of annotations, which may be empty
@@ -149,7 +149,7 @@
      * Gets the annotations out of a given method, similar to {@link
      * #getAnnotations}, also including an annotation for the translation
      * of the method-specific attribute {@code Exceptions}.
-     * 
+     *
      * @param method {@code non-null;} the method in question
      * @return {@code non-null;} the set of annotations, which may be empty
      */
@@ -158,18 +158,18 @@
         TypeList exceptions = getExceptions(method);
 
         if (exceptions.size() != 0) {
-            Annotation throwsAnnotation = 
+            Annotation throwsAnnotation =
                 AnnotationUtils.makeThrows(exceptions);
             result = Annotations.combine(result, throwsAnnotation);
         }
 
         return result;
     }
-    
+
     /**
      * Helper method for {@link #getAnnotations} which just gets the
      * existing annotations, per se.
-     * 
+     *
      * @param attribs {@code non-null;} the attributes list to search in
      * @return {@code non-null;} the set of annotations, which may be empty
      */
@@ -201,7 +201,7 @@
     /**
      * Gets the {@code Signature} attribute out of a given
      * {@link AttributeList}, if any, translating it to an annotation.
-     * 
+     *
      * @param attribs {@code non-null;} the attributes list to search in
      * @return {@code null-ok;} the converted {@code Signature} annotation,
      * if there was an attribute to translate
@@ -223,7 +223,7 @@
      * If the class really has an enclosing method, this returns an
      * {@code EnclosingMethod} annotation; if not, this returns
      * an {@code EnclosingClass} annotation.
-     * 
+     *
      * @param attribs {@code non-null;} the attributes list to search in
      * @return {@code null-ok;} the converted {@code EnclosingMethod} or
      * {@code EnclosingClass} annotation, if there was an
@@ -260,7 +260,7 @@
      * {@link AttributeList}, if any, translating it to one or more of an
      * {@code InnerClass}, {@code EnclosingClass}, or
      * {@code MemberClasses} annotation.
-     * 
+     *
      * @param thisClass {@code non-null;} type representing the class being processed
      * @param attribs {@code non-null;} the attributes list to search in
      * @param needEnclosingClass whether to include an
@@ -298,7 +298,7 @@
         }
 
         int membersSize = membersList.size();
-        
+
         if ((foundThisClass == null) && (membersSize == 0)) {
             return null;
         }
@@ -341,7 +341,7 @@
      * Gets the parameter annotations out of a given method. This
      * combines both visible and invisible annotations into a single
      * result set.
-     * 
+     *
      * @param method {@code non-null;} the method in question
      * @return {@code non-null;} the list of annotation sets, which may be empty
      */
@@ -377,7 +377,7 @@
      * Gets the {@code AnnotationDefault} attributes out of a
      * given class, if any, reforming them as an
      * {@code AnnotationDefault} annotation.
-     * 
+     *
      * @param cf {@code non-null;} the class in question
      * @return {@code null-ok;} an appropriately-constructed
      * {@code AnnotationDefault} annotation, if there were any
diff --git a/dx/src/com/android/dx/dex/cf/CfOptions.java b/dx/src/com/android/dx/dex/cf/CfOptions.java
index 8726223..468f0be 100644
--- a/dx/src/com/android/dx/dex/cf/CfOptions.java
+++ b/dx/src/com/android/dx/dex/cf/CfOptions.java
@@ -32,7 +32,7 @@
 
     /** whether strict file-name-vs-class-name checking should be done */
     public boolean strictNameCheck = true;
-    
+
     /** whether to do SSA/register optimization */
     public boolean optimize = false;
 
diff --git a/dx/src/com/android/dx/dex/cf/CfTranslator.java b/dx/src/com/android/dx/dex/cf/CfTranslator.java
index 8210e90..1a9aa47 100644
--- a/dx/src/com/android/dx/dex/cf/CfTranslator.java
+++ b/dx/src/com/android/dx/dex/cf/CfTranslator.java
@@ -126,7 +126,7 @@
         if (classAnnotations.size() != 0) {
             out.setClassAnnotations(classAnnotations);
         }
-        
+
         processFields(cf, out);
         processMethods(cf, args, out);
 
@@ -162,7 +162,7 @@
                     out.addInstanceField(fi);
                 }
 
-                Annotations annotations = 
+                Annotations annotations =
                     AttributeTranslator.getAnnotations(one.getAttributes());
                 if (annotations.size() != 0) {
                     out.addFieldAnnotations(field, annotations);
@@ -178,7 +178,7 @@
     /**
      * Helper for {@link #processFields}, which translates constants into
      * more specific types if necessary.
-     * 
+     *
      * @param constant {@code non-null;} the constant in question
      * @param type {@code non-null;} the desired type
      */
@@ -254,8 +254,8 @@
                     int paramSize;
 
                     paramSize = meth.getParameterWordCount(isStatic);
-    
-                    String canonicalName 
+
+                    String canonicalName
                             = thisClass.getClassType().getDescriptor()
                                 + "." + one.getName().getString();
 
@@ -307,7 +307,7 @@
                         accessFlags &= ~AccessFlags.ACC_SYNCHRONIZED;
                     }
                 }
-                
+
                 if (isConstructor) {
                     accessFlags |= AccessFlags.ACC_CONSTRUCTOR;
                 }
@@ -323,13 +323,13 @@
                     out.addVirtualMethod(mi);
                 }
 
-                Annotations annotations = 
+                Annotations annotations =
                     AttributeTranslator.getMethodAnnotations(one);
                 if (annotations.size() != 0) {
                     out.addMethodAnnotations(meth, annotations);
                 }
 
-                AnnotationsList list = 
+                AnnotationsList list =
                     AttributeTranslator.getParameterAnnotations(one);
                 if (list.size() != 0) {
                     out.addParameterAnnotations(meth, list);
@@ -366,7 +366,7 @@
          * for the current purpose.
          */
 
-        DalvCode.AssignIndicesCallback callback = 
+        DalvCode.AssignIndicesCallback callback =
             new DalvCode.AssignIndicesCallback() {
                 public int getIndex(Constant cst) {
                     // Everything is at index 0!
diff --git a/dx/src/com/android/dx/dex/cf/CodeStatistics.java b/dx/src/com/android/dx/dex/cf/CodeStatistics.java
index b692d77..33d03fd 100644
--- a/dx/src/com/android/dx/dex/cf/CodeStatistics.java
+++ b/dx/src/com/android/dx/dex/cf/CodeStatistics.java
@@ -75,7 +75,7 @@
 
     /**
      * Updates the number of original bytecode bytes processed.
-     * 
+     *
      * @param count {@code >= 0;} the number of bytes to add
      */
     public static void updateOriginalByteCount(int count) {
@@ -84,7 +84,7 @@
 
     /**
      * Updates the dex statistics.
-     * 
+     *
      * @param nonOptCode non-optimized code block
      * @param code optimized code block
      */
@@ -145,7 +145,7 @@
 
     /**
      * Prints out the collected statistics.
-     * 
+     *
      * @param out {@code non-null;} where to output to
      */
     public static void dumpStatistics(PrintStream out) {
diff --git a/dx/src/com/android/dx/dex/cf/OptimizerOptions.java b/dx/src/com/android/dx/dex/cf/OptimizerOptions.java
index fa606e3..a66421e 100644
--- a/dx/src/com/android/dx/dex/cf/OptimizerOptions.java
+++ b/dx/src/com/android/dx/dex/cf/OptimizerOptions.java
@@ -56,7 +56,7 @@
 
     /**
      * Loads the optimize/don't optimize lists from files.
-     * 
+     *
      * @param optimizeListFile Pathname
      * @param dontOptimizeListFile Pathname
      */
@@ -89,7 +89,7 @@
     /**
      * Loads a list of newline-separated strings into a new HashSet and returns
      * the HashSet.
-     * 
+     *
      * @param filename filename to process
      * @return set of all unique lines in the file
      */
diff --git a/dx/src/com/android/dx/dex/code/ArrayData.java b/dx/src/com/android/dx/dex/code/ArrayData.java
index 7698de1..145f2c2 100644
--- a/dx/src/com/android/dx/dex/code/ArrayData.java
+++ b/dx/src/com/android/dx/dex/code/ArrayData.java
@@ -25,12 +25,12 @@
 import java.util.ArrayList;
 
 /**
- * Pseudo-instruction which holds fill array data. 
+ * Pseudo-instruction which holds fill array data.
  */
 public final class ArrayData extends VariableSizeInsn {
     /**
      * {@code non-null;} address representing the instruction that uses this
-     * instance 
+     * instance
      */
     private final CodeAddress user;
 
@@ -49,7 +49,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      * @param user {@code non-null;} address representing the instruction that
      * uses this instance
diff --git a/dx/src/com/android/dx/dex/code/BlockAddresses.java b/dx/src/com/android/dx/dex/code/BlockAddresses.java
index e55f893..1a1d184 100644
--- a/dx/src/com/android/dx/dex/code/BlockAddresses.java
+++ b/dx/src/com/android/dx/dex/code/BlockAddresses.java
@@ -59,7 +59,7 @@
 
     /**
      * Gets the instance for the start of the given block.
-     * 
+     *
      * @param block {@code non-null;} the block in question
      * @return {@code non-null;} the appropriate instance
      */
@@ -69,7 +69,7 @@
 
     /**
      * Gets the instance for the start of the block with the given label.
-     * 
+     *
      * @param label {@code non-null;} the label of the block in question
      * @return {@code non-null;} the appropriate instance
      */
@@ -79,7 +79,7 @@
 
     /**
      * Gets the instance for the final instruction of the given block.
-     * 
+     *
      * @param block {@code non-null;} the block in question
      * @return {@code non-null;} the appropriate instance
      */
@@ -90,7 +90,7 @@
     /**
      * Gets the instance for the final instruction of the block with
      * the given label.
-     * 
+     *
      * @param label {@code non-null;} the label of the block in question
      * @return {@code non-null;} the appropriate instance
      */
@@ -101,7 +101,7 @@
     /**
      * Gets the instance for the end (address after the final instruction)
      * of the given block.
-     * 
+     *
      * @param block {@code non-null;} the block in question
      * @return {@code non-null;} the appropriate instance
      */
@@ -112,7 +112,7 @@
     /**
      * Gets the instance for the end (address after the final instruction)
      * of the block with the given label.
-     * 
+     *
      * @param label {@code non-null;} the label of the block in question
      * @return {@code non-null;} the appropriate instance
      */
diff --git a/dx/src/com/android/dx/dex/code/CatchBuilder.java b/dx/src/com/android/dx/dex/code/CatchBuilder.java
index d2ec3d7..90d2e8d 100644
--- a/dx/src/com/android/dx/dex/code/CatchBuilder.java
+++ b/dx/src/com/android/dx/dex/code/CatchBuilder.java
@@ -26,7 +26,7 @@
 public interface CatchBuilder {
     /**
      * Builds and returns the catch table for this instance.
-     * 
+     *
      * @return {@code non-null;} the constructed table
      */
     public CatchTable build();
@@ -34,14 +34,14 @@
     /**
      * Gets whether this instance has any catches at all (either typed
      * or catch-all).
-     * 
+     *
      * @return whether this instance has any catches at all
      */
     public boolean hasAnyCatches();
-    
+
     /**
      * Gets the set of catch types associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the set of catch types
      */
     public HashSet<Type> getCatchTypes();
diff --git a/dx/src/com/android/dx/dex/code/CatchHandlerList.java b/dx/src/com/android/dx/dex/code/CatchHandlerList.java
index a8a97be..8472584 100644
--- a/dx/src/com/android/dx/dex/code/CatchHandlerList.java
+++ b/dx/src/com/android/dx/dex/code/CatchHandlerList.java
@@ -57,7 +57,7 @@
     /**
      * Get the human form of this instance, prefixed on each line
      * with the string.
-     * 
+     *
      * @param prefix {@code non-null;} the prefix for every line
      * @param header {@code non-null;} the header for the first line (after the
      * first prefix)
@@ -85,7 +85,7 @@
             } else {
                 sb.append(entry.getExceptionType().toHuman());
             }
-            
+
             sb.append(" -> ");
             sb.append(Hex.u2or4(entry.getHandler()));
         }
@@ -96,7 +96,7 @@
     /**
      * Returns whether or not this instance ends with a "catch-all"
      * handler.
-     * 
+     *
      * @return {@code true} if this instance ends with a "catch-all"
      * handler or {@code false} if not
      */
@@ -205,7 +205,7 @@
 
             return false;
         }
-        
+
         /** {@inheritDoc} */
         public int compareTo(Entry other) {
             if (handler < other.handler) {
@@ -216,10 +216,10 @@
 
             return exceptionType.compareTo(other.exceptionType);
         }
-        
+
         /**
          * Gets the exception type handled.
-         * 
+         *
          * @return {@code non-null;} the exception type
          */
         public CstType getExceptionType() {
@@ -228,7 +228,7 @@
 
         /**
          * Gets the handler address.
-         * 
+         *
          * @return {@code >= 0;} the handler address
          */
         public int getHandler() {
diff --git a/dx/src/com/android/dx/dex/code/CatchTable.java b/dx/src/com/android/dx/dex/code/CatchTable.java
index fd8e3a7..0ee890f 100644
--- a/dx/src/com/android/dx/dex/code/CatchTable.java
+++ b/dx/src/com/android/dx/dex/code/CatchTable.java
@@ -105,7 +105,7 @@
         /**
          * Constructs an instance.
          *
-         * @param start {@code >= 0;} start address 
+         * @param start {@code >= 0;} start address
          * @param end {@code > start;} end address (exclusive)
          * @param handlers {@code non-null;} list of catch handlers
          */
@@ -144,7 +144,7 @@
 
             return false;
         }
-        
+
         /** {@inheritDoc} */
         public int compareTo(Entry other) {
             if (start < other.start) {
@@ -152,7 +152,7 @@
             } else if (start > other.start) {
                 return 1;
             }
-            
+
             if (end < other.end) {
                 return -1;
             } else if (end > other.end) {
@@ -161,10 +161,10 @@
 
             return handlers.compareTo(other.handlers);
         }
-        
+
         /**
          * Gets the start address.
-         * 
+         *
          * @return {@code >= 0;} the start address
          */
         public int getStart() {
@@ -173,7 +173,7 @@
 
         /**
          * Gets the end address (exclusive).
-         * 
+         *
          * @return {@code > start;} the end address (exclusive)
          */
         public int getEnd() {
@@ -182,7 +182,7 @@
 
         /**
          * Gets the handlers.
-         * 
+         *
          * @return {@code non-null;} the handlers
          */
         public CatchHandlerList getHandlers() {
diff --git a/dx/src/com/android/dx/dex/code/CodeAddress.java b/dx/src/com/android/dx/dex/code/CodeAddress.java
index f25718e..5d26bd1 100644
--- a/dx/src/com/android/dx/dex/code/CodeAddress.java
+++ b/dx/src/com/android/dx/dex/code/CodeAddress.java
@@ -30,7 +30,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      */
     public CodeAddress(SourcePosition position) {
diff --git a/dx/src/com/android/dx/dex/code/CstInsn.java b/dx/src/com/android/dx/dex/code/CstInsn.java
index a579c5e..3f848c0 100644
--- a/dx/src/com/android/dx/dex/code/CstInsn.java
+++ b/dx/src/com/android/dx/dex/code/CstInsn.java
@@ -30,20 +30,20 @@
 
     /**
      * {@code >= -1;} the constant pool index for {@link #constant}, or
-     * {@code -1} if not yet set 
+     * {@code -1} if not yet set
      */
     private int index;
 
     /**
      * {@code >= -1;} the constant pool index for the class reference in
-     * {@link #constant} if any, or {@code -1} if not yet set 
+     * {@link #constant} if any, or {@code -1} if not yet set
      */
     private int classIndex;
 
     /**
      * Constructs an instance. The output address of this instance is
      * initially unknown ({@code -1}) as is the constant pool index.
-     * 
+     *
      * @param opcode the opcode; one of the constants from {@link Dops}
      * @param position {@code non-null;} source position
      * @param registers {@code non-null;} register list, including a
@@ -67,13 +67,13 @@
     /** {@inheritDoc} */
     @Override
     public DalvInsn withOpcode(Dop opcode) {
-        CstInsn result = 
+        CstInsn result =
             new CstInsn(opcode, getPosition(), getRegisters(), constant);
 
         if (index >= 0) {
             result.setIndex(index);
         }
-        
+
         if (classIndex >= 0) {
             result.setClassIndex(classIndex);
         }
@@ -90,7 +90,7 @@
         if (index >= 0) {
             result.setIndex(index);
         }
-        
+
         if (classIndex >= 0) {
             result.setClassIndex(classIndex);
         }
@@ -100,7 +100,7 @@
 
     /**
      * Gets the constant argument.
-     * 
+     *
      * @return {@code non-null;} the constant argument
      */
     public Constant getConstant() {
@@ -110,7 +110,7 @@
     /**
      * Gets the constant's index. It is only valid to call this after
      * {@link #setIndex} has been called.
-     * 
+     *
      * @return {@code >= 0;} the constant pool index
      */
     public int getIndex() {
@@ -123,9 +123,9 @@
 
     /**
      * Returns whether the constant's index has been set for this instance.
-     * 
+     *
      * @see #setIndex
-     * 
+     *
      * @return {@code true} iff the index has been set
      */
     public boolean hasIndex() {
@@ -135,7 +135,7 @@
     /**
      * Sets the constant's index. It is only valid to call this method once
      * per instance.
-     * 
+     *
      * @param index {@code >= 0;} the constant pool index
      */
     public void setIndex(int index) {
@@ -153,7 +153,7 @@
     /**
      * Gets the constant's class index. It is only valid to call this after
      * {@link #setClassIndex} has been called.
-     * 
+     *
      * @return {@code >= 0;} the constant's class's constant pool index
      */
     public int getClassIndex() {
@@ -167,9 +167,9 @@
     /**
      * Returns whether the constant's class index has been set for this
      * instance.
-     * 
+     *
      * @see #setClassIndex
-     * 
+     *
      * @return {@code true} iff the index has been set
      */
     public boolean hasClassIndex() {
@@ -182,7 +182,7 @@
      * reference constants have a class, so it is only on instances
      * with reference constants that this method should ever be
      * called. It is only valid to call this method once per instance.
-     * 
+     *
      * @param index {@code >= 0;} the constant's class's constant pool index
      */
     public void setClassIndex(int index) {
diff --git a/dx/src/com/android/dx/dex/code/DalvCode.java b/dx/src/com/android/dx/dex/code/DalvCode.java
index f911912..58f191b 100644
--- a/dx/src/com/android/dx/dex/code/DalvCode.java
+++ b/dx/src/com/android/dx/dex/code/DalvCode.java
@@ -28,7 +28,7 @@
 public final class DalvCode {
     /**
      * how much position info to preserve; one of the static
-     * constants in {@link PositionList} 
+     * constants in {@link PositionList}
      */
     private final int positionInfo;
 
@@ -46,13 +46,13 @@
 
     /**
      * {@code null-ok;} catch table; set in
-     * {@link #finishProcessingIfNecessary} 
+     * {@link #finishProcessingIfNecessary}
      */
     private CatchTable catches;
 
     /**
      * {@code null-ok;} source positions list; set in
-     * {@link #finishProcessingIfNecessary} 
+     * {@link #finishProcessingIfNecessary}
      */
     private PositionList positions;
 
@@ -119,16 +119,16 @@
      * Assign indices in all instructions that need them, using the
      * given callback to perform lookups. This must be called before
      * {@link #getInsns}.
-     * 
+     *
      * @param callback {@code non-null;} callback object
      */
     public void assignIndices(AssignIndicesCallback callback) {
         unprocessedInsns.assignIndices(callback);
     }
-    
+
     /**
      * Gets whether this instance has any position data to represent.
-     * 
+     *
      * @return {@code true} iff this instance has any position
      * data to represent
      */
@@ -136,10 +136,10 @@
         return (positionInfo != PositionList.NONE)
             && unprocessedInsns.hasAnyPositionInfo();
     }
-            
+
     /**
      * Gets whether this instance has any local variable data to represent.
-     * 
+     *
      * @return {@code true} iff this instance has any local variable
      * data to represent
      */
@@ -150,16 +150,16 @@
     /**
      * Gets whether this instance has any catches at all (either typed
      * or catch-all).
-     * 
+     *
      * @return whether this instance has any catches at all
      */
     public boolean hasAnyCatches() {
         return unprocessedCatches.hasAnyCatches();
     }
-    
+
     /**
      * Gets the set of catch types handled anywhere in the code.
-     * 
+     *
      * @return {@code non-null;} the set of catch types
      */
     public HashSet<Type> getCatchTypes() {
@@ -169,7 +169,7 @@
     /**
      * Gets the set of all constants referred to by instructions in
      * the code.
-     * 
+     *
      * @return {@code non-null;} the set of constants
      */
     public HashSet<Constant> getInsnConstants() {
@@ -178,7 +178,7 @@
 
     /**
      * Gets the list of instructions.
-     * 
+     *
      * @return {@code non-null;} the instruction list
      */
     public DalvInsnList getInsns() {
@@ -188,7 +188,7 @@
 
     /**
      * Gets the catch (exception handler) table.
-     * 
+     *
      * @return {@code non-null;} the catch table
      */
     public CatchTable getCatches() {
@@ -198,7 +198,7 @@
 
     /**
      * Gets the source positions list.
-     * 
+     *
      * @return {@code non-null;} the source positions list
      */
     public PositionList getPositions() {
@@ -208,7 +208,7 @@
 
     /**
      * Gets the source positions list.
-     * 
+     *
      * @return {@code non-null;} the source positions list
      */
     public LocalList getLocals() {
@@ -222,7 +222,7 @@
     public static interface AssignIndicesCallback {
         /**
          * Gets the index for the given constant.
-         * 
+         *
          * @param cst {@code non-null;} the constant
          * @return {@code >= -1;} the index or {@code -1} if the constant
          * shouldn't actually be reified with an index
diff --git a/dx/src/com/android/dx/dex/code/DalvInsn.java b/dx/src/com/android/dx/dex/code/DalvInsn.java
index 11ee55d..f203817 100644
--- a/dx/src/com/android/dx/dex/code/DalvInsn.java
+++ b/dx/src/com/android/dx/dex/code/DalvInsn.java
@@ -29,7 +29,7 @@
 public abstract class DalvInsn {
     /**
      * the actual output address of this instance, if known, or
-     * {@code -1} if not 
+     * {@code -1} if not
      */
     private int address;
 
@@ -44,7 +44,7 @@
 
     /**
      * Makes a move instruction, appropriate and ideal for the given arguments.
-     * 
+     *
      * @param position {@code non-null;} source position information
      * @param dest {@code non-null;} destination register
      * @param src {@code non-null;} source register
@@ -76,13 +76,13 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * <p><b>Note:</b> In the unlikely event that an instruction takes
      * absolutely no registers (e.g., a {@code nop} or a
      * no-argument no-result static method call), then the given
      * register list may be passed as {@link
      * RegisterSpecList#EMPTY}.</p>
-     * 
+     *
      * @param opcode the opcode; one of the constants from {@link Dops}
      * @param position {@code non-null;} source position
      * @param registers {@code non-null;} register list, including a
@@ -141,7 +141,7 @@
 
     /**
      * Gets whether the address of this instruction is known.
-     * 
+     *
      * @see #getAddress
      * @see #setAddress
      */
@@ -152,9 +152,9 @@
     /**
      * Gets the output address of this instruction, if it is known. This throws
      * a {@code RuntimeException} if it has not yet been set.
-     * 
+     *
      * @see #setAddress
-     * 
+     *
      * @return {@code >= 0;} the output address
      */
     public final int getAddress() {
@@ -167,7 +167,7 @@
 
     /**
      * Gets the opcode.
-     * 
+     *
      * @return {@code non-null;} the opcode
      */
     public final Dop getOpcode() {
@@ -176,7 +176,7 @@
 
     /**
      * Gets the source position.
-     * 
+     *
      * @return {@code non-null;} the source position
      */
     public final SourcePosition getPosition() {
@@ -185,7 +185,7 @@
 
     /**
      * Gets the register list for this instruction.
-     * 
+     *
      * @return {@code non-null;} the registers
      */
     public final RegisterSpecList getRegisters() {
@@ -196,7 +196,7 @@
      * Returns whether this instance's opcode uses a result register.
      * This method is a convenient shorthand for
      * {@code getOpcode().hasResult()}.
-     * 
+     *
      * @return {@code true} iff this opcode uses a result register
      */
     public final boolean hasResult() {
@@ -209,7 +209,7 @@
      * sources (if any), that each source register is unique, and that
      * (to be explicit here) category-2 values take up two consecutive
      * registers.
-     * 
+     *
      * @return {@code >= 0;} the minimum distinct register requirement
      */
     public final int getMinimumRegisterRequirement() {
@@ -228,9 +228,9 @@
     /**
      * Gets the instruction prefix required, if any, to use in a high
      * register transformed version of this instance.
-     * 
+     *
      * @see #hrVersion
-     * 
+     *
      * @return {@code null-ok;} the prefix, if any
      */
     public DalvInsn hrPrefix() {
@@ -252,9 +252,9 @@
     /**
      * Gets the instruction suffix required, if any, to use in a high
      * register transformed version of this instance.
-     * 
+     *
      * @see #hrVersion
-     * 
+     *
      * @return {@code null-ok;} the suffix, if any
      */
     public DalvInsn hrSuffix() {
@@ -276,11 +276,11 @@
      * instance, and it is guaranteed that the number of low registers
      * used will be the number returned by {@link
      * #getMinimumRegisterRequirement}.
-     * 
+     *
      * @return {@code non-null;} the replacement
      */
     public DalvInsn hrVersion() {
-        RegisterSpecList regs = 
+        RegisterSpecList regs =
             registers.withSequentialRegisters(0, hasResult());
         return withRegisters(regs);
     }
@@ -288,7 +288,7 @@
     /**
      * Gets the short identifier for this instruction. This is its
      * address, if assigned, or its identity hashcode if not.
-     * 
+     *
      * @return {@code non-null;} the identifier
      */
     public final String identifierString() {
@@ -303,7 +303,7 @@
      * Returns the string form of this instance suitable for inclusion in
      * a human-oriented listing dump. This method will return {@code null}
      * if this instance should not appear in a listing.
-     * 
+     *
      * @param prefix {@code non-null;} prefix before the address; each follow-on
      * line will be indented to match as well
      * @param width {@code >= 0;} the width of the output or {@code 0} for
@@ -330,7 +330,7 @@
 
     /**
      * Sets the output address.
-     * 
+     *
      * @param address {@code >= 0;} the output address
      */
     public final void setAddress(int address) {
@@ -346,7 +346,7 @@
      * calculable if this instance's address is known, and it is equal
      * to the address plus the length of the instruction format of this
      * instance's opcode.
-     * 
+     *
      * @return {@code >= 0;} the next address
      */
     public final int getNextAddress() {
@@ -355,7 +355,7 @@
 
     /**
      * Gets the size of this instruction, in 16-bit code units.
-     * 
+     *
      * @return {@code >= 0;} the code size of this instruction
      */
     public abstract int codeSize();
@@ -363,7 +363,7 @@
     /**
      * Writes this instance to the given output. This method should
      * never annotate the output.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      */
     public abstract void writeTo(AnnotatedOutput out);
@@ -371,7 +371,7 @@
     /**
      * Returns an instance that is just like this one, except that its
      * opcode is replaced by the one given, and its address is reset.
-     * 
+     *
      * @param opcode {@code non-null;} the new opcode
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -381,7 +381,7 @@
      * Returns an instance that is just like this one, except that all
      * register references have been offset by the given delta, and its
      * address is reset.
-     * 
+     *
      * @param delta the amount to offset register references by
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -391,7 +391,7 @@
      * Returns an instance that is just like this one, except that the
      * register list is replaced by the given one, and its address is
      * reset.
-     * 
+     *
      * @param registers {@code non-null;} new register list
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -400,7 +400,7 @@
     /**
      * Gets the string form for any arguments to this instance. Subclasses
      * must override this.
-     * 
+     *
      * @return {@code null-ok;} the string version of any arguments or
      * {@code null} if there are none
      */
@@ -413,7 +413,7 @@
      * address and without respect for any output formatting. This
      * method should return {@code null} if this instance should
      * not appear in a listing.
-     * 
+     *
      * @param noteIndices whether to include an explicit notation of
      * constant pool indices
      * @return {@code null-ok;} the listing string
diff --git a/dx/src/com/android/dx/dex/code/DalvInsnList.java b/dx/src/com/android/dx/dex/code/DalvInsnList.java
index 5cf22f2..0f8c23d 100644
--- a/dx/src/com/android/dx/dex/code/DalvInsnList.java
+++ b/dx/src/com/android/dx/dex/code/DalvInsnList.java
@@ -45,7 +45,7 @@
     /**
      * Constructs and returns an immutable instance whose elements are
      * identical to the ones in the given list, in the same order.
-     * 
+     *
      * @param list {@code non-null;} the list to use for elements
      * @param regCount count, in register-units, of the number of registers
      * this code block requires.
@@ -64,10 +64,10 @@
         result.setImmutable();
         return result;
     }
-    
+
     /**
      * Constructs an instance. All indices initially contain {@code null}.
-     * 
+     *
      * @param size the size of the list
      */
     public DalvInsnList(int size, int regCount) {
@@ -79,7 +79,7 @@
      * Gets the element at the given index. It is an error to call
      * this with the index for an element which was never set; if you
      * do that, this will throw {@code NullPointerException}.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @return {@code non-null;} element at that index
      */
@@ -89,7 +89,7 @@
 
     /**
      * Sets the instruction at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @param insn {@code non-null;} the instruction to set at {@code n}
      */
@@ -101,7 +101,7 @@
      * Gets the size of this instance, in 16-bit code units. This will only
      * return a meaningful result if the instructions in this instance all
      * have valid addresses.
-     * 
+     *
      * @return {@code >= 0;} the size
      */
     public int codeSize() {
@@ -118,7 +118,7 @@
     /**
      * Writes all the instructions in this instance to the given output
      * destination.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      */
     public void writeTo(AnnotatedOutput out) {
@@ -127,7 +127,7 @@
 
         if (out.annotates()) {
             boolean verbose = out.isVerbose();
-            
+
             for (int i = 0; i < sz; i++) {
                 DalvInsn insn = (DalvInsn) get0(i);
                 int codeBytes = insn.codeSize() * 2;
@@ -180,7 +180,7 @@
      * Gets the size of the outgoing arguments area required by this
      * method. This is equal to the largest argument word count of any
      * method referred to by this instance.
-     * 
+     *
      * @return {@code >= 0;} the required outgoing arguments size
      */
     public int getOutsSize() {
@@ -215,7 +215,7 @@
 
     /**
      * Does a human-friendly dump of this instance.
-     * 
+     *
      * @param out {@code non-null;} where to dump
      * @param prefix {@code non-null;} prefix to attach to each line of output
      * @param verbose whether to be verbose; verbose output includes
@@ -249,7 +249,7 @@
 
     /**
      * Does a human-friendly dump of this instance.
-     * 
+     *
      * @param out {@code non-null;} where to dump
      * @param prefix {@code non-null;} prefix to attach to each line of output
      * @param verbose whether to be verbose; verbose output includes
diff --git a/dx/src/com/android/dx/dex/code/Dop.java b/dx/src/com/android/dx/dex/code/Dop.java
index d1f92bf..2b2a08f 100644
--- a/dx/src/com/android/dx/dex/code/Dop.java
+++ b/dx/src/com/android/dx/dex/code/Dop.java
@@ -37,7 +37,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param opcode {@code DalvOps.MIN_VALUE..DalvOps.MAX_VALUE;} the opcode
      * value itself
      * @param family {@code DalvOps.MIN_VALUE..DalvOps.MAX_VALUE;} the opcode family
@@ -79,7 +79,7 @@
 
     /**
      * Gets the opcode value.
-     * 
+     *
      * @return {@code DalvOps.MIN_VALUE..DalvOps.MAX_VALUE;} the opcode value
      */
     public int getOpcode() {
@@ -89,7 +89,7 @@
     /**
      * Gets the opcode family. The opcode family is the unmarked (no
      * "/...") opcode that has equivalent semantics to this one.
-     * 
+     *
      * @return {@code DalvOps.MIN_VALUE..DalvOps.MAX_VALUE;} the opcode family
      */
     public int getFamily() {
@@ -98,7 +98,7 @@
 
     /**
      * Gets the instruction format.
-     * 
+     *
      * @return {@code non-null;} the instruction format
      */
     public InsnFormat getFormat() {
@@ -107,7 +107,7 @@
 
     /**
      * Returns whether this opcode uses a result register.
-     * 
+     *
      * @return {@code true} iff this opcode uses a result register
      */
     public boolean hasResult() {
@@ -116,7 +116,7 @@
 
     /**
      * Gets the opcode name.
-     * 
+     *
      * @return {@code non-null;} the opcode name
      */
     public String getName() {
@@ -126,7 +126,7 @@
     /**
      * Gets the opcode for the opposite test of this instance. This is only
      * valid for opcodes which are in fact tests.
-     * 
+     *
      * @return {@code non-null;} the opposite test
      */
     public Dop getOppositeTest() {
diff --git a/dx/src/com/android/dx/dex/code/Dops.java b/dx/src/com/android/dx/dex/code/Dops.java
index dfdaa73..0211a40 100644
--- a/dx/src/com/android/dx/dex/code/Dops.java
+++ b/dx/src/com/android/dx/dex/code/Dops.java
@@ -51,9 +51,9 @@
     private static final Dop[] DOPS;
 
     /**
-     * pseudo-opcode used for nonstandard formatted "instructions" 
+     * pseudo-opcode used for nonstandard formatted "instructions"
      * (which are mostly not actually instructions, though they do
-     * appear in instruction lists) 
+     * appear in instruction lists)
      */
     public static final Dop SPECIAL_FORMAT =
         new Dop(DalvOps.SPECIAL_FORMAT, DalvOps.SPECIAL_FORMAT,
@@ -1171,7 +1171,7 @@
 
     /**
      * Gets the {@link Dop} for the given opcode value.
-     * 
+     *
      * @param opcode {@code DalvOps.MIN_VALUE..DalvOps.MAX_VALUE;} the opcode value
      * @return {@code non-null;} the associated opcode instance
      */
@@ -1193,7 +1193,7 @@
     /**
      * Gets the {@link Dop} with the given family/format combination, if
      * any.
-     * 
+     *
      * @param family {@code DalvOps.MIN_VALUE..DalvOps.MAX_VALUE;} the opcode family
      * @param format {@code non-null;} the opcode's instruction format
      * @return {@code null-ok;} the corresponding opcode, or {@code null} if
@@ -1221,7 +1221,7 @@
 
     /**
      * Puts the given opcode into the table of all ops.
-     * 
+     *
      * @param opcode {@code non-null;} the opcode
      */
     private static void set(Dop opcode) {
diff --git a/dx/src/com/android/dx/dex/code/FixedSizeInsn.java b/dx/src/com/android/dx/dex/code/FixedSizeInsn.java
index 147937f..faed530 100644
--- a/dx/src/com/android/dx/dex/code/FixedSizeInsn.java
+++ b/dx/src/com/android/dx/dex/code/FixedSizeInsn.java
@@ -29,13 +29,13 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * <p><b>Note:</b> In the unlikely event that an instruction takes
      * absolutely no registers (e.g., a {@code nop} or a
      * no-argument no-result * static method call), then the given
      * register list may be passed as {@link
      * RegisterSpecList#EMPTY}.</p>
-     * 
+     *
      * @param opcode the opcode; one of the constants from {@link Dops}
      * @param position {@code non-null;} source position
      * @param registers {@code non-null;} register list, including a
diff --git a/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java b/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java
index 9155367..6fab094 100644
--- a/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java
+++ b/dx/src/com/android/dx/dex/code/HighRegisterPrefix.java
@@ -32,11 +32,11 @@
 public final class HighRegisterPrefix extends VariableSizeInsn {
     /** {@code null-ok;} cached instructions, if constructed */
     private SimpleInsn[] insns;
-    
+
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      * @param registers {@code non-null;} source registers
      */
@@ -83,12 +83,12 @@
         if (insns != null) {
             return;
         }
-        
+
         RegisterSpecList registers = getRegisters();
         int sz = registers.size();
 
         insns = new SimpleInsn[sz];
-        
+
         for (int i = 0, outAt = 0; i < sz; i++) {
             RegisterSpec src = registers.get(i);
             insns[i] = moveInsnFor(src, outAt);
@@ -122,7 +122,7 @@
             if (i != 0) {
                 sb.append('\n');
             }
-            
+
             sb.append(insn.listingString0(noteIndices));
 
             outAt += src.getCategory();
diff --git a/dx/src/com/android/dx/dex/code/InsnFormat.java b/dx/src/com/android/dx/dex/code/InsnFormat.java
index ca6688b..17c127f 100644
--- a/dx/src/com/android/dx/dex/code/InsnFormat.java
+++ b/dx/src/com/android/dx/dex/code/InsnFormat.java
@@ -290,7 +290,7 @@
         if (! ci.hasIndex()) {
             return "";
         }
-        
+
         StringBuilder sb = new StringBuilder(20);
         int index = ci.getIndex();
 
@@ -302,7 +302,7 @@
         } else {
             sb.append(Hex.u4(index));
         }
-        
+
         return sb.toString();
     }
 
@@ -484,7 +484,7 @@
 
     /**
      * Writes one code unit to the given output destination.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      * @param c0 code unit to write
      */
@@ -494,7 +494,7 @@
 
     /**
      * Writes two code units to the given output destination.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      * @param c0 code unit to write
      * @param c1 code unit to write
@@ -506,7 +506,7 @@
 
     /**
      * Writes three code units to the given output destination.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      * @param c0 code unit to write
      * @param c1 code unit to write
@@ -521,7 +521,7 @@
 
     /**
      * Writes four code units to the given output destination.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      * @param c0 code unit to write
      * @param c1 code unit to write
@@ -538,7 +538,7 @@
 
     /**
      * Writes five code units to the given output destination.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      * @param c0 code unit to write
      * @param c1 code unit to write
@@ -557,7 +557,7 @@
 
     /**
      * Writes six code units to the given output destination.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      * @param c0 code unit to write
      * @param c1 code unit to write
diff --git a/dx/src/com/android/dx/dex/code/LocalEnd.java b/dx/src/com/android/dx/dex/code/LocalEnd.java
index 360a55c..1c2bf89 100644
--- a/dx/src/com/android/dx/dex/code/LocalEnd.java
+++ b/dx/src/com/android/dx/dex/code/LocalEnd.java
@@ -39,7 +39,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      * @param local {@code non-null;} register spec representing the local
      * variable introduced by this instance
@@ -69,7 +69,7 @@
     /**
      * Gets the register spec representing the local variable ended
      * by this instance.
-     * 
+     *
      * @return {@code non-null;} the register spec
      */
     public RegisterSpec getLocal() {
diff --git a/dx/src/com/android/dx/dex/code/LocalSnapshot.java b/dx/src/com/android/dx/dex/code/LocalSnapshot.java
index 409ad15..baeab4c 100644
--- a/dx/src/com/android/dx/dex/code/LocalSnapshot.java
+++ b/dx/src/com/android/dx/dex/code/LocalSnapshot.java
@@ -33,7 +33,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      * @param locals {@code non-null;} associated local variable state
      */
@@ -61,7 +61,7 @@
 
     /**
      * Gets the local state associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the state
      */
     public RegisterSpecSet getLocals() {
diff --git a/dx/src/com/android/dx/dex/code/LocalStart.java b/dx/src/com/android/dx/dex/code/LocalStart.java
index ec70e30..9a17c5b 100644
--- a/dx/src/com/android/dx/dex/code/LocalStart.java
+++ b/dx/src/com/android/dx/dex/code/LocalStart.java
@@ -29,13 +29,13 @@
 public final class LocalStart extends ZeroSizeInsn {
     /**
      * {@code non-null;} register spec representing the local variable introduced
-     * by this instance 
+     * by this instance
      */
     private final RegisterSpec local;
 
     /**
      * Returns the local variable listing string for a single register spec.
-     * 
+     *
      * @param spec {@code non-null;} the spec to convert
      * @return {@code non-null;} the string form
      */
@@ -47,7 +47,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      * @param local {@code non-null;} register spec representing the local
      * variable introduced by this instance
@@ -77,7 +77,7 @@
     /**
      * Gets the register spec representing the local variable introduced
      * by this instance.
-     * 
+     *
      * @return {@code non-null;} the register spec
      */
     public RegisterSpec getLocal() {
diff --git a/dx/src/com/android/dx/dex/code/OddSpacer.java b/dx/src/com/android/dx/dex/code/OddSpacer.java
index 727def0..756a0e2 100644
--- a/dx/src/com/android/dx/dex/code/OddSpacer.java
+++ b/dx/src/com/android/dx/dex/code/OddSpacer.java
@@ -30,7 +30,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      */
     public OddSpacer(SourcePosition position) {
diff --git a/dx/src/com/android/dx/dex/code/OutputCollector.java b/dx/src/com/android/dx/dex/code/OutputCollector.java
index 2643373..d78e5fc 100644
--- a/dx/src/com/android/dx/dex/code/OutputCollector.java
+++ b/dx/src/com/android/dx/dex/code/OutputCollector.java
@@ -41,7 +41,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param initialCapacity {@code >= 0;} initial capacity of the output list
      * @param suffixInitialCapacity {@code >= 0;} initial capacity of the output
      * suffix
@@ -55,8 +55,8 @@
 
     /**
      * Adds an instruction to the output.
-     * 
-     * @param insn {@code non-null;} the instruction to add 
+     *
+     * @param insn {@code non-null;} the instruction to add
      */
     public void add(DalvInsn insn) {
         finisher.add(insn);
@@ -66,7 +66,7 @@
      * Reverses a branch which is buried a given number of instructions
      * backward in the output. It is illegal to call this unless the
      * indicated instruction really is a reversible branch.
-     * 
+     *
      * @param which how many instructions back to find the branch;
      * {@code 0} is the most recently added instruction,
      * {@code 1} is the instruction before that, etc.
@@ -78,8 +78,8 @@
 
     /**
      * Adds an instruction to the output suffix.
-     * 
-     * @param insn {@code non-null;} the instruction to add 
+     *
+     * @param insn {@code non-null;} the instruction to add
      */
     public void addSuffix(DalvInsn insn) {
         suffix.add(insn);
@@ -97,7 +97,7 @@
         if (suffix == null) {
             throw new UnsupportedOperationException("already processed");
         }
-        
+
         appendSuffixToOutput();
         return finisher;
     }
diff --git a/dx/src/com/android/dx/dex/code/OutputFinisher.java b/dx/src/com/android/dx/dex/code/OutputFinisher.java
index 5b1d533..4a51198 100644
--- a/dx/src/com/android/dx/dex/code/OutputFinisher.java
+++ b/dx/src/com/android/dx/dex/code/OutputFinisher.java
@@ -61,7 +61,7 @@
 
     /**
      * Constructs an instance. It initially contains no instructions.
-     * 
+     *
      * @param regCount {@code >= 0;} register count for the method
      * @param initialCapacity {@code >= 0;} initial capacity of the instructions
      * list
@@ -77,17 +77,17 @@
     /**
      * Returns whether any of the instructions added to this instance
      * come with position info.
-     * 
+     *
      * @return whether any of the instructions added to this instance
      * come with position info
      */
     public boolean hasAnyPositionInfo() {
         return hasAnyPositionInfo;
     }
-    
+
     /**
      * Returns whether this instance has any local variable information.
-     * 
+     *
      * @return whether this instance has any local variable information
      */
     public boolean hasAnyLocalInfo() {
@@ -97,7 +97,7 @@
     /**
      * Helper for {@link #add} which scrutinizes a single
      * instruction for local variable information.
-     * 
+     *
      * @param insn {@code non-null;} instruction to scrutinize
      * @return {@code true} iff the instruction refers to any
      * named locals
@@ -124,7 +124,7 @@
     /**
      * Helper for {@link #hasAnyLocalInfo} which scrutinizes a single
      * register spec.
-     * 
+     *
      * @param spec {@code non-null;} spec to scrutinize
      * @return {@code true} iff the spec refers to any
      * named locals
@@ -137,7 +137,7 @@
     /**
      * Returns the set of all constants referred to by instructions added
      * to this instance.
-     * 
+     *
      * @return {@code non-null;} the set of constants
      */
     public HashSet<Constant> getAllConstants() {
@@ -153,7 +153,7 @@
     /**
      * Helper for {@link #getAllConstants} which adds all the info for
      * a single instruction.
-     * 
+     *
      * @param result {@code non-null;} result set to add to
      * @param insn {@code non-null;} instruction to scrutinize
      */
@@ -186,7 +186,7 @@
         if (spec == null) {
             return;
         }
-        
+
         LocalItem local = spec.getLocalItem();
         CstUtf8 name = local.getName();
         CstUtf8 signature = local.getSignature();
@@ -207,8 +207,8 @@
 
     /**
      * Adds an instruction to the output.
-     * 
-     * @param insn {@code non-null;} the instruction to add 
+     *
+     * @param insn {@code non-null;} the instruction to add
      */
     public void add(DalvInsn insn) {
         insns.add(insn);
@@ -217,7 +217,7 @@
 
     /**
      * Inserts an instruction in the output at the given offset.
-     * 
+     *
      * @param at {@code >= 0;} what index to insert at
      * @param insn {@code non-null;} the instruction to insert
      */
@@ -229,7 +229,7 @@
     /**
      * Helper for {@link #add} and {@link #insert},
      * which updates the position and local info flags.
-     * 
+     *
      * @param insn {@code non-null;} an instruction that was just introduced
      */
     private void updateInfo(DalvInsn insn) {
@@ -251,7 +251,7 @@
      * Reverses a branch which is buried a given number of instructions
      * backward in the output. It is illegal to call this unless the
      * indicated instruction really is a reversible branch.
-     * 
+     *
      * @param which how many instructions back to find the branch;
      * {@code 0} is the most recently added instruction,
      * {@code 1} is the instruction before that, etc.
@@ -283,7 +283,7 @@
      * Assigns indices in all instructions that need them, using the
      * given callback to perform lookups. This should be called before
      * calling {@link #finishProcessingAndGetList}.
-     * 
+     *
      * @param callback {@code non-null;} callback object
      */
     public void assignIndices(DalvCode.AssignIndicesCallback callback) {
@@ -297,7 +297,7 @@
     /**
      * Helper for {@link #assignIndices} which does assignment for one
      * instruction.
-     * 
+     *
      * @param insn {@code non-null;} the instruction
      * @param callback {@code non-null;} the callback
      */
@@ -323,7 +323,7 @@
     /**
      * Does final processing on this instance and gets the output as
      * a {@link DalvInsnList}. Final processing consists of:
-     * 
+     *
      * <ul>
      *   <li>optionally renumbering registers (to make room as needed for
      *   expanded instructions)</li>
@@ -332,7 +332,7 @@
      *   constant pool index, or branch target size issues</li>
      *   <li>assigning final addresses</li>
      * </ul>
-     * 
+     *
      * <p><b>Note:</b> This method may only be called once per instance
      * of this class.</p>
      *
@@ -358,7 +358,7 @@
      * Helper for {@link #finishProcessingAndGetList}, which extracts
      * the format out of each instruction into a separate array, to be
      * further manipulated as things progress.
-     * 
+     *
      * @return {@code non-null;} the array of formats
      */
     private InsnFormat[] makeFormatsArray() {
@@ -378,12 +378,12 @@
      * them. It also updates the given {@code formats} array so
      * as to avoid extra work when constructing the massaged
      * instruction list.
-     * 
+     *
      * @param formats {@code non-null;} array of per-instruction format selections
      */
     private void reserveRegisters(InsnFormat[] formats) {
         int oldReservedCount = (reservedCount < 0) ? 0 : reservedCount;
-        
+
         /*
          * Call calculateReservedCount() and then perform register
          * reservation, repeatedly until no new reservations happen.
@@ -410,7 +410,7 @@
                     /*
                      * No need to call this.set() since the format and
                      * other info are the same.
-                     */ 
+                     */
                     insns.set(i, insn.withRegisterOffset(reservedDifference));
                 }
             }
@@ -427,7 +427,7 @@
      * registers that need to be reserved. It also updates the
      * {@code formats} list to help avoid extra work in future
      * register reservation passes.
-     * 
+     *
      * @param formats {@code non-null;} array of per-instruction format selections
      * @return {@code >= 0;} the count of reserved registers
      */
@@ -450,7 +450,7 @@
             if (originalFormat == newFormat) {
                 continue;
             }
-            
+
             if (newFormat == null) {
                 /*
                  * The instruction will need to be expanded, so reserve
@@ -499,7 +499,7 @@
         for (;;) {
             format = format.nextUp();
             if ((format == null) ||
-                    (format.isCompatible(insn) && 
+                    (format.isCompatible(insn) &&
                      (Dops.getOrNull(family, format) != null))) {
                 break;
             }
@@ -507,14 +507,14 @@
 
         return format;
     }
-    
+
     /**
      * Helper for {@link #finishProcessingAndGetList}, which goes
      * through each instruction in the output, making sure its opcode
      * can accomodate its arguments. In cases where the opcode is
      * unable to do so, this replaces the instruction with a larger
      * instruction with identical semantics that <i>will</i> work.
-     * 
+     *
      * <p>This method may also reserve a number of low-numbered
      * registers, renumbering the instructions' original registers, in
      * order to have register space available in which to move
@@ -522,11 +522,11 @@
      * multi-instruction sequences. This expansion is done when no
      * simple instruction format can be found for a given instruction that
      * is able to accomodate that instruction's registers.</p>
-     * 
+     *
      * <p>This method ignores issues of branch target size, since
      * final addresses aren't known at the point that this method is
      * called.</p>
-     * 
+     *
      * @param formats {@code non-null;} array of per-instruction format selections
      */
     private void massageInstructions(InsnFormat[] formats) {
@@ -565,7 +565,7 @@
      * couldn't be represented simply (due to register representation
      * problems) is expanded into a series of instances that together
      * perform the proper function.
-     * 
+     *
      * @param formats {@code non-null;} array of per-instruction format selections
      * @return {@code non-null;} the replacement list
      */
@@ -602,7 +602,7 @@
             if (prefix != null) {
                 result.add(prefix);
             }
-            
+
             if (currentFormat != originalFormat) {
                 dop = Dops.getOrNull(dop.getFamily(), currentFormat);
                 insn = insn.withOpcode(dop);
@@ -613,7 +613,7 @@
                 result.add(suffix);
             }
         }
-        
+
         return result;
     }
 
@@ -655,7 +655,7 @@
      * case of a conditional branch that doesn't fit, the sense of the
      * test is reversed in order to branch around a {@code goto}
      * to the original target.
-     * 
+     *
      * @return whether any branches had to be fixed
      */
     private boolean fixBranches() {
@@ -696,13 +696,13 @@
                  * It is a conditional: Reverse its sense, and arrange for
                  * it to branch around an absolute goto to the original
                  * branch target.
-                 * 
+                 *
                  * Note: An invariant of the list being processed is
                  * that every TargetInsn is followed by a CodeAddress.
                  * Hence, it is always safe to get the next element
                  * after a TargetInsn and cast it to CodeAddress, as
                  * is happening a few lines down.
-                 * 
+                 *
                  * Also note: Size gets incremented by one here, as we
                  * have -- in the net -- added one additional element
                  * to the list, so we increment i to match. The added
diff --git a/dx/src/com/android/dx/dex/code/PositionList.java b/dx/src/com/android/dx/dex/code/PositionList.java
index 41e3667..1e07e46 100644
--- a/dx/src/com/android/dx/dex/code/PositionList.java
+++ b/dx/src/com/android/dx/dex/code/PositionList.java
@@ -29,27 +29,27 @@
 
     /**
      * constant for {@link #make} to indicate that no actual position
-     * information should be returned 
+     * information should be returned
      */
     public static final int NONE = 1;
 
     /**
      * constant for {@link #make} to indicate that only line number
-     * transitions should be returned 
+     * transitions should be returned
      */
     public static final int LINES = 2;
 
     /**
      * constant for {@link #make} to indicate that only "important" position
      * information should be returned. This includes block starts and
-     * instructions that might throw. 
+     * instructions that might throw.
      */
     public static final int IMPORTANT = 3;
 
     /**
      * Extracts and returns the source position information out of an
      * instruction list.
-     * 
+     *
      * @param insns {@code non-null;} instructions to convert
      * @param howMuch how much information should be included; one of the
      * static constants defined by this class
@@ -113,7 +113,7 @@
 
     /**
      * Constructs an instance. All indices initially contain {@code null}.
-     * 
+     *
      * @param size {@code >= 0;} the size of the list
      */
     public PositionList(int size) {
@@ -124,7 +124,7 @@
      * Gets the element at the given index. It is an error to call
      * this with the index for an element which was never set; if you
      * do that, this will throw {@code NullPointerException}.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @return {@code non-null;} element at that index
      */
@@ -134,7 +134,7 @@
 
     /**
      * Sets the entry at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @param entry {@code non-null;} the entry to set at {@code n}
      */
@@ -154,7 +154,7 @@
 
         /**
          * Constructs an instance.
-         * 
+         *
          * @param address {@code >= 0;} address of this entry
          * @param position {@code non-null;} corresponding source position information
          */
@@ -173,7 +173,7 @@
 
         /**
          * Gets the address.
-         * 
+         *
          * @return {@code >= 0;} the address
          */
         public int getAddress() {
@@ -182,7 +182,7 @@
 
         /**
          * Gets the source position information.
-         * 
+         *
          * @return {@code non-null;} the position information
          */
         public SourcePosition getPosition() {
diff --git a/dx/src/com/android/dx/dex/code/RopToDop.java b/dx/src/com/android/dx/dex/code/RopToDop.java
index 0385467..d8fa1cc 100644
--- a/dx/src/com/android/dx/dex/code/RopToDop.java
+++ b/dx/src/com/android/dx/dex/code/RopToDop.java
@@ -277,7 +277,7 @@
     /**
      * Returns the dalvik opcode appropriate for the given register-based
      * instruction.
-     * 
+     *
      * @param insn {@code non-null;} the original instruction
      * @return the corresponding dalvik opcode; one of the constants in
      * {@link Dops}
@@ -297,16 +297,16 @@
         /*
          * There was no easy case for the rop, so look up the opcode, and
          * do something special for each:
-         * 
+         *
          * The move_exception, new_array, filled_new_array, and
          * invoke* opcodes won't be found in MAP, since they'll each
          * have different source and/or result register types / lists.
-         * 
+         *
          * The get* and put* opcodes for (non-long) integral types
          * aren't in the map, since the type signatures aren't
          * sufficient to distinguish between the types (the salient
          * source or result will always be just "int").
-         * 
+         *
          * And const instruction need to distinguish between strings and
          * classes.
          */
@@ -320,7 +320,7 @@
             case RegOps.INVOKE_INTERFACE: return Dops.INVOKE_INTERFACE;
             case RegOps.NEW_ARRAY:        return Dops.NEW_ARRAY;
             case RegOps.FILLED_NEW_ARRAY: return Dops.FILLED_NEW_ARRAY;
-            case RegOps.FILL_ARRAY_DATA:  return Dops.FILL_ARRAY_DATA; 
+            case RegOps.FILL_ARRAY_DATA:  return Dops.FILL_ARRAY_DATA;
             case RegOps.MOVE_RESULT: {
                 RegisterSpec resultReg = insn.getResult();
 
diff --git a/dx/src/com/android/dx/dex/code/RopTranslator.java b/dx/src/com/android/dx/dex/code/RopTranslator.java
index 9f47b13..a38ea11 100644
--- a/dx/src/com/android/dx/dex/code/RopTranslator.java
+++ b/dx/src/com/android/dx/dex/code/RopTranslator.java
@@ -51,7 +51,7 @@
 
     /**
      * how much position info to preserve; one of the static
-     * constants in {@link PositionList} 
+     * constants in {@link PositionList}
      */
     private final int positionInfo;
 
@@ -85,7 +85,7 @@
     /**
      * Translates a {@link RopMethod}. This may modify the given
      * input.
-     * 
+     *
      * @param method {@code non-null;} the original method
      * @param positionInfo how much position info to preserve; one of the
      * static constants in {@link PositionList}
@@ -104,7 +104,7 @@
 
     /**
      * Constructs an instance. This method is private. Use {@link #translate}.
-     * 
+     *
      * @param method {@code non-null;} the original method
      * @param positionInfo how much position info to preserve; one of the
      * static constants in {@link PositionList}
@@ -166,7 +166,7 @@
      * stack frame that matches dalvik's calling conventions. This will
      * alway result in "true" for methods that have run through the
      * SSA optimizer.
-     * 
+     *
      * @param paramSize size, in register units, of all the parameters
      * to this method
      */
@@ -198,7 +198,7 @@
 
     /**
      * Does the translation and returns the result.
-     * 
+     *
      * @return {@code non-null;} the result
      */
     private DalvCode translateAndGetResult() {
@@ -231,7 +231,7 @@
     /**
      * Helper for {@link #outputInstructions}, which does the processing
      * and output of one block.
-     * 
+     *
      * @param block {@code non-null;} the block to process and output
      * @param nextLabel {@code >= -1;} the next block that will be processed, or
      * {@code -1} if there is no next block
@@ -258,7 +258,7 @@
         // Insert the block end code address.
         output.add(addresses.getEnd(block));
 
-        // Set up for end-of-block activities. 
+        // Set up for end-of-block activities.
 
         int succ = block.getPrimarySuccessor();
         Insn lastInsn = block.getLastInsn();
@@ -391,7 +391,7 @@
                 if (preferredBlock == null) {
                     break;
                 }
-                
+
                 int preferred = preferredBlock.getLabel();
                 int primary = one.getPrimarySuccessor();
 
@@ -424,7 +424,7 @@
                     }
                 }
             }
-        }        
+        }
 
         if (at != sz) {
             // There was a duplicate block label.
@@ -494,13 +494,13 @@
 
         /**
          * {@code null-ok;} code address for the salient last instruction of the
-         * block (used before switches and throwing instructions) 
+         * block (used before switches and throwing instructions)
          */
         private CodeAddress lastAddress;
 
         /**
          * Constructs an instance.
-         * 
+         *
          * @param output {@code non-null;} destination for instruction output
          */
         public TranslationVisitor(OutputCollector output) {
@@ -509,7 +509,7 @@
 
         /**
          * Sets the block currently being worked on.
-         * 
+         *
          * @param block {@code non-null;} the block
          * @param lastAddress {@code non-null;} code address for the salient
          * last instruction of the block
@@ -672,7 +672,7 @@
                 return null;
             } else {
                 return insn.getResult();
-            }            
+            }
         }
 
         /** {@inheritDoc} */
@@ -707,7 +707,7 @@
                             "Insn with result/move-result-pseudo mismatch " +
                             insn);
                 }
-                
+
                 if ((rop.getOpcode() == RegOps.NEW_ARRAY) &&
                     (opcode.getOpcode() != DalvOps.NEW_ARRAY)) {
                     /*
@@ -745,7 +745,7 @@
                 throw new RuntimeException(
                         "Insn with result/move-result-pseudo mismatch" + insn);
             }
-            
+
             addOutput(lastAddress);
 
             DalvInsn di = new SimpleInsn(opcode, pos,
@@ -767,7 +767,7 @@
             CodeAddress dataAddress = new CodeAddress(pos);
             ArrayData dataInsn =
                 new ArrayData(pos, lastAddress, values, cst);
-            
+
             TargetInsn fillArrayDataInsn =
                 new TargetInsn(Dops.FILL_ARRAY_DATA, pos, getRegs(insn),
                         dataAddress);
@@ -779,10 +779,10 @@
             addOutputSuffix(dataAddress);
             addOutputSuffix(dataInsn);
         }
-        
+
         /**
          * Adds to the output.
-         * 
+         *
          * @param insn {@code non-null;} instruction to add
          */
         protected void addOutput(DalvInsn insn) {
@@ -791,7 +791,7 @@
 
         /**
          * Adds to the output suffix.
-         * 
+         *
          * @param insn {@code non-null;} instruction to add
          */
         protected void addOutputSuffix(DalvInsn insn) {
@@ -810,7 +810,7 @@
 
         /**
          * Constructs an instance.
-         * 
+         *
          * @param output {@code non-null;} destination for instruction output
          * @param locals {@code non-null;} the local variable info
          */
@@ -858,7 +858,7 @@
         /**
          * Adds a {@link LocalStart} to the output if the given
          * instruction in fact introduces a local variable.
-         * 
+         *
          * @param insn {@code non-null;} instruction in question
          */
         public void addIntroductionIfNecessary(Insn insn) {
@@ -868,5 +868,5 @@
                 addOutput(new LocalStart(insn.getPosition(), spec));
             }
         }
-    }    
+    }
 }
diff --git a/dx/src/com/android/dx/dex/code/SimpleInsn.java b/dx/src/com/android/dx/dex/code/SimpleInsn.java
index 5e7b259..8cdcc55 100644
--- a/dx/src/com/android/dx/dex/code/SimpleInsn.java
+++ b/dx/src/com/android/dx/dex/code/SimpleInsn.java
@@ -27,7 +27,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param opcode the opcode; one of the constants from {@link Dops}
      * @param position {@code non-null;} source position
      * @param registers {@code non-null;} register list, including a
diff --git a/dx/src/com/android/dx/dex/code/StdCatchBuilder.java b/dx/src/com/android/dx/dex/code/StdCatchBuilder.java
index 6e3a169..1e7612e 100644
--- a/dx/src/com/android/dx/dex/code/StdCatchBuilder.java
+++ b/dx/src/com/android/dx/dex/code/StdCatchBuilder.java
@@ -34,7 +34,7 @@
 public final class StdCatchBuilder implements CatchBuilder {
     /** the maximum range of a single catch handler, in code units */
     private static final int MAX_CATCH_RANGE = 65535;
-    
+
     /** {@code non-null;} method to build the list for */
     private final RopMethod method;
 
@@ -43,11 +43,11 @@
 
     /** {@code non-null;} address objects for each block */
     private final BlockAddresses addresses;
-    
+
     /**
      * Constructs an instance. It merely holds onto its parameters for
      * a subsequent call to {@link #build}.
-     * 
+     *
      * @param method {@code non-null;} method to build the list for
      * @param order {@code non-null;} block output order
      * @param addresses {@code non-null;} address objects for each block
@@ -80,7 +80,7 @@
     public boolean hasAnyCatches() {
         BasicBlockList blocks = method.getBlocks();
         int size = blocks.size();
-        
+
         for (int i = 0; i < size; i++) {
             BasicBlock block = blocks.get(i);
             TypeList catches = block.getLastInsn().getCatches();
@@ -91,13 +91,13 @@
 
         return false;
     }
-    
+
     /** {@inheritDoc} */
     public HashSet<Type> getCatchTypes() {
         HashSet<Type> result = new HashSet<Type>(20);
         BasicBlockList blocks = method.getBlocks();
         int size = blocks.size();
-        
+
         for (int i = 0; i < size; i++) {
             BasicBlock block = blocks.get(i);
             TypeList catches = block.getLastInsn().getCatches();
@@ -113,7 +113,7 @@
 
     /**
      * Builds and returns the catch table for a given method.
-     * 
+     *
      * @param method {@code non-null;} method to build the list for
      * @param order {@code non-null;} block output order
      * @param addresses {@code non-null;} address objects for each block
@@ -128,7 +128,7 @@
         CatchHandlerList currentHandlers = CatchHandlerList.EMPTY;
         BasicBlock currentStartBlock = null;
         BasicBlock currentEndBlock = null;
-        
+
         for (int i = 0; i < len; i++) {
             BasicBlock block = blocks.labelToBlock(order[i]);
 
@@ -187,11 +187,11 @@
                         currentHandlers, addresses);
             resultList.add(entry);
         }
-        
+
         // Construct the final result.
 
         int resultSz = resultList.size();
-        
+
         if (resultSz == 0) {
             return CatchTable.EMPTY;
         }
@@ -208,7 +208,7 @@
 
     /**
      * Makes the {@link CatchHandlerList} for the given basic block.
-     * 
+     *
      * @param block {@code non-null;} block to get entries for
      * @param addresses {@code non-null;} address objects for each block
      * @return {@code non-null;} array of entries
@@ -249,7 +249,7 @@
                 break;
             }
         }
-        
+
         CatchHandlerList result = new CatchHandlerList(catchSize);
 
         for (int i = 0; i < catchSize; i++) {
@@ -291,7 +291,7 @@
      * Gets whether the address range for the given two blocks is valid
      * for a catch handler. This is true as long as the covered range is
      * under 65536 code units.
-     * 
+     *
      * @param start {@code non-null;} the start block for the range (inclusive)
      * @param end {@code non-null;} the start block for the range (also inclusive)
      * @param addresses {@code non-null;} address objects for each block
@@ -306,7 +306,7 @@
         if (end == null) {
             throw new NullPointerException("end == null");
         }
-        
+
         // See above about selection of instructions.
         int startAddress = addresses.getLast(start).getAddress();
         int endAddress = addresses.getEnd(end).getAddress();
diff --git a/dx/src/com/android/dx/dex/code/SwitchData.java b/dx/src/com/android/dx/dex/code/SwitchData.java
index e5a8da4..27a6342 100644
--- a/dx/src/com/android/dx/dex/code/SwitchData.java
+++ b/dx/src/com/android/dx/dex/code/SwitchData.java
@@ -30,7 +30,7 @@
 public final class SwitchData extends VariableSizeInsn {
     /**
      * {@code non-null;} address representing the instruction that uses this
-     * instance 
+     * instance
      */
     private final CodeAddress user;
 
@@ -39,7 +39,7 @@
 
     /**
      * {@code non-null;} corresponding list of code addresses; the branch
-     * target for each case 
+     * target for each case
      */
     private final CodeAddress[] targets;
 
@@ -49,7 +49,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      * @param user {@code non-null;} address representing the instruction that
      * uses this instance
@@ -150,7 +150,7 @@
 
     /**
      * Returns whether or not this instance's data will be output as packed.
-     * 
+     *
      * @return {@code true} iff the data is to be packed
      */
     public boolean isPacked() {
@@ -201,7 +201,7 @@
     /**
      * Gets the size of a packed table for the given cases, in 16-bit code
      * units.
-     * 
+     *
      * @param cases {@code non-null;} sorted list of cases
      * @return {@code >= -1;} the packed table size or {@code -1} if the
      * cases couldn't possibly be represented as a packed table
@@ -218,7 +218,7 @@
     /**
      * Gets the size of a sparse table for the given cases, in 16-bit code
      * units.
-     * 
+     *
      * @param cases {@code non-null;} sorted list of cases
      * @return {@code > 0;} the sparse table size
      */
@@ -230,7 +230,7 @@
 
     /**
      * Determines whether the given list of cases warrant being packed.
-     * 
+     *
      * @param cases {@code non-null;} sorted list of cases
      * @return {@code true} iff the table encoding the cases
      * should be packed
diff --git a/dx/src/com/android/dx/dex/code/TargetInsn.java b/dx/src/com/android/dx/dex/code/TargetInsn.java
index 0faaada..cbb5ff9 100644
--- a/dx/src/com/android/dx/dex/code/TargetInsn.java
+++ b/dx/src/com/android/dx/dex/code/TargetInsn.java
@@ -30,7 +30,7 @@
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}), and the target is initially
      * {@code null}.
-     * 
+     *
      * @param opcode the opcode; one of the constants from {@link Dops}
      * @param position {@code non-null;} source position
      * @param registers {@code non-null;} register list, including a
@@ -67,7 +67,7 @@
      * {@code lt} test becomes a {@code ge}), and its branch
      * target is replaced by the one given, and all set-once values
      * associated with the class (such as its address) are reset.
-     * 
+     *
      * @param target {@code non-null;} the new branch target
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -79,7 +79,7 @@
 
     /**
      * Gets the unique branch target of this instruction.
-     * 
+     *
      * @return {@code non-null;} the branch target
      */
     public CodeAddress getTarget() {
@@ -91,7 +91,7 @@
      * to call if the target instruction has been assigned an address,
      * and it is merely a convenient shorthand for
      * {@code getTarget().getAddress()}.
-     * 
+     *
      * @return {@code >= 0;} the target address
      */
     public int getTargetAddress() {
@@ -103,7 +103,7 @@
      * call if both this and the target instruction each has been assigned
      * an address, and it is merely a convenient shorthand for
      * {@code getTargetAddress() - getAddress()}.
-     * 
+     *
      * @return the branch offset
      */
     public int getTargetOffset() {
@@ -112,7 +112,7 @@
 
     /**
      * Returns whether the target offset is known.
-     * 
+     *
      * @return {@code true} if the target offset is known or
      * {@code false} if not
      */
diff --git a/dx/src/com/android/dx/dex/code/VariableSizeInsn.java b/dx/src/com/android/dx/dex/code/VariableSizeInsn.java
index 889a50c..06b40f7 100644
--- a/dx/src/com/android/dx/dex/code/VariableSizeInsn.java
+++ b/dx/src/com/android/dx/dex/code/VariableSizeInsn.java
@@ -26,7 +26,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      * @param registers {@code non-null;} source registers
      */
diff --git a/dx/src/com/android/dx/dex/code/ZeroSizeInsn.java b/dx/src/com/android/dx/dex/code/ZeroSizeInsn.java
index 198bebf..2cc157b 100644
--- a/dx/src/com/android/dx/dex/code/ZeroSizeInsn.java
+++ b/dx/src/com/android/dx/dex/code/ZeroSizeInsn.java
@@ -29,7 +29,7 @@
     /**
      * Constructs an instance. The output address of this instance is initially
      * unknown ({@code -1}).
-     * 
+     *
      * @param position {@code non-null;} source position
      */
     public ZeroSizeInsn(SourcePosition position) {
diff --git a/dx/src/com/android/dx/dex/code/form/Form22c.java b/dx/src/com/android/dx/dex/code/form/Form22c.java
index e77677f..423ccc8 100644
--- a/dx/src/com/android/dx/dex/code/form/Form22c.java
+++ b/dx/src/com/android/dx/dex/code/form/Form22c.java
@@ -83,7 +83,7 @@
         if (! unsignedFitsInShort(cpi)) {
             return false;
         }
-        
+
         Constant cst = ci.getConstant();
         return (cst instanceof CstType) ||
             (cst instanceof CstFieldRef);
diff --git a/dx/src/com/android/dx/dex/code/form/Form35c.java b/dx/src/com/android/dx/dex/code/form/Form35c.java
index 411e3c3..31b127d 100644
--- a/dx/src/com/android/dx/dex/code/form/Form35c.java
+++ b/dx/src/com/android/dx/dex/code/form/Form35c.java
@@ -112,7 +112,7 @@
         int r4 = (sz > 4) ? regs.get(4).getReg() : 0;
 
         write(out,
-              opcodeUnit(insn, 
+              opcodeUnit(insn,
                          makeByte(r4, sz)), // encode the fifth operand here
               (short) cpi,
               codeUnit(r0, r1, r2, r3));
@@ -123,9 +123,9 @@
      * category-2 values count as two words. Return {@code -1} if the
      * list requires more than five words or contains registers that need
      * more than a nibble to identify them.
-     * 
+     *
      * @param regs {@code non-null;} the register list in question
-     * @return {@code >= -1;} the number of words required, or {@code -1} 
+     * @return {@code >= -1;} the number of words required, or {@code -1}
      * if the list couldn't possibly fit in this format
      */
     private static int wordCount(RegisterSpecList regs) {
@@ -160,7 +160,7 @@
      * except that it splits category-2 registers into two explicit
      * entries. This returns the original list if no modification is
      * required
-     * 
+     *
      * @param orig {@code non-null;} the original list
      * @return {@code non-null;} the list with the described transformation
      */
diff --git a/dx/src/com/android/dx/dex/code/form/Form3rc.java b/dx/src/com/android/dx/dex/code/form/Form3rc.java
index 2d185cf..755ad76 100644
--- a/dx/src/com/android/dx/dex/code/form/Form3rc.java
+++ b/dx/src/com/android/dx/dex/code/form/Form3rc.java
@@ -69,7 +69,7 @@
                      */
                     lastReg = lastReg.withOffset(1);
                 }
-                
+
                 sb.append(regs.get(0).regString());
                 sb.append("..");
                 sb.append(lastReg.regString());
@@ -78,7 +78,7 @@
 
         sb.append("}, ");
         sb.append(cstString(insn));
-        
+
         return sb.toString();
     }
 
diff --git a/dx/src/com/android/dx/dex/file/AnnotationItem.java b/dx/src/com/android/dx/dex/file/AnnotationItem.java
index 08422bc..1febd9e 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationItem.java
@@ -36,19 +36,19 @@
 public final class AnnotationItem extends OffsettedItem {
     /** annotation visibility constant: visible at build time only */
     private static final int VISIBILITY_BUILD = 0;
-    
+
     /** annotation visibility constant: visible at runtime */
     private static final int VISIBILITY_RUNTIME = 1;
 
     /** annotation visibility constant: visible at runtime only to system */
     private static final int VISIBILITY_SYSTEM = 2;
-    
+
     /** the required alignment for instances of this class */
     private static final int ALIGNMENT = 1;
 
     /** {@code non-null;} unique instance of {@link #TypeIdSorter} */
     private static final TypeIdSorter TYPE_ID_SORTER = new TypeIdSorter();
-    
+
     /** {@code non-null;} the annotation to represent */
     private final Annotation annotation;
 
@@ -87,7 +87,7 @@
      * Sorts an array of instances, in place, by type id index,
      * ignoring all other aspects of the elements. This is only valid
      * to use after type id indices are known.
-     * 
+     *
      * @param array {@code non-null;} array to sort
      */
     public static void sortByTypeIdIndex(AnnotationItem[] array) {
@@ -96,7 +96,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param annotation {@code non-null;} annotation to represent
      */
     public AnnotationItem(Annotation annotation) {
@@ -166,7 +166,7 @@
      * Write a (listing file) annotation for this instance to the given
      * output, that consumes no bytes of output. This is for annotating
      * a reference to this instance at the point of the reference.
-     * 
+     *
      * @param out {@code non-null;} where to output to
      * @param prefix {@code non-null;} prefix for each line of output
      */
@@ -204,7 +204,7 @@
                 throw new RuntimeException("shouldn't happen");
             }
         }
-        
+
         if (annotates) {
             /*
              * The output is to be annotated, so redo the work previously
diff --git a/dx/src/com/android/dx/dex/file/AnnotationSetItem.java b/dx/src/com/android/dx/dex/file/AnnotationSetItem.java
index 2ff005a..2187700 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationSetItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationSetItem.java
@@ -33,7 +33,7 @@
 
     /** {@code non-null;} the set of annotations */
     private final Annotations annotations;
-    
+
     /**
      * {@code non-null;} set of annotations as individual items in an array.
      * <b>Note:</b> The contents have to get sorted by type id before
@@ -43,7 +43,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param annotations {@code non-null;} set of annotations
      */
     public AnnotationSetItem(Annotations annotations) {
@@ -61,7 +61,7 @@
 
     /**
      * Gets the write size for the given set.
-     * 
+     *
      * @param annotations {@code non-null;} the set
      * @return {@code > 0;} the write size
      */
@@ -78,13 +78,13 @@
 
     /**
      * Gets the underlying annotations of this instance
-     * 
+     *
      * @return {@code non-null;} the annotations
      */
     public Annotations getAnnotations() {
         return annotations;
     }
-    
+
     /** {@inheritDoc} */
     @Override
     public int hashCode() {
@@ -140,11 +140,11 @@
         }
 
         out.writeInt(size);
-        
+
         for (int i = 0; i < size; i++) {
             AnnotationItem item = items[i];
             int offset = item.getAbsoluteOffset();
-            
+
             if (annotates) {
                 out.annotate(4, "  entries[" + Integer.toHexString(i) + "]: " +
                         Hex.u4(offset));
diff --git a/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java b/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java
index 1427e6a..53072d8 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationSetRefItem.java
@@ -34,7 +34,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param annotations {@code non-null;} the annotation set to refer to
      */
     public AnnotationSetRefItem(AnnotationSetItem annotations) {
diff --git a/dx/src/com/android/dx/dex/file/AnnotationUtils.java b/dx/src/com/android/dx/dex/file/AnnotationUtils.java
index 8431d35..d500ec4 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationUtils.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationUtils.java
@@ -39,31 +39,31 @@
  */
 public final class AnnotationUtils {
     /** {@code non-null;} type for {@code AnnotationDefault} annotations */
-    private static final CstType ANNOTATION_DEFAULT_TYPE = 
+    private static final CstType ANNOTATION_DEFAULT_TYPE =
         CstType.intern(Type.intern("Ldalvik/annotation/AnnotationDefault;"));
 
     /** {@code non-null;} type for {@code EnclosingClass} annotations */
-    private static final CstType ENCLOSING_CLASS_TYPE = 
+    private static final CstType ENCLOSING_CLASS_TYPE =
         CstType.intern(Type.intern("Ldalvik/annotation/EnclosingClass;"));
 
     /** {@code non-null;} type for {@code EnclosingMethod} annotations */
-    private static final CstType ENCLOSING_METHOD_TYPE = 
+    private static final CstType ENCLOSING_METHOD_TYPE =
         CstType.intern(Type.intern("Ldalvik/annotation/EnclosingMethod;"));
 
     /** {@code non-null;} type for {@code InnerClass} annotations */
-    private static final CstType INNER_CLASS_TYPE = 
+    private static final CstType INNER_CLASS_TYPE =
         CstType.intern(Type.intern("Ldalvik/annotation/InnerClass;"));
 
     /** {@code non-null;} type for {@code MemberClasses} annotations */
-    private static final CstType MEMBER_CLASSES_TYPE = 
+    private static final CstType MEMBER_CLASSES_TYPE =
         CstType.intern(Type.intern("Ldalvik/annotation/MemberClasses;"));
 
     /** {@code non-null;} type for {@code Signature} annotations */
-    private static final CstType SIGNATURE_TYPE = 
+    private static final CstType SIGNATURE_TYPE =
         CstType.intern(Type.intern("Ldalvik/annotation/Signature;"));
 
     /** {@code non-null;} type for {@code Throws} annotations */
-    private static final CstType THROWS_TYPE = 
+    private static final CstType THROWS_TYPE =
         CstType.intern(Type.intern("Ldalvik/annotation/Throws;"));
 
     /** {@code non-null;} the UTF-8 constant {@code "accessFlags"} */
@@ -84,7 +84,7 @@
 
     /**
      * Constructs a standard {@code AnnotationDefault} annotation.
-     * 
+     *
      * @param defaults {@code non-null;} the defaults, itself as an annotation
      * @return {@code non-null;} the constructed annotation
      */
@@ -98,7 +98,7 @@
 
     /**
      * Constructs a standard {@code EnclosingClass} annotation.
-     * 
+     *
      * @param clazz {@code non-null;} the enclosing class
      * @return {@code non-null;} the annotation
      */
@@ -112,7 +112,7 @@
 
     /**
      * Constructs a standard {@code EnclosingMethod} annotation.
-     * 
+     *
      * @param method {@code non-null;} the enclosing method
      * @return {@code non-null;} the annotation
      */
@@ -126,7 +126,7 @@
 
     /**
      * Constructs a standard {@code InnerClass} annotation.
-     * 
+     *
      * @param name {@code null-ok;} the original name of the class, or
      * {@code null} to represent an anonymous class
      * @param accessFlags the original access flags
@@ -146,7 +146,7 @@
 
     /**
      * Constructs a standard {@code MemberClasses} annotation.
-     * 
+     *
      * @param types {@code non-null;} the list of (the types of) the member classes
      * @return {@code non-null;} the annotation
      */
@@ -160,7 +160,7 @@
 
     /**
      * Constructs a standard {@code Signature} annotation.
-     * 
+     *
      * @param signature {@code non-null;} the signature string
      * @return {@code non-null;} the annotation
      */
@@ -171,7 +171,7 @@
          * Split the string into pieces that are likely to be common
          * across many signatures and the rest of the file.
          */
-         
+
         String raw = signature.getString();
         int rawLength = raw.length();
         ArrayList<String> pieces = new ArrayList<String>(20);
@@ -214,7 +214,7 @@
         }
 
         list.setImmutable();
-        
+
         result.put(new NameValuePair(VALUE_UTF, new CstArray(list)));
         result.setImmutable();
         return result;
@@ -222,7 +222,7 @@
 
     /**
      * Constructs a standard {@code Throws} annotation.
-     * 
+     *
      * @param types {@code non-null;} the list of thrown types
      * @return {@code non-null;} the annotation
      */
@@ -236,7 +236,7 @@
 
     /**
      * Converts a {@link TypeList} to a {@link CstArray}.
-     * 
+     *
      * @param types {@code non-null;} the type list
      * @return {@code non-null;} the corresponding array constant
      */
diff --git a/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java b/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java
index d55195f..972d4e6 100644
--- a/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java
+++ b/dx/src/com/android/dx/dex/file/AnnotationsDirectoryItem.java
@@ -42,7 +42,7 @@
 
     /** {@code null-ok;} the class-level annotations, if any */
     private AnnotationSetItem classAnnotations;
-    
+
     /** {@code null-ok;} the annotated fields, if any */
     private ArrayList<FieldAnnotationStruct> fieldAnnotations;
 
@@ -63,7 +63,7 @@
         methodAnnotations = null;
         parameterAnnotations = null;
     }
-    
+
     /** {@inheritDoc} */
     @Override
     public ItemType itemType() {
@@ -72,7 +72,7 @@
 
     /**
      * Returns whether this item is empty (has no contents).
-     * 
+     *
      * @return {@code true} if this item is empty, or {@code false}
      * if not
      */
@@ -104,16 +104,16 @@
         if (classAnnotations == null) {
             return 0;
         }
-        
+
         return classAnnotations.hashCode();
     }
-    
+
     /**
      * {@inheritDoc}
-     * 
+     *
      * <p><b>Note:</b>: This throws an exception if this item is not
      * internable.</p>
-     * 
+     *
      * @see #isInternable
      */
     @Override
@@ -131,14 +131,14 @@
      * Sets the direct annotations on this instance. These are annotations
      * made on the class, per se, as opposed to on one of its members.
      * It is only valid to call this method at most once per instance.
-     * 
+     *
      * @param annotations {@code non-null;} annotations to set for this class
      */
     public void setClassAnnotations(Annotations annotations) {
         if (annotations == null) {
             throw new NullPointerException("annotations == null");
         }
-        
+
         if (classAnnotations != null) {
             throw new UnsupportedOperationException(
                     "class annotations already set");
@@ -149,7 +149,7 @@
 
     /**
      * Adds a field annotations item to this instance.
-     * 
+     *
      * @param field {@code non-null;} field in question
      * @param annotations {@code non-null;} associated annotations to add
      */
@@ -158,14 +158,14 @@
         if (fieldAnnotations == null) {
             fieldAnnotations = new ArrayList<FieldAnnotationStruct>();
         }
-        
+
         fieldAnnotations.add(new FieldAnnotationStruct(field,
                         new AnnotationSetItem(annotations)));
     }
 
     /**
      * Adds a method annotations item to this instance.
-     * 
+     *
      * @param method {@code non-null;} method in question
      * @param annotations {@code non-null;} associated annotations to add
      */
@@ -181,7 +181,7 @@
 
     /**
      * Adds a parameter annotations item to this instance.
-     * 
+     *
      * @param method {@code non-null;} method in question
      * @param list {@code non-null;} associated list of annotation sets to add
      */
@@ -197,7 +197,7 @@
     /**
      * Gets the method annotations for a given method, if any. This is
      * meant for use by debugging / dumping code.
-     * 
+     *
      * @param method {@code non-null;} the method
      * @return {@code null-ok;} the method annotations, if any
      */
@@ -205,7 +205,7 @@
         if (methodAnnotations == null) {
             return null;
         }
-        
+
         for (MethodAnnotationStruct item : methodAnnotations) {
             if (item.getMethod().equals(method)) {
                 return item.getAnnotations();
@@ -218,7 +218,7 @@
     /**
      * Gets the parameter annotations for a given method, if any. This is
      * meant for use by debugging / dumping code.
-     * 
+     *
      * @param method {@code non-null;} the method
      * @return {@code null-ok;} the parameter annotations, if any
      */
@@ -235,7 +235,7 @@
 
         return null;
     }
-    
+
     /** {@inheritDoc} */
     public void addContents(DexFile file) {
         MixedItemSection wordData = file.getWordData();
@@ -255,7 +255,7 @@
                 item.addContents(file);
             }
         }
-        
+
         if (parameterAnnotations != null) {
             for (ParameterAnnotationStruct item : parameterAnnotations) {
                 item.addContents(file);
@@ -338,7 +338,7 @@
     /**
      * Gets the list size of the given list, or {@code 0} if given
      * {@code null}.
-     * 
+     *
      * @param list {@code null-ok;} the list in question
      * @return {@code >= 0;} its size
      */
@@ -353,7 +353,7 @@
     /**
      * Prints out the contents of this instance, in a debugging-friendly
      * way. This is meant to be called from {@link ClassDefItem#debugPrint}.
-     * 
+     *
      * @param out {@code non-null;} where to output to
      */
     /*package*/ void debugPrint(PrintWriter out) {
@@ -374,12 +374,12 @@
                 out.println("    " + item.toHuman());
             }
         }
-        
+
         if (parameterAnnotations != null) {
             out.println("  parameter annotations:");
             for (ParameterAnnotationStruct item : parameterAnnotations) {
                 out.println("    " + item.toHuman());
             }
         }
-    }    
+    }
 }
diff --git a/dx/src/com/android/dx/dex/file/CatchStructs.java b/dx/src/com/android/dx/dex/file/CatchStructs.java
index 3412015..e07ec29 100644
--- a/dx/src/com/android/dx/dex/file/CatchStructs.java
+++ b/dx/src/com/android/dx/dex/file/CatchStructs.java
@@ -38,13 +38,13 @@
 public final class CatchStructs {
     /**
      * the size of a {@code try_item}: a {@code uint}
-     * and two {@code ushort}s 
+     * and two {@code ushort}s
      */
     private static final int TRY_ITEM_WRITE_SIZE = 4 + (2 * 2);
 
     /** {@code non-null;} code that contains the catches */
     private final DalvCode code;
-    
+
     /**
      * {@code null-ok;} the underlying table; set in
      * {@link #finishProcessingIfNecessary}
@@ -71,7 +71,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param code {@code non-null;} code that contains the catches
      */
     public CatchStructs(DalvCode code) {
@@ -93,7 +93,7 @@
 
     /**
      * Gets the size of the tries list, in entries.
-     * 
+     *
      * @return {@code >= 0;} the tries list size
      */
     public int triesSize() {
@@ -103,7 +103,7 @@
 
     /**
      * Does a human-friendly dump of this instance.
-     * 
+     *
      * @param out {@code non-null;} where to dump
      * @param prefix {@code non-null;} prefix to attach to each line of output
      */
@@ -113,7 +113,7 @@
 
     /**
      * Encodes the handler lists.
-     * 
+     *
      * @param file {@code non-null;} file this instance is part of
      */
     public void encode(DexFile file) {
@@ -136,13 +136,13 @@
             throw new UnsupportedOperationException(
                     "too many catch handlers");
         }
-        
+
         ByteArrayAnnotatedOutput out = new ByteArrayAnnotatedOutput();
 
         // Write out the handlers "header" consisting of its size in entries.
         encodedHandlerHeaderSize =
             out.writeUnsignedLeb128(handlerOffsets.size());
-        
+
         // Now write the lists out in order, noting the offset of each.
         for (Map.Entry<CatchHandlerList, Integer> mapping :
                  handlerOffsets.entrySet()) {
@@ -178,17 +178,17 @@
 
     /**
      * Gets the write size of this instance, in bytes.
-     * 
+     *
      * @return {@code >= 0;} the write size
      */
     public int writeSize() {
         return (triesSize() * TRY_ITEM_WRITE_SIZE) +
                 + encodedHandlers.length;
     }
-    
+
     /**
      * Writes this instance to the given stream.
-     * 
+     *
      * @param file {@code non-null;} file this instance is part of
      * @param out {@code non-null;} where to write to
      */
@@ -216,7 +216,7 @@
             out.writeShort(insnCount);
             out.writeShort(handlerOffsets.get(one.getHandlers()));
         }
-        
+
         out.write(encodedHandlers);
     }
 
@@ -224,7 +224,7 @@
      * Helper method to annotate or simply print the exception handlers.
      * Only one of {@code printTo} or {@code annotateTo} should
      * be non-null.
-     * 
+     *
      * @param prefix {@code non-null;} prefix for each line
      * @param printTo {@code null-ok;} where to print to
      * @param annotateTo {@code null-ok;} where to consume bytes and annotate to
@@ -272,7 +272,7 @@
 
         int lastOffset = 0;
         CatchHandlerList lastList = null;
-        
+
         for (Map.Entry<CatchHandlerList, Integer> mapping :
                  handlerOffsets.entrySet()) {
             CatchHandlerList list = mapping.getKey();
@@ -295,7 +295,7 @@
     /**
      * Helper for {@link #annotateEntries} to annotate a catch handler list
      * while consuming it.
-     * 
+     *
      * @param handlers {@code non-null;} handlers to annotate
      * @param offset {@code >= 0;} the offset of this handler
      * @param size {@code >= 1;} the number of bytes the handlers consume
diff --git a/dx/src/com/android/dx/dex/file/ClassDataItem.java b/dx/src/com/android/dx/dex/file/ClassDataItem.java
index 4823f9f..275ae99 100644
--- a/dx/src/com/android/dx/dex/file/ClassDataItem.java
+++ b/dx/src/com/android/dx/dex/file/ClassDataItem.java
@@ -43,7 +43,7 @@
 public final class ClassDataItem extends OffsettedItem {
     /** {@code non-null;} what class this data is for, just for listing generation */
     private final CstType thisClass;
-    
+
     /** {@code non-null;} list of static fields */
     private final ArrayList<EncodedField> staticFields;
 
@@ -71,7 +71,7 @@
     /**
      * Constructs an instance. Its sets of members are initially
      * empty.
-     * 
+     *
      * @param thisClass {@code non-null;} what class this data is for, just
      * for listing generation
      */
@@ -105,7 +105,7 @@
 
     /**
      * Returns whether this instance is empty.
-     * 
+     *
      * @return {@code true} if this instance is empty or
      * {@code false} if at least one element has been added to it
      */
@@ -116,7 +116,7 @@
 
     /**
      * Adds a static field.
-     * 
+     *
      * @param field {@code non-null;} the field to add
      * @param value {@code null-ok;} initial value for the field, if any
      */
@@ -136,7 +136,7 @@
 
     /**
      * Adds an instance field.
-     * 
+     *
      * @param field {@code non-null;} the field to add
      */
     public void addInstanceField(EncodedField field) {
@@ -149,7 +149,7 @@
 
     /**
      * Adds a direct ({@code static} and/or {@code private}) method.
-     * 
+     *
      * @param method {@code non-null;} the method to add
      */
     public void addDirectMethod(EncodedMethod method) {
@@ -162,7 +162,7 @@
 
     /**
      * Adds a virtual method.
-     * 
+     *
      * @param method {@code non-null;} the method to add
      */
     public void addVirtualMethod(EncodedMethod method) {
@@ -177,7 +177,7 @@
      * Gets all the methods in this class. The returned list is not linked
      * in any way to the underlying lists contained in this instance, but
      * the objects contained in the list are shared.
-     * 
+     *
      * @return {@code non-null;} list of all methods
      */
     public ArrayList<EncodedMethod> getMethods() {
@@ -194,7 +194,7 @@
     /**
      * Prints out the contents of this instance, in a debugging-friendly
      * way.
-     * 
+     *
      * @param out {@code non-null;} where to output to
      * @param verbose whether to be verbose with the output
      */
@@ -259,7 +259,7 @@
     /**
      * Gets a {@link CstArray} corresponding to {@link #staticValues} if
      * it contains any non-zero non-{@code null} values.
-     * 
+     *
      * @return {@code null-ok;} the corresponding constant or {@code null} if
      * there are no values to encode
      */
@@ -274,14 +274,14 @@
     /**
      * Gets a {@link CstArray} corresponding to {@link #staticValues} if
      * it contains any non-zero non-{@code null} values.
-     * 
+     *
      * @return {@code null-ok;} the corresponding constant or {@code null} if
      * there are no values to encode
      */
     private CstArray makeStaticValuesConstant() {
         // First sort the statics into their final order.
         Collections.sort(staticFields);
-        
+
         /*
          * Get the size of staticValues minus any trailing zeros/nulls (both
          * nulls per se as well as instances of CstKnownNull).
@@ -305,9 +305,9 @@
         if (size == 0) {
             return null;
         }
-        
+
         // There is something worth encoding, so build up a result.
-        
+
         CstArray.List list = new CstArray.List(size);
         for (int i = 0; i < size; i++) {
             EncodedField field = staticFields.get(i);
@@ -336,7 +336,7 @@
 
     /**
      * Writes out the encoded form of this instance.
-     * 
+     *
      * @param file {@code non-null;} file this instance is part of
      * @param out {@code non-null;} where to write to
      */
@@ -362,11 +362,11 @@
             out.endAnnotation();
         }
     }
-    
+
     /**
      * Helper for {@link #encodeOutput}, which writes out the given
      * size value, annotating it as well (if annotations are enabled).
-     * 
+     *
      * @param file {@code non-null;} file this instance is part of
      * @param out {@code non-null;} where to write to
      * @param label {@code non-null;} the label for the purposes of annotation
@@ -386,7 +386,7 @@
      * Helper for {@link #encodeOutput}, which writes out the given
      * list. It also annotates the items (if any and if annotations
      * are enabled).
-     * 
+     *
      * @param file {@code non-null;} file this instance is part of
      * @param out {@code non-null;} where to write to
      * @param label {@code non-null;} the label for the purposes of annotation
@@ -400,7 +400,7 @@
         if (size == 0) {
             return;
         }
-        
+
         if (out.annotates()) {
             out.annotate(0, "  " + label + ":");
         }
diff --git a/dx/src/com/android/dx/dex/file/ClassDefItem.java b/dx/src/com/android/dx/dex/file/ClassDefItem.java
index acd8cf5..4d1719b 100644
--- a/dx/src/com/android/dx/dex/file/ClassDefItem.java
+++ b/dx/src/com/android/dx/dex/file/ClassDefItem.java
@@ -53,7 +53,7 @@
 
     /**
      * {@code null-ok;} superclass or {@code null} if this class is a/the
-     * root class 
+     * root class
      */
     private final CstType superclass;
 
@@ -78,7 +78,7 @@
     /**
      * Constructs an instance. Its sets of members and annotations are
      * initially empty.
-     * 
+     *
      * @param thisClass {@code non-null;} type constant for this class
      * @param accessFlags access flags
      * @param superclass {@code null-ok;} superclass or {@code null} if
@@ -105,7 +105,7 @@
         this.thisClass = thisClass;
         this.accessFlags = accessFlags;
         this.superclass = superclass;
-        this.interfaces = 
+        this.interfaces =
             (interfaces.size() == 0) ? null :  new TypeListItem(interfaces);
         this.sourceFile = sourceFile;
         this.classData = new ClassDataItem(thisClass);
@@ -188,7 +188,7 @@
         if (annotates) {
             out.annotate(0, indexString() + ' ' + thisClass.toHuman());
             out.annotate(4, "  class_idx:           " + Hex.u4(classIdx));
-            out.annotate(4, "  access_flags:        " + 
+            out.annotate(4, "  access_flags:        " +
                          AccessFlags.classString(accessFlags));
             out.annotate(4, "  superclass_idx:      " + Hex.u4(superIdx) +
                          " // " + ((superclass == null) ? "<none>" :
@@ -222,7 +222,7 @@
 
     /**
      * Gets the constant corresponding to this class.
-     * 
+     *
      * @return {@code non-null;} the constant
      */
     public CstType getThisClass() {
@@ -231,7 +231,7 @@
 
     /**
      * Gets the access flags.
-     * 
+     *
      * @return the access flags
      */
     public int getAccessFlags() {
@@ -240,7 +240,7 @@
 
     /**
      * Gets the superclass.
-     * 
+     *
      * @return {@code null-ok;} the superclass or {@code null} if
      * this class is a/the root class
      */
@@ -250,7 +250,7 @@
 
     /**
      * Gets the list of interfaces implemented.
-     * 
+     *
      * @return {@code non-null;} the interfaces list
      */
     public TypeList getInterfaces() {
@@ -263,7 +263,7 @@
 
     /**
      * Gets the source file name.
-     * 
+     *
      * @return {@code null-ok;} the source file name or {@code null} if unknown
      */
     public CstUtf8 getSourceFile() {
@@ -272,7 +272,7 @@
 
     /**
      * Adds a static field.
-     * 
+     *
      * @param field {@code non-null;} the field to add
      * @param value {@code null-ok;} initial value for the field, if any
      */
@@ -282,7 +282,7 @@
 
     /**
      * Adds an instance field.
-     * 
+     *
      * @param field {@code non-null;} the field to add
      */
     public void addInstanceField(EncodedField field) {
@@ -291,7 +291,7 @@
 
     /**
      * Adds a direct ({@code static} and/or {@code private}) method.
-     * 
+     *
      * @param method {@code non-null;} the method to add
      */
     public void addDirectMethod(EncodedMethod method) {
@@ -300,7 +300,7 @@
 
     /**
      * Adds a virtual method.
-     * 
+     *
      * @param method {@code non-null;} the method to add
      */
     public void addVirtualMethod(EncodedMethod method) {
@@ -311,7 +311,7 @@
      * Gets all the methods in this class. The returned list is not linked
      * in any way to the underlying lists contained in this instance, but
      * the objects contained in the list are shared.
-     * 
+     *
      * @return {@code non-null;} list of all methods
      */
     public ArrayList<EncodedMethod> getMethods() {
@@ -322,7 +322,7 @@
      * Sets the direct annotations on this class. These are annotations
      * made on the class, per se, as opposed to on one of its members.
      * It is only valid to call this method at most once per instance.
-     * 
+     *
      * @param annotations {@code non-null;} annotations to set for this class
      */
     public void setClassAnnotations(Annotations annotations) {
@@ -331,7 +331,7 @@
 
     /**
      * Adds a field annotations item to this class.
-     * 
+     *
      * @param field {@code non-null;} field in question
      * @param annotations {@code non-null;} associated annotations to add
      */
@@ -342,7 +342,7 @@
 
     /**
      * Adds a method annotations item to this class.
-     * 
+     *
      * @param method {@code non-null;} method in question
      * @param annotations {@code non-null;} associated annotations to add
      */
@@ -353,7 +353,7 @@
 
     /**
      * Adds a parameter annotations item to this class.
-     * 
+     *
      * @param method {@code non-null;} method in question
      * @param list {@code non-null;} associated list of annotation sets to add
      */
@@ -365,7 +365,7 @@
     /**
      * Gets the method annotations for a given method, if any. This is
      * meant for use by debugging / dumping code.
-     * 
+     *
      * @param method {@code non-null;} the method
      * @return {@code null-ok;} the method annotations, if any
      */
@@ -376,18 +376,18 @@
     /**
      * Gets the parameter annotations for a given method, if any. This is
      * meant for use by debugging / dumping code.
-     * 
+     *
      * @param method {@code non-null;} the method
      * @return {@code null-ok;} the parameter annotations, if any
      */
     public AnnotationsList getParameterAnnotations(CstMethodRef method) {
         return annotationsDirectory.getParameterAnnotations(method);
     }
-    
+
     /**
      * Prints out the contents of this instance, in a debugging-friendly
      * way.
-     * 
+     *
      * @param out {@code non-null;} where to output to
      * @param verbose whether to be verbose with the output
      */
@@ -404,7 +404,7 @@
 
         classData.debugPrint(out, verbose);
         annotationsDirectory.debugPrint(pw);
-        
+
         pw.println("}");
     }
 }
diff --git a/dx/src/com/android/dx/dex/file/ClassDefsSection.java b/dx/src/com/android/dx/dex/file/ClassDefsSection.java
index e8efd57..1ca391f 100644
--- a/dx/src/com/android/dx/dex/file/ClassDefsSection.java
+++ b/dx/src/com/android/dx/dex/file/ClassDefsSection.java
@@ -42,7 +42,7 @@
 
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param file {@code non-null;} file that this instance is part of
      */
     public ClassDefsSection(DexFile file) {
@@ -58,7 +58,7 @@
         if (orderedDefs != null) {
             return orderedDefs;
         }
-        
+
         return classDefs.values();
     }
 
@@ -83,7 +83,7 @@
 
     /**
      * Writes the portion of the file header that refers to this instance.
-     * 
+     *
      * @param out {@code non-null;} where to write
      */
     public void writeHeaderPart(AnnotatedOutput out) {
@@ -104,7 +104,7 @@
     /**
      * Adds an element to this instance. It is illegal to attempt to add more
      * than one class with the same name.
-     * 
+     *
      * @param clazz {@code non-null;} the class def to add
      */
     public void add(ClassDefItem clazz) {
@@ -148,7 +148,7 @@
     /**
      * Helper for {@link #orderItems}, which recursively assigns indices
      * to classes.
-     * 
+     *
      * @param type {@code null-ok;} type ref to assign, if any
      * @param idx {@code >= 0;} the next index to assign
      * @param maxDepth maximum recursion depth; if negative, this will
diff --git a/dx/src/com/android/dx/dex/file/CodeItem.java b/dx/src/com/android/dx/dex/file/CodeItem.java
index ab7abbe..a47f68a 100644
--- a/dx/src/com/android/dx/dex/file/CodeItem.java
+++ b/dx/src/com/android/dx/dex/file/CodeItem.java
@@ -62,7 +62,7 @@
 
     /**
      * {@code non-null;} list of possibly-thrown exceptions; just used in
-     * generating debugging output (listings) 
+     * generating debugging output (listings)
      */
     private final TypeList throwsList;
 
@@ -74,7 +74,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param ref {@code non-null;} method that this code implements
      * @param code {@code non-null;} the underlying code
      * @param isStatic whether this instance is for a {@code static}
@@ -148,7 +148,7 @@
 
     /**
      * Gets the reference to the method this instance implements.
-     * 
+     *
      * @return {@code non-null;} the method reference
      */
     public CstMethodRef getRef() {
@@ -157,7 +157,7 @@
 
     /**
      * Does a human-friendly dump of this instance.
-     * 
+     *
      * @param out {@code non-null;} where to dump
      * @param prefix {@code non-null;} per-line prefix to use
      * @param verbose whether to be verbose with the output
@@ -192,7 +192,7 @@
     protected void place0(Section addedTo, int offset) {
         final DexFile file = addedTo.getFile();
         int catchesSize;
-        
+
         /*
          * In order to get the catches and insns, all the code's
          * constants need to be assigned indices.
@@ -307,7 +307,7 @@
 
     /**
      * Get the in registers count.
-     * 
+     *
      * @return the count
      */
     private int getInsSize() {
@@ -316,7 +316,7 @@
 
     /**
      * Get the out registers count.
-     * 
+     *
      * @return the count
      */
     private int getOutsSize() {
@@ -325,7 +325,7 @@
 
     /**
      * Get the total registers count.
-     * 
+     *
      * @return the count
      */
     private int getRegistersSize() {
diff --git a/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java b/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java
index cd20055..e823816 100644
--- a/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java
+++ b/dx/src/com/android/dx/dex/file/DebugInfoDecoder.java
@@ -73,7 +73,7 @@
 
     /** current decoding state: line number */
     private int line = 1;
-    
+
     /** current decoding state: bytecode address */
     private int address = 0;
 
@@ -102,7 +102,7 @@
         this.desc = ref.getPrototype();
         this.file = file;
         this.regSize = regSize;
-        
+
         positions = new ArrayList<PositionEntry>();
         locals = new ArrayList<LocalEntry>();
         this.codesize = codesize;
@@ -248,7 +248,7 @@
             throw new RuntimeException(
                     "Mismatch between parameters_size and prototype");
         }
-        
+
         if (!isStatic) {
             // Start off with implicit 'this' entry
             LocalEntry thisEntry =
@@ -353,7 +353,7 @@
                             throw new RuntimeException("nonsensical "
                                     + "END_LOCAL on dead register v" + reg);
                         }
-                        
+
                         le = new LocalEntry(address, false, reg,
                                 prevle.nameIndex, prevle.typeIndex,
                                 prevle.signatureIndex);
@@ -428,7 +428,7 @@
         DalvInsnList insns = code.getInsns();
         int codeSize = insns.codeSize();
         int countRegisters = insns.getRegistersSize();
-        
+
         try {
             validateEncode0(info, codeSize, countRegisters,
                     isStatic, ref, file, pl, ll);
@@ -441,7 +441,7 @@
                     "while processing " + ref.toHuman());
         }
     }
-    
+
     private static void validateEncode0(byte[] info, int codeSize,
             int countRegisters, boolean isStatic, CstMethodRef ref,
             DexFile file, PositionList pl, LocalList ll) {
@@ -516,7 +516,7 @@
                 }
             }
         }
-        
+
         int origSz = ll.size();
         int decodeAt = 0;
         boolean problem = false;
@@ -556,7 +556,7 @@
                 problem = true;
                 break;
             }
-            
+
             if (decodedEntry.isStart != origEntry.isStart()) {
                 System.err.println("local start/end mismatch at orig " + i +
                         " / decoded " + decodeAt);
@@ -569,7 +569,7 @@
              * parameter might not be marked as starting at 0 in the
              * original list.
              */
-            if ((decodedAddress != origEntry.getAddress()) 
+            if ((decodedAddress != origEntry.getAddress())
                     && !((decodedAddress == 0)
                             && (decodedEntry.reg >= paramBase))) {
                 System.err.println("local address mismatch at orig " + i +
diff --git a/dx/src/com/android/dx/dex/file/DebugInfoItem.java b/dx/src/com/android/dx/dex/file/DebugInfoItem.java
index 1c32bd7..6a41b18 100644
--- a/dx/src/com/android/dx/dex/file/DebugInfoItem.java
+++ b/dx/src/com/android/dx/dex/file/DebugInfoItem.java
@@ -36,7 +36,7 @@
 
     /** {@code non-null;} the code this item represents */
     private final DalvCode code;
-    
+
     private byte[] encoded;
 
     private final boolean isStatic;
@@ -80,7 +80,7 @@
                     "...while placing debug info for " + ref.toHuman());
         }
     }
-        
+
     /** {@inheritDoc} */
     @Override
     public String toHuman() {
@@ -99,7 +99,7 @@
      */
     public void annotateTo(DexFile file, AnnotatedOutput out, String prefix) {
         encode(file, prefix, null, out, false);
-    }    
+    }
 
     /**
      * Does a human-friendly dump of this instance.
diff --git a/dx/src/com/android/dx/dex/file/DexFile.java b/dx/src/com/android/dx/dex/file/DexFile.java
index a829fed..1cc9358 100644
--- a/dx/src/com/android/dx/dex/file/DexFile.java
+++ b/dx/src/com/android/dx/dex/file/DexFile.java
@@ -45,7 +45,7 @@
     /** {@code non-null;} word data section */
     private final MixedItemSection wordData;
 
-    /** 
+    /**
      * {@code non-null;} type lists section. This is word data, but separating
      * it from {@link #wordData} helps break what would otherwise be a
      * circular dependency between the that and {@link #protoIds}.
@@ -120,15 +120,15 @@
         classDefs = new ClassDefsSection(this);
         map = new MixedItemSection("map", this, 4, SortType.NONE);
 
-        /* 
+        /*
          * This is the list of sections in the order they appear in
          * the final output.
          */
         sections = new Section[] {
             header, stringIds, typeIds, protoIds, fieldIds, methodIds,
-            classDefs, wordData, typeLists, stringData, byteData, 
+            classDefs, wordData, typeLists, stringData, byteData,
             classData, map };
-        
+
         fileSize = -1;
         dumpWidth = 79;
     }
@@ -136,7 +136,7 @@
     /**
      * Adds a class to this instance. It is illegal to attempt to add more
      * than one class with the same name.
-     * 
+     *
      * @param clazz {@code non-null;} the class to add
      */
     public void add(ClassDefItem clazz) {
@@ -145,7 +145,7 @@
 
     /**
      * Gets the class definition with the given name, if any.
-     * 
+     *
      * @param name {@code non-null;} the class name to look for
      * @return {@code null-ok;} the class with the given name, or {@code null}
      * if there is no such class
@@ -163,7 +163,7 @@
     /**
      * Writes the contents of this instance as either a binary or a
      * human-readable form, or both.
-     * 
+     *
      * @param out {@code null-ok;} where to write to
      * @param humanOut {@code null-ok;} where to write human-oriented output to
      * @param verbose whether to be verbose when writing human-oriented output
@@ -185,12 +185,12 @@
     /**
      * Returns the contents of this instance as a {@code .dex} file,
      * in {@code byte[]} form.
-     * 
+     *
      * @param humanOut {@code null-ok;} where to write human-oriented output to
      * @param verbose whether to be verbose when writing human-oriented output
      * @return {@code non-null;} a {@code .dex} file for this instance
      */
-    public byte[] toDex(Writer humanOut, boolean verbose) 
+    public byte[] toDex(Writer humanOut, boolean verbose)
         throws IOException {
         boolean annotate = (humanOut != null);
         ByteArrayAnnotatedOutput result = toDex0(annotate, verbose);
@@ -204,7 +204,7 @@
 
     /**
      * Sets the maximum width of the human-oriented dump of the instance.
-     * 
+     *
      * @param dumpWidth {@code >= 40;} the width
      */
     public void setDumpWidth(int dumpWidth) {
@@ -217,10 +217,10 @@
 
     /**
      * Gets the total file size, if known.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the {@link HeaderSection} to set itself up properly.</p>
-     * 
+     *
      * @return {@code >= 0;} the total file size
      * @throws RuntimeException thrown if the file size is not yet known
      */
@@ -234,11 +234,11 @@
 
     /**
      * Gets the string data section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the string data section
      */
     /*package*/ MixedItemSection getStringData() {
@@ -247,11 +247,11 @@
 
     /**
      * Gets the word data section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the word data section
      */
     /*package*/ MixedItemSection getWordData() {
@@ -260,11 +260,11 @@
 
     /**
      * Gets the type lists section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the word data section
      */
     /*package*/ MixedItemSection getTypeLists() {
@@ -273,10 +273,10 @@
 
     /**
      * Gets the map section.
-     * 
+     *
      * <p>This is package-scope in order to allow the header section
      * to query it.</p>
-     * 
+     *
      * @return {@code non-null;} the map section
      */
     /*package*/ MixedItemSection getMap() {
@@ -285,11 +285,11 @@
 
     /**
      * Gets the string identifiers section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the string identifiers section
      */
     /*package*/ StringIdsSection getStringIds() {
@@ -298,11 +298,11 @@
 
     /**
      * Gets the class definitions section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the class definitions section
      */
     /*package*/ ClassDefsSection getClassDefs() {
@@ -311,11 +311,11 @@
 
     /**
      * Gets the class data section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the class data section
      */
     /*package*/ MixedItemSection getClassData() {
@@ -324,11 +324,11 @@
 
     /**
      * Gets the type identifiers section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the class identifiers section
      */
     /*package*/ TypeIdsSection getTypeIds() {
@@ -337,11 +337,11 @@
 
     /**
      * Gets the prototype identifiers section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the prototype identifiers section
      */
     /*package*/ ProtoIdsSection getProtoIds() {
@@ -350,11 +350,11 @@
 
     /**
      * Gets the field identifiers section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the field identifiers section
      */
     /*package*/ FieldIdsSection getFieldIds() {
@@ -363,11 +363,11 @@
 
     /**
      * Gets the method identifiers section.
-     * 
+     *
      * <p>This is package-scope in order to allow
      * the various {@link Item} instances to add items to the
      * instance.</p>
-     * 
+     *
      * @return {@code non-null;} the method identifiers section
      */
     /*package*/ MethodIdsSection getMethodIds() {
@@ -390,10 +390,10 @@
     /**
      * Gets the first section of the file that is to be considered
      * part of the data section.
-     * 
+     *
      * <p>This is package-scope in order to allow the header section
      * to query it.</p>
-     * 
+     *
      * @return {@code non-null;} the section
      */
     /*package*/ Section getFirstDataSection() {
@@ -403,21 +403,21 @@
     /**
      * Gets the last section of the file that is to be considered
      * part of the data section.
-     * 
+     *
      * <p>This is package-scope in order to allow the header section
      * to query it.</p>
-     * 
+     *
      * @return {@code non-null;} the section
      */
     /*package*/ Section getLastDataSection() {
         return map;
     }
-    
+
     /**
      * Interns the given constant in the appropriate section of this
      * instance, or do nothing if the given constant isn't the sort
      * that should be interned.
-     * 
+     *
      * @param cst {@code non-null;} constant to possibly intern
      */
     /*package*/ void internIfAppropriate(Constant cst) {
@@ -444,7 +444,7 @@
      * {@code null} if it isn't such a constant. This will throw
      * an exception if the given constant <i>should</i> have been found
      * but wasn't.
-     * 
+     *
      * @param cst {@code non-null;} the constant to look up
      * @return {@code null-ok;} its corresponding item, if it has a corresponding
      * item, or {@code null} if it's not that sort of constant
@@ -468,7 +468,7 @@
     /**
      * Returns the contents of this instance as a {@code .dex} file,
      * in a {@link ByteArrayAnnotatedOutput} instance.
-     * 
+     *
      * @param annotate whether or not to keep annotations
      * @param verbose if annotating, whether to be verbose
      * @return {@code non-null;} a {@code .dex} file for this instance
@@ -524,7 +524,7 @@
                      */
                     ((MixedItemSection) one).placeItems();
                 }
-            
+
                 offset = placedAt + one.writeSize();
             } catch (RuntimeException ex) {
                 throw ExceptionWithContext.withContext(ex,
@@ -569,7 +569,7 @@
         }
 
         // Perform final bookkeeping.
-        
+
         calcSignature(barr);
         calcChecksum(barr);
 
@@ -585,7 +585,7 @@
 
     /**
      * Generates and returns statistics for all the items in the file.
-     * 
+     *
      * @return {@code non-null;} the statistics
      */
     public Statistics getStatistics() {
@@ -601,7 +601,7 @@
     /**
      * Calculates the signature for the {@code .dex} file in the
      * given array, and modify the array to contain it.
-     * 
+     *
      * @param bytes {@code non-null;} the bytes of the file
      */
     private static void calcSignature(byte[] bytes) {
@@ -629,7 +629,7 @@
     /**
      * Calculates the checksum for the {@code .dex} file in the
      * given array, and modify the array to contain it.
-     * 
+     *
      * @param bytes {@code non-null;} the bytes of the file
      */
     private static void calcChecksum(byte[] bytes) {
diff --git a/dx/src/com/android/dx/dex/file/EncodedArrayItem.java b/dx/src/com/android/dx/dex/file/EncodedArrayItem.java
index c55c6f5..4d904e7 100644
--- a/dx/src/com/android/dx/dex/file/EncodedArrayItem.java
+++ b/dx/src/com/android/dx/dex/file/EncodedArrayItem.java
@@ -47,7 +47,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param array {@code non-null;} array to represent
      */
     public EncodedArrayItem(CstArray array) {
diff --git a/dx/src/com/android/dx/dex/file/EncodedField.java b/dx/src/com/android/dx/dex/file/EncodedField.java
index 146a604..f2a8184 100644
--- a/dx/src/com/android/dx/dex/file/EncodedField.java
+++ b/dx/src/com/android/dx/dex/file/EncodedField.java
@@ -35,7 +35,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param field {@code non-null;} constant for the field
      * @param accessFlags access flags
      */
@@ -70,7 +70,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * <p><b>Note:</b> This compares the method constants only,
      * ignoring any associated code, because it should never be the
      * case that two different items with the same method constant
@@ -121,7 +121,7 @@
 
     /**
      * Gets the constant for the field.
-     * 
+     *
      * @return {@code non-null;} the constant
      */
     public CstFieldRef getRef() {
@@ -130,7 +130,7 @@
 
     /** {@inheritDoc} */
     @Override
-    public int encode(DexFile file, AnnotatedOutput out, 
+    public int encode(DexFile file, AnnotatedOutput out,
             int lastIndex, int dumpSeq) {
         int fieldIdx = file.getFieldIds().indexOf(field);
         int diff = fieldIdx - lastIndex;
diff --git a/dx/src/com/android/dx/dex/file/EncodedMember.java b/dx/src/com/android/dx/dex/file/EncodedMember.java
index 68119f3..5099325 100644
--- a/dx/src/com/android/dx/dex/file/EncodedMember.java
+++ b/dx/src/com/android/dx/dex/file/EncodedMember.java
@@ -65,14 +65,14 @@
 
     /**
      * Populates a {@link DexFile} with items from within this instance.
-     * 
+     *
      * @param file {@code non-null;} the file to populate
      */
     public abstract void addContents(DexFile file);
 
     /**
      * Encodes this instance to the given output.
-     * 
+     *
      * @param file {@code non-null;} file this instance is part of
      * @param out {@code non-null;} where to write to
      * @param lastIndex {@code >= 0;} the previous member index value encoded, or
@@ -81,6 +81,6 @@
      * annotation purposes
      * @return {@code >= 0;} the member index value that was encoded
      */
-    public abstract int encode(DexFile file, AnnotatedOutput out, 
+    public abstract int encode(DexFile file, AnnotatedOutput out,
             int lastIndex, int dumpSeq);
 }
diff --git a/dx/src/com/android/dx/dex/file/EncodedMethod.java b/dx/src/com/android/dx/dex/file/EncodedMethod.java
index dff1a07..1b0770f 100644
--- a/dx/src/com/android/dx/dex/file/EncodedMethod.java
+++ b/dx/src/com/android/dx/dex/file/EncodedMethod.java
@@ -30,20 +30,20 @@
 /**
  * Class that representats a method of a class.
  */
-public final class EncodedMethod extends EncodedMember 
+public final class EncodedMethod extends EncodedMember
         implements Comparable<EncodedMethod> {
     /** {@code non-null;} constant for the method */
     private final CstMethodRef method;
 
     /**
      * {@code null-ok;} code for the method, if the method is neither
-     * {@code abstract} nor {@code native} 
+     * {@code abstract} nor {@code native}
      */
     private final CodeItem code;
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param method {@code non-null;} constant for the method
      * @param accessFlags access flags
      * @param code {@code null-ok;} code for the method, if it is neither
@@ -80,7 +80,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * <p><b>Note:</b> This compares the method constants only,
      * ignoring any associated code, because it should never be the
      * case that two different items with the same method constant
@@ -147,7 +147,7 @@
 
     /**
      * Gets the constant for the method.
-     * 
+     *
      * @return {@code non-null;} the constant
      */
     public final CstMethodRef getRef() {
@@ -156,14 +156,14 @@
 
     /** {@inheritDoc} */
     @Override
-    public int encode(DexFile file, AnnotatedOutput out, 
+    public int encode(DexFile file, AnnotatedOutput out,
             int lastIndex, int dumpSeq) {
         int methodIdx = file.getMethodIds().indexOf(method);
         int diff = methodIdx - lastIndex;
         int accessFlags = getAccessFlags();
         int codeOff = OffsettedItem.getAbsoluteOffsetOr0(code);
         boolean hasCode = (codeOff != 0);
-        boolean shouldHaveCode = (accessFlags & 
+        boolean shouldHaveCode = (accessFlags &
                 (AccessFlags.ACC_ABSTRACT | AccessFlags.ACC_NATIVE)) == 0;
 
         /*
diff --git a/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java b/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java
index 6a76ca9..f363d41 100644
--- a/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java
+++ b/dx/src/com/android/dx/dex/file/FieldAnnotationStruct.java
@@ -35,7 +35,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param field {@code non-null;} the field in question
      * @param annotations {@code non-null;} the associated annotations
      */
@@ -57,13 +57,13 @@
     public int hashCode() {
         return field.hashCode();
     }
-    
+
     /** {@inheritDoc} */
     public boolean equals(Object other) {
         if (! (other instanceof FieldAnnotationStruct)) {
             return false;
         }
-        
+
         return field.equals(((FieldAnnotationStruct) other).field);
     }
 
@@ -104,7 +104,7 @@
 
     /**
      * Gets the field this item is for.
-     * 
+     *
      * @return {@code non-null;} the field
      */
     public CstFieldRef getField() {
@@ -113,7 +113,7 @@
 
     /**
      * Gets the associated annotations.
-     * 
+     *
      * @return {@code non-null;} the annotations
      */
     public Annotations getAnnotations() {
diff --git a/dx/src/com/android/dx/dex/file/FieldIdItem.java b/dx/src/com/android/dx/dex/file/FieldIdItem.java
index d6d01d5..ecb1d3d 100644
--- a/dx/src/com/android/dx/dex/file/FieldIdItem.java
+++ b/dx/src/com/android/dx/dex/file/FieldIdItem.java
@@ -24,7 +24,7 @@
 public final class FieldIdItem extends MemberIdItem {
     /**
      * Constructs an instance.
-     * 
+     *
      * @param field {@code non-null;} the constant for the field
      */
     public FieldIdItem(CstFieldRef field) {
@@ -48,7 +48,7 @@
 
     /**
      * Gets the field constant.
-     * 
+     *
      * @return {@code non-null;} the constant
      */
     public CstFieldRef getFieldRef() {
@@ -61,10 +61,10 @@
         TypeIdsSection typeIds = file.getTypeIds();
         return typeIds.indexOf(getFieldRef().getType());
     }
-        
+
     /** {@inheritDoc} */
     @Override
     protected String getTypoidName() {
         return "type_idx";
-    }    
+    }
 }
diff --git a/dx/src/com/android/dx/dex/file/FieldIdsSection.java b/dx/src/com/android/dx/dex/file/FieldIdsSection.java
index 59ef229..c320731 100644
--- a/dx/src/com/android/dx/dex/file/FieldIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/FieldIdsSection.java
@@ -30,13 +30,13 @@
 public final class FieldIdsSection extends MemberIdsSection {
     /**
      * {@code non-null;} map from field constants to {@link
-     * FieldIdItem} instances 
+     * FieldIdItem} instances
      */
     private final TreeMap<CstFieldRef, FieldIdItem> fieldIds;
 
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param file {@code non-null;} file that this instance is part of
      */
     public FieldIdsSection(DexFile file) {
@@ -71,7 +71,7 @@
 
     /**
      * Writes the portion of the file header that refers to this instance.
-     * 
+     *
      * @param out {@code non-null;} where to write
      */
     public void writeHeaderPart(AnnotatedOutput out) {
@@ -91,7 +91,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param field {@code non-null;} the reference to intern
      * @return {@code non-null;} the interned reference
      */
@@ -115,7 +115,7 @@
     /**
      * Gets the index of the given reference, which must have been added
      * to this instance.
-     * 
+     *
      * @param ref {@code non-null;} the reference to look up
      * @return {@code >= 0;} the reference's index
      */
diff --git a/dx/src/com/android/dx/dex/file/HeaderItem.java b/dx/src/com/android/dx/dex/file/HeaderItem.java
index 6593859..f95ff44 100644
--- a/dx/src/com/android/dx/dex/file/HeaderItem.java
+++ b/dx/src/com/android/dx/dex/file/HeaderItem.java
@@ -48,7 +48,7 @@
     public ItemType itemType() {
         return ItemType.TYPE_HEADER_ITEM;
     }
-    
+
     /** {@inheritDoc} */
     @Override
     public int writeSize() {
@@ -70,7 +70,7 @@
         int dataOff = firstDataSection.getFileOffset();
         int dataSize = lastDataSection.getFileOffset() +
             lastDataSection.writeSize() - dataOff;
-        
+
         if (out.annotates()) {
             out.annotate(8, "magic: " + new CstUtf8(MAGIC).toQuoted());
             out.annotate(4, "checksum");
@@ -103,7 +103,7 @@
         out.writeZeroes(8);
 
         out.writeInt(mapOff);
-        
+
         // Write out each section's respective header part.
         file.getStringIds().writeHeaderPart(out);
         file.getTypeIds().writeHeaderPart(out);
diff --git a/dx/src/com/android/dx/dex/file/HeaderSection.java b/dx/src/com/android/dx/dex/file/HeaderSection.java
index 5bc6278..21da488 100644
--- a/dx/src/com/android/dx/dex/file/HeaderSection.java
+++ b/dx/src/com/android/dx/dex/file/HeaderSection.java
@@ -28,10 +28,10 @@
 public final class HeaderSection extends UniformItemSection {
     /** {@code non-null;} the list of the one item in the section */
     private final List<HeaderItem> list;
-    
+
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param file {@code non-null;} file that this instance is part of
      */
     public HeaderSection(DexFile file) {
diff --git a/dx/src/com/android/dx/dex/file/IdItem.java b/dx/src/com/android/dx/dex/file/IdItem.java
index 5d7c9e3..1bd2b5f 100644
--- a/dx/src/com/android/dx/dex/file/IdItem.java
+++ b/dx/src/com/android/dx/dex/file/IdItem.java
@@ -24,13 +24,13 @@
 public abstract class IdItem extends IndexedItem {
     /**
      * {@code non-null;} the type constant for the defining class of
-     * the reference 
+     * the reference
      */
     private final CstType type;
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param type {@code non-null;} the type constant for the defining
      * class of the reference
      */
@@ -52,7 +52,7 @@
     /**
      * Gets the type constant for the defining class of the
      * reference.
-     * 
+     *
      * @return {@code non-null;} the type constant
      */
     public final CstType getDefiningClass() {
diff --git a/dx/src/com/android/dx/dex/file/IndexedItem.java b/dx/src/com/android/dx/dex/file/IndexedItem.java
index 32d69ea..9ba4783 100644
--- a/dx/src/com/android/dx/dex/file/IndexedItem.java
+++ b/dx/src/com/android/dx/dex/file/IndexedItem.java
@@ -33,7 +33,7 @@
 
     /**
      * Gets whether or not this instance has been assigned an index.
-     * 
+     *
      * @return {@code true} iff this instance has been assigned an index
      */
     public final boolean hasIndex() {
@@ -72,7 +72,7 @@
     /**
      * Gets the index of this item as a string, suitable for including in
      * annotations.
-     * 
+     *
      * @return {@code non-null;} the index string
      */
     public final String indexString() {
diff --git a/dx/src/com/android/dx/dex/file/Item.java b/dx/src/com/android/dx/dex/file/Item.java
index 057f218..cf2b380 100644
--- a/dx/src/com/android/dx/dex/file/Item.java
+++ b/dx/src/com/android/dx/dex/file/Item.java
@@ -32,15 +32,15 @@
 
     /**
      * Returns the item type for this instance.
-     * 
+     *
      * @return {@code non-null;} the item type
      */
     public abstract ItemType itemType();
-    
+
     /**
      * Returns the human name for the particular type of item this
      * instance is.
-     * 
+     *
      * @return {@code non-null;} the name
      */
     public final String typeName() {
@@ -49,7 +49,7 @@
 
     /**
      * Gets the size of this instance when written, in bytes.
-     * 
+     *
      * @return {@code >= 0;} the write size
      */
     public abstract int writeSize();
@@ -58,10 +58,10 @@
      * Populates a {@link DexFile} with items from within this instance.
      * This will <i>not</i> add an item to the file for this instance itself
      * (which should have been done by whatever refers to this instance).
-     * 
+     *
      * <p><b>Note:</b> Subclasses must override this to do something
      * appropriate.</p>
-     * 
+     *
      * @param file {@code non-null;} the file to populate
      */
     public abstract void addContents(DexFile file);
@@ -72,7 +72,7 @@
      * If this instance keeps track of its offset, then this method will
      * note the written offset and will also throw an exception if this
      * instance has already been written.
-     * 
+     *
      * @param file {@code non-null;} the file to use for reference
      * @param out {@code non-null;} where to write to
      */
diff --git a/dx/src/com/android/dx/dex/file/ItemType.java b/dx/src/com/android/dx/dex/file/ItemType.java
index 83843b7..2fe97ab 100644
--- a/dx/src/com/android/dx/dex/file/ItemType.java
+++ b/dx/src/com/android/dx/dex/file/ItemType.java
@@ -44,7 +44,7 @@
     TYPE_TYPE_ITEM(                 -1,     "type_item"),
     TYPE_EXCEPTION_HANDLER_ITEM(    -1,     "exception_handler_item"),
     TYPE_ANNOTATION_SET_REF_ITEM(   -1,     "annotation_set_ref_item");
-    
+
     /** value when represented in a {@link MapItem} */
     private final int mapValue;
 
@@ -53,10 +53,10 @@
 
     /** {@code non-null;} the short human name */
     private final String humanName;
-   
+
     /**
      * Constructs an instance.
-     * 
+     *
      * @param mapValue value when represented in a {@link MapItem}
      * @param typeName {@code non-null;} name of the type
      */
@@ -74,16 +74,16 @@
 
     /**
      * Gets the map value.
-     * 
+     *
      * @return the map value
      */
     public int getMapValue() {
         return mapValue;
     }
-    
+
     /**
      * Gets the type name.
-     * 
+     *
      * @return {@code non-null;} the type name
      */
     public String getTypeName() {
diff --git a/dx/src/com/android/dx/dex/file/MapItem.java b/dx/src/com/android/dx/dex/file/MapItem.java
index c728dd7..d78dc91 100644
--- a/dx/src/com/android/dx/dex/file/MapItem.java
+++ b/dx/src/com/android/dx/dex/file/MapItem.java
@@ -74,7 +74,7 @@
             throw new IllegalArgumentException(
                     "mapSection.items().size() != 0");
         }
-        
+
         ArrayList<MapItem> items = new ArrayList<MapItem>(50);
 
         for (Section section : sections) {
@@ -111,10 +111,10 @@
         mapSection.add(
                 new UniformListItem<MapItem>(ItemType.TYPE_MAP_LIST, items));
     }
-   
+
     /**
      * Constructs an instance.
-     * 
+     *
      * @param type {@code non-null;} item type this instance covers
      * @param section {@code non-null;} section this instance covers
      * @param firstItem {@code non-null;} first item covered
@@ -155,7 +155,7 @@
     /**
      * Constructs a self-referential instance. This instance is meant to
      * represent the section containing the {@code map_list}.
-     * 
+     *
      * @param section {@code non-null;} section this instance covers
      */
     private MapItem(Section section) {
@@ -231,5 +231,5 @@
         out.writeShort(0); // unused
         out.writeInt(itemCount);
         out.writeInt(offset);
-    }    
+    }
 }
diff --git a/dx/src/com/android/dx/dex/file/MemberIdItem.java b/dx/src/com/android/dx/dex/file/MemberIdItem.java
index 574d413..d3a61d4 100644
--- a/dx/src/com/android/dx/dex/file/MemberIdItem.java
+++ b/dx/src/com/android/dx/dex/file/MemberIdItem.java
@@ -34,7 +34,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param cst {@code non-null;} the constant for the member
      */
     public MemberIdItem(CstMemberRef cst) {
@@ -74,7 +74,7 @@
             out.annotate(2, String.format("  %-10s %s", getTypoidName() + ':',
                             Hex.u2(typoidIdx)));
             out.annotate(4, "  name_idx:  " + Hex.u4(nameIdx));
-        }            
+        }
 
         out.writeShort(classIdx);
         out.writeShort(typoidIdx);
@@ -85,24 +85,24 @@
      * Returns the index of the type-like thing associated with
      * this item, in order that it may be written out. Subclasses must
      * override this to get whatever it is they need to store.
-     * 
+     *
      * @param file {@code non-null;} the file being written
      * @return the index in question
      */
     protected abstract int getTypoidIdx(DexFile file);
-        
+
     /**
      * Returns the field name of the type-like thing associated with
      * this item, for listing-generating purposes. Subclasses must override
      * this.
-     * 
+     *
      * @return {@code non-null;} the name in question
      */
     protected abstract String getTypoidName();
 
     /**
      * Gets the member constant.
-     * 
+     *
      * @return {@code non-null;} the constant
      */
     public final CstMemberRef getRef() {
diff --git a/dx/src/com/android/dx/dex/file/MemberIdsSection.java b/dx/src/com/android/dx/dex/file/MemberIdsSection.java
index 20b1605..ef0d8cd 100644
--- a/dx/src/com/android/dx/dex/file/MemberIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/MemberIdsSection.java
@@ -22,7 +22,7 @@
 public abstract class MemberIdsSection extends UniformItemSection {
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param name {@code null-ok;} the name of this instance, for annotation
      * purposes
      * @param file {@code non-null;} file that this instance is part of
diff --git a/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java b/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java
index 3c254a1..38f7ce4 100644
--- a/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java
+++ b/dx/src/com/android/dx/dex/file/MethodAnnotationStruct.java
@@ -35,7 +35,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param method {@code non-null;} the method in question
      * @param annotations {@code non-null;} the associated annotations
      */
@@ -57,13 +57,13 @@
     public int hashCode() {
         return method.hashCode();
     }
-    
+
     /** {@inheritDoc} */
     public boolean equals(Object other) {
         if (! (other instanceof MethodAnnotationStruct)) {
             return false;
         }
-        
+
         return method.equals(((MethodAnnotationStruct) other).method);
     }
 
@@ -104,7 +104,7 @@
 
     /**
      * Gets the method this item is for.
-     * 
+     *
      * @return {@code non-null;} the method
      */
     public CstMethodRef getMethod() {
@@ -113,7 +113,7 @@
 
     /**
      * Gets the associated annotations.
-     * 
+     *
      * @return {@code non-null;} the annotations
      */
     public Annotations getAnnotations() {
diff --git a/dx/src/com/android/dx/dex/file/MethodIdItem.java b/dx/src/com/android/dx/dex/file/MethodIdItem.java
index bbd6c93..f2ff4f9 100644
--- a/dx/src/com/android/dx/dex/file/MethodIdItem.java
+++ b/dx/src/com/android/dx/dex/file/MethodIdItem.java
@@ -24,7 +24,7 @@
 public final class MethodIdItem extends MemberIdItem {
     /**
      * Constructs an instance.
-     * 
+     *
      * @param method {@code non-null;} the constant for the method
      */
     public MethodIdItem(CstBaseMethodRef method) {
@@ -48,7 +48,7 @@
 
     /**
      * Gets the method constant.
-     * 
+     *
      * @return {@code non-null;} the constant
      */
     public CstBaseMethodRef getMethodRef() {
@@ -61,10 +61,10 @@
         ProtoIdsSection protoIds = file.getProtoIds();
         return protoIds.indexOf(getMethodRef().getPrototype());
     }
-        
+
     /** {@inheritDoc} */
     @Override
     protected String getTypoidName() {
         return "proto_idx";
-    }    
+    }
 }
diff --git a/dx/src/com/android/dx/dex/file/MethodIdsSection.java b/dx/src/com/android/dx/dex/file/MethodIdsSection.java
index f3e7dee..fa0cd3c 100644
--- a/dx/src/com/android/dx/dex/file/MethodIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/MethodIdsSection.java
@@ -30,13 +30,13 @@
 public final class MethodIdsSection extends MemberIdsSection {
     /**
      * {@code non-null;} map from method constants to {@link
-     * MethodIdItem} instances 
+     * MethodIdItem} instances
      */
     private final TreeMap<CstBaseMethodRef, MethodIdItem> methodIds;
 
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param file {@code non-null;} file that this instance is part of
      */
     public MethodIdsSection(DexFile file) {
@@ -71,7 +71,7 @@
 
     /**
      * Writes the portion of the file header that refers to this instance.
-     * 
+     *
      * @param out {@code non-null;} where to write
      */
     public void writeHeaderPart(AnnotatedOutput out) {
@@ -91,7 +91,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param method {@code non-null;} the reference to intern
      * @return {@code non-null;} the interned reference
      */
@@ -115,7 +115,7 @@
     /**
      * Gets the index of the given reference, which must have been added
      * to this instance.
-     * 
+     *
      * @param ref {@code non-null;} the reference to look up
      * @return {@code >= 0;} the reference's index
      */
diff --git a/dx/src/com/android/dx/dex/file/MixedItemSection.java b/dx/src/com/android/dx/dex/file/MixedItemSection.java
index 0929fe7..b885306 100644
--- a/dx/src/com/android/dx/dex/file/MixedItemSection.java
+++ b/dx/src/com/android/dx/dex/file/MixedItemSection.java
@@ -34,7 +34,7 @@
  * A section of a {@code .dex} file which consists of a sequence of
  * {@link OffsettedItem} objects, which may each be of a different concrete
  * class and/or size.
- * 
+ *
  * <b>Note:</b> It is invalid for an item in an instance of this class to
  * have a larger alignment requirement than the alignment of this instance.
  */
@@ -59,7 +59,7 @@
             return type1.compareTo(type2);
         }
     };
-    
+
     /** {@code non-null;} the items in this part */
     private final ArrayList<OffsettedItem> items;
 
@@ -77,7 +77,7 @@
 
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param name {@code null-ok;} the name of this instance, for annotation
      * purposes
      * @param file {@code non-null;} file that this instance is part of
@@ -117,7 +117,7 @@
 
     /**
      * Gets the size of this instance, in items.
-     * 
+     *
      * @return {@code >= 0;} the size
      */
     public int size() {
@@ -133,7 +133,7 @@
         throwIfNotPrepared();
 
         if (writeSize == -1) {
-            throw new RuntimeException("write size not yet set");            
+            throw new RuntimeException("write size not yet set");
         }
 
         int sz = writeSize;
@@ -163,7 +163,7 @@
      * that it has been added to this instance. It is invalid to add the
      * same item to more than one instance, nor to add the same items
      * multiple times to a single instance.
-     * 
+     *
      * @param item {@code non-null;} the item to add
      */
     public void add(OffsettedItem item) {
@@ -186,7 +186,7 @@
      * Interns an item in this instance, returning the interned instance
      * (which may not be the one passed in). This will add the item if no
      * equal item has been added.
-     * 
+     *
      * @param item {@code non-null;} the item to intern
      * @return {@code non-null;} the equivalent interned instance
      */
@@ -194,7 +194,7 @@
         throwIfPrepared();
 
         OffsettedItem result = interns.get(item);
-        
+
         if (result != null) {
             return (T) result;
         }
@@ -206,7 +206,7 @@
 
     /**
      * Gets an item which was previously interned.
-     * 
+     *
      * @param item {@code non-null;} the item to look for
      * @return {@code non-null;} the equivalent already-interned instance
      */
@@ -214,7 +214,7 @@
         throwIfNotPrepared();
 
         OffsettedItem result = interns.get(item);
-        
+
         if (result != null) {
             return (T) result;
         }
@@ -226,7 +226,7 @@
      * Writes an index of contents of the items in this instance of the
      * given type. If there are none, this writes nothing. If there are any,
      * then the index is preceded by the given intro string.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      * @param itemType {@code non-null;} the item type of interest
      * @param intro {@code non-null;} the introductory string for non-empty indices
@@ -250,7 +250,7 @@
         }
 
         out.annotate(0, intro);
-        
+
         for (Map.Entry<String, OffsettedItem> entry : index.entrySet()) {
             String label = entry.getKey();
             OffsettedItem item = entry.getValue();
diff --git a/dx/src/com/android/dx/dex/file/OffsettedItem.java b/dx/src/com/android/dx/dex/file/OffsettedItem.java
index c8e2d74..7721470 100644
--- a/dx/src/com/android/dx/dex/file/OffsettedItem.java
+++ b/dx/src/com/android/dx/dex/file/OffsettedItem.java
@@ -33,20 +33,20 @@
 
     /**
      * {@code null-ok;} section the item was added to, or {@code null} if
-     * not yet added 
+     * not yet added
      */
     private Section addedTo;
 
     /**
      * {@code >= -1;} assigned offset of the item from the start of its section,
-     * or {@code -1} if not yet assigned 
+     * or {@code -1} if not yet assigned
      */
     private int offset;
 
     /**
      * Gets the absolute offset of the given item, returning {@code 0}
      * if handed {@code null}.
-     * 
+     *
      * @param item {@code null-ok;} the item in question
      * @return {@code >= 0;} the item's absolute offset, or {@code 0}
      * if {@code item == null}
@@ -61,7 +61,7 @@
 
     /**
      * Constructs an instance. The offset is initially unassigned.
-     * 
+     *
      * @param alignment {@code > 0;} output alignment requirement; must be a
      * power of 2
      * @param writeSize {@code >= -1;} the size of this instance when written,
@@ -82,7 +82,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * Comparisons for this class are defined to be type-major (if the
      * types don't match then the objects are not equal), with
      * {@link #compareTo0} deciding same-type comparisons.
@@ -106,7 +106,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * Comparisons for this class are defined to be class-major (if the
      * classes don't match then the objects are not equal), with
      * {@link #compareTo0} deciding same-class comparisons.
@@ -130,7 +130,7 @@
      * Sets the write size of this item. This may only be called once
      * per instance, and only if the size was unknown upon instance
      * creation.
-     * 
+     *
      * @param writeSize {@code > 0;} the write size, in bytes
      */
     public final void setWriteSize(int writeSize) {
@@ -144,9 +144,9 @@
 
         this.writeSize = writeSize;
     }
-    
-    /** {@inheritDoc} 
-     * 
+
+    /** {@inheritDoc}
+     *
      * @throws UnsupportedOperationException thrown if the write size
      * is not yet known
      */
@@ -155,7 +155,7 @@
         if (writeSize < 0) {
             throw new UnsupportedOperationException("writeSize is unknown");
         }
-                
+
         return writeSize;
     }
 
@@ -181,7 +181,7 @@
     /**
      * Gets the relative item offset. The offset is from the start of
      * the section which the instance was written to.
-     * 
+     *
      * @return {@code >= 0;} the offset
      * @throws RuntimeException thrown if the offset is not yet known
      */
@@ -196,7 +196,7 @@
     /**
      * Gets the absolute item offset. The offset is from the start of
      * the file which the instance was written to.
-     * 
+     *
      * @return {@code >= 0;} the offset
      * @throws RuntimeException thrown if the offset is not yet known
      */
@@ -212,7 +212,7 @@
      * Indicates that this item has been added to the given section at
      * the given offset. It is only valid to call this method once per
      * instance.
-     * 
+     *
      * @param addedTo {@code non-null;} the section this instance has
      * been added to
      * @param offset {@code >= 0;} the desired offset from the start of the
@@ -247,7 +247,7 @@
     /**
      * Gets the alignment requirement of this instance. An instance should
      * only be written when so aligned.
-     * 
+     *
      * @return {@code > 0;} the alignment requirement; must be a power of 2
      */
     public final int getAlignment() {
@@ -257,7 +257,7 @@
     /**
      * Gets the absolute offset of this item as a string, suitable for
      * including in annotations.
-     * 
+     *
      * @return {@code non-null;} the offset string
      */
     public final String offsetString() {
@@ -266,7 +266,7 @@
 
     /**
      * Gets a short human-readable string representing this instance.
-     * 
+     *
      * @return {@code non-null;} the human form
      */
     public abstract String toHuman();
@@ -277,7 +277,7 @@
      * throw an exception (unsupported operation). If a particular
      * class needs to actually sort, then it should override this
      * method.
-     * 
+     *
      * @param other {@code non-null;} instance to compare to
      * @return {@code -1}, {@code 0}, or {@code 1}, depending
      * on the sort order of this instance and the other
@@ -293,7 +293,7 @@
      * override this method. In particular, if this instance did not
      * know its write size up-front, then this method is responsible
      * for setting it.
-     * 
+     *
      * @param addedTo {@code non-null;} the section this instance has been added to
      * @param offset {@code >= 0;} the offset from the start of the
      * section where this instance was placed
@@ -306,7 +306,7 @@
      * Performs the actual write of the contents of this instance to
      * the given data section. This is called by {@link #writeTo},
      * which will have taken care of ensuring alignment.
-     * 
+     *
      * @param file {@code non-null;} the file to use for reference
      * @param out {@code non-null;} where to write to
      */
diff --git a/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java b/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java
index 46d0450..078c219 100644
--- a/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java
+++ b/dx/src/com/android/dx/dex/file/ParameterAnnotationStruct.java
@@ -41,7 +41,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param method {@code non-null;} the method in question
      * @param annotationsList {@code non-null;} the associated annotations list
      */
@@ -72,7 +72,7 @@
             AnnotationSetItem item = new AnnotationSetItem(annotations);
             arrayList.add(new AnnotationSetRefItem(item));
         }
-                
+
         this.annotationsItem = new UniformListItem<AnnotationSetRefItem>(
                 ItemType.TYPE_ANNOTATION_SET_REF_LIST, arrayList);
     }
@@ -81,13 +81,13 @@
     public int hashCode() {
         return method.hashCode();
     }
-    
+
     /** {@inheritDoc} */
     public boolean equals(Object other) {
         if (! (other instanceof ParameterAnnotationStruct)) {
             return false;
         }
-        
+
         return method.equals(((ParameterAnnotationStruct) other).method);
     }
 
@@ -143,7 +143,7 @@
 
     /**
      * Gets the method this item is for.
-     * 
+     *
      * @return {@code non-null;} the method
      */
     public CstMethodRef getMethod() {
@@ -152,7 +152,7 @@
 
     /**
      * Gets the associated annotations list.
-     * 
+     *
      * @return {@code non-null;} the annotations list
      */
     public AnnotationsList getAnnotationsList() {
diff --git a/dx/src/com/android/dx/dex/file/ProtoIdItem.java b/dx/src/com/android/dx/dex/file/ProtoIdItem.java
index afc227c..31cf8fb 100644
--- a/dx/src/com/android/dx/dex/file/ProtoIdItem.java
+++ b/dx/src/com/android/dx/dex/file/ProtoIdItem.java
@@ -45,7 +45,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param prototype {@code non-null;} the constant for the prototype
      */
     public ProtoIdItem(Prototype prototype) {
@@ -57,13 +57,13 @@
         this.shortForm = makeShortForm(prototype);
 
         StdTypeList parameters = prototype.getParameterTypes();
-        this.parameterTypes = (parameters.size() == 0) ? null 
+        this.parameterTypes = (parameters.size() == 0) ? null
             : new TypeListItem(parameters);
     }
 
     /**
      * Creates the short-form of the given prototype.
-     * 
+     *
      * @param prototype {@code non-null;} the prototype
      * @return {@code non-null;} the short form
      */
@@ -83,7 +83,7 @@
 
     /**
      * Gets the short-form character for the given type.
-     * 
+     *
      * @param type {@code non-null;} the type
      * @return the corresponding short-form character
      */
@@ -130,7 +130,7 @@
         int shortyIdx = file.getStringIds().indexOf(shortForm);
         int returnIdx = file.getTypeIds().indexOf(prototype.getReturnType());
         int paramsOff = OffsettedItem.getAbsoluteOffsetOr0(parameterTypes);
-            
+
         if (out.annotates()) {
             StringBuilder sb = new StringBuilder();
             sb.append(prototype.getReturnType().toHuman());
@@ -145,7 +145,7 @@
                 }
                 sb.append(params.getType(i).toHuman());
             }
-            
+
             sb.append(")");
             out.annotate(0, indexString() + ' ' + sb.toString());
             out.annotate(4, "  shorty_idx:      " + Hex.u4(shortyIdx) +
diff --git a/dx/src/com/android/dx/dex/file/ProtoIdsSection.java b/dx/src/com/android/dx/dex/file/ProtoIdsSection.java
index 8a95434..dc6e8ad 100644
--- a/dx/src/com/android/dx/dex/file/ProtoIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/ProtoIdsSection.java
@@ -36,7 +36,7 @@
 
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param file {@code non-null;} file that this instance is part of
      */
     public ProtoIdsSection(DexFile file) {
@@ -59,7 +59,7 @@
 
     /**
      * Writes the portion of the file header that refers to this instance.
-     * 
+     *
      * @param out {@code non-null;} where to write
      */
     public void writeHeaderPart(AnnotatedOutput out) {
@@ -83,7 +83,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param prototype {@code non-null;} the prototype to intern
      * @return {@code non-null;} the interned reference
      */
@@ -107,7 +107,7 @@
     /**
      * Gets the index of the given prototype, which must have
      * been added to this instance.
-     * 
+     *
      * @param prototype {@code non-null;} the prototype to look up
      * @return {@code >= 0;} the reference's index
      */
diff --git a/dx/src/com/android/dx/dex/file/Section.java b/dx/src/com/android/dx/dex/file/Section.java
index f5b43af..3f04216 100644
--- a/dx/src/com/android/dx/dex/file/Section.java
+++ b/dx/src/com/android/dx/dex/file/Section.java
@@ -45,7 +45,7 @@
 
     /**
      * Validates an alignment.
-     * 
+     *
      * @param alignment the alignment
      * @throws IllegalArgumentException thrown if {@code alignment}
      * isn't a positive power of 2
@@ -89,9 +89,9 @@
         return file;
     }
 
-    /** 
+    /**
      * Gets the alignment for this instance's final output.
-     * 
+     *
      * @return {@code > 0;} the alignment
      */
     public final int getAlignment() {
@@ -144,7 +144,7 @@
      * @param out {@code non-null;} where to write to
      */
     public final void writeTo(AnnotatedOutput out) {
-        throwIfNotPrepared();        
+        throwIfNotPrepared();
         align(out);
 
         int cursor = out.getCursor();
@@ -173,7 +173,7 @@
      * start of this instance's output. This is only valid to call
      * once this instance has been assigned a file offset (via {@link
      * #setFileOffset}).
-     * 
+     *
      * @param relative {@code >= 0;} the relative offset
      * @return {@code >= 0;} the corresponding absolute file offset
      */
@@ -194,10 +194,10 @@
      * be contained in this section. This is only valid to call
      * once this instance has been assigned a file offset (via {@link
      * #setFileOffset}).
-     * 
+     *
      * <p><b>Note:</b> Subclasses must implement this as appropriate for
      * their contents.</p>
-     * 
+     *
      * @param item {@code non-null;} the item in question
      * @return {@code >= 0;} the item's absolute file offset
      */
@@ -257,7 +257,7 @@
 
     /**
      * Aligns the output of the given data to the alignment of this instance.
-     * 
+     *
      * @param out {@code non-null;} the output to align
      */
     protected final void align(AnnotatedOutput out) {
@@ -271,14 +271,14 @@
      * offset matches the actual cursor {@code out} or that the
      * file offset was not previously assigned, in which case it gets
      * assigned to {@code out}'s cursor.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      */
     protected abstract void writeTo0(AnnotatedOutput out);
 
     /**
      * Returns the name of this section, for annotation purposes.
-     * 
+     *
      * @return {@code null-ok;} name of this part, for annotation purposes
      */
     protected final String getName() {
diff --git a/dx/src/com/android/dx/dex/file/Statistics.java b/dx/src/com/android/dx/dex/file/Statistics.java
index 9a2efb3..62e1832 100644
--- a/dx/src/com/android/dx/dex/file/Statistics.java
+++ b/dx/src/com/android/dx/dex/file/Statistics.java
@@ -38,7 +38,7 @@
 
     /**
      * Adds the given item to the statistics.
-     * 
+     *
      * @param item {@code non-null;} the item to add
      */
     public void add(Item item) {
@@ -54,7 +54,7 @@
 
     /**
      * Adds the given list of items to the statistics.
-     * 
+     *
      * @param list {@code non-null;} the list of items to add
      */
     public void addAll(Section list) {
@@ -66,7 +66,7 @@
 
     /**
      * Writes the statistics as an annotation.
-     * 
+     *
      * @param out {@code non-null;} where to write to
      */
     public final void writeAnnotation(AnnotatedOutput out) {
@@ -126,7 +126,7 @@
 
         /**
          * Constructs an instance for the given item.
-         * 
+         *
          * @param item {@code non-null;} item in question
          * @param name {@code non-null;} type name to use
          */
@@ -142,7 +142,7 @@
 
         /**
          * Incorporates a new item. This assumes the type name matches.
-         * 
+         *
          * @param item {@code non-null;} item to incorporate
          */
         public void add(Item item) {
@@ -162,7 +162,7 @@
 
         /**
          * Writes this instance as an annotation.
-         * 
+         *
          * @param out {@code non-null;} where to write to
          */
         public void writeAnnotation(AnnotatedOutput out) {
diff --git a/dx/src/com/android/dx/dex/file/StringDataItem.java b/dx/src/com/android/dx/dex/file/StringDataItem.java
index b9eeb9b..80dbced 100644
--- a/dx/src/com/android/dx/dex/file/StringDataItem.java
+++ b/dx/src/com/android/dx/dex/file/StringDataItem.java
@@ -31,7 +31,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param value {@code non-null;} the string value
      */
     public StringDataItem(CstUtf8 value) {
@@ -42,13 +42,13 @@
 
     /**
      * Gets the write size for a given value.
-     * 
+     *
      * @param value {@code non-null;} the string value
      * @return {@code >= 2}; the write size, in bytes
      */
     private static int writeSize(CstUtf8 value) {
         int utf16Size = value.getUtf16Size();
-        
+
         // The +1 is for the '\0' termination byte.
         return Leb128Utils.unsignedLeb128Size(utf16Size)
             + value.getUtf8Size() + 1;
@@ -73,7 +73,7 @@
         int utf16Size = value.getUtf16Size();
 
         if (out.annotates()) {
-            out.annotate(Leb128Utils.unsignedLeb128Size(utf16Size), 
+            out.annotate(Leb128Utils.unsignedLeb128Size(utf16Size),
                     "utf16_size: " + Hex.u4(utf16Size));
             out.annotate(bytes.size() + 1, value.toQuoted());
         }
diff --git a/dx/src/com/android/dx/dex/file/StringIdItem.java b/dx/src/com/android/dx/dex/file/StringIdItem.java
index 401a0be..cd0d57b 100644
--- a/dx/src/com/android/dx/dex/file/StringIdItem.java
+++ b/dx/src/com/android/dx/dex/file/StringIdItem.java
@@ -36,7 +36,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param value {@code non-null;} the string value
      */
     public StringIdItem(CstUtf8 value) {
@@ -109,7 +109,7 @@
 
     /**
      * Gets the string value.
-     * 
+     *
      * @return {@code non-null;} the value
      */
     public CstUtf8 getValue() {
@@ -118,7 +118,7 @@
 
     /**
      * Gets the associated data object for this instance, if known.
-     * 
+     *
      * @return {@code null-ok;} the associated data object or {@code null}
      * if not yet known
      */
diff --git a/dx/src/com/android/dx/dex/file/StringIdsSection.java b/dx/src/com/android/dx/dex/file/StringIdsSection.java
index b2e8683..9039f43 100644
--- a/dx/src/com/android/dx/dex/file/StringIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/StringIdsSection.java
@@ -33,13 +33,13 @@
         extends UniformItemSection {
     /**
      * {@code non-null;} map from string constants to {@link
-     * StringIdItem} instances 
+     * StringIdItem} instances
      */
     private final TreeMap<CstUtf8, StringIdItem> strings;
 
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param file {@code non-null;} file that this instance is part of
      */
     public StringIdsSection(DexFile file) {
@@ -78,7 +78,7 @@
 
     /**
      * Writes the portion of the file header that refers to this instance.
-     * 
+     *
      * @param out {@code non-null;} where to write
      */
     public void writeHeaderPart(AnnotatedOutput out) {
@@ -98,7 +98,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param string {@code non-null;} the string to intern, as a regular Java
      * {@code String}
      * @return {@code non-null;} the interned string
@@ -110,7 +110,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param string {@code non-null;} the string to intern, as a {@link CstString}
      * @return {@code non-null;} the interned string
      */
@@ -121,7 +121,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param string {@code non-null;} the string to intern, as a constant
      * @return {@code non-null;} the interned string
      */
@@ -131,7 +131,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param string {@code non-null;} the string to intern
      * @return {@code non-null;} the interned string
      */
@@ -155,7 +155,7 @@
 
     /**
      * Interns the components of a name-and-type into this instance.
-     * 
+     *
      * @param nat {@code non-null;} the name-and-type
      */
     public void intern(CstNat nat) {
@@ -166,7 +166,7 @@
     /**
      * Gets the index of the given string, which must have been added
      * to this instance.
-     * 
+     *
      * @param string {@code non-null;} the string to look up
      * @return {@code >= 0;} the string's index
      */
@@ -189,7 +189,7 @@
     /**
      * Gets the index of the given string, which must have been added
      * to this instance.
-     * 
+     *
      * @param string {@code non-null;} the string to look up
      * @return {@code >= 0;} the string's index
      */
diff --git a/dx/src/com/android/dx/dex/file/TypeIdItem.java b/dx/src/com/android/dx/dex/file/TypeIdItem.java
index 01b1417..c257e00 100644
--- a/dx/src/com/android/dx/dex/file/TypeIdItem.java
+++ b/dx/src/com/android/dx/dex/file/TypeIdItem.java
@@ -30,7 +30,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param type {@code non-null;} the constant for the type
      */
     public TypeIdItem(CstType type) {
diff --git a/dx/src/com/android/dx/dex/file/TypeIdsSection.java b/dx/src/com/android/dx/dex/file/TypeIdsSection.java
index b1b9c58..bcc8250 100644
--- a/dx/src/com/android/dx/dex/file/TypeIdsSection.java
+++ b/dx/src/com/android/dx/dex/file/TypeIdsSection.java
@@ -36,7 +36,7 @@
 
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param file {@code non-null;} file that this instance is part of
      */
     public TypeIdsSection(DexFile file) {
@@ -72,7 +72,7 @@
 
     /**
      * Writes the portion of the file header that refers to this instance.
-     * 
+     *
      * @param out {@code non-null;} where to write
      */
     public void writeHeaderPart(AnnotatedOutput out) {
@@ -96,7 +96,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param type {@code non-null;} the type to intern
      * @return {@code non-null;} the interned reference
      */
@@ -119,7 +119,7 @@
 
     /**
      * Interns an element into this instance.
-     * 
+     *
      * @param type {@code non-null;} the type to intern
      * @return {@code non-null;} the interned reference
      */
@@ -144,7 +144,7 @@
     /**
      * Gets the index of the given type, which must have
      * been added to this instance.
-     * 
+     *
      * @param type {@code non-null;} the type to look up
      * @return {@code >= 0;} the reference's index
      */
@@ -167,7 +167,7 @@
     /**
      * Gets the index of the given type, which must have
      * been added to this instance.
-     * 
+     *
      * @param type {@code non-null;} the type to look up
      * @return {@code >= 0;} the reference's index
      */
diff --git a/dx/src/com/android/dx/dex/file/TypeListItem.java b/dx/src/com/android/dx/dex/file/TypeListItem.java
index 3278aef..b815dd3 100644
--- a/dx/src/com/android/dx/dex/file/TypeListItem.java
+++ b/dx/src/com/android/dx/dex/file/TypeListItem.java
@@ -41,7 +41,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param list {@code non-null;} the actual list
      */
     public TypeListItem(TypeList list) {
@@ -80,7 +80,7 @@
 
     /**
      * Gets the underlying list.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public TypeList getList() {
@@ -109,7 +109,7 @@
         for (int i = 0; i < sz; i++) {
             out.writeShort(typeIds.indexOf(list.getType(i)));
         }
-    }    
+    }
 
     /** {@inheritDoc} */
     @Override
diff --git a/dx/src/com/android/dx/dex/file/UniformItemSection.java b/dx/src/com/android/dx/dex/file/UniformItemSection.java
index e182438..d8c09ab 100644
--- a/dx/src/com/android/dx/dex/file/UniformItemSection.java
+++ b/dx/src/com/android/dx/dex/file/UniformItemSection.java
@@ -29,7 +29,7 @@
 public abstract class UniformItemSection extends Section {
     /**
      * Constructs an instance. The file offset is initially unknown.
-     * 
+     *
      * @param name {@code null-ok;} the name of this instance, for annotation
      * purposes
      * @param file {@code non-null;} file that this instance is part of
@@ -59,7 +59,7 @@
      * will throw an exception if the constant is not found, including
      * if this instance isn't the sort that maps constants to {@link
      * IndexedItem} instances.
-     * 
+     *
      * @param cst {@code non-null;} constant to look for
      * @return {@code non-null;} the corresponding item found in this instance
      */
diff --git a/dx/src/com/android/dx/dex/file/UniformListItem.java b/dx/src/com/android/dx/dex/file/UniformListItem.java
index 3c1f4d3..88919c7 100644
--- a/dx/src/com/android/dx/dex/file/UniformListItem.java
+++ b/dx/src/com/android/dx/dex/file/UniformListItem.java
@@ -26,12 +26,12 @@
  * Class that represents a contiguous list of uniform items. Each
  * item in the list, in particular, must have the same write size and
  * alignment.
- * 
+ *
  * <p>This class inherits its alignment from its items, bumped up to
  * {@code 4} if the items have a looser alignment requirement. If
  * it is more than {@code 4}, then there will be a gap after the
  * output list size (which is four bytes) and before the first item.</p>
- * 
+ *
  * @param <T> type of element contained in an instance
  */
 public final class UniformListItem<T extends OffsettedItem>
@@ -41,14 +41,14 @@
 
     /** {@code non-null;} the item type */
     private final ItemType itemType;
-    
+
     /** {@code non-null;} the contents */
     private final List<T> items;
 
     /**
      * Constructs an instance. It is illegal to modify the given list once
      * it is used to construct an instance of this class.
-     * 
+     *
      * @param itemType {@code non-null;} the type of the item
      * @param items {@code non-null and non-empty;} list of items to represent
      */
@@ -67,7 +67,7 @@
      * Helper for {@link #UniformListItem}, which returns the alignment
      * requirement implied by the given list. See the header comment for
      * more details.
-     * 
+     *
      * @param items {@code non-null;} list of items being represented
      * @return {@code >= 4;} the alignment requirement
      */
@@ -81,12 +81,12 @@
         } catch (NullPointerException ex) {
             // Translate the exception.
             throw new NullPointerException("items == null");
-        }            
+        }
     }
 
     /**
      * Calculates the write size for the given list.
-     * 
+     *
      * @param items {@code non-null;} the list in question
      * @return {@code >= 0;} the write size
      */
@@ -147,7 +147,7 @@
 
     /**
      * Gets the underlying list of items.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public final List<T> getItems() {
@@ -179,7 +179,7 @@
                             "item alignment mismatch");
                 }
             }
-            
+
             offset = i.place(addedTo, offset) + size;
         }
     }
@@ -203,7 +203,7 @@
 
     /**
      * Get the size of the header of this list.
-     * 
+     *
      * @return {@code >= 0;} the header size
      */
     private int headerSize() {
diff --git a/dx/src/com/android/dx/dex/file/ValueEncoder.java b/dx/src/com/android/dx/dex/file/ValueEncoder.java
index f7e364a..fba64a7 100644
--- a/dx/src/com/android/dx/dex/file/ValueEncoder.java
+++ b/dx/src/com/android/dx/dex/file/ValueEncoder.java
@@ -100,10 +100,10 @@
 
     /** {@code non-null;} output stream to write to */
     private final AnnotatedOutput out;
-    
+
     /**
      * Construct an instance.
-     * 
+     *
      * @param file {@code non-null;} file being written
      * @param out {@code non-null;} output stream to write to
      */
@@ -122,7 +122,7 @@
 
     /**
      * Writes out the encoded form of the given constant.
-     * 
+     *
      * @param cst {@code non-null;} the constant to write
      */
     public void writeConstant(Constant cst) {
@@ -208,7 +208,7 @@
 
     /**
      * Gets the value type for the given constant.
-     * 
+     *
      * @param cst {@code non-null;} the constant
      * @return the value type; one of the {@code VALUE_*} constants
      * defined by this class
@@ -276,7 +276,7 @@
         if (annotates) {
             out.annotate("  size: " + Hex.u4(size));
         }
-        
+
         out.writeUnsignedLeb128(size);
 
         for (int i = 0; i < size; i++) {
@@ -300,7 +300,7 @@
      * (debugging) annotations and {@code topLevel} is
      * {@code true}, then this method will write (debugging)
      * annotations.
-     * 
+     *
      * @param annotation {@code non-null;} annotation instance to write
      * @param topLevel {@code true} iff the given annotation is the
      * top-level annotation or {@code false} if it is a sub-annotation
@@ -318,7 +318,7 @@
             out.annotate("  type_idx: " + Hex.u4(typeIdx) + " // " +
                     type.toHuman());
         }
-                    
+
         out.writeUnsignedLeb128(typeIds.indexOf(annotation.getType()));
 
         Collection<NameValuePair> pairs = annotation.getNameValuePairs();
@@ -335,7 +335,7 @@
             CstUtf8 name = pair.getName();
             int nameIdx = stringIds.indexOf(name);
             Constant value = pair.getValue();
-            
+
             if (annotates) {
                 out.annotate(0, "  elements[" + at + "]:");
                 at++;
@@ -356,11 +356,11 @@
             out.endAnnotation();
         }
     }
-    
+
     /**
      * Gets the colloquial type name and human form of the type of the
      * given constant, when used as an encoded value.
-     * 
+     *
      * @param cst {@code non-null;} the constant
      * @return {@code non-null;} its type name and human form
      */
@@ -383,7 +383,7 @@
     /**
      * Helper for {@link #writeConstant}, which writes out the value
      * for any signed integral type.
-     * 
+     *
      * @param type the type constant
      * @param value {@code long} bits of the value
      */
@@ -420,7 +420,7 @@
     /**
      * Helper for {@link #writeConstant}, which writes out the value
      * for any unsigned integral type.
-     * 
+     *
      * @param type the type constant
      * @param value {@code long} bits of the value
      */
@@ -430,7 +430,7 @@
         if (requiredBits == 0) {
             requiredBits = 1;
         }
-        
+
         // Round up the requiredBits to a number of bytes.
         int requiredBytes = (requiredBits + 0x07) >> 3;
 
@@ -451,7 +451,7 @@
     /**
      * Helper for {@link #writeConstant}, which writes out a
      * right-zero-extended value.
-     * 
+     *
      * @param type the type constant
      * @param value {@code long} bits of the value
      */
@@ -461,7 +461,7 @@
         if (requiredBits == 0) {
             requiredBits = 1;
         }
-        
+
         // Round up the requiredBits to a number of bytes.
         int requiredBytes = (requiredBits + 0x07) >> 3;
 
@@ -488,7 +488,7 @@
      * contents for a particular {@link Annotation}, calling itself
      * recursively should it encounter a nested annotation.
      *
-     * @param file {@code non-null;} the file to add to 
+     * @param file {@code non-null;} the file to add to
      * @param annotation {@code non-null;} the annotation to add contents for
      */
     public static void addContents(DexFile file, Annotation annotation) {
@@ -496,7 +496,7 @@
         StringIdsSection stringIds = file.getStringIds();
 
         typeIds.intern(annotation.getType());
-        
+
         for (NameValuePair pair : annotation.getNameValuePairs()) {
             stringIds.intern(pair.getName());
             addContents(file, pair.getValue());
@@ -509,8 +509,8 @@
      * should it encounter a {@link CstArray} and calling {@link
      * #addContents(DexFile,Annotation)} recursively should it
      * encounter a {@link CstAnnotation}.
-     * 
-     * @param file {@code non-null;} the file to add to 
+     *
+     * @param file {@code non-null;} the file to add to
      * @param cst {@code non-null;} the constant to add contents for
      */
     public static void addContents(DexFile file, Constant cst) {
diff --git a/dx/src/com/android/dx/rop/annotation/Annotation.java b/dx/src/com/android/dx/rop/annotation/Annotation.java
index 6154c61..ad6d67e 100644
--- a/dx/src/com/android/dx/rop/annotation/Annotation.java
+++ b/dx/src/com/android/dx/rop/annotation/Annotation.java
@@ -39,7 +39,7 @@
  * associated type and additionally consist of a set of (name, value)
  * pairs, where the names are unique.
  */
-public final class Annotation extends MutabilityControl 
+public final class Annotation extends MutabilityControl
         implements Comparable<Annotation>, ToHuman {
     /** {@code non-null;} type of the annotation */
     private final CstType type;
@@ -49,10 +49,10 @@
 
     /** {@code non-null;} map from names to {@link NameValuePair} instances */
     private final TreeMap<CstUtf8, NameValuePair> elements;
-    
+
     /**
      * Construct an instance. It initially contains no elements.
-     * 
+     *
      * @param type {@code non-null;} type of the annotation
      * @param visibility {@code non-null;} the visibility of the annotation
      */
@@ -136,7 +136,7 @@
     public String toString() {
         return toHuman();
     }
-    
+
     /** {@inheritDoc} */
     public String toHuman() {
         StringBuilder sb = new StringBuilder();
@@ -164,7 +164,7 @@
 
     /**
      * Gets the type of this instance.
-     * 
+     *
      * @return {@code non-null;} the type
      */
     public CstType getType() {
@@ -173,7 +173,7 @@
 
     /**
      * Gets the visibility of this instance.
-     * 
+     *
      * @return {@code non-null;} the visibility
      */
     public AnnotationVisibility getVisibility() {
@@ -184,12 +184,12 @@
      * Put an element into the set of (name, value) pairs for this instance.
      * If there is a preexisting element with the same name, it will be
      * replaced by this method.
-     * 
+     *
      * @param pair {@code non-null;} the (name, value) pair to place into this instance
      */
     public void put(NameValuePair pair) {
         throwIfImmutable();
-        
+
         if (pair == null) {
             throw new NullPointerException("pair == null");
         }
@@ -201,12 +201,12 @@
      * Add an element to the set of (name, value) pairs for this instance.
      * It is an error to call this method if there is a preexisting element
      * with the same name.
-     * 
+     *
      * @param pair {@code non-null;} the (name, value) pair to add to this instance
      */
     public void add(NameValuePair pair) {
         throwIfImmutable();
-        
+
         if (pair == null) {
             throw new NullPointerException("pair == null");
         }
@@ -216,14 +216,14 @@
         if (elements.get(name) != null) {
             throw new IllegalArgumentException("name already added: " + name);
         }
-        
+
         elements.put(name, pair);
     }
 
     /**
      * Gets the set of name-value pairs contained in this instance. The
      * result is always unmodifiable.
-     * 
+     *
      * @return {@code non-null;} the set of name-value pairs
      */
     public Collection<NameValuePair> getNameValuePairs() {
diff --git a/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java b/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java
index 26246bb..c717b8c 100644
--- a/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java
+++ b/dx/src/com/android/dx/rop/annotation/AnnotationVisibility.java
@@ -32,7 +32,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param human {@code non-null;} the human-oriented string representation
      */
     private AnnotationVisibility(String human) {
diff --git a/dx/src/com/android/dx/rop/annotation/Annotations.java b/dx/src/com/android/dx/rop/annotation/Annotations.java
index dcb74a1..807d5d4 100644
--- a/dx/src/com/android/dx/rop/annotation/Annotations.java
+++ b/dx/src/com/android/dx/rop/annotation/Annotations.java
@@ -27,7 +27,7 @@
 /**
  * List of {@link Annotation} instances.
  */
-public final class Annotations extends MutabilityControl 
+public final class Annotations extends MutabilityControl
         implements Comparable<Annotations> {
     /** {@code non-null;} immutable empty instance */
     public static final Annotations EMPTY = new Annotations();
@@ -35,7 +35,7 @@
     static {
         EMPTY.setImmutable();
     }
-    
+
     /** {@code non-null;} map from types to annotations */
     private final TreeMap<CstType, Annotation> annotations;
 
@@ -43,7 +43,7 @@
      * Constructs an immutable instance which is the combination of the
      * two given instances. The two instances must contain disjoint sets
      * of types.
-     * 
+     *
      * @param a1 {@code non-null;} an instance
      * @param a2 {@code non-null;} the other instance
      * @return {@code non-null;} the combination
@@ -58,12 +58,12 @@
 
         return result;
     }
-            
+
     /**
      * Constructs an immutable instance which is the combination of the
      * given instance with the given additional annotation. The latter's
      * type must not already appear in the former.
-     * 
+     *
      * @param annotations {@code non-null;} the instance to augment
      * @param annotation {@code non-null;} the additional annotation
      * @return {@code non-null;} the combination
@@ -79,7 +79,7 @@
 
         return result;
     }
-            
+
     /**
      * Constructs an empty instance.
      */
@@ -148,10 +148,10 @@
         sb.append("}");
         return sb.toString();
     }
-    
+
     /**
      * Gets the number of elements in this instance.
-     * 
+     *
      * @return {@code >= 0;} the size
      */
     public int size() {
@@ -161,7 +161,7 @@
     /**
      * Adds an element to this instance. There must not already be an
      * element of the same type.
-     * 
+     *
      * @param annotation {@code non-null;} the element to add
      * @throws IllegalArgumentException thrown if there is a duplicate type
      */
@@ -173,7 +173,7 @@
         }
 
         CstType type = annotation.getType();
-        
+
         if (annotations.containsKey(type)) {
             throw new IllegalArgumentException("duplicate type: " +
                     type.toHuman());
@@ -185,7 +185,7 @@
     /**
      * Adds all of the elements of the given instance to this one. The
      * instances must not have any duplicate types.
-     * 
+     *
      * @param toAdd {@code non-null;} the annotations to add
      * @throws IllegalArgumentException thrown if there is a duplicate type
      */
@@ -204,7 +204,7 @@
     /**
      * Gets the set of annotations contained in this instance. The
      * result is always unmodifiable.
-     * 
+     *
      * @return {@code non-null;} the set of annotations
      */
     public Collection<Annotation> getAnnotations() {
diff --git a/dx/src/com/android/dx/rop/annotation/AnnotationsList.java b/dx/src/com/android/dx/rop/annotation/AnnotationsList.java
index 0f4207b..b97b385 100644
--- a/dx/src/com/android/dx/rop/annotation/AnnotationsList.java
+++ b/dx/src/com/android/dx/rop/annotation/AnnotationsList.java
@@ -25,13 +25,13 @@
         extends FixedSizeList {
     /** {@code non-null;} immutable empty instance */
     public static final AnnotationsList EMPTY = new AnnotationsList(0);
-    
+
     /**
      * Constructs an immutable instance which is the combination of
      * the two given instances. The two instances must each have the
      * same number of elements, and each pair of elements must contain
      * disjoint sets of types.
-     * 
+     *
      * @param list1 {@code non-null;} an instance
      * @param list2 {@code non-null;} the other instance
      * @return {@code non-null;} the combination
@@ -58,7 +58,7 @@
 
     /**
      * Constructs an instance. All indices initially contain {@code null}.
-     * 
+     *
      * @param size the size of the list
      */
     public AnnotationsList(int size) {
@@ -69,7 +69,7 @@
      * Gets the element at the given index. It is an error to call
      * this with the index for an element which was never set; if you
      * do that, this will throw {@code NullPointerException}.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @return {@code non-null;} element at that index
      */
@@ -80,7 +80,7 @@
     /**
      * Sets the element at the given index. The given element must be
      * immutable.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @param a {@code null-ok;} the element to set at {@code n}
      */
diff --git a/dx/src/com/android/dx/rop/annotation/NameValuePair.java b/dx/src/com/android/dx/rop/annotation/NameValuePair.java
index 7137a60..39a9dfd 100644
--- a/dx/src/com/android/dx/rop/annotation/NameValuePair.java
+++ b/dx/src/com/android/dx/rop/annotation/NameValuePair.java
@@ -29,10 +29,10 @@
 
     /** {@code non-null;} the value */
     private final Constant value;
-    
+
     /**
      * Construct an instance.
-     * 
+     *
      * @param name {@code non-null;} the name
      * @param value {@code non-null;} the value
      */
@@ -49,7 +49,7 @@
         if (value instanceof CstUtf8) {
             throw new IllegalArgumentException("bad value: " + value);
         }
-        
+
         this.name = name;
         this.value = value;
     }
@@ -63,7 +63,7 @@
     public int hashCode() {
         return name.hashCode() * 31 + value.hashCode();
     }
-    
+
     /** {@inheritDoc} */
     public boolean equals(Object other) {
         if (! (other instanceof NameValuePair)) {
@@ -78,7 +78,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * <p>Instances of this class compare in name-major and value-minor
      * order.</p>
      */
@@ -90,20 +90,20 @@
         }
 
         return value.compareTo(other.value);
-    }    
+    }
 
     /**
      * Gets the name.
-     * 
+     *
      * @return {@code non-null;} the name
      */
     public CstUtf8 getName() {
         return name;
     }
-    
+
     /**
      * Gets the value.
-     * 
+     *
      * @return {@code non-null;} the value
      */
     public Constant getValue() {
diff --git a/dx/src/com/android/dx/rop/code/AccessFlags.java b/dx/src/com/android/dx/rop/code/AccessFlags.java
index b76b610..2d84fe8 100644
--- a/dx/src/com/android/dx/rop/code/AccessFlags.java
+++ b/dx/src/com/android/dx/rop/code/AccessFlags.java
@@ -51,7 +51,7 @@
 
     /**
      * class with new-style {@code invokespecial} for superclass
-     * method access 
+     * method access
      */
     public static final int ACC_SUPER = 0x0020;
 
@@ -78,7 +78,7 @@
 
     /**
      * method with strict floating point ({@code strictfp})
-     * behavior 
+     * behavior
      */
     public static final int ACC_STRICT = 0x0800;
 
@@ -90,7 +90,7 @@
 
     /**
      * class is an enumerated type; field is an element of an enumerated
-     * type 
+     * type
      */
     public static final int ACC_ENUM = 0x4000;
 
@@ -145,7 +145,7 @@
     /**
      * Returns a human-oriented string representing the given access flags,
      * as defined on classes (not fields or methods).
-     * 
+     *
      * @param flags the flags
      * @return {@code non-null;} human-oriented string
      */
@@ -156,7 +156,7 @@
     /**
      * Returns a human-oriented string representing the given access flags,
      * as defined on inner classes.
-     * 
+     *
      * @param flags the flags
      * @return {@code non-null;} human-oriented string
      */
@@ -167,7 +167,7 @@
     /**
      * Returns a human-oriented string representing the given access flags,
      * as defined on fields (not classes or methods).
-     * 
+     *
      * @param flags the flags
      * @return {@code non-null;} human-oriented string
      */
@@ -178,7 +178,7 @@
     /**
      * Returns a human-oriented string representing the given access flags,
      * as defined on methods (not classes or fields).
-     * 
+     *
      * @param flags the flags
      * @return {@code non-null;} human-oriented string
      */
@@ -189,7 +189,7 @@
     /**
      * Returns whether the flag {@code ACC_PUBLIC} is on in the given
      * flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_PUBLIC} flag
      */
@@ -200,7 +200,7 @@
     /**
      * Returns whether the flag {@code ACC_PROTECTED} is on in the given
      * flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_PROTECTED} flag
      */
@@ -211,7 +211,7 @@
     /**
      * Returns whether the flag {@code ACC_PRIVATE} is on in the given
      * flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_PRIVATE} flag
      */
@@ -222,18 +222,18 @@
     /**
      * Returns whether the flag {@code ACC_STATIC} is on in the given
      * flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_STATIC} flag
      */
     public static boolean isStatic(int flags) {
         return (flags & ACC_STATIC) != 0;
     }
-    
+
     /**
      * Returns whether the flag {@code ACC_SYNCHRONIZED} is on in
      * the given flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_SYNCHRONIZED} flag
      */
@@ -244,7 +244,7 @@
     /**
      * Returns whether the flag {@code ACC_ABSTRACT} is on in the given
      * flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_ABSTRACT} flag
      */
@@ -255,7 +255,7 @@
     /**
      * Returns whether the flag {@code ACC_NATIVE} is on in the given
      * flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_NATIVE} flag
      */
@@ -266,7 +266,7 @@
     /**
      * Returns whether the flag {@code ACC_ANNOTATION} is on in the given
      * flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_ANNOTATION} flag
      */
@@ -277,7 +277,7 @@
     /**
      * Returns whether the flag {@code ACC_DECLARED_SYNCHRONIZED} is
      * on in the given flags.
-     * 
+     *
      * @param flags the flags to check
      * @return the value of the {@code ACC_DECLARED_SYNCHRONIZED} flag
      */
@@ -288,7 +288,7 @@
     /**
      * Helper to return a human-oriented string representing the given
      * access flags.
-     * 
+     *
      * @param flags the defined flags
      * @param mask mask for the "defined" bits
      * @param what what the flags represent (one of {@code CONV_*})
diff --git a/dx/src/com/android/dx/rop/code/BasicBlock.java b/dx/src/com/android/dx/rop/code/BasicBlock.java
index 7bb2d9b..d6ee886 100644
--- a/dx/src/com/android/dx/rop/code/BasicBlock.java
+++ b/dx/src/com/android/dx/rop/code/BasicBlock.java
@@ -33,20 +33,20 @@
 
     /**
      * {@code non-null;} full list of successors that this block may
-     * branch to 
+     * branch to
      */
     private final IntList successors;
 
     /**
      * {@code >= -1;} the primary / standard-flow / "default" successor, or
      * {@code -1} if this block has no successors (that is, it
-     * exits the function/method) 
+     * exits the function/method)
      */
     private final int primarySuccessor;
 
     /**
      * Constructs an instance. The predecessor set is set to {@code null}.
-     * 
+     *
      * @param label {@code >= 0;} target label for this block
      * @param insns {@code non-null;} list of instructions in this block
      * @param successors {@code non-null;} full list of successors that this
@@ -114,7 +114,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * Instances of this class compare by identity. That is,
      * {@code x.equals(y)} is only true if {@code x == y}.
      */
@@ -125,7 +125,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * Return the identity hashcode of this instance. This is proper,
      * since instances of this class compare by identity (see {@link #equals}).
      */
@@ -136,7 +136,7 @@
 
     /**
      * Gets the target label of this block.
-     * 
+     *
      * @return {@code >= 0;} the label
      */
     public int getLabel() {
@@ -145,7 +145,7 @@
 
     /**
      * Gets the list of instructions inside this block.
-     * 
+     *
      * @return {@code non-null;} the instruction list
      */
     public InsnList getInsns() {
@@ -154,7 +154,7 @@
 
     /**
      * Gets the list of successors that this block may branch to.
-     * 
+     *
      * @return {@code non-null;} the successors list
      */
     public IntList getSuccessors() {
@@ -163,7 +163,7 @@
 
     /**
      * Gets the primary successor of this block.
-     * 
+     *
      * @return {@code >= -1;} the primary successor, or {@code -1} if this
      * block has no successors at all
      */
@@ -174,7 +174,7 @@
     /**
      * Gets the secondary successor of this block. It is only valid to call
      * this method on blocks that have exactly two successors.
-     * 
+     *
      * @return {@code >= 0;} the secondary successor
      */
     public int getSecondarySuccessor() {
@@ -194,7 +194,7 @@
     /**
      * Gets the first instruction of this block. This is just a
      * convenient shorthand for {@code getInsns().get(0)}.
-     * 
+     *
      * @return {@code non-null;} the first instruction
      */
     public Insn getFirstInsn() {
@@ -204,7 +204,7 @@
     /**
      * Gets the last instruction of this block. This is just a
      * convenient shorthand for {@code getInsns().getLast()}.
-     * 
+     *
      * @return {@code non-null;} the last instruction
      */
     public Insn getLastInsn() {
@@ -214,7 +214,7 @@
     /**
      * Returns whether this block might throw an exception. This is
      * just a convenient shorthand for {@code getLastInsn().canThrow()}.
-     * 
+     *
      * @return {@code true} iff this block might throw an
      * exception
      */
@@ -227,7 +227,7 @@
      * This is just a shorthand for inspecting the last instruction in
      * the block to see if it could throw, and if so, whether it in fact
      * has any associated handlers.
-     * 
+     *
      * @return {@code true} iff this block has any associated
      * exception handlers
      */
@@ -255,7 +255,7 @@
      * Returns an instance that is identical to this one, except that
      * the registers in each instruction are offset by the given
      * amount.
-     * 
+     *
      * @param delta the amount to offset register numbers by
      * @return {@code non-null;} an appropriately-constructed instance
      */
diff --git a/dx/src/com/android/dx/rop/code/BasicBlockList.java b/dx/src/com/android/dx/rop/code/BasicBlockList.java
index 0627425..ea7b497 100644
--- a/dx/src/com/android/dx/rop/code/BasicBlockList.java
+++ b/dx/src/com/android/dx/rop/code/BasicBlockList.java
@@ -28,14 +28,14 @@
 public final class BasicBlockList extends LabeledList {
     /**
      * {@code >= -1;} the count of registers required by this method or
-     * {@code -1} if not yet calculated 
+     * {@code -1} if not yet calculated
      */
     private int regCount;
 
     /**
      * Constructs an instance. All indices initially contain {@code null},
      * and the first-block label is initially {@code -1}.
-     * 
+     *
      * @param size the size of the list
      */
     public BasicBlockList(int size) {
@@ -46,7 +46,7 @@
 
     /**
      * Constructs a mutable copy for {@code getMutableCopy()}.
-     * 
+     *
      * @param old block to copy
      */
     private BasicBlockList (BasicBlockList old) {
@@ -59,7 +59,7 @@
      * Gets the element at the given index. It is an error to call
      * this with the index for an element which was never set; if you
      * do that, this will throw {@code NullPointerException}.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @return {@code non-null;} element at that index
      */
@@ -69,13 +69,13 @@
 
     /**
      * Sets the basic block at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which index
      * @param bb {@code null-ok;} the element to set at {@code n}
      */
     public void set(int n, BasicBlock bb) {
         super.set(n, bb);
-        
+
         // Reset regCount, since it will need to be recalculated.
         regCount = -1;
     }
@@ -85,7 +85,7 @@
      * the maximum of register-number-plus-category referred to by this
      * instance's instructions (indirectly through {@link BasicBlock}
      * instances).
-     * 
+     *
      * @return {@code >= 0;} the register count
      */
     public int getRegCount() {
@@ -101,7 +101,7 @@
     /**
      * Gets the total instruction count for this instance. This is the
      * sum of the instruction counts of each block.
-     * 
+     *
      * @return {@code >= 0;} the total instruction count
      */
     public int getInstructionCount() {
@@ -168,7 +168,7 @@
 
     /**
      * Visits each instruction of each block in the list, in order.
-     * 
+     *
      * @param visitor {@code non-null;} visitor to use
      */
     public void forEachInsn(Insn.Visitor visitor) {
@@ -186,7 +186,7 @@
      * the registers in each instruction are offset by the given
      * amount. Mutability of the result is inherited from the
      * original.
-     * 
+     *
      * @param delta the amount to offset register numbers by
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -223,7 +223,7 @@
      * Otherwise, if the block has a primay successor, then that is
      * the preferred successor. If the block has no successors, then
      * this returns {@code null}.
-     * 
+     *
      * @param block {@code non-null;} the block in question
      * @return {@code null-ok;} the preferred successor, if any
      */
@@ -251,7 +251,7 @@
     /**
      * Compares the catches of two blocks for equality. This includes
      * both the catch types and target labels.
-     * 
+     *
      * @param block1 {@code non-null;} one block to compare
      * @param block2 {@code non-null;} the other block to compare
      * @return {@code true} if the two blocks' non-primary successors
@@ -283,7 +283,7 @@
              */
             return false;
         }
-            
+
         for (int i = 0; i < size; i++) {
             int label1 = succ1.get(i);
             int label2 = succ2.get(i);
@@ -325,7 +325,7 @@
 
         /**
          * Gets the register count.
-         * 
+         *
          * @return {@code >= 0;} the count
          */
         public int getRegCount() {
@@ -364,7 +364,7 @@
 
         /**
          * Helper for all the {@code visit*} methods.
-         * 
+         *
          * @param insn {@code non-null;} instruction being visited
          */
         private void visit(Insn insn) {
@@ -384,7 +384,7 @@
 
         /**
          * Processes the given register spec.
-         * 
+         *
          * @param spec {@code non-null;} the register spec
          */
         private void processReg(RegisterSpec spec) {
@@ -394,5 +394,5 @@
                 regCount = reg;
             }
         }
-    }    
+    }
 }
diff --git a/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java b/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java
index 1ecf02c..6c48acf 100644
--- a/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java
+++ b/dx/src/com/android/dx/rop/code/ConservativeTranslationAdvice.java
@@ -32,7 +32,7 @@
     private ConservativeTranslationAdvice() {
         // This space intentionally left blank.
     }
-    
+
     /** {@inheritDoc} */
     public boolean hasConstantOperation(Rop opcode,
             RegisterSpec sourceA, RegisterSpec sourceB) {
diff --git a/dx/src/com/android/dx/rop/code/CstInsn.java b/dx/src/com/android/dx/rop/code/CstInsn.java
index 26df1a9..d7de2f4 100644
--- a/dx/src/com/android/dx/rop/code/CstInsn.java
+++ b/dx/src/com/android/dx/rop/code/CstInsn.java
@@ -28,7 +28,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param opcode {@code non-null;} the opcode
      * @param position {@code non-null;} source position
      * @param result {@code null-ok;} spec for the result, if any
@@ -54,7 +54,7 @@
 
     /**
      * Gets the constant.
-     * 
+     *
      * @return {@code non-null;} the constant
      */
     public Constant getConstant() {
diff --git a/dx/src/com/android/dx/rop/code/Exceptions.java b/dx/src/com/android/dx/rop/code/Exceptions.java
index f99a760..1e27a8c 100644
--- a/dx/src/com/android/dx/rop/code/Exceptions.java
+++ b/dx/src/com/android/dx/rop/code/Exceptions.java
@@ -29,7 +29,7 @@
 
     /**
      * {@code non-null;} the type
-     * {@code java.lang.ArrayIndexOutOfBoundsException} 
+     * {@code java.lang.ArrayIndexOutOfBoundsException}
      */
     public static final Type TYPE_ArrayIndexOutOfBoundsException =
         Type.intern("Ljava/lang/ArrayIndexOutOfBoundsException;");
@@ -47,7 +47,7 @@
 
     /**
      * {@code non-null;} the type
-     * {@code java.lang.IllegalMonitorStateException} 
+     * {@code java.lang.IllegalMonitorStateException}
      */
     public static final Type TYPE_IllegalMonitorStateException =
         Type.intern("Ljava/lang/IllegalMonitorStateException;");
@@ -79,7 +79,7 @@
 
     /**
      * {@code non-null;} the list {@code [java.lang.Error,
-     * java.lang.NegativeArraySizeException]} 
+     * java.lang.NegativeArraySizeException]}
      */
     public static final StdTypeList LIST_Error_NegativeArraySizeException =
         StdTypeList.make(TYPE_Error, TYPE_NegativeArraySizeException);
diff --git a/dx/src/com/android/dx/rop/code/FillArrayDataInsn.java b/dx/src/com/android/dx/rop/code/FillArrayDataInsn.java
index 0fc7d2b..ed9345d 100644
--- a/dx/src/com/android/dx/rop/code/FillArrayDataInsn.java
+++ b/dx/src/com/android/dx/rop/code/FillArrayDataInsn.java
@@ -41,7 +41,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param opcode {@code non-null;} the opcode
      * @param position {@code non-null;} source position
      * @param sources {@code non-null;} specs for all the sources
diff --git a/dx/src/com/android/dx/rop/code/Insn.java b/dx/src/com/android/dx/rop/code/Insn.java
index 77ab9c0..dad2852 100644
--- a/dx/src/com/android/dx/rop/code/Insn.java
+++ b/dx/src/com/android/dx/rop/code/Insn.java
@@ -44,7 +44,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param opcode {@code non-null;} the opcode
      * @param position {@code non-null;} source position
      * @param result {@code null-ok;} spec for the result, if any
@@ -72,7 +72,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * Instances of this class compare by identity. That is,
      * {@code x.equals(y)} is only true if {@code x == y}.
      */
@@ -83,7 +83,7 @@
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * This implementation returns the identity hashcode of this
      * instance. This is proper, since instances of this class compare
      * by identity (see {@link #equals}).
@@ -101,7 +101,7 @@
 
     /**
      * Gets a human-oriented (and slightly lossy) string for this instance.
-     * 
+     *
      * @return {@code non-null;} the human string form
      */
     public String toHuman() {
@@ -111,7 +111,7 @@
     /**
      * Gets an "inline" string portion for toHuman(), if available. This
      * is the portion that appears after the Rop opcode
-     * 
+     *
      * @return {@code null-ok;} if non-null, the inline text for toHuman()
      */
     public String getInlineString() {
@@ -120,7 +120,7 @@
 
     /**
      * Gets the opcode.
-     * 
+     *
      * @return {@code non-null;} the opcode
      */
     public final Rop getOpcode() {
@@ -129,7 +129,7 @@
 
     /**
      * Gets the source position.
-     * 
+     *
      * @return {@code non-null;} the source position
      */
     public final SourcePosition getPosition() {
@@ -139,7 +139,7 @@
     /**
      * Gets the result spec, if any. A return value of {@code null}
      * means this instruction returns nothing.
-     * 
+     *
      * @return {@code null-ok;} the result spec, if any
      */
     public final RegisterSpec getResult() {
@@ -151,7 +151,7 @@
      * instruction, or null if no local variable assignment occurs. This
      * may be the result register, or for {@code mark-local} insns
      * it may be the source.
-     * 
+     *
      * @return {@code null-ok;} a named register spec or null
      */
     public final RegisterSpec getLocalAssignment() {
@@ -177,7 +177,7 @@
 
     /**
      * Gets the source specs.
-     * 
+     *
      * @return {@code non-null;} the source specs
      */
     public final RegisterSpecList getSources() {
@@ -187,7 +187,7 @@
     /**
      * Gets whether this instruction can possibly throw an exception. This
      * is just a convenient wrapper for {@code getOpcode().canThrow()}.
-     * 
+     *
      * @return {@code true} iff this instruction can possibly throw
      */
     public final boolean canThrow() {
@@ -201,7 +201,7 @@
      * throw or if it merely doesn't handle any of its possible
      * exceptions. To determine whether this instruction can throw,
      * use {@link #canThrow}.
-     * 
+     *
      * @return {@code non-null;} the catches list
      */
     public abstract TypeList getCatches();
@@ -209,7 +209,7 @@
     /**
      * Calls the appropriate method on the given visitor, depending on the
      * class of this instance. Subclasses must override this.
-     * 
+     *
      * @param visitor {@code non-null;} the visitor to call on
      */
     public abstract void accept(Visitor visitor);
@@ -220,7 +220,7 @@
      * method throws an exception if this instance can't possibly
      * throw. To determine whether this instruction can throw, use
      * {@link #canThrow}.
-     * 
+     *
      * @param type {@code non-null;} type to append to the catch list
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -229,7 +229,7 @@
     /**
      * Returns an instance that is just like this one, except that all
      * register references have been offset by the given delta.
-     * 
+     *
      * @param delta the amount to offset register references by
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -241,7 +241,7 @@
      * source (if it is a constant) is represented directly rather than
      * as a register reference. {@code this} is returned in cases where
      * the translation is not possible.
-     * 
+     *
      * @return {@code non-null;} an appropriately-constructed instance
      */
     public Insn withLastSourceLiteral() {
@@ -274,7 +274,7 @@
      * to be an identity compare. Insn's are {@code contentEquals()}
      * if they have the same opcode, registers, source position, and other
      * metadata.
-     * 
+     *
      * @return true in the case described above
      */
     public boolean contentEquals(Insn b) {
@@ -300,7 +300,7 @@
     /**
      * Returns the string form of this instance, with the given bit added in
      * the standard location for an inline argument.
-     * 
+     *
      * @param extra {@code null-ok;} the inline argument string
      * @return {@code non-null;} the string form
      */
@@ -333,7 +333,7 @@
     /**
      * Returns the human string form of this instance, with the given
      * bit added in the standard location for an inline argument.
-     * 
+     *
      * @param extra {@code null-ok;} the inline argument string
      * @return {@code non-null;} the human string form
      */
@@ -379,35 +379,35 @@
     public static interface Visitor {
         /**
          * Visits a {@link PlainInsn}.
-         * 
+         *
          * @param insn {@code non-null;} the instruction to visit
          */
         public void visitPlainInsn(PlainInsn insn);
 
         /**
          * Visits a {@link PlainCstInsn}.
-         * 
+         *
          * @param insn {@code non-null;} the instruction to visit
          */
         public void visitPlainCstInsn(PlainCstInsn insn);
 
         /**
          * Visits a {@link SwitchInsn}.
-         * 
+         *
          * @param insn {@code non-null;} the instruction to visit
          */
         public void visitSwitchInsn(SwitchInsn insn);
 
         /**
          * Visits a {@link ThrowingCstInsn}.
-         * 
+         *
          * @param insn {@code non-null;} the instruction to visit
          */
         public void visitThrowingCstInsn(ThrowingCstInsn insn);
 
         /**
          * Visits a {@link ThrowingInsn}.
-         * 
+         *
          * @param insn {@code non-null;} the instruction to visit
          */
         public void visitThrowingInsn(ThrowingInsn insn);
diff --git a/dx/src/com/android/dx/rop/code/InsnList.java b/dx/src/com/android/dx/rop/code/InsnList.java
index 493f7fc..88abd72 100644
--- a/dx/src/com/android/dx/rop/code/InsnList.java
+++ b/dx/src/com/android/dx/rop/code/InsnList.java
@@ -57,7 +57,7 @@
     /**
      * Gets the last instruction. This is just a convenient shorthand for
      * {@code get(size() - 1)}.
-     * 
+     *
      * @return {@code non-null;} the last instruction
      */
     public Insn getLast() {
@@ -91,7 +91,7 @@
         int sz = size();
 
         if (sz != b.size()) return false;
-        
+
         for (int i = 0; i < sz; i++) {
             if (!get(i).contentEquals(b.get(i))) {
                 return false;
@@ -106,7 +106,7 @@
      * the registers in each instruction are offset by the given
      * amount. Mutability of the result is inherited from the
      * original.
-     * 
+     *
      * @param delta the amount to offset register numbers by
      * @return {@code non-null;} an appropriately-constructed instance
      */
diff --git a/dx/src/com/android/dx/rop/code/LocalItem.java b/dx/src/com/android/dx/rop/code/LocalItem.java
index 7d6bebe..82b227c 100644
--- a/dx/src/com/android/dx/rop/code/LocalItem.java
+++ b/dx/src/com/android/dx/rop/code/LocalItem.java
@@ -68,7 +68,7 @@
         return 0 == compareTo(local);
     }
 
-    /** 
+    /**
      * Compares two strings like String.compareTo(), excepts treats a null
      * as the least-possible string value.
      *
diff --git a/dx/src/com/android/dx/rop/code/LocalVariableExtractor.java b/dx/src/com/android/dx/rop/code/LocalVariableExtractor.java
index db142c2..c2c4021 100644
--- a/dx/src/com/android/dx/rop/code/LocalVariableExtractor.java
+++ b/dx/src/com/android/dx/rop/code/LocalVariableExtractor.java
@@ -38,7 +38,7 @@
 
     /**
      * Extracts out all the local variable information from the given method.
-     * 
+     *
      * @param method {@code non-null;} the method to extract from
      * @return {@code non-null;} the extracted information
      */
@@ -49,7 +49,7 @@
 
     /**
      * Constructs an instance. This method is private. Use {@link #extract}.
-     * 
+     *
      * @param method {@code non-null;} the method to extract from
      */
     private LocalVariableExtractor(RopMethod method) {
@@ -68,7 +68,7 @@
 
     /**
      * Does the extraction.
-     * 
+     *
      * @return {@code non-null;} the extracted information
      */
     private LocalVariableInfo doit() {
@@ -78,14 +78,14 @@
             Bits.clear(workSet, label);
             processBlock(label);
         }
-        
+
         resultInfo.setImmutable();
         return resultInfo;
     }
 
     /**
      * Processes a single block.
-     * 
+     *
      * @param label {@code >= 0;} label of the block to process
      */
     private void processBlock(int label) {
@@ -158,7 +158,7 @@
                 if (previous != null
                         && (previous.getReg() != result.getReg())) {
 
-                    primaryState.remove(previous);                    
+                    primaryState.remove(previous);
                 }
 
                 resultInfo.addAssignment(insn, result);
diff --git a/dx/src/com/android/dx/rop/code/LocalVariableInfo.java b/dx/src/com/android/dx/rop/code/LocalVariableInfo.java
index fa5e7cc..99a10ee 100644
--- a/dx/src/com/android/dx/rop/code/LocalVariableInfo.java
+++ b/dx/src/com/android/dx/rop/code/LocalVariableInfo.java
@@ -33,14 +33,14 @@
     /**
      * {@code non-null;} {@link RegisterSpecSet} to use when indicating a block
      * that has no locals; it is empty and immutable but has an appropriate
-     * max size for the method 
+     * max size for the method
      */
     private final RegisterSpecSet emptySet;
 
     /**
      * {@code non-null;} array consisting of register sets representing the
      * sets of variables already assigned upon entry to each block,
-     * where array indices correspond to block labels 
+     * where array indices correspond to block labels
      */
     private final RegisterSpecSet[] blockStarts;
 
@@ -49,7 +49,7 @@
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param method {@code non-null;} the method being represented by this instance
      */
     public LocalVariableInfo(RopMethod method) {
@@ -72,7 +72,7 @@
     /**
      * Sets the register set associated with the start of the block with
      * the given label.
-     * 
+     *
      * @param label {@code >= 0;} the block label
      * @param specs {@code non-null;} the register set to associate with the block
      */
@@ -97,7 +97,7 @@
      * is the same as calling {@link #setStarts}. Otherwise, this will
      * merge the two sets and call {@link #setStarts} on the result of the
      * merge.
-     * 
+     *
      * @param label {@code >= 0;} the block label
      * @param specs {@code non-null;} the register set to merge into the start set
      * for the block
@@ -131,7 +131,7 @@
      * Gets the register set associated with the start of the block
      * with the given label. This returns an empty set with the appropriate
      * max size if no set was associated with the block in question.
-     * 
+     *
      * @param label {@code >= 0;} the block label
      * @return {@code non-null;} the associated register set
      */
@@ -145,7 +145,7 @@
      * Gets the register set associated with the start of the given
      * block. This is just convenient shorthand for
      * {@code getStarts(block.getLabel())}.
-     * 
+     *
      * @param block {@code non-null;} the block in question
      * @return {@code non-null;} the associated register set
      */
@@ -158,7 +158,7 @@
      * start of the block with the given label. This returns a
      * newly-allocated empty {@link RegisterSpecSet} of appropriate
      * max size if there is not yet any set associated with the block.
-     * 
+     *
      * @param label {@code >= 0;} the block label
      * @return {@code non-null;} the associated register set
      */
@@ -173,13 +173,13 @@
      * Adds an assignment association for the given instruction and
      * register spec. This throws an exception if the instruction
      * doesn't actually perform a named variable assignment.
-     * 
+     *
      * <b>Note:</b> Although the instruction contains its own spec for
      * the result, it still needs to be passed in explicitly to this
      * method, since the spec that is stored here should always have a
      * simple type and the one in the instruction can be an arbitrary
      * {@link TypeBearer} (such as a constant value).
-     * 
+     *
      * @param insn {@code non-null;} the instruction in question
      * @param spec {@code non-null;} the associated register spec
      */
@@ -200,7 +200,7 @@
     /**
      * Gets the named register being assigned by the given instruction, if
      * previously stored in this instance.
-     * 
+     *
      * @param insn {@code non-null;} instruction in question
      * @return {@code null-ok;} the named register being assigned, if any
      */
@@ -210,7 +210,7 @@
 
     /**
      * Gets the number of assignments recorded by this instance.
-     * 
+     *
      * @return {@code >= 0;} the number of assignments
      */
     public int getAssignmentCount() {
@@ -234,7 +234,7 @@
     /**
      * Helper method, to get the starts for a label, throwing the
      * right exception for range problems.
-     * 
+     *
      * @param label {@code >= 0;} the block label
      * @return {@code null-ok;} associated register set or {@code null} if there
      * is none
diff --git a/dx/src/com/android/dx/rop/code/PlainCstInsn.java b/dx/src/com/android/dx/rop/code/PlainCstInsn.java
index 7a3ac38..fffa76b 100644
--- a/dx/src/com/android/dx/rop/code/PlainCstInsn.java
+++ b/dx/src/com/android/dx/rop/code/PlainCstInsn.java
@@ -29,7 +29,7 @@
         extends CstInsn {
     /**
      * Constructs an instance.
-     * 
+     *
      * @param opcode {@code non-null;} the opcode
      * @param position {@code non-null;} source position
      * @param result {@code null-ok;} spec for the result, if any
diff --git a/dx/src/com/android/dx/rop/code/PlainInsn.java b/dx/src/com/android/dx/rop/code/PlainInsn.java
index d1db646..3fd2ba5 100644
--- a/dx/src/com/android/dx/rop/code/PlainInsn.java
+++ b/dx/src/com/android/dx/rop/code/PlainInsn.java
@@ -30,7 +30,7 @@
         extends Insn {
     /**
      * Constructs an instance.
-     * 
+     *
      * @param opcode {@code non-null;} the opcode
      * @param position {@code non-null;} source position
      * @param result {@code null-ok;} spec for the result, if any
@@ -50,13 +50,13 @@
         if (result != null && opcode.getBranchingness() != Rop.BRANCH_NONE) {
             // move-result-pseudo is required here
             throw new IllegalArgumentException
-                    ("can't mix branchingness with result");            
+                    ("can't mix branchingness with result");
         }
     }
 
     /**
      * Constructs a single-source instance.
-     * 
+     *
      * @param opcode {@code non-null;} the opcode
      * @param position {@code non-null;} source position
      * @param result {@code null-ok;} spec for the result, if any
diff --git a/dx/src/com/android/dx/rop/code/RegOps.java b/dx/src/com/android/dx/rop/code/RegOps.java
index 2084a69..bdf9342 100644
--- a/dx/src/com/android/dx/rop/code/RegOps.java
+++ b/dx/src/com/android/dx/rop/code/RegOps.java
@@ -20,7 +20,7 @@
 
 /**
  * All the register-based opcodes, and related utilities.
- * 
+ *
  * <p><b>Note:</b> Opcode descriptions use a rough pseudocode. {@code r}
  * is the result register, {@code x} is the first argument,
  * {@code y} is the second argument, and {@code z} is the
@@ -93,7 +93,7 @@
 
     /**
      * {@code T: any numeric type; r,x,y: T :: r = x % y}
-     * (Java-style remainder) 
+     * (Java-style remainder)
      */
     public static final int REM = 18;
 
@@ -116,13 +116,13 @@
 
     /**
      * {@code T: any integral type; r,x: T; y: int :: r = x >> y}
-     * (signed right-shift) 
+     * (signed right-shift)
      */
     public static final int SHR = 24;
 
     /**
      * {@code T: any integral type; r,x: T; y: int :: r = x >>> y}
-     * (unsigned right-shift) 
+     * (unsigned right-shift)
      */
     public static final int USHR = 25;
 
@@ -133,38 +133,38 @@
      * {@code T: any numeric type; r: int; x,y: T :: r = (x == y) ? 0
      * : (x > y) ? 1 : -1} (Java-style "cmpl" where a NaN is
      * considered "less than" all other values; also used for integral
-     * comparisons) 
+     * comparisons)
      */
     public static final int CMPL = 27;
 
     /**
      * {@code T: any floating point type; r: int; x,y: T :: r = (x == y) ? 0
      * : (x < y) ? -1 : 1} (Java-style "cmpg" where a NaN is
-     * considered "greater than" all other values) 
+     * considered "greater than" all other values)
      */
     public static final int CMPG = 28;
 
     /**
      * {@code T: any numeric type; U: any numeric type; r: T; x: U ::
      * r = (T) x} (numeric type conversion between the four
-     * "real" numeric types) 
+     * "real" numeric types)
      */
     public static final int CONV = 29;
 
     /**
      * {@code r,x: int :: r = (x << 24) >> 24} (Java-style
-     * convert int to byte) 
+     * convert int to byte)
      */
     public static final int TO_BYTE = 30;
 
     /**
-     * {@code r,x: int :: r = x & 0xffff} (Java-style convert int to char) 
+     * {@code r,x: int :: r = x & 0xffff} (Java-style convert int to char)
      */
     public static final int TO_CHAR = 31;
 
     /**
      * {@code r,x: int :: r = (x << 16) >> 16} (Java-style
-     * convert int to short) 
+     * convert int to short)
      */
     public static final int TO_SHORT = 32;
 
@@ -191,7 +191,7 @@
 
     /**
      * {@code T: any non-array object type :: r =
-     * alloc(T)} (allocate heap space for an object) 
+     * alloc(T)} (allocate heap space for an object)
      */
     public static final int NEW_INSTANCE = 40;
 
@@ -206,7 +206,7 @@
 
     /**
      * {@code T: any object type; x: Object :: (T) x} (can
-     * throw {@code ClassCastException}) 
+     * throw {@code ClassCastException})
      */
     public static final int CHECK_CAST = 43;
 
@@ -223,13 +223,13 @@
 
     /**
      * {@code T: any type; r: T; f: static field spec of type T :: r =
-     * f} 
+     * f}
      */
     public static final int GET_STATIC = 46;
 
     /**
      * {@code T: any type; x: T; y: Object; f: instance field spec of type
-     * T :: y.f = x} 
+     * T :: y.f = x}
      */
     public static final int PUT_FIELD = 47;
 
@@ -241,35 +241,35 @@
     /**
      * {@code Tr, T0, T1...: any types; r: Tr; m: static method spec;
      * y0: T0; y1: T1 ... :: r = m(y0, y1, ...)} (call static
-     * method) 
+     * method)
      */
     public static final int INVOKE_STATIC = 49;
 
     /**
      * {@code Tr, T0, T1...: any types; r: Tr; x: Object; m: instance method
      * spec; y0: T0; y1: T1 ... :: r = x.m(y0, y1, ...)} (call normal
-     * virtual method) 
+     * virtual method)
      */
     public static final int INVOKE_VIRTUAL = 50;
 
     /**
      * {@code Tr, T0, T1...: any types; r: Tr; x: Object; m: instance method
      * spec; y0: T0; y1: T1 ... :: r = x.m(y0, y1, ...)} (call
-     * superclass virtual method) 
+     * superclass virtual method)
      */
     public static final int INVOKE_SUPER = 51;
 
     /**
      * {@code Tr, T0, T1...: any types; r: Tr; x: Object; m: instance method
      * spec; y0: T0; y1: T1 ... :: r = x.m(y0, y1, ...)} (call
-     * direct/special method) 
+     * direct/special method)
      */
     public static final int INVOKE_DIRECT = 52;
 
     /**
      * {@code Tr, T0, T1...: any types; r: Tr; x: Object; m: interface
      * (instance) method spec; y0: T0; y1: T1 ... :: r = x.m(y0, y1,
-     * ...)} (call interface method) 
+     * ...)} (call interface method)
      */
     public static final int INVOKE_INTERFACE = 53;
 
@@ -305,7 +305,7 @@
 
     /**
      * Gets the name of the given opcode.
-     * 
+     *
      * @param opcode {@code >= 0, <= 255;} the opcode
      * @return {@code non-null;} its name
      */
diff --git a/dx/src/com/android/dx/rop/code/RegisterSpec.java b/dx/src/com/android/dx/rop/code/RegisterSpec.java
index 1f14767..f1ac563 100644
--- a/dx/src/com/android/dx/rop/code/RegisterSpec.java
+++ b/dx/src/com/android/dx/rop/code/RegisterSpec.java
@@ -76,7 +76,7 @@
      * Returns an instance for the given register number and type, with
      * no variable info. This method is allowed to return shared
      * instances (but doesn't necessarily do so).
-     * 
+     *
      * @param reg {@code >= 0;} the register number
      * @param type {@code non-null;} the type (or possibly actual value) which
      * is loaded from or stored to the indicated register
@@ -126,7 +126,7 @@
 
     /**
      * Gets the string form for the given register number.
-     * 
+     *
      * @param reg {@code >= 0;} the register number
      * @return {@code non-null;} the string form
      */
@@ -137,7 +137,7 @@
     /**
      * Constructs an instance. This constructor is private. Use
      * {@link #make}.
-     * 
+     *
      * @param reg {@code >= 0;} the register number
      * @param type {@code non-null;} the type (or possibly actual value) which
      * is loaded from or stored to the indicated register
@@ -177,7 +177,7 @@
      * registers. That is, this compares {@code getType()} on the types
      * to ignore whatever arbitrary extra stuff might be carried around
      * by an outer {@link TypeBearer}.
-     * 
+     *
      * @param other {@code null-ok;} spec to compare to
      * @return {@code true} iff {@code this} and {@code other} are equal
      * in the stated way
@@ -194,7 +194,7 @@
      * Like {@link #equalsUsingSimpleType} but ignoring the register number.
      * This is useful to determine if two instances refer to the "same"
      * local variable.
-     * 
+     *
      * @param other {@code null-ok;} spec to compare to
      * @return {@code true} iff {@code this} and {@code other} are equal
      * in the stated way
@@ -212,7 +212,7 @@
     /**
      * Helper for {@link #equals} and {@link #ForComparison.equals},
      * which actually does the test.
-     * 
+     *
      * @param reg value of the instance variable, for another instance
      * @param type value of the instance variable, for another instance
      * @param local value of the instance variable, for another instance
@@ -229,7 +229,7 @@
     /**
      * Compares by (in priority order) register number, unwrapped type
      * (that is types not {@link TypeBearer}s, and local info.
-     * 
+     *
      * @param other {@code non-null;} spec to compare to
      * @return {@code -1..1;} standard result of comparison
      */
@@ -253,7 +253,7 @@
         }
 
         return this.local.compareTo(other.local);
-    }    
+    }
 
     /** {@inheritDoc} */
     @Override
@@ -264,7 +264,7 @@
     /**
      * Helper for {@link #hashCode} and {@link #ForComparison.hashCode},
      * which actually does the calculation.
-     * 
+     *
      * @param reg value of the instance variable
      * @param type value of the instance variable
      * @param local value of the instance variable
@@ -315,7 +315,7 @@
 
     /**
      * Gets the register number.
-     * 
+     *
      * @return {@code >= 0;} the register number
      */
     public int getReg() {
@@ -325,7 +325,7 @@
     /**
      * Gets the type (or actual value) which is loaded from or stored
      * to the register associated with this instance.
-     * 
+     *
      * @return {@code non-null;} the type
      */
     public TypeBearer getTypeBearer() {
@@ -348,7 +348,7 @@
      * (category) of the type used. Among other things, this may also
      * be used to determine the minimum required register count
      * implied by this instance.
-     * 
+     *
      * @return {@code >= 0;} the required registers size
      */
     public int getNextReg() {
@@ -358,7 +358,7 @@
     /**
      * Gets the category of this instance's type. This is just a convenient
      * shorthand for {@code getType().getCategory()}.
-     * 
+     *
      * @see #isCategory1
      * @see #isCategory2
      * @return {@code 1..2;} the category of this instance's type
@@ -370,7 +370,7 @@
     /**
      * Gets whether this instance's type is category 1. This is just a
      * convenient shorthand for {@code getType().isCategory1()}.
-     * 
+     *
      * @see #getCategory
      * @see #isCategory2
      * @return whether or not this instance's type is of category 1
@@ -382,7 +382,7 @@
     /**
      * Gets whether this instance's type is category 2. This is just a
      * convenient shorthand for {@code getType().isCategory2()}.
-     * 
+     *
      * @see #getCategory
      * @see #isCategory1
      * @return whether or not this instance's type is of category 2
@@ -393,7 +393,7 @@
 
     /**
      * Gets the string form for just the register number of this instance.
-     * 
+     *
      * @return {@code non-null;} the register string form
      */
     public String regString() {
@@ -403,7 +403,7 @@
     /**
      * Returns an instance that is the intersection between this instance
      * and the given one, if any. The intersection is defined as follows:
-     * 
+     *
      * <ul>
      *   <li>If {@code other} is {@code null}, then the result
      *     is {@code null}.
@@ -420,7 +420,7 @@
      *     of the intersection is the local info of this instance. Otherwise,
      *     the local info of the intersection is {@code null}.</li>
      * </ul>
-     * 
+     *
      * @param other {@code null-ok;} instance to intersect with (or {@code null})
      * @param localPrimary whether local variables are primary to the
      * intersection; if {@code true}, then the only non-null
@@ -470,7 +470,7 @@
     /**
      * Returns an instance that is identical to this one, except that the
      * register number is replaced by the given one.
-     * 
+     *
      * @param newReg {@code >= 0;} the new register number
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -496,7 +496,7 @@
     /**
      * Returns an instance that is identical to this one, except that the
      * register number is offset by the given amount.
-     * 
+     *
      * @param delta the amount to offset the register number by
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -507,13 +507,13 @@
 
         return withReg(reg + delta);
     }
-    
+
     /**
      * Returns an instance that is identical to this one, except that
      * the type bearer is replaced by the actual underlying type
      * (thereby stripping off non-type information) with any
      * initialization information stripped away as well.
-     * 
+     *
      * @return {@code non-null;} an appropriately-constructed instance
      */
     public RegisterSpec withSimpleType() {
@@ -557,7 +557,7 @@
 
     /**
      * Helper for {@link #toString} and {@link #toHuman}.
-     * 
+     *
      * @param human whether to be human-oriented
      * @return {@code non-null;} the string form
      */
@@ -594,7 +594,7 @@
     private static class ForComparison {
         /** {@code >= 0;} register number */
         private int reg;
-        
+
         /** {@code non-null;} type loaded or stored */
         private TypeBearer type;
 
@@ -606,7 +606,7 @@
 
         /**
          * Set all the instance variables.
-         * 
+         *
          * @param reg {@code >= 0;} the register number
          * @param type {@code non-null;} the type (or possibly actual
          * value) which is loaded from or stored to the indicated
@@ -623,7 +623,7 @@
         /**
          * Construct a {@code RegisterSpec} of this instance's
          * contents.
-         * 
+         *
          * @return {@code non-null;} an appropriately-constructed instance
          */
         public RegisterSpec toRegisterSpec() {
diff --git a/dx/src/com/android/dx/rop/code/RegisterSpecList.java b/dx/src/com/android/dx/rop/code/RegisterSpecList.java
index 5a02a8d..e900787 100644
--- a/dx/src/com/android/dx/rop/code/RegisterSpecList.java
+++ b/dx/src/com/android/dx/rop/code/RegisterSpecList.java
@@ -30,7 +30,7 @@
 
     /**
      * Makes a single-element instance.
-     * 
+     *
      * @param spec {@code non-null;} the element
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -42,7 +42,7 @@
 
     /**
      * Makes a two-element instance.
-     * 
+     *
      * @param spec0 {@code non-null;} the first element
      * @param spec1 {@code non-null;} the second element
      * @return {@code non-null;} an appropriately-constructed instance
@@ -57,7 +57,7 @@
 
     /**
      * Makes a three-element instance.
-     * 
+     *
      * @param spec0 {@code non-null;} the first element
      * @param spec1 {@code non-null;} the second element
      * @param spec2 {@code non-null;} the third element
@@ -74,7 +74,7 @@
 
     /**
      * Makes a four-element instance.
-     * 
+     *
      * @param spec0 {@code non-null;} the first element
      * @param spec1 {@code non-null;} the second element
      * @param spec2 {@code non-null;} the third element
@@ -94,7 +94,7 @@
 
     /**
      * Constructs an instance. All indices initially contain {@code null}.
-     * 
+     *
      * @param size the size of the list
      */
     public RegisterSpecList(int size) {
@@ -122,12 +122,12 @@
     public TypeList withAddedType(Type type) {
         throw new UnsupportedOperationException("unsupported");
     }
-    
+
     /**
      * Gets the indicated element. It is an error to call this with the
      * index for an element which was never set; if you do that, this
      * will throw {@code NullPointerException}.
-     * 
+     *
      * @param n {@code >= 0, < size();} which element
      * @return {@code non-null;} the indicated element
      */
@@ -174,12 +174,12 @@
             }
         }
 
-        return -1;        
+        return -1;
     }
-    
+
     /**
      * Sets the element at the given index.
-     * 
+     *
      * @param n {@code >= 0, < size();} which element
      * @param spec {@code non-null;} the value to store
      */
@@ -192,7 +192,7 @@
      * instance. This is equal to the highest register number referred
      * to plus the widest width (largest category) of the type used in
      * that register.
-     * 
+     *
      * @return {@code >= 0;} the required registers size
      */
     public int getRegistersSize() {
@@ -216,7 +216,7 @@
      * Returns a new instance, which is the same as this instance,
      * except that it has an additional element prepended to the original.
      * Mutability of the result is inherited from the original.
-     * 
+     *
      * @param spec {@code non-null;} the new first spec (to prepend)
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -240,7 +240,7 @@
      * Returns a new instance, which is the same as this instance,
      * except that its first element is removed. Mutability of the
      * result is inherited from the original.
-     * 
+     *
      * @return {@code non-null;} an appropriately-constructed instance
      */
     public RegisterSpecList withoutFirst() {
@@ -267,7 +267,7 @@
      * Returns a new instance, which is the same as this instance,
      * except that its last element is removed. Mutability of the
      * result is inherited from the original.
-     * 
+     *
      * @return {@code non-null;} an appropriately-constructed instance
      */
     public RegisterSpecList withoutLast() {
@@ -294,7 +294,7 @@
      * Returns an instance that is identical to this one, except that
      * all register numbers are offset by the given amount. Mutability
      * of the result is inherited from the original.
-     * 
+     *
      * @param delta the amount to offset the register numbers by
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -325,8 +325,8 @@
     /**
      * Returns an instance that is identical to this one, except that
      * all register numbers are renumbered sequentially from the given
-     * base, with the first number duplicated if indicated. 
-     * 
+     * base, with the first number duplicated if indicated.
+     *
      * @param base the base register number
      * @param duplicateFirst whether to duplicate the first number
      * @return {@code non-null;} an appropriately-constructed instance
diff --git a/dx/src/com/android/dx/rop/code/RegisterSpecSet.java b/dx/src/com/android/dx/rop/code/RegisterSpecSet.java
index 68009d9..d16a82a 100644
--- a/dx/src/com/android/dx/rop/code/RegisterSpecSet.java
+++ b/dx/src/com/android/dx/rop/code/RegisterSpecSet.java
@@ -31,7 +31,7 @@
     /**
      * {@code non-null;} array of register specs, where each element is
      * {@code null} or is an instance whose {@code reg}
-     * matches the array index 
+     * matches the array index
      */
     private final RegisterSpec[] specs;
 
@@ -40,7 +40,7 @@
 
     /**
      * Constructs an instance. The instance is initially empty.
-     * 
+     *
      * @param maxSize {@code >= 0;} the maximum register number (exclusive) that
      * may be represented in this instance
      */
@@ -120,13 +120,13 @@
 
         sb.append('}');
         return sb.toString();
-    }       
+    }
 
     /**
      * Gets the maximum number of registers that may be in this instance, which
      * is also the maximum-plus-one of register numbers that may be
      * represented.
-     * 
+     *
      * @return {@code >= 0;} the maximum size
      */
     public int getMaxSize() {
@@ -135,7 +135,7 @@
 
     /**
      * Gets the current size of this instance.
-     * 
+     *
      * @return {@code >= 0;} the size
      */
     public int size() {
@@ -159,7 +159,7 @@
 
     /**
      * Gets the element with the given register number, if any.
-     * 
+     *
      * @param reg {@code >= 0;} the desired register number
      * @return {@code null-ok;} the element with the given register number or
      * {@code null} if there is none
@@ -177,7 +177,7 @@
      * Gets the element with the same register number as the given
      * spec, if any. This is just a convenient shorthand for
      * {@code get(spec.getReg())}.
-     * 
+     *
      * @param spec {@code non-null;} spec with the desired register number
      * @return {@code null-ok;} the element with the matching register number or
      * {@code null} if there is none
@@ -191,13 +191,13 @@
      * given local (type, name, and signature), or {@code null} if there is
      * none. This ignores the register number of the given spec but
      * matches on everything else.
-     * 
+     *
      * @param spec {@code non-null;} local to look for
      * @return {@code null-ok;} first register found that matches, if any
      */
     public RegisterSpec findMatchingLocal(RegisterSpec spec) {
         int length = specs.length;
-        
+
         for (int reg = 0; reg < length; reg++) {
             RegisterSpec s = specs[reg];
 
@@ -222,10 +222,10 @@
      */
     public RegisterSpec localItemToSpec(LocalItem local) {
         int length = specs.length;
-        
+
         for (int reg = 0; reg < length; reg++) {
             RegisterSpec spec = specs[reg];
-            
+
             if ((spec != null) && local.equals(spec.getLocalItem())) {
                 return spec;
             }
@@ -257,7 +257,7 @@
      * previous element is nullified. Finally, if the given spec is for
      * a category-2 register, then the immediately subsequent element
      * is nullified.
-     * 
+     *
      * @param spec {@code non-null;} the register spec to put in the instance
      */
     public void put(RegisterSpec spec) {
@@ -292,7 +292,7 @@
 
     /**
      * Put the entire contents of the given set into this one.
-     * 
+     *
      * @param set {@code non-null;} the set to put into this instance
      */
     public void putAll(RegisterSpecSet set) {
@@ -311,7 +311,7 @@
      * instance. The intersection consists of the pairwise
      * {@link RegisterSpec#intersect} of corresponding elements from
      * this instance and the given one where both are non-null.
-     * 
+     *
      * @param other {@code non-null;} set to intersect with
      * @param localPrimary whether local variables are primary to
      * the intersection; if {@code true}, then the only non-null
@@ -350,7 +350,7 @@
      * Returns an instance that is identical to this one, except that
      * all register numbers are offset by the given amount. Mutability
      * of the result is inherited from the original.
-     * 
+     *
      * @param delta the amount to offset the register numbers by
      * @return {@code non-null;} an appropriately-constructed instance
      */
@@ -376,7 +376,7 @@
 
     /**
      * Makes and return a mutable copy of this instance.
-     * 
+     *
      * @return {@code non-null;} the mutable copy
      */
     public RegisterSpecSet mutableCopy() {
diff --git a/dx/src/com/android/dx/rop/code/Rop.java b/dx/src/com/android/dx/rop/code/Rop.java
index fbd9a16..8224584 100644
--- a/dx/src/com/android/dx/rop/code/Rop.java
+++ b/dx/src/com/android/dx/rop/code/Rop.java
@@ -54,7 +54,7 @@
 
     /**
      * {@code non-null;} result type of this operation; {@link Type#VOID} for
-     * no-result operations 
+     * no-result operations
      */
     private final Type result;
 
@@ -66,7 +66,7 @@
 
     /**
      * the branchingness of this op; one of the {@code BRANCH_*}
-     * constants in this class 
+     * constants in this class
      */
     private final int branchingness;
 
@@ -79,7 +79,7 @@
     /**
      * Constructs an instance. This method is private. Use one of the
      * public constructors.
-     * 
+     *
      * @param opcode the opcode; one of the constants in {@link RegOps}
      * @param result {@code non-null;} result type of this operation; {@link
      * Type#VOID} for no-result operations
@@ -125,9 +125,9 @@
     }
 
     /**
-     * Constructs an instance. The constructed instance is never a 
+     * Constructs an instance. The constructed instance is never a
      * call-like op (see {@link #isCallLike}).
-     * 
+     *
      * @param opcode the opcode; one of the constants in {@link RegOps}
      * @param result {@code non-null;} result type of this operation; {@link
      * Type#VOID} for no-result operations
@@ -145,9 +145,9 @@
     }
 
     /**
-     * Constructs a no-exception instance. The constructed instance is never a 
+     * Constructs a no-exception instance. The constructed instance is never a
      * call-like op (see {@link #isCallLike}).
-     * 
+     *
      * @param opcode the opcode; one of the constants in {@link RegOps}
      * @param result {@code non-null;} result type of this operation; {@link
      * Type#VOID} for no-result operations
@@ -166,7 +166,7 @@
      * Constructs a non-branching no-exception instance. The
      * {@code branchingness} is always {@code BRANCH_NONE},
      * and it is never a call-like op (see {@link #isCallLike}).
-     * 
+     *
      * @param opcode the opcode; one of the constants in {@link RegOps}
      * @param result {@code non-null;} result type of this operation; {@link
      * Type#VOID} for no-result operations
@@ -182,7 +182,7 @@
      * Constructs a non-empty exceptions instance. Its
      * {@code branchingness} is always {@code BRANCH_THROW},
      * but it is never a call-like op (see {@link #isCallLike}).
-     * 
+     *
      * @param opcode the opcode; one of the constants in {@link RegOps}
      * @param result {@code non-null;} result type of this operation; {@link
      * Type#VOID} for no-result operations
@@ -201,7 +201,7 @@
      * Constructs a non-nicknamed instance with non-empty exceptions, which
      * is always a call-like op (see {@link #isCallLike}). Its
      * {@code branchingness} is always {@code BRANCH_THROW}.
-     * 
+     *
      * @param opcode the opcode; one of the constants in {@link RegOps}
      * @param sources {@code non-null;} types of all the sources of this operation
      * @param exceptions {@code non-null;} list of possible types thrown by this
@@ -306,7 +306,7 @@
 
     /**
      * Gets the opcode.
-     * 
+     *
      * @return the opcode
      */
     public int getOpcode() {
@@ -316,7 +316,7 @@
     /**
      * Gets the result type. A return value of {@link Type#VOID}
      * means this operation returns nothing.
-     * 
+     *
      * @return {@code null-ok;} the result spec
      */
     public Type getResult() {
@@ -325,7 +325,7 @@
 
     /**
      * Gets the source types.
-     * 
+     *
      * @return {@code non-null;} the source types
      */
     public TypeList getSources() {
@@ -334,7 +334,7 @@
 
     /**
      * Gets the list of exception types that might be thrown.
-     * 
+     *
      * @return {@code non-null;} the list of exception types
      */
     public TypeList getExceptions() {
@@ -343,7 +343,7 @@
 
     /**
      * Gets the branchingness of this instance.
-     * 
+     *
      * @return the branchingness
      */
     public int getBranchingness() {
@@ -352,7 +352,7 @@
 
     /**
      * Gets whether this opcode is a function/method call or similar.
-     * 
+     *
      * @return {@code true} iff this opcode is call-like
      */
     public boolean isCallLike() {
@@ -383,7 +383,7 @@
     /**
      * Gets the nickname. If this instance has no nickname, this returns
      * the result of calling {@link #toString}.
-     * 
+     *
      * @return {@code non-null;} the nickname
      */
     public String getNickname() {
@@ -398,7 +398,7 @@
      * Gets whether this operation can possibly throw an exception. This
      * is just a convenient wrapper for
      * {@code getExceptions().size() != 0}.
-     * 
+     *
      * @return {@code true} iff this operation can possibly throw
      */
     public final boolean canThrow() {
diff --git a/dx/src/com/android/dx/rop/code/RopMethod.java b/dx/src/com/android/dx/rop/code/RopMethod.java
index 3957532..591d325 100644
--- a/dx/src/com/android/dx/rop/code/RopMethod.java
+++ b/dx/src/com/android/dx/rop/code/RopMethod.java
@@ -32,19 +32,19 @@
 
     /**
      * {@code null-ok;} array of predecessors for each block, indexed by block
-     * label 
+     * label
      */
     private IntList[] predecessors;
 
     /**
      * {@code null-ok;} the predecessors for the implicit "exit" block, that is
-     * the labels for the blocks that return, if calculated 
+     * the labels for the blocks that return, if calculated
      */
     private IntList exitPredecessors;
 
     /**
      * Constructs an instance.
-     * 
+     *
      * @param blocks {@code non-null;} basic block list of the method
      * @param firstLabel {@code >= 0;} the label of the first block to execute
      */
@@ -66,7 +66,7 @@
 
     /**
      * Gets the basic block list for this method.
-     * 
+     *
      * @return {@code non-null;} the list
      */
     public BasicBlockList getBlocks() {
@@ -76,7 +76,7 @@
     /**
      * Gets the label for the first block in the method that this list
      * represents.
-     * 
+     *
      * @return {@code >= 0;} the first-block label
      */
     public int getFirstLabel() {
@@ -86,7 +86,7 @@
     /**
      * Gets the predecessors associated with the given block. This throws
      * an exception if there is no block with the given label.
-     * 
+     *
      * @param label {@code >= 0;} the label of the block in question
      * @return {@code non-null;} the predecessors of that block
      */
@@ -106,7 +106,7 @@
 
     /**
      * Gets the exit predecessors for this instance.
-     * 
+     *
      * @return {@code non-null;} the exit predecessors
      */
     public IntList getExitPredecessors() {
@@ -122,7 +122,7 @@
      * Returns an instance that is identical to this one, except that
      * the registers in each instruction are offset by the given
      * amount.
-     * 
+     *
      * @param delta the amount to offset register numbers by
      * @return {@code non-null;} an appropriately-constructed instance
      */
diff --git a/dx/src/com/android/dx/rop/code/Rops.java b/dx/src/com/android/dx/rop/code/Rops.java
index 15c2e17..9085ff4 100644
--- a/dx/src/com/android/dx/rop/code/Rops.java
+++ b/dx/src/com/android/dx/rop/code/Rops.java
@@ -201,7 +201,7 @@
                 Rop.BRANCH_IF, "if-ne-object");
 
     /** {@code x: int :: goto switchtable[x]} */
-    public static final Rop SWITCH = 
+    public static final Rop SWITCH =
         new Rop(RegOps.SWITCH, Type.VOID, StdTypeList.INT, Rop.BRANCH_SWITCH,
                 "switch");
 
@@ -575,21 +575,21 @@
 
     /**
      * {@code r,x: int :: r = (x << 24) >> 24} (Java-style
-     * convert int to byte) 
+     * convert int to byte)
      */
-    public static final Rop TO_BYTE = 
+    public static final Rop TO_BYTE =
         new Rop(RegOps.TO_BYTE, Type.INT, StdTypeList.INT, "to-byte");
 
     /**
      * {@code r,x: int :: r = x & 0xffff} (Java-style
-     * convert int to char) 
+     * convert int to char)
      */
     public static final Rop TO_CHAR =
         new Rop(RegOps.TO_CHAR, Type.INT, StdTypeList.INT, "to-char");
 
     /**
      * {@code r,x: int :: r = (x << 16) >> 16} (Java-style
-     * convert int to short) 
+     * convert int to short)
      */
     public static final Rop TO_SHORT =
         new Rop(RegOps.TO_SHORT, Type.INT, StdTypeList.INT, "to-short");
@@ -646,110 +646,110 @@
                 "monitor-exit");
 
     /** {@code r,y: int; x: int[] :: r = x[y]} */
-    public static final Rop AGET_INT = 
+    public static final Rop AGET_INT =
         new Rop(RegOps.AGET, Type.INT, StdTypeList.INTARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aget-int");
 
     /** {@code r: long; x: long[]; y: int :: r = x[y]} */
-    public static final Rop AGET_LONG = 
+    public static final Rop AGET_LONG =
         new Rop(RegOps.AGET, Type.LONG, StdTypeList.LONGARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aget-long");
 
     /** {@code r: float; x: float[]; y: int :: r = x[y]} */
-    public static final Rop AGET_FLOAT = 
+    public static final Rop AGET_FLOAT =
         new Rop(RegOps.AGET, Type.FLOAT, StdTypeList.FLOATARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aget-float");
 
     /** {@code r: double; x: double[]; y: int :: r = x[y]} */
-    public static final Rop AGET_DOUBLE = 
+    public static final Rop AGET_DOUBLE =
         new Rop(RegOps.AGET, Type.DOUBLE, StdTypeList.DOUBLEARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aget-double");
 
     /** {@code r: Object; x: Object[]; y: int :: r = x[y]} */
-    public static final Rop AGET_OBJECT = 
+    public static final Rop AGET_OBJECT =
         new Rop(RegOps.AGET, Type.OBJECT, StdTypeList.OBJECTARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aget-object");
 
     /** {@code r: boolean; x: boolean[]; y: int :: r = x[y]} */
-    public static final Rop AGET_BOOLEAN = 
+    public static final Rop AGET_BOOLEAN =
         new Rop(RegOps.AGET, Type.INT, StdTypeList.BOOLEANARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aget-boolean");
 
     /** {@code r: byte; x: byte[]; y: int :: r = x[y]} */
-    public static final Rop AGET_BYTE = 
+    public static final Rop AGET_BYTE =
         new Rop(RegOps.AGET, Type.INT, StdTypeList.BYTEARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds, "aget-byte");
 
     /** {@code r: char; x: char[]; y: int :: r = x[y]} */
-    public static final Rop AGET_CHAR = 
+    public static final Rop AGET_CHAR =
         new Rop(RegOps.AGET, Type.INT, StdTypeList.CHARARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds, "aget-char");
 
     /** {@code r: short; x: short[]; y: int :: r = x[y]} */
-    public static final Rop AGET_SHORT = 
+    public static final Rop AGET_SHORT =
         new Rop(RegOps.AGET, Type.INT, StdTypeList.SHORTARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aget-short");
 
     /** {@code x,z: int; y: int[] :: y[z] = x} */
-    public static final Rop APUT_INT = 
+    public static final Rop APUT_INT =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.INT_INTARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds, "aput-int");
 
     /** {@code x: long; y: long[]; z: int :: y[z] = x} */
-    public static final Rop APUT_LONG = 
+    public static final Rop APUT_LONG =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.LONG_LONGARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds, "aput-long");
 
     /** {@code x: float; y: float[]; z: int :: y[z] = x} */
-    public static final Rop APUT_FLOAT = 
+    public static final Rop APUT_FLOAT =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.FLOAT_FLOATARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aput-float");
 
     /** {@code x: double; y: double[]; z: int :: y[z] = x} */
-    public static final Rop APUT_DOUBLE = 
+    public static final Rop APUT_DOUBLE =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.DOUBLE_DOUBLEARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndexOutOfBounds,
                 "aput-double");
 
     /** {@code x: Object; y: Object[]; z: int :: y[z] = x} */
-    public static final Rop APUT_OBJECT = 
+    public static final Rop APUT_OBJECT =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.OBJECT_OBJECTARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndex_ArrayStore,
                 "aput-object");
 
     /** {@code x: boolean; y: boolean[]; z: int :: y[z] = x} */
-    public static final Rop APUT_BOOLEAN = 
+    public static final Rop APUT_BOOLEAN =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.INT_BOOLEANARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndex_ArrayStore,
                 "aput-boolean");
 
     /** {@code x: byte; y: byte[]; z: int :: y[z] = x} */
-    public static final Rop APUT_BYTE = 
+    public static final Rop APUT_BYTE =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.INT_BYTEARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndex_ArrayStore, "aput-byte");
 
     /** {@code x: char; y: char[]; z: int :: y[z] = x} */
-    public static final Rop APUT_CHAR = 
+    public static final Rop APUT_CHAR =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.INT_CHARARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndex_ArrayStore, "aput-char");
 
     /** {@code x: short; y: short[]; z: int :: y[z] = x} */
-    public static final Rop APUT_SHORT = 
+    public static final Rop APUT_SHORT =
         new Rop(RegOps.APUT, Type.VOID, StdTypeList.INT_SHORTARR_INT,
                 Exceptions.LIST_Error_Null_ArrayIndex_ArrayStore,
                 "aput-short");
 
     /**
      * {@code T: any non-array object type :: r =
-     * alloc(T)} (allocate heap space for an object) 
+     * alloc(T)} (allocate heap space for an object)
      */
     public static final Rop NEW_INSTANCE =
         new Rop(RegOps.NEW_INSTANCE, Type.OBJECT, StdTypeList.EMPTY,
@@ -805,9 +805,9 @@
 
     /**
      * {@code T: any non-array object type; x: Object :: (T) x} (can
-     * throw {@code ClassCastException}) 
+     * throw {@code ClassCastException})
      */
-    public static final Rop CHECK_CAST = 
+    public static final Rop CHECK_CAST =
         new Rop(RegOps.CHECK_CAST, Type.VOID, StdTypeList.OBJECT,
                 Exceptions.LIST_Error_ClassCastException, "check-cast");
 
@@ -815,7 +815,7 @@
      * {@code T: any non-array object type; x: Object :: x instanceof
      * T}. Note: This is listed as throwing {@code Error}
      * explicitly because the op <i>can</i> throw, but there are no
-     * other predefined exceptions for it. 
+     * other predefined exceptions for it.
      */
     public static final Rop INSTANCE_OF =
         new Rop(RegOps.INSTANCE_OF, Type.INT, StdTypeList.OBJECT,
@@ -823,7 +823,7 @@
 
     /**
      * {@code r: int; x: Object; f: instance field spec of
-     * type int :: r = x.f} 
+     * type int :: r = x.f}
      */
     public static final Rop GET_FIELD_INT =
         new Rop(RegOps.GET_FIELD, Type.INT, StdTypeList.OBJECT,
@@ -831,7 +831,7 @@
 
     /**
      * {@code r: long; x: Object; f: instance field spec of
-     * type long :: r = x.f} 
+     * type long :: r = x.f}
      */
     public static final Rop GET_FIELD_LONG =
         new Rop(RegOps.GET_FIELD, Type.LONG, StdTypeList.OBJECT,
@@ -839,7 +839,7 @@
 
     /**
      * {@code r: float; x: Object; f: instance field spec of
-     * type float :: r = x.f} 
+     * type float :: r = x.f}
      */
     public static final Rop GET_FIELD_FLOAT =
         new Rop(RegOps.GET_FIELD, Type.FLOAT, StdTypeList.OBJECT,
@@ -848,7 +848,7 @@
 
     /**
      * {@code r: double; x: Object; f: instance field spec of
-     * type double :: r = x.f} 
+     * type double :: r = x.f}
      */
     public static final Rop GET_FIELD_DOUBLE =
         new Rop(RegOps.GET_FIELD, Type.DOUBLE, StdTypeList.OBJECT,
@@ -857,7 +857,7 @@
 
     /**
      * {@code r: Object; x: Object; f: instance field spec of
-     * type Object :: r = x.f} 
+     * type Object :: r = x.f}
      */
     public static final Rop GET_FIELD_OBJECT =
         new Rop(RegOps.GET_FIELD, Type.OBJECT, StdTypeList.OBJECT,
@@ -866,7 +866,7 @@
 
     /**
      * {@code r: boolean; x: Object; f: instance field spec of
-     * type boolean :: r = x.f} 
+     * type boolean :: r = x.f}
      */
     public static final Rop GET_FIELD_BOOLEAN =
         new Rop(RegOps.GET_FIELD, Type.INT, StdTypeList.OBJECT,