class com.sun.java.util.jar.pack.Package
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.java.util.jar.pack.Package
  super_class: java.lang.Object
{
  int verbose;
    descriptor: I
    flags: (0x0000) 

  final int magic;
    descriptor: I
    flags: (0x0010) ACC_FINAL
    ConstantValue: -889270259

  int default_modtime;
    descriptor: I
    flags: (0x0000) 

  int default_options;
    descriptor: I
    flags: (0x0000) 

  com.sun.java.util.jar.pack.Package$Version defaultClassVersion;
    descriptor: Lcom/sun/java/util/jar/pack/Package$Version;
    flags: (0x0000) 

  final com.sun.java.util.jar.pack.Package$Version minClassVersion;
    descriptor: Lcom/sun/java/util/jar/pack/Package$Version;
    flags: (0x0010) ACC_FINAL

  final com.sun.java.util.jar.pack.Package$Version maxClassVersion;
    descriptor: Lcom/sun/java/util/jar/pack/Package$Version;
    flags: (0x0010) ACC_FINAL

  final com.sun.java.util.jar.pack.Package$Version packageVersion;
    descriptor: Lcom/sun/java/util/jar/pack/Package$Version;
    flags: (0x0010) ACC_FINAL

  com.sun.java.util.jar.pack.Package$Version observedHighestClassVersion;
    descriptor: Lcom/sun/java/util/jar/pack/Package$Version;
    flags: (0x0000) 

  com.sun.java.util.jar.pack.ConstantPool$IndexGroup cp;
    descriptor: Lcom/sun/java/util/jar/pack/ConstantPool$IndexGroup;
    flags: (0x0000) 

  public static final com.sun.java.util.jar.pack.Attribute$Layout attrCodeEmpty;
    descriptor: Lcom/sun/java/util/jar/pack/Attribute$Layout;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.sun.java.util.jar.pack.Attribute$Layout attrBootstrapMethodsEmpty;
    descriptor: Lcom/sun/java/util/jar/pack/Attribute$Layout;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.sun.java.util.jar.pack.Attribute$Layout attrInnerClassesEmpty;
    descriptor: Lcom/sun/java/util/jar/pack/Attribute$Layout;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.sun.java.util.jar.pack.Attribute$Layout attrSourceFileSpecial;
    descriptor: Lcom/sun/java/util/jar/pack/Attribute$Layout;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.util.Map<com.sun.java.util.jar.pack.Attribute$Layout, com.sun.java.util.jar.pack.Attribute> attrDefs;
    descriptor: Ljava/util/Map;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Lcom/sun/java/util/jar/pack/Attribute$Layout;Lcom/sun/java/util/jar/pack/Attribute;>;

  java.util.ArrayList<com.sun.java.util.jar.pack.Package$Class> classes;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0000) 
    Signature: Ljava/util/ArrayList<Lcom/sun/java/util/jar/pack/Package$Class;>;

  java.util.ArrayList<com.sun.java.util.jar.pack.Package$File> files;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0000) 
    Signature: Ljava/util/ArrayList<Lcom/sun/java/util/jar/pack/Package$File;>;

  java.util.List<com.sun.java.util.jar.pack.Package$InnerClass> allInnerClasses;
    descriptor: Ljava/util/List;
    flags: (0x0000) 
    Signature: Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$InnerClass;>;

  java.util.Map<com.sun.java.util.jar.pack.ConstantPool$ClassEntry, com.sun.java.util.jar.pack.Package$InnerClass> allInnerClassesByThis;
    descriptor: Ljava/util/Map;
    flags: (0x0000) 
    Signature: Ljava/util/Map<Lcom/sun/java/util/jar/pack/ConstantPool$ClassEntry;Lcom/sun/java/util/jar/pack/Package$InnerClass;>;

  private static final int SLASH_MIN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 46

  private static final int SLASH_MAX;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 47

  private static final int DOLLAR_MIN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int DOLLAR_MAX;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 45

  static final java.util.List<java.lang.Object> noObjects;
    descriptor: Ljava/util/List;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/Object;>;

  static final java.util.List<com.sun.java.util.jar.pack.Package$Class$Field> noFields;
    descriptor: Ljava/util/List;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$Class$Field;>;

  static final java.util.List<com.sun.java.util.jar.pack.Package$Class$Method> noMethods;
    descriptor: Ljava/util/List;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$Class$Method;>;

  static final java.util.List<com.sun.java.util.jar.pack.Package$InnerClass> noInnerClasses;
    descriptor: Ljava/util/List;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$InnerClass;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 63
            ldc Lcom/sun/java/util/jar/pack/Package;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
         3: .line 132
            new java.util.HashMap
            dup
            iconst_3
            invokespecial java.util.HashMap.<init>:(I)V
            astore 0 /* ad */
        start local 0 // java.util.Map ad
         4: .line 133
            aload 0 /* ad */
            iconst_2
         5: .line 134
            ldc "Code"
            ldc ""
         6: .line 133
            invokestatic com.sun.java.util.jar.pack.Attribute.define:(Ljava/util/Map;ILjava/lang/String;Ljava/lang/String;)Lcom/sun/java/util/jar/pack/Attribute;
         7: .line 134
            invokevirtual com.sun.java.util.jar.pack.Attribute.layout:()Lcom/sun/java/util/jar/pack/Attribute$Layout;
         8: .line 133
            putstatic com.sun.java.util.jar.pack.Package.attrCodeEmpty:Lcom/sun/java/util/jar/pack/Attribute$Layout;
         9: .line 135
            aload 0 /* ad */
            iconst_0
        10: .line 136
            ldc "BootstrapMethods"
            ldc ""
        11: .line 135
            invokestatic com.sun.java.util.jar.pack.Attribute.define:(Ljava/util/Map;ILjava/lang/String;Ljava/lang/String;)Lcom/sun/java/util/jar/pack/Attribute;
        12: .line 136
            invokevirtual com.sun.java.util.jar.pack.Attribute.layout:()Lcom/sun/java/util/jar/pack/Attribute$Layout;
        13: .line 135
            putstatic com.sun.java.util.jar.pack.Package.attrBootstrapMethodsEmpty:Lcom/sun/java/util/jar/pack/Attribute$Layout;
        14: .line 137
            aload 0 /* ad */
            iconst_0
        15: .line 138
            ldc "InnerClasses"
            ldc ""
        16: .line 137
            invokestatic com.sun.java.util.jar.pack.Attribute.define:(Ljava/util/Map;ILjava/lang/String;Ljava/lang/String;)Lcom/sun/java/util/jar/pack/Attribute;
        17: .line 138
            invokevirtual com.sun.java.util.jar.pack.Attribute.layout:()Lcom/sun/java/util/jar/pack/Attribute$Layout;
        18: .line 137
            putstatic com.sun.java.util.jar.pack.Package.attrInnerClassesEmpty:Lcom/sun/java/util/jar/pack/Attribute$Layout;
        19: .line 139
            aload 0 /* ad */
            iconst_0
        20: .line 140
            ldc "SourceFile"
            ldc "RUNH"
        21: .line 139
            invokestatic com.sun.java.util.jar.pack.Attribute.define:(Ljava/util/Map;ILjava/lang/String;Ljava/lang/String;)Lcom/sun/java/util/jar/pack/Attribute;
        22: .line 140
            invokevirtual com.sun.java.util.jar.pack.Attribute.layout:()Lcom/sun/java/util/jar/pack/Attribute$Layout;
        23: .line 139
            putstatic com.sun.java.util.jar.pack.Package.attrSourceFileSpecial:Lcom/sun/java/util/jar/pack/Attribute$Layout;
        24: .line 141
            aload 0 /* ad */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic com.sun.java.util.jar.pack.Package.attrDefs:Ljava/util/Map;
        end local 0 // java.util.Map ad
        25: .line 1050
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 26
            iconst_0
            bipush 45
            ldc "x$$y$"
            iconst_4
            invokestatic com.sun.java.util.jar.pack.Package.lastIndexOf:(IILjava/lang/String;I)I
            iconst_2
            if_icmpeq 26
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        26: .line 1051
      StackMap locals:
      StackMap stack:
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 27
            bipush 46
            bipush 47
            ldc "x//y/"
            iconst_4
            invokestatic com.sun.java.util.jar.pack.Package.lastIndexOf:(IILjava/lang/String;I)I
            iconst_2
            if_icmpeq 27
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        27: .line 1302
      StackMap locals:
      StackMap stack:
            iconst_0
            anewarray java.lang.Object
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            putstatic com.sun.java.util.jar.pack.Package.noObjects:Ljava/util/List;
        28: .line 1303
            iconst_0
            anewarray com.sun.java.util.jar.pack.Package$Class$Field
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            putstatic com.sun.java.util.jar.pack.Package.noFields:Ljava/util/List;
        29: .line 1304
            iconst_0
            anewarray com.sun.java.util.jar.pack.Package$Class$Method
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            putstatic com.sun.java.util.jar.pack.Package.noMethods:Ljava/util/List;
        30: .line 1305
            iconst_0
            anewarray com.sun.java.util.jar.pack.Package$InnerClass
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            putstatic com.sun.java.util.jar.pack.Package.noInnerClasses:Ljava/util/List;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            4   25     0    ad  Ljava/util/Map<Lcom/sun/java/util/jar/pack/Attribute$Layout;Lcom/sun/java/util/jar/pack/Attribute;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 94
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 66
            invokestatic com.sun.java.util.jar.pack.Utils.currentPropMap:()Lcom/sun/java/util/jar/pack/PropMap;
            astore 1 /* pmap */
        start local 1 // com.sun.java.util.jar.pack.PropMap pmap
         2: .line 67
            aload 1 /* pmap */
            ifnull 4
         3: .line 68
            aload 0 /* this */
            aload 1 /* pmap */
            ldc "com.sun.java.util.jar.pack.verbose"
            invokevirtual com.sun.java.util.jar.pack.PropMap.getInteger:(Ljava/lang/String;)I
            putfield com.sun.java.util.jar.pack.Package.verbose:I
        end local 1 // com.sun.java.util.jar.pack.PropMap pmap
         4: .line 71
      StackMap locals: com.sun.java.util.jar.pack.Package
      StackMap stack:
            aload 0 /* this */
            ldc -889270259
            putfield com.sun.java.util.jar.pack.Package.magic:I
         5: .line 73
            aload 0 /* this */
            iconst_0
            putfield com.sun.java.util.jar.pack.Package.default_modtime:I
         6: .line 74
            aload 0 /* this */
            iconst_0
            putfield com.sun.java.util.jar.pack.Package.default_options:I
         7: .line 76
            aload 0 /* this */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package.defaultClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
         8: .line 84
            aload 0 /* this */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package.observedHighestClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
         9: .line 88
            aload 0 /* this */
            new com.sun.java.util.jar.pack.ConstantPool$IndexGroup
            dup
            invokespecial com.sun.java.util.jar.pack.ConstantPool$IndexGroup.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.cp:Lcom/sun/java/util/jar/pack/ConstantPool$IndexGroup;
        10: .line 169
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
        11: .line 733
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
        12: .line 893
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
        13: .line 95
            aload 0 /* this */
            getstatic com.sun.java.util.jar.pack.Constants.JAVA_MIN_CLASS_VERSION:Lcom/sun/java/util/jar/pack/Package$Version;
            putfield com.sun.java.util.jar.pack.Package.minClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
        14: .line 96
            aload 0 /* this */
            getstatic com.sun.java.util.jar.pack.Constants.JAVA_MAX_CLASS_VERSION:Lcom/sun/java/util/jar/pack/Package$Version;
            putfield com.sun.java.util.jar.pack.Package.maxClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
        15: .line 97
            aload 0 /* this */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package.packageVersion:Lcom/sun/java/util/jar/pack/Package$Version;
        16: .line 98
            return
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lcom/sun/java/util/jar/pack/Package;
            2    4     1  pmap  Lcom/sun/java/util/jar/pack/PropMap;

  public void <init>(com.sun.java.util.jar.pack.Package$Version, com.sun.java.util.jar.pack.Package$Version, com.sun.java.util.jar.pack.Package$Version);
    descriptor: (Lcom/sun/java/util/jar/pack/Package$Version;Lcom/sun/java/util/jar/pack/Package$Version;Lcom/sun/java/util/jar/pack/Package$Version;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // com.sun.java.util.jar.pack.Package$Version minClassVersion
        start local 2 // com.sun.java.util.jar.pack.Package$Version maxClassVersion
        start local 3 // com.sun.java.util.jar.pack.Package$Version packageVersion
         0: .line 105
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 66
            invokestatic com.sun.java.util.jar.pack.Utils.currentPropMap:()Lcom/sun/java/util/jar/pack/PropMap;
            astore 4 /* pmap */
        start local 4 // com.sun.java.util.jar.pack.PropMap pmap
         2: .line 67
            aload 4 /* pmap */
            ifnull 4
         3: .line 68
            aload 0 /* this */
            aload 4 /* pmap */
            ldc "com.sun.java.util.jar.pack.verbose"
            invokevirtual com.sun.java.util.jar.pack.PropMap.getInteger:(Ljava/lang/String;)I
            putfield com.sun.java.util.jar.pack.Package.verbose:I
        end local 4 // com.sun.java.util.jar.pack.PropMap pmap
         4: .line 71
      StackMap locals: com.sun.java.util.jar.pack.Package com.sun.java.util.jar.pack.Package$Version com.sun.java.util.jar.pack.Package$Version com.sun.java.util.jar.pack.Package$Version
      StackMap stack:
            aload 0 /* this */
            ldc -889270259
            putfield com.sun.java.util.jar.pack.Package.magic:I
         5: .line 73
            aload 0 /* this */
            iconst_0
            putfield com.sun.java.util.jar.pack.Package.default_modtime:I
         6: .line 74
            aload 0 /* this */
            iconst_0
            putfield com.sun.java.util.jar.pack.Package.default_options:I
         7: .line 76
            aload 0 /* this */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package.defaultClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
         8: .line 84
            aload 0 /* this */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package.observedHighestClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
         9: .line 88
            aload 0 /* this */
            new com.sun.java.util.jar.pack.ConstantPool$IndexGroup
            dup
            invokespecial com.sun.java.util.jar.pack.ConstantPool$IndexGroup.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.cp:Lcom/sun/java/util/jar/pack/ConstantPool$IndexGroup;
        10: .line 169
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
        11: .line 733
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
        12: .line 893
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
        13: .line 107
            aload 0 /* this */
            aload 1 /* minClassVersion */
            ifnonnull 15
        14: .line 108
            getstatic com.sun.java.util.jar.pack.Constants.JAVA_MIN_CLASS_VERSION:Lcom/sun/java/util/jar/pack/Package$Version;
            goto 16
        15: .line 109
      StackMap locals:
      StackMap stack: com.sun.java.util.jar.pack.Package
            aload 1 /* minClassVersion */
        16: .line 107
      StackMap locals: com.sun.java.util.jar.pack.Package com.sun.java.util.jar.pack.Package$Version com.sun.java.util.jar.pack.Package$Version com.sun.java.util.jar.pack.Package$Version
      StackMap stack: com.sun.java.util.jar.pack.Package com.sun.java.util.jar.pack.Package$Version
            putfield com.sun.java.util.jar.pack.Package.minClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
        17: .line 110
            aload 0 /* this */
            aload 2 /* maxClassVersion */
            ifnonnull 19
        18: .line 111
            getstatic com.sun.java.util.jar.pack.Constants.JAVA_MAX_CLASS_VERSION:Lcom/sun/java/util/jar/pack/Package$Version;
            goto 20
        19: .line 112
      StackMap locals:
      StackMap stack: com.sun.java.util.jar.pack.Package
            aload 2 /* maxClassVersion */
        20: .line 110
      StackMap locals: com.sun.java.util.jar.pack.Package com.sun.java.util.jar.pack.Package$Version com.sun.java.util.jar.pack.Package$Version com.sun.java.util.jar.pack.Package$Version
      StackMap stack: com.sun.java.util.jar.pack.Package com.sun.java.util.jar.pack.Package$Version
            putfield com.sun.java.util.jar.pack.Package.maxClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
        21: .line 113
            aload 0 /* this */
            aload 3 /* packageVersion */
            putfield com.sun.java.util.jar.pack.Package.packageVersion:Lcom/sun/java/util/jar/pack/Package$Version;
        22: .line 114
            return
        end local 3 // com.sun.java.util.jar.pack.Package$Version packageVersion
        end local 2 // com.sun.java.util.jar.pack.Package$Version maxClassVersion
        end local 1 // com.sun.java.util.jar.pack.Package$Version minClassVersion
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   23     0             this  Lcom/sun/java/util/jar/pack/Package;
            0   23     1  minClassVersion  Lcom/sun/java/util/jar/pack/Package$Version;
            0   23     2  maxClassVersion  Lcom/sun/java/util/jar/pack/Package$Version;
            0   23     3   packageVersion  Lcom/sun/java/util/jar/pack/Package$Version;
            2    4     4             pmap  Lcom/sun/java/util/jar/pack/PropMap;
    MethodParameters:
                 Name  Flags
      minClassVersion  
      maxClassVersion  
      packageVersion   

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 118
            aload 0 /* this */
            new com.sun.java.util.jar.pack.ConstantPool$IndexGroup
            dup
            invokespecial com.sun.java.util.jar.pack.ConstantPool$IndexGroup.<init>:()V
            putfield com.sun.java.util.jar.pack.Package.cp:Lcom/sun/java/util/jar/pack/ConstantPool$IndexGroup;
         1: .line 119
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.clear:()V
         2: .line 120
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.clear:()V
         3: .line 121
            iconst_0
            putstatic com.sun.java.util.jar.pack.BandStructure.nextSeqForDebug:I
         4: .line 122
            aload 0 /* this */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package.observedHighestClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
         5: .line 123
            return
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/java/util/jar/pack/Package;

  com.sun.java.util.jar.pack.Package$Version getDefaultClassVersion();
    descriptor: ()Lcom/sun/java/util/jar/pack/Package$Version;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 145
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.defaultClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
            areturn
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/java/util/jar/pack/Package;

  private void setHighestClassVersion();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 152
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.observedHighestClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
            ifnull 2
         1: .line 153
            return
         2: .line 154
      StackMap locals:
      StackMap stack:
            getstatic com.sun.java.util.jar.pack.Constants.JAVA_MIN_CLASS_VERSION:Lcom/sun/java/util/jar/pack/Package$Version;
            astore 1 /* res */
        start local 1 // com.sun.java.util.jar.pack.Package$Version res
         3: .line 155
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 7
      StackMap locals: com.sun.java.util.jar.pack.Package com.sun.java.util.jar.pack.Package$Version top java.util.Iterator
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class
            astore 2 /* cls */
        start local 2 // com.sun.java.util.jar.pack.Package$Class cls
         5: .line 156
            aload 2 /* cls */
            invokevirtual com.sun.java.util.jar.pack.Package$Class.getVersion:()Lcom/sun/java/util/jar/pack/Package$Version;
            astore 4 /* ver */
        start local 4 // com.sun.java.util.jar.pack.Package$Version ver
         6: .line 157
            aload 1 /* res */
            aload 4 /* ver */
            invokevirtual com.sun.java.util.jar.pack.Package$Version.lessThan:(Lcom/sun/java/util/jar/pack/Package$Version;)Z
            ifeq 7
            aload 4 /* ver */
            astore 1 /* res */
        end local 4 // com.sun.java.util.jar.pack.Package$Version ver
        end local 2 // com.sun.java.util.jar.pack.Package$Class cls
         7: .line 155
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 159
            aload 0 /* this */
            aload 1 /* res */
            putfield com.sun.java.util.jar.pack.Package.observedHighestClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
         9: .line 160
            return
        end local 1 // com.sun.java.util.jar.pack.Package$Version res
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/java/util/jar/pack/Package;
            3   10     1   res  Lcom/sun/java/util/jar/pack/Package$Version;
            5    7     2   cls  Lcom/sun/java/util/jar/pack/Package$Class;
            6    7     4   ver  Lcom/sun/java/util/jar/pack/Package$Version;

  com.sun.java.util.jar.pack.Package$Version getHighestClassVersion();
    descriptor: ()Lcom/sun/java/util/jar/pack/Package$Version;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 163
            aload 0 /* this */
            invokevirtual com.sun.java.util.jar.pack.Package.setHighestClassVersion:()V
         1: .line 164
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.observedHighestClassVersion:Lcom/sun/java/util/jar/pack/Package$Version;
            areturn
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/java/util/jar/pack/Package;

  public java.util.List<com.sun.java.util.jar.pack.Package$Class> getClasses();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 172
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            areturn
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/java/util/jar/pack/Package;
    Signature: ()Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$Class;>;

  void addClass(com.sun.java.util.jar.pack.Package$Class);
    descriptor: (Lcom/sun/java/util/jar/pack/Package$Class;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // com.sun.java.util.jar.pack.Package$Class c
         0: .line 724
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 1
            aload 1 /* c */
            invokevirtual com.sun.java.util.jar.pack.Package$Class.getPackage:()Lcom/sun/java/util/jar/pack/Package;
            aload 0 /* this */
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            aload 1 /* c */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            istore 2 /* added */
        start local 2 // boolean added
         2: .line 726
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 3
            iload 2 /* added */
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 728
      StackMap locals: int
      StackMap stack:
            aload 1 /* c */
            getfield com.sun.java.util.jar.pack.Package$Class.file:Lcom/sun/java/util/jar/pack/Package$File;
            ifnonnull 4
            aload 1 /* c */
            aconst_null
            invokevirtual com.sun.java.util.jar.pack.Package$Class.initFile:(Lcom/sun/java/util/jar/pack/Package$File;)V
         4: .line 729
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            getfield com.sun.java.util.jar.pack.Package$Class.file:Lcom/sun/java/util/jar/pack/Package$File;
            invokevirtual com.sun.java.util.jar.pack.Package.addFile:(Lcom/sun/java/util/jar/pack/Package$File;)V
         5: .line 730
            return
        end local 2 // boolean added
        end local 1 // com.sun.java.util.jar.pack.Package$Class c
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/sun/java/util/jar/pack/Package;
            0    6     1      c  Lcom/sun/java/util/jar/pack/Package$Class;
            2    6     2  added  Z
    MethodParameters:
      Name  Flags
      c     

  public java.util.List<com.sun.java.util.jar.pack.Package$File> getFiles();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 736
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            areturn
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/java/util/jar/pack/Package;
    Signature: ()Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$File;>;

  public java.util.List<com.sun.java.util.jar.pack.Package$File> getClassStubs();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 740
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* classStubs */
        start local 1 // java.util.List classStubs
         1: .line 741
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: com.sun.java.util.jar.pack.Package java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class
            astore 2 /* cls */
        start local 2 // com.sun.java.util.jar.pack.Package$Class cls
         3: .line 742
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 4
            aload 2 /* cls */
            getfield com.sun.java.util.jar.pack.Package$Class.file:Lcom/sun/java/util/jar/pack/Package$File;
            invokevirtual com.sun.java.util.jar.pack.Package$File.isClassStub:()Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 743
      StackMap locals: com.sun.java.util.jar.pack.Package java.util.List com.sun.java.util.jar.pack.Package$Class java.util.Iterator
      StackMap stack:
            aload 1 /* classStubs */
            aload 2 /* cls */
            getfield com.sun.java.util.jar.pack.Package$Class.file:Lcom/sun/java/util/jar/pack/Package$File;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // com.sun.java.util.jar.pack.Package$Class cls
         5: .line 741
      StackMap locals: com.sun.java.util.jar.pack.Package java.util.List top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 745
            aload 1 /* classStubs */
            areturn
        end local 1 // java.util.List classStubs
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/sun/java/util/jar/pack/Package;
            1    7     1  classStubs  Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$File;>;
            3    5     2         cls  Lcom/sun/java/util/jar/pack/Package$Class;
    Signature: ()Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$File;>;

  com.sun.java.util.jar.pack.Package$File newStub(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/sun/java/util/jar/pack/Package$File;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // java.lang.String classFileNameString
         0: .line 872
            new com.sun.java.util.jar.pack.Package$File
            dup
            aload 0 /* this */
            aload 1 /* classFileNameString */
            invokespecial com.sun.java.util.jar.pack.Package$File.<init>:(Lcom/sun/java/util/jar/pack/Package;Ljava/lang/String;)V
            astore 2 /* stub */
        start local 2 // com.sun.java.util.jar.pack.Package$File stub
         1: .line 873
            aload 2 /* stub */
            dup
            getfield com.sun.java.util.jar.pack.Package$File.options:I
            iconst_2
            ior
            putfield com.sun.java.util.jar.pack.Package$File.options:I
         2: .line 874
            aload 2 /* stub */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package$File.prepend:Ljava/util/ArrayList;
         3: .line 875
            aload 2 /* stub */
            aconst_null
            putfield com.sun.java.util.jar.pack.Package$File.append:Ljava/io/ByteArrayOutputStream;
         4: .line 876
            aload 2 /* stub */
            areturn
        end local 2 // com.sun.java.util.jar.pack.Package$File stub
        end local 1 // java.lang.String classFileNameString
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0                 this  Lcom/sun/java/util/jar/pack/Package;
            0    5     1  classFileNameString  Ljava/lang/String;
            1    5     2                 stub  Lcom/sun/java/util/jar/pack/Package$File;
    MethodParameters:
                     Name  Flags
      classFileNameString  

  private static java.lang.String fixupFileName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.String name
         0: .line 880
            aload 0 /* name */
            getstatic java.io.File.separatorChar:C
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 1 /* fname */
        start local 1 // java.lang.String fname
         1: .line 881
            aload 1 /* fname */
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 882
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "absolute file name "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 884
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* fname */
            areturn
        end local 1 // java.lang.String fname
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   name  Ljava/lang/String;
            1    4     1  fname  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  void addFile(com.sun.java.util.jar.pack.Package$File);
    descriptor: (Lcom/sun/java/util/jar/pack/Package$File;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // com.sun.java.util.jar.pack.Package$File file
         0: .line 888
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            aload 1 /* file */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            istore 2 /* added */
        start local 2 // boolean added
         1: .line 889
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 2
            iload 2 /* added */
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 890
      StackMap locals: int
      StackMap stack:
            return
        end local 2 // boolean added
        end local 1 // com.sun.java.util.jar.pack.Package$File file
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/java/util/jar/pack/Package;
            0    3     1   file  Lcom/sun/java/util/jar/pack/Package$File;
            1    3     2  added  Z
    MethodParameters:
      Name  Flags
      file  

  public java.util.List<com.sun.java.util.jar.pack.Package$InnerClass> getAllInnerClasses();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 898
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
            areturn
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/java/util/jar/pack/Package;
    Signature: ()Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$InnerClass;>;

  public void setAllInnerClasses(java.util.Collection<com.sun.java.util.jar.pack.Package$InnerClass>);
    descriptor: (Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // java.util.Collection ics
         0: .line 903
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 1
            aload 1 /* ics */
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
            if_acmpne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         2: .line 905
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
            aload 1 /* ics */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 908
            aload 0 /* this */
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokespecial java.util.HashMap.<init>:(I)V
            putfield com.sun.java.util.jar.pack.Package.allInnerClassesByThis:Ljava/util/Map;
         4: .line 909
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 8
      StackMap locals: com.sun.java.util.jar.pack.Package java.util.Collection top java.util.Iterator
      StackMap stack:
         5: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$InnerClass
            astore 2 /* ic */
        start local 2 // com.sun.java.util.jar.pack.Package$InnerClass ic
         6: .line 910
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClassesByThis:Ljava/util/Map;
            aload 2 /* ic */
            getfield com.sun.java.util.jar.pack.Package$InnerClass.thisClass:Lcom/sun/java/util/jar/pack/ConstantPool$ClassEntry;
            aload 2 /* ic */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 4 /* pic */
        start local 4 // java.lang.Object pic
         7: .line 911
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 8
            aload 4 /* pic */
            ifnull 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 4 // java.lang.Object pic
        end local 2 // com.sun.java.util.jar.pack.Package$InnerClass ic
         8: .line 909
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 913
            return
        end local 1 // java.util.Collection ics
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/java/util/jar/pack/Package;
            0   10     1   ics  Ljava/util/Collection<Lcom/sun/java/util/jar/pack/Package$InnerClass;>;
            6    8     2    ic  Lcom/sun/java/util/jar/pack/Package$InnerClass;
            7    8     4   pic  Ljava/lang/Object;
    Signature: (Ljava/util/Collection<Lcom/sun/java/util/jar/pack/Package$InnerClass;>;)V
    MethodParameters:
      Name  Flags
      ics   

  public com.sun.java.util.jar.pack.Package$InnerClass getGlobalInnerClass(com.sun.java.util.jar.pack.ConstantPool$Entry);
    descriptor: (Lcom/sun/java/util/jar/pack/ConstantPool$Entry;)Lcom/sun/java/util/jar/pack/Package$InnerClass;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // com.sun.java.util.jar.pack.ConstantPool$Entry thisClass
         0: .line 918
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 1
            aload 1 /* thisClass */
            instanceof com.sun.java.util.jar.pack.ConstantPool$ClassEntry
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 919
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClassesByThis:Ljava/util/Map;
            aload 1 /* thisClass */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$InnerClass
            areturn
        end local 1 // com.sun.java.util.jar.pack.ConstantPool$Entry thisClass
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/sun/java/util/jar/pack/Package;
            0    2     1  thisClass  Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
    MethodParameters:
           Name  Flags
      thisClass  

  private static void visitInnerClassRefs(java.util.Collection<com.sun.java.util.jar.pack.Package$InnerClass>, int, java.util.Collection<com.sun.java.util.jar.pack.ConstantPool$Entry>);
    descriptor: (Ljava/util/Collection;ILjava/util/Collection;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.util.Collection innerClasses
        start local 1 // int mode
        start local 2 // java.util.Collection refs
         0: .line 996
            aload 0 /* innerClasses */
            ifnonnull 2
         1: .line 997
            return
         2: .line 999
      StackMap locals:
      StackMap stack:
            iload 1 /* mode */
            ifne 4
         3: .line 1000
            aload 2 /* refs */
            ldc "InnerClasses"
            invokestatic com.sun.java.util.jar.pack.Package.getRefString:(Ljava/lang/String;)Lcom/sun/java/util/jar/pack/ConstantPool$Utf8Entry;
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
         4: .line 1002
      StackMap locals:
      StackMap stack:
            aload 0 /* innerClasses */
            invokeinterface java.util.Collection.size:()I
            ifle 9
         5: .line 1004
            aload 0 /* innerClasses */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: java.util.Collection int java.util.Collection top java.util.Iterator
      StackMap stack:
         6: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$InnerClass
            astore 3 /* c */
        start local 3 // com.sun.java.util.jar.pack.Package$InnerClass c
         7: .line 1005
            aload 3 /* c */
            iload 1 /* mode */
            aload 2 /* refs */
            invokevirtual com.sun.java.util.jar.pack.Package$InnerClass.visitRefs:(ILjava/util/Collection;)V
        end local 3 // com.sun.java.util.jar.pack.Package$InnerClass c
         8: .line 1004
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 1008
      StackMap locals: java.util.Collection int java.util.Collection
      StackMap stack:
            return
        end local 2 // java.util.Collection refs
        end local 1 // int mode
        end local 0 // java.util.Collection innerClasses
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0  innerClasses  Ljava/util/Collection<Lcom/sun/java/util/jar/pack/Package$InnerClass;>;
            0   10     1          mode  I
            0   10     2          refs  Ljava/util/Collection<Lcom/sun/java/util/jar/pack/ConstantPool$Entry;>;
            7    8     3             c  Lcom/sun/java/util/jar/pack/Package$InnerClass;
    Signature: (Ljava/util/Collection<Lcom/sun/java/util/jar/pack/Package$InnerClass;>;ILjava/util/Collection<Lcom/sun/java/util/jar/pack/ConstantPool$Entry;>;)V
    MethodParameters:
              Name  Flags
      innerClasses  
      mode          
      refs          

  static java.lang.String[] parseInnerClassName(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // java.lang.String n
         0: .line 1015
            aload 0 /* n */
            invokevirtual java.lang.String.length:()I
            istore 6 /* nlen */
        start local 6 // int nlen
         1: .line 1016
            bipush 46
            bipush 47
            aload 0 /* n */
            aload 0 /* n */
            invokevirtual java.lang.String.length:()I
            invokestatic com.sun.java.util.jar.pack.Package.lastIndexOf:(IILjava/lang/String;I)I
            iconst_1
            iadd
            istore 7 /* pkglen */
        start local 7 // int pkglen
         2: .line 1017
            iconst_0
            bipush 45
            aload 0 /* n */
            aload 0 /* n */
            invokevirtual java.lang.String.length:()I
            invokestatic com.sun.java.util.jar.pack.Package.lastIndexOf:(IILjava/lang/String;I)I
            istore 5 /* dollar2 */
        start local 5 // int dollar2
         3: .line 1018
            iload 5 /* dollar2 */
            iload 7 /* pkglen */
            if_icmpge 4
            aconst_null
            areturn
         4: .line 1019
      StackMap locals: java.lang.String top top top top int int int
      StackMap stack:
            aload 0 /* n */
            iload 5 /* dollar2 */
            iconst_1
            iadd
            iload 6 /* nlen */
            invokestatic com.sun.java.util.jar.pack.Package.isDigitString:(Ljava/lang/String;II)Z
            ifeq 9
         5: .line 1021
            aload 0 /* n */
            iload 5 /* dollar2 */
            iconst_1
            iadd
            iload 6 /* nlen */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* number */
        start local 2 // java.lang.String number
         6: .line 1022
            aconst_null
            astore 3 /* name */
        start local 3 // java.lang.String name
         7: .line 1023
            iload 5 /* dollar2 */
            istore 4 /* dollar1 */
        start local 4 // int dollar1
         8: .line 1024
            goto 19
        end local 4 // int dollar1
        end local 3 // java.lang.String name
        end local 2 // java.lang.String number
         9: .line 1025
      StackMap locals:
      StackMap stack:
            iconst_0
            bipush 45
            aload 0 /* n */
            iload 5 /* dollar2 */
            iconst_1
            isub
            invokestatic com.sun.java.util.jar.pack.Package.lastIndexOf:(IILjava/lang/String;I)I
        10: .line 1024
            dup
            istore 4 /* dollar1 */
        start local 4 // int dollar1
        11: .line 1026
            iload 7 /* pkglen */
            if_icmple 16
        12: .line 1027
            aload 0 /* n */
            iload 4 /* dollar1 */
            iconst_1
            iadd
            iload 5 /* dollar2 */
            invokestatic com.sun.java.util.jar.pack.Package.isDigitString:(Ljava/lang/String;II)Z
            ifeq 16
        13: .line 1029
            aload 0 /* n */
            iload 4 /* dollar1 */
            iconst_1
            iadd
            iload 5 /* dollar2 */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* number */
        start local 2 // java.lang.String number
        14: .line 1030
            aload 0 /* n */
            iload 5 /* dollar2 */
            iconst_1
            iadd
            iload 6 /* nlen */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
        15: .line 1031
            goto 19
        end local 3 // java.lang.String name
        end local 2 // java.lang.String number
        16: .line 1033
      StackMap locals: java.lang.String top top top int int int int
      StackMap stack:
            iload 5 /* dollar2 */
            istore 4 /* dollar1 */
        17: .line 1034
            aconst_null
            astore 2 /* number */
        start local 2 // java.lang.String number
        18: .line 1035
            aload 0 /* n */
            iload 5 /* dollar2 */
            iconst_1
            iadd
            iload 6 /* nlen */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
        19: .line 1037
      StackMap locals: java.lang.String top java.lang.String java.lang.String int int int int
      StackMap stack:
            aload 2 /* number */
            ifnonnull 22
        20: .line 1038
            aload 0 /* n */
            iconst_0
            iload 4 /* dollar1 */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            astore 1 /* pkgOuter */
        start local 1 // java.lang.String pkgOuter
        21: goto 23
        end local 1 // java.lang.String pkgOuter
        22: .line 1040
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 1 /* pkgOuter */
        start local 1 // java.lang.String pkgOuter
        23: .line 1042
      StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.String int int int int
      StackMap stack:
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 1 /* pkgOuter */
            aastore
            dup
            iconst_1
            aload 2 /* number */
            aastore
            dup
            iconst_2
            aload 3 /* name */
            aastore
            areturn
        end local 7 // int pkglen
        end local 6 // int nlen
        end local 5 // int dollar2
        end local 4 // int dollar1
        end local 3 // java.lang.String name
        end local 2 // java.lang.String number
        end local 1 // java.lang.String pkgOuter
        end local 0 // java.lang.String n
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   24     0         n  Ljava/lang/String;
           21   22     1  pkgOuter  Ljava/lang/String;
           23   24     1  pkgOuter  Ljava/lang/String;
            6    9     2    number  Ljava/lang/String;
           14   16     2    number  Ljava/lang/String;
           18   24     2    number  Ljava/lang/String;
            7    9     3      name  Ljava/lang/String;
           15   16     3      name  Ljava/lang/String;
           19   24     3      name  Ljava/lang/String;
            8    9     4   dollar1  I
           11   24     4   dollar1  I
            3   24     5   dollar2  I
            1   24     6      nlen  I
            2   24     7    pkglen  I
    MethodParameters:
      Name  Flags
      n     

  private static int lastIndexOf(int, int, java.lang.String, int);
    descriptor: (IILjava/lang/String;I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=4
        start local 0 // int chMin
        start local 1 // int chMax
        start local 2 // java.lang.String str
        start local 3 // int pos
         0: .line 1055
            iload 3 /* pos */
            istore 4 /* i */
        start local 4 // int i
         1: goto 5
         2: .line 1056
      StackMap locals: int
      StackMap stack:
            aload 2 /* str */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* ch */
        start local 5 // int ch
         3: .line 1057
            iload 5 /* ch */
            iload 0 /* chMin */
            if_icmplt 5
            iload 5 /* ch */
            iload 1 /* chMax */
            if_icmpgt 5
         4: .line 1058
            iload 4 /* i */
            ireturn
        end local 5 // int ch
         5: .line 1055
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ -1
            iload 4 /* i */
            ifge 2
        end local 4 // int i
         6: .line 1061
            iconst_m1
            ireturn
        end local 3 // int pos
        end local 2 // java.lang.String str
        end local 1 // int chMax
        end local 0 // int chMin
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0  chMin  I
            0    7     1  chMax  I
            0    7     2    str  Ljava/lang/String;
            0    7     3    pos  I
            1    6     4      i  I
            3    5     5     ch  I
    MethodParameters:
       Name  Flags
      chMin  
      chMax  
      str    
      pos    

  private static boolean isDigitString(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.lang.String x
        start local 1 // int beg
        start local 2 // int end
         0: .line 1065
            iload 1 /* beg */
            iload 2 /* end */
            if_icmpne 1
            iconst_0
            ireturn
         1: .line 1066
      StackMap locals:
      StackMap stack:
            iload 1 /* beg */
            istore 3 /* i */
        start local 3 // int i
         2: goto 7
         3: .line 1067
      StackMap locals: int
      StackMap stack:
            aload 0 /* x */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* ch */
        start local 4 // char ch
         4: .line 1068
            iload 4 /* ch */
            bipush 48
            if_icmplt 5
            iload 4 /* ch */
            bipush 57
            if_icmple 6
      StackMap locals: int
      StackMap stack:
         5: iconst_0
            ireturn
        end local 4 // char ch
         6: .line 1066
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            iload 2 /* end */
            if_icmplt 3
        end local 3 // int i
         8: .line 1070
            iconst_1
            ireturn
        end local 2 // int end
        end local 1 // int beg
        end local 0 // java.lang.String x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     x  Ljava/lang/String;
            0    9     1   beg  I
            0    9     2   end  I
            2    8     3     i  I
            4    6     4    ch  C
    MethodParameters:
      Name  Flags
      x     
      beg   
      end   

  static java.lang.String getObviousSourceFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String className
         0: .line 1074
            aload 0 /* className */
            astore 1 /* n */
        start local 1 // java.lang.String n
         1: .line 1075
            bipush 46
            bipush 47
            aload 1 /* n */
            aload 1 /* n */
            invokevirtual java.lang.String.length:()I
            invokestatic com.sun.java.util.jar.pack.Package.lastIndexOf:(IILjava/lang/String;I)I
            iconst_1
            iadd
            istore 2 /* pkglen */
        start local 2 // int pkglen
         2: .line 1076
            aload 1 /* n */
            iload 2 /* pkglen */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 1 /* n */
         3: .line 1077
            aload 1 /* n */
            invokevirtual java.lang.String.length:()I
            istore 3 /* cutoff */
        start local 3 // int cutoff
         4: .line 1080
      StackMap locals: java.lang.String int int
      StackMap stack:
            iconst_0
            bipush 45
            aload 1 /* n */
            iload 3 /* cutoff */
            iconst_1
            isub
            invokestatic com.sun.java.util.jar.pack.Package.lastIndexOf:(IILjava/lang/String;I)I
            istore 4 /* dollar2 */
        start local 4 // int dollar2
         5: .line 1081
            iload 4 /* dollar2 */
            ifge 7
         6: .line 1082
            goto 9
         7: .line 1083
      StackMap locals: int
      StackMap stack:
            iload 4 /* dollar2 */
            istore 3 /* cutoff */
         8: .line 1084
            iload 3 /* cutoff */
            ifne 4
        end local 4 // int dollar2
         9: .line 1085
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
        10: .line 1087
            aload 1 /* n */
            iconst_0
            iload 3 /* cutoff */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".java"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* obvious */
        start local 4 // java.lang.String obvious
        11: .line 1088
            aload 4 /* obvious */
            areturn
        end local 4 // java.lang.String obvious
        end local 3 // int cutoff
        end local 2 // int pkglen
        end local 1 // java.lang.String n
        end local 0 // java.lang.String className
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0  className  Ljava/lang/String;
            1   12     1          n  Ljava/lang/String;
            2   12     2     pkglen  I
            4   12     3     cutoff  I
            5    9     4    dollar2  I
           11   12     4    obvious  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      className  

  static com.sun.java.util.jar.pack.ConstantPool$Utf8Entry getRefString(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/sun/java/util/jar/pack/ConstantPool$Utf8Entry;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 1101
            aload 0 /* s */
            invokestatic com.sun.java.util.jar.pack.ConstantPool.getUtf8Entry:(Ljava/lang/String;)Lcom/sun/java/util/jar/pack/ConstantPool$Utf8Entry;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  static com.sun.java.util.jar.pack.ConstantPool$LiteralEntry getRefLiteral(java.lang.Comparable<?>);
    descriptor: (Ljava/lang/Comparable;)Lcom/sun/java/util/jar/pack/ConstantPool$LiteralEntry;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Comparable s
         0: .line 1105
            aload 0 /* s */
            invokestatic com.sun.java.util.jar.pack.ConstantPool.getLiteralEntry:(Ljava/lang/Comparable;)Lcom/sun/java/util/jar/pack/ConstantPool$LiteralEntry;
            areturn
        end local 0 // java.lang.Comparable s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/Comparable<*>;
    Signature: (Ljava/lang/Comparable<*>;)Lcom/sun/java/util/jar/pack/ConstantPool$LiteralEntry;
    MethodParameters:
      Name  Flags
      s     

  void stripAttributeKind(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // java.lang.String what
         0: .line 1110
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            ifle 2
         1: .line 1111
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            new java.lang.StringBuilder
            dup
            ldc "Stripping "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* what */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " data and attributes..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.info:(Ljava/lang/String;)V
         2: .line 1112
      StackMap locals:
      StackMap stack:
            aload 1 /* what */
            dup
            astore 2
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 4
          -1679822317: 3
           -503167036: 4
             65906227: 5
            679220772: 6
              default: 18
          }
      StackMap locals: java.lang.String
      StackMap stack:
         3: aload 2
            ldc "Compile"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 18
      StackMap locals:
      StackMap stack:
         4: aload 2
            ldc "Constant"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
            goto 18
      StackMap locals:
      StackMap stack:
         5: aload 2
            ldc "Debug"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
            goto 18
      StackMap locals:
      StackMap stack:
         6: aload 2
            ldc "Exceptions"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
            goto 18
         7: .line 1114
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "SourceFile"
            invokevirtual com.sun.java.util.jar.pack.Package.strip:(Ljava/lang/String;)V
         8: .line 1115
            aload 0 /* this */
            ldc "LineNumberTable"
            invokevirtual com.sun.java.util.jar.pack.Package.strip:(Ljava/lang/String;)V
         9: .line 1116
            aload 0 /* this */
            ldc "LocalVariableTable"
            invokevirtual com.sun.java.util.jar.pack.Package.strip:(Ljava/lang/String;)V
        10: .line 1117
            aload 0 /* this */
            ldc "LocalVariableTypeTable"
            invokevirtual com.sun.java.util.jar.pack.Package.strip:(Ljava/lang/String;)V
        11: .line 1118
            goto 18
        12: .line 1124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Deprecated"
            invokevirtual com.sun.java.util.jar.pack.Package.strip:(Ljava/lang/String;)V
        13: .line 1125
            aload 0 /* this */
            ldc "Synthetic"
            invokevirtual com.sun.java.util.jar.pack.Package.strip:(Ljava/lang/String;)V
        14: .line 1126
            goto 18
        15: .line 1131
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Exceptions"
            invokevirtual com.sun.java.util.jar.pack.Package.strip:(Ljava/lang/String;)V
        16: .line 1132
            goto 18
        17: .line 1134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.java.util.jar.pack.Package.stripConstantFields:()V
        18: .line 1137
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String what
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lcom/sun/java/util/jar/pack/Package;
            0   19     1  what  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      what  

  public void trimToSize();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 1140
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.trimToSize:()V
         1: .line 1141
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 2
            goto 4
      StackMap locals: com.sun.java.util.jar.pack.Package top java.util.Iterator
      StackMap stack:
         2: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class
            astore 1 /* c */
        start local 1 // com.sun.java.util.jar.pack.Package$Class c
         3: .line 1142
            aload 1 /* c */
            invokevirtual com.sun.java.util.jar.pack.Package$Class.trimToSize:()V
        end local 1 // com.sun.java.util.jar.pack.Package$Class c
         4: .line 1141
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 1144
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.trimToSize:()V
         6: .line 1145
            return
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/java/util/jar/pack/Package;
            3    4     1     c  Lcom/sun/java/util/jar/pack/Package$Class;

  public void strip(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // java.lang.String attrName
         0: .line 1148
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: com.sun.java.util.jar.pack.Package java.lang.String top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class
            astore 2 /* c */
        start local 2 // com.sun.java.util.jar.pack.Package$Class c
         2: .line 1149
            aload 2 /* c */
            aload 1 /* attrName */
            invokevirtual com.sun.java.util.jar.pack.Package$Class.strip:(Ljava/lang/String;)V
        end local 2 // com.sun.java.util.jar.pack.Package$Class c
         3: .line 1148
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1151
            return
        end local 1 // java.lang.String attrName
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/java/util/jar/pack/Package;
            0    5     1  attrName  Ljava/lang/String;
            2    3     2         c  Lcom/sun/java/util/jar/pack/Package$Class;
    MethodParameters:
          Name  Flags
      attrName  

  public void stripConstantFields();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 1154
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 2
            goto 13
      StackMap locals: com.sun.java.util.jar.pack.Package top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class
            astore 1 /* c */
        start local 1 // com.sun.java.util.jar.pack.Package$Class c
         2: .line 1155
            aload 1 /* c */
            getfield com.sun.java.util.jar.pack.Package$Class.fields:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3 /* j */
        start local 3 // java.util.Iterator j
         3: goto 12
         4: .line 1156
      StackMap locals: com.sun.java.util.jar.pack.Package com.sun.java.util.jar.pack.Package$Class java.util.Iterator java.util.Iterator
      StackMap stack:
            aload 3 /* j */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class$Field
            astore 4 /* f */
        start local 4 // com.sun.java.util.jar.pack.Package$Class$Field f
         5: .line 1157
            aload 4 /* f */
            getfield com.sun.java.util.jar.pack.Package$Class$Field.flags:I
            invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
            ifeq 12
         6: .line 1159
            aload 4 /* f */
            getfield com.sun.java.util.jar.pack.Package$Class$Field.flags:I
            invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
            ifeq 12
         7: .line 1160
            aload 4 /* f */
            ldc "ConstantValue"
            invokevirtual com.sun.java.util.jar.pack.Package$Class$Field.getAttribute:(Ljava/lang/String;)Lcom/sun/java/util/jar/pack/Attribute;
            ifnull 12
         8: .line 1161
            aload 4 /* f */
            invokevirtual com.sun.java.util.jar.pack.Package$Class$Field.getName:()Ljava/lang/String;
            ldc "serial"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 12
         9: .line 1162
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            iconst_2
            if_icmple 12
        10: .line 1163
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            new java.lang.StringBuilder
            dup
            ldc ">> Strip "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " ConstantValue"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.fine:(Ljava/lang/String;)V
        11: .line 1164
            aload 3 /* j */
            invokeinterface java.util.Iterator.remove:()V
        end local 4 // com.sun.java.util.jar.pack.Package$Class$Field f
        12: .line 1155
      StackMap locals:
      StackMap stack:
            aload 3 /* j */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 3 // java.util.Iterator j
        end local 1 // com.sun.java.util.jar.pack.Package$Class c
        13: .line 1154
      StackMap locals: com.sun.java.util.jar.pack.Package top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        14: .line 1169
            return
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lcom/sun/java/util/jar/pack/Package;
            2   13     1     c  Lcom/sun/java/util/jar/pack/Package$Class;
            3   13     3     j  Ljava/util/Iterator<Lcom/sun/java/util/jar/pack/Package$Class$Field;>;
            5   12     4     f  Lcom/sun/java/util/jar/pack/Package$Class$Field;

  protected void visitRefs(int, java.util.Collection<com.sun.java.util.jar.pack.ConstantPool$Entry>);
    descriptor: (ILjava/util/Collection;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // int mode
        start local 2 // java.util.Collection refs
         0: .line 1172
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 3
      StackMap locals: com.sun.java.util.jar.pack.Package int java.util.Collection top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class
            astore 3 /* c */
        start local 3 // com.sun.java.util.jar.pack.Package$Class c
         2: .line 1173
            aload 3 /* c */
            iload 1 /* mode */
            aload 2 /* refs */
            invokevirtual com.sun.java.util.jar.pack.Package$Class.visitRefs:(ILjava/util/Collection;)V
        end local 3 // com.sun.java.util.jar.pack.Package$Class c
         3: .line 1172
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1175
            iload 1 /* mode */
            ifeq 10
         5: .line 1176
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals:
      StackMap stack:
         6: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$File
            astore 3 /* f */
        start local 3 // com.sun.java.util.jar.pack.Package$File f
         7: .line 1177
            aload 3 /* f */
            iload 1 /* mode */
            aload 2 /* refs */
            invokevirtual com.sun.java.util.jar.pack.Package$File.visitRefs:(ILjava/util/Collection;)V
        end local 3 // com.sun.java.util.jar.pack.Package$File f
         8: .line 1176
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
         9: .line 1179
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.allInnerClasses:Ljava/util/List;
            iload 1 /* mode */
            aload 2 /* refs */
            invokestatic com.sun.java.util.jar.pack.Package.visitInnerClassRefs:(Ljava/util/Collection;ILjava/util/Collection;)V
        10: .line 1181
      StackMap locals: com.sun.java.util.jar.pack.Package int java.util.Collection
      StackMap stack:
            return
        end local 2 // java.util.Collection refs
        end local 1 // int mode
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lcom/sun/java/util/jar/pack/Package;
            0   11     1  mode  I
            0   11     2  refs  Ljava/util/Collection<Lcom/sun/java/util/jar/pack/ConstantPool$Entry;>;
            2    3     3     c  Lcom/sun/java/util/jar/pack/Package$Class;
            7    8     3     f  Lcom/sun/java/util/jar/pack/Package$File;
    Signature: (ILjava/util/Collection<Lcom/sun/java/util/jar/pack/ConstantPool$Entry;>;)V
    MethodParameters:
      Name  Flags
      mode  
      refs  

  void reorderFiles(boolean, boolean);
    descriptor: (ZZ)V
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // boolean keepClassOrder
        start local 2 // boolean stripDirectories
         0: .line 1190
            iload 1 /* keepClassOrder */
            ifne 2
         1: .line 1192
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokestatic java.util.Collections.sort:(Ljava/util/List;)V
         2: .line 1200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.java.util.jar.pack.Package.getClassStubs:()Ljava/util/List;
            astore 3 /* stubs */
        start local 3 // java.util.List stubs
         3: .line 1201
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4 /* i */
        start local 4 // java.util.Iterator i
         4: goto 9
         5: .line 1202
      StackMap locals: java.util.List java.util.Iterator
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$File
            astore 5 /* file */
        start local 5 // com.sun.java.util.jar.pack.Package$File file
         6: .line 1203
            aload 5 /* file */
            invokevirtual com.sun.java.util.jar.pack.Package$File.isClassStub:()Z
            ifne 8
         7: .line 1204
            iload 2 /* stripDirectories */
            ifeq 9
            aload 5 /* file */
            invokevirtual com.sun.java.util.jar.pack.Package$File.isDirectory:()Z
            ifeq 9
         8: .line 1205
      StackMap locals: com.sun.java.util.jar.pack.Package$File
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.Iterator.remove:()V
        end local 5 // com.sun.java.util.jar.pack.Package$File file
         9: .line 1201
      StackMap locals:
      StackMap stack:
            aload 4 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // java.util.Iterator i
        10: .line 1214
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            new com.sun.java.util.jar.pack.Package$1
            dup
            aload 0 /* this */
            invokespecial com.sun.java.util.jar.pack.Package$1.<init>:(Lcom/sun/java/util/jar/pack/Package;)V
            invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
        11: .line 1238
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            aload 3 /* stubs */
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
        12: .line 1239
            return
        end local 3 // java.util.List stubs
        end local 2 // boolean stripDirectories
        end local 1 // boolean keepClassOrder
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lcom/sun/java/util/jar/pack/Package;
            0   13     1    keepClassOrder  Z
            0   13     2  stripDirectories  Z
            3   13     3             stubs  Ljava/util/List<Lcom/sun/java/util/jar/pack/Package$File;>;
            4   10     4                 i  Ljava/util/Iterator<Lcom/sun/java/util/jar/pack/Package$File;>;
            6    9     5              file  Lcom/sun/java/util/jar/pack/Package$File;
    MethodParameters:
                  Name  Flags
      keepClassOrder    
      stripDirectories  

  void trimStubs();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 1243
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            invokevirtual java.util.ArrayList.listIterator:(I)Ljava/util/ListIterator;
            astore 1 /* i */
        start local 1 // java.util.ListIterator i
         1: goto 10
         2: .line 1244
      StackMap locals: java.util.ListIterator
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$File
            astore 2 /* file */
        start local 2 // com.sun.java.util.jar.pack.Package$File file
         3: .line 1245
            aload 2 /* file */
            invokevirtual com.sun.java.util.jar.pack.Package$File.isTrivialClassStub:()Z
            ifne 7
         4: .line 1246
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            iconst_1
            if_icmple 11
         5: .line 1247
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            new java.lang.StringBuilder
            dup
            ldc "Keeping last non-trivial "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* file */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.fine:(Ljava/lang/String;)V
         6: .line 1248
            goto 11
         7: .line 1250
      StackMap locals: com.sun.java.util.jar.pack.Package$File
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            iconst_2
            if_icmple 9
         8: .line 1251
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            new java.lang.StringBuilder
            dup
            ldc "Removing trivial "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* file */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.fine:(Ljava/lang/String;)V
         9: .line 1252
      StackMap locals:
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.ListIterator.remove:()V
        end local 2 // com.sun.java.util.jar.pack.Package$File file
        10: .line 1243
      StackMap locals:
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 2
        end local 1 // java.util.ListIterator i
        11: .line 1255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            ifle 13
        12: .line 1256
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            new java.lang.StringBuilder
            dup
            ldc "Transmitting "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " files, including per-file data for "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual com.sun.java.util.jar.pack.Package.getClassStubs:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " classes out of "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.info:(Ljava/lang/String;)V
        13: .line 1258
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lcom/sun/java/util/jar/pack/Package;
            1   11     1     i  Ljava/util/ListIterator<Lcom/sun/java/util/jar/pack/Package$File;>;
            3   10     2  file  Lcom/sun/java/util/jar/pack/Package$File;

  void buildGlobalConstantPool(java.util.Set<com.sun.java.util.jar.pack.ConstantPool$Entry>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.sun.java.util.jar.pack.Package this
        start local 1 // java.util.Set requiredEntries
         0: .line 1262
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            iconst_1
            if_icmple 2
         1: .line 1263
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            ldc "Checking for unused CP entries"
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.fine:(Ljava/lang/String;)V
         2: .line 1264
      StackMap locals:
      StackMap stack:
            aload 1 /* requiredEntries */
            ldc ""
            invokestatic com.sun.java.util.jar.pack.Package.getRefString:(Ljava/lang/String;)Lcom/sun/java/util/jar/pack/ConstantPool$Utf8Entry;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 1265
            aload 0 /* this */
            iconst_1
            aload 1 /* requiredEntries */
            invokevirtual com.sun.java.util.jar.pack.Package.visitRefs:(ILjava/util/Collection;)V
         4: .line 1266
            aload 1 /* requiredEntries */
            iconst_0
            invokestatic com.sun.java.util.jar.pack.ConstantPool.completeReferencesIn:(Ljava/util/Set;Z)V
         5: .line 1267
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            iconst_1
            if_icmple 7
         6: .line 1268
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            ldc "Sorting CP entries"
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.fine:(Ljava/lang/String;)V
         7: .line 1269
      StackMap locals:
      StackMap stack:
            ldc "unsorted"
            aload 1 /* requiredEntries */
            invokestatic com.sun.java.util.jar.pack.ConstantPool.makeIndex:(Ljava/lang/String;Ljava/util/Collection;)Lcom/sun/java/util/jar/pack/ConstantPool$Index;
            astore 2 /* cpAllU */
        start local 2 // com.sun.java.util.jar.pack.ConstantPool$Index cpAllU
         8: .line 1270
            aload 2 /* cpAllU */
            invokestatic com.sun.java.util.jar.pack.ConstantPool.partitionByTag:(Lcom/sun/java/util/jar/pack/ConstantPool$Index;)[Lcom/sun/java/util/jar/pack/ConstantPool$Index;
            astore 3 /* byTagU */
        start local 3 // com.sun.java.util.jar.pack.ConstantPool$Index[] byTagU
         9: .line 1271
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        10: goto 18
        11: .line 1272
      StackMap locals: com.sun.java.util.jar.pack.ConstantPool$Index com.sun.java.util.jar.pack.ConstantPool$Index[] int
      StackMap stack:
            getstatic com.sun.java.util.jar.pack.ConstantPool.TAGS_IN_ORDER:[B
            iload 4 /* i */
            baload
            istore 5 /* tag */
        start local 5 // byte tag
        12: .line 1274
            aload 3 /* byTagU */
            iload 5 /* tag */
            aaload
            astore 6 /* ix */
        start local 6 // com.sun.java.util.jar.pack.ConstantPool$Index ix
        13: .line 1275
            aload 6 /* ix */
            ifnonnull 14
            goto 17
        14: .line 1276
      StackMap locals: int com.sun.java.util.jar.pack.ConstantPool$Index
      StackMap stack:
            aload 6 /* ix */
            invokestatic com.sun.java.util.jar.pack.ConstantPool.sort:(Lcom/sun/java/util/jar/pack/ConstantPool$Index;)V
        15: .line 1277
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.cp:Lcom/sun/java/util/jar/pack/ConstantPool$IndexGroup;
            iload 5 /* tag */
            aload 6 /* ix */
            invokevirtual com.sun.java.util.jar.pack.ConstantPool$IndexGroup.initIndexByTag:(BLcom/sun/java/util/jar/pack/ConstantPool$Index;)V
        16: .line 1278
            aload 3 /* byTagU */
            iload 5 /* tag */
            aconst_null
            aastore
        end local 6 // com.sun.java.util.jar.pack.ConstantPool$Index ix
        end local 5 // byte tag
        17: .line 1271
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 4 /* i */
            getstatic com.sun.java.util.jar.pack.ConstantPool.TAGS_IN_ORDER:[B
            arraylength
            if_icmplt 11
        end local 4 // int i
        19: .line 1280
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        20: goto 24
        21: .line 1281
      StackMap locals:
      StackMap stack:
            aload 3 /* byTagU */
            iload 4 /* i */
            aaload
            astore 5 /* ix */
        start local 5 // com.sun.java.util.jar.pack.ConstantPool$Index ix
        22: .line 1282
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 23
            aload 5 /* ix */
            ifnull 23
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 5 // com.sun.java.util.jar.pack.ConstantPool$Index ix
        23: .line 1280
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 4 /* i */
            aload 3 /* byTagU */
            arraylength
            if_icmplt 21
        end local 4 // int i
        25: .line 1284
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        26: goto 32
        27: .line 1285
      StackMap locals:
      StackMap stack:
            getstatic com.sun.java.util.jar.pack.ConstantPool.TAGS_IN_ORDER:[B
            iload 4 /* i */
            baload
            istore 5 /* tag */
        start local 5 // byte tag
        28: .line 1286
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.cp:Lcom/sun/java/util/jar/pack/ConstantPool$IndexGroup;
            iload 5 /* tag */
            invokevirtual com.sun.java.util.jar.pack.ConstantPool$IndexGroup.getIndexByTag:(B)Lcom/sun/java/util/jar/pack/ConstantPool$Index;
            astore 6 /* ix */
        start local 6 // com.sun.java.util.jar.pack.ConstantPool$Index ix
        29: .line 1287
            getstatic com.sun.java.util.jar.pack.Package.$assertionsDisabled:Z
            ifne 30
            aload 6 /* ix */
            invokevirtual com.sun.java.util.jar.pack.ConstantPool$Index.assertIsSorted:()Z
            ifne 30
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        30: .line 1288
      StackMap locals: int com.sun.java.util.jar.pack.ConstantPool$Index
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.verbose:I
            iconst_2
            if_icmple 31
            getstatic com.sun.java.util.jar.pack.Utils.log:Lcom/sun/java/util/jar/pack/Utils$Pack200Logger;
            aload 6 /* ix */
            invokevirtual com.sun.java.util.jar.pack.ConstantPool$Index.dumpString:()Ljava/lang/String;
            invokevirtual com.sun.java.util.jar.pack.Utils$Pack200Logger.fine:(Ljava/lang/String;)V
        end local 6 // com.sun.java.util.jar.pack.ConstantPool$Index ix
        end local 5 // byte tag
        31: .line 1284
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 4 /* i */
            getstatic com.sun.java.util.jar.pack.ConstantPool.TAGS_IN_ORDER:[B
            arraylength
            if_icmplt 27
        end local 4 // int i
        33: .line 1290
            return
        end local 3 // com.sun.java.util.jar.pack.ConstantPool$Index[] byTagU
        end local 2 // com.sun.java.util.jar.pack.ConstantPool$Index cpAllU
        end local 1 // java.util.Set requiredEntries
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   34     0             this  Lcom/sun/java/util/jar/pack/Package;
            0   34     1  requiredEntries  Ljava/util/Set<Lcom/sun/java/util/jar/pack/ConstantPool$Entry;>;
            8   34     2           cpAllU  Lcom/sun/java/util/jar/pack/ConstantPool$Index;
            9   34     3           byTagU  [Lcom/sun/java/util/jar/pack/ConstantPool$Index;
           10   19     4                i  I
           12   17     5              tag  B
           13   17     6               ix  Lcom/sun/java/util/jar/pack/ConstantPool$Index;
           20   25     4                i  I
           22   23     5               ix  Lcom/sun/java/util/jar/pack/ConstantPool$Index;
           26   33     4                i  I
           28   31     5              tag  B
           29   31     6               ix  Lcom/sun/java/util/jar/pack/ConstantPool$Index;
    Signature: (Ljava/util/Set<Lcom/sun/java/util/jar/pack/ConstantPool$Entry;>;)V
    MethodParameters:
                 Name  Flags
      requiredEntries  

  void ensureAllClassFiles();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Package this
         0: .line 1294
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 1 /* fileSet */
        start local 1 // java.util.Set fileSet
         1: .line 1295
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.classes:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: com.sun.java.util.jar.pack.Package java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.java.util.jar.pack.Package$Class
            astore 2 /* cls */
        start local 2 // com.sun.java.util.jar.pack.Package$Class cls
         3: .line 1297
            aload 1 /* fileSet */
            aload 2 /* cls */
            getfield com.sun.java.util.jar.pack.Package$Class.file:Lcom/sun/java/util/jar/pack/Package$File;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 5
         4: .line 1298
            aload 0 /* this */
            getfield com.sun.java.util.jar.pack.Package.files:Ljava/util/ArrayList;
            aload 2 /* cls */
            getfield com.sun.java.util.jar.pack.Package$Class.file:Lcom/sun/java/util/jar/pack/Package$File;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // com.sun.java.util.jar.pack.Package$Class cls
         5: .line 1295
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1300
            return
        end local 1 // java.util.Set fileSet
        end local 0 // com.sun.java.util.jar.pack.Package this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/sun/java/util/jar/pack/Package;
            1    7     1  fileSet  Ljava/util/Set<Lcom/sun/java/util/jar/pack/Package$File;>;
            3    5     2      cls  Lcom/sun/java/util/jar/pack/Package$Class;
}
SourceFile: "Package.java"
NestMembers:
  com.sun.java.util.jar.pack.Package$1  com.sun.java.util.jar.pack.Package$Class  com.sun.java.util.jar.pack.Package$Class$Field  com.sun.java.util.jar.pack.Package$Class$Member  com.sun.java.util.jar.pack.Package$Class$Method  com.sun.java.util.jar.pack.Package$File  com.sun.java.util.jar.pack.Package$InnerClass  com.sun.java.util.jar.pack.Package$Version
InnerClasses:
  public Layout = com.sun.java.util.jar.pack.Attribute$Layout of com.sun.java.util.jar.pack.Attribute
  public ClassEntry = com.sun.java.util.jar.pack.ConstantPool$ClassEntry of com.sun.java.util.jar.pack.ConstantPool
  public abstract Entry = com.sun.java.util.jar.pack.ConstantPool$Entry of com.sun.java.util.jar.pack.ConstantPool
  public final Index = com.sun.java.util.jar.pack.ConstantPool$Index of com.sun.java.util.jar.pack.ConstantPool
  public IndexGroup = com.sun.java.util.jar.pack.ConstantPool$IndexGroup of com.sun.java.util.jar.pack.ConstantPool
  public abstract LiteralEntry = com.sun.java.util.jar.pack.ConstantPool$LiteralEntry of com.sun.java.util.jar.pack.ConstantPool
  public Utf8Entry = com.sun.java.util.jar.pack.ConstantPool$Utf8Entry of com.sun.java.util.jar.pack.ConstantPool
  com.sun.java.util.jar.pack.Package$1
  public final Class = com.sun.java.util.jar.pack.Package$Class of com.sun.java.util.jar.pack.Package
  public Field = com.sun.java.util.jar.pack.Package$Class$Field of com.sun.java.util.jar.pack.Package$Class
  public Method = com.sun.java.util.jar.pack.Package$Class$Method of com.sun.java.util.jar.pack.Package$Class
  public final File = com.sun.java.util.jar.pack.Package$File of com.sun.java.util.jar.pack.Package
  InnerClass = com.sun.java.util.jar.pack.Package$InnerClass of com.sun.java.util.jar.pack.Package
  protected final Version = com.sun.java.util.jar.pack.Package$Version of com.sun.java.util.jar.pack.Package
  Pack200Logger = com.sun.java.util.jar.pack.Utils$Pack200Logger of com.sun.java.util.jar.pack.Utils