class com.sun.java.util.jar.pack.Driver
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.java.util.jar.pack.Driver
  super_class: java.lang.Object
{
  private static final java.util.ResourceBundle RESOURCE;
    descriptor: Ljava/util/ResourceBundle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static boolean suppressDeprecateMsg;
    descriptor: Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static final java.lang.String PACK200_OPTION_MAP;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "--repack                 $ \n  -r +>- @--repack              $ \n--no-gzip                $ \n  -g +>- @--no-gzip             $ \n--strip-debug            $ \n  -G +>- @--strip-debug         $ \n--no-keep-file-order     $ \n  -O +>- @--no-keep-file-order  $ \n--segment-limit=      *> = \n  -S +>  @--segment-limit=      = \n--effort=             *> = \n  -E +>  @--effort=             = \n--deflate-hint=       *> = \n  -H +>  @--deflate-hint=       = \n--modification-time=  *> = \n  -m +>  @--modification-time=  = \n--pass-file=        *> &\u0000 \n  -P +>  @--pass-file=        &\u0000 \n--unknown-attribute=  *> = \n  -U +>  @--unknown-attribute=  = \n--class-attribute=  *> &\u0000 \n  -C +>  @--class-attribute=  &\u0000 \n--field-attribute=  *> &\u0000 \n  -F +>  @--field-attribute=  &\u0000 \n--method-attribute= *> &\u0000 \n  -M +>  @--method-attribute= &\u0000 \n--code-attribute=   *> &\u0000 \n  -D +>  @--code-attribute=   &\u0000 \n--config-file=      *>   . \n  -f +>  @--config-file=        . \n--no-strip-debug  !--strip-debug         \n--gzip            !--no-gzip             \n--keep-file-order !--no-keep-file-order  \n--verbose                $ \n  -v +>- @--verbose             $ \n--quiet        !--verbose  \n  -q +>- !--verbose               \n--log-file=           *> = \n  -l +>  @--log-file=           = \n--version                . \n  -V +>  @--version             . \n--help               . \n  -? +> @--help . \n  -h +> @--help . \n--           . \n-   +?    >- . \n"

  private static final java.lang.String UNPACK200_OPTION_MAP;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "--deflate-hint=       *> = \n  -H +>  @--deflate-hint=       = \n--verbose                $ \n  -v +>- @--verbose             $ \n--quiet        !--verbose  \n  -q +>- !--verbose               \n--remove-pack-file       $ \n  -r +>- @--remove-pack-file    $ \n--log-file=           *> = \n  -l +>  @--log-file=           = \n--config-file=        *> . \n  -f +>  @--config-file=        . \n--           . \n-   +?    >- . \n--version                . \n  -V +>  @--version             . \n--help               . \n  -? +> @--help . \n  -h +> @--help . \n"

  private static final java.lang.String[] PACK200_PROPERTY_TO_OPTION;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] UNPACK200_PROPERTY_TO_OPTION;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  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=0, args_size=0
         0: .line 61
            ldc Lcom/sun/java/util/jar/pack/Driver;
            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.Driver.$assertionsDisabled:Z
         3: .line 63
            ldc "com.sun.java.util.jar.pack.DriverResource"
            invokestatic java.util.ResourceBundle.getBundle:(Ljava/lang/String;)Ljava/util/ResourceBundle;
         4: .line 62
            putstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
         5: .line 64
            iconst_0
            putstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
         6: .line 508
            bipush 26
            anewarray java.lang.String
            dup
            iconst_0
         7: .line 509
            ldc "pack.segment.limit"
            aastore
            dup
            iconst_1
            ldc "--segment-limit="
            aastore
            dup
            iconst_2
         8: .line 510
            ldc "pack.keep.file.order"
            aastore
            dup
            iconst_3
            ldc "--no-keep-file-order"
            aastore
            dup
            iconst_4
         9: .line 511
            ldc "pack.effort"
            aastore
            dup
            iconst_5
            ldc "--effort="
            aastore
            dup
            bipush 6
        10: .line 512
            ldc "pack.deflate.hint"
            aastore
            dup
            bipush 7
            ldc "--deflate-hint="
            aastore
            dup
            bipush 8
        11: .line 513
            ldc "pack.modification.time"
            aastore
            dup
            bipush 9
            ldc "--modification-time="
            aastore
            dup
            bipush 10
        12: .line 514
            ldc "pack.pass.file."
            aastore
            dup
            bipush 11
            ldc "--pass-file="
            aastore
            dup
            bipush 12
        13: .line 515
            ldc "pack.unknown.attribute"
            aastore
            dup
            bipush 13
            ldc "--unknown-attribute="
            aastore
            dup
            bipush 14
        14: .line 516
            ldc "pack.class.attribute."
            aastore
            dup
            bipush 15
            ldc "--class-attribute="
            aastore
            dup
            bipush 16
        15: .line 517
            ldc "pack.field.attribute."
            aastore
            dup
            bipush 17
            ldc "--field-attribute="
            aastore
            dup
            bipush 18
        16: .line 518
            ldc "pack.method.attribute."
            aastore
            dup
            bipush 19
            ldc "--method-attribute="
            aastore
            dup
            bipush 20
        17: .line 519
            ldc "pack.code.attribute."
            aastore
            dup
            bipush 21
            ldc "--code-attribute="
            aastore
            dup
            bipush 22
        18: .line 521
            ldc "com.sun.java.util.jar.pack.verbose"
            aastore
            dup
            bipush 23
            ldc "--verbose"
            aastore
            dup
            bipush 24
        19: .line 522
            ldc "com.sun.java.util.jar.pack.strip.debug"
            aastore
            dup
            bipush 25
            ldc "--strip-debug"
            aastore
        20: .line 508
            putstatic com.sun.java.util.jar.pack.Driver.PACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
        21: .line 525
            bipush 6
            anewarray java.lang.String
            dup
            iconst_0
        22: .line 526
            ldc "unpack.deflate.hint"
            aastore
            dup
            iconst_1
            ldc "--deflate-hint="
            aastore
            dup
            iconst_2
        23: .line 528
            ldc "com.sun.java.util.jar.pack.verbose"
            aastore
            dup
            iconst_3
            ldc "--verbose"
            aastore
            dup
            iconst_4
        24: .line 529
            ldc "com.sun.java.util.jar.pack.unpack.remove.packfile"
            aastore
            dup
            iconst_5
            ldc "--remove-pack-file"
            aastore
        25: .line 525
            putstatic com.sun.java.util.jar.pack.Driver.UNPACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
        26: .line 530
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.java.util.jar.pack.Driver this
         0: .line 61
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.java.util.jar.pack.Driver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/java/util/jar/pack/Driver;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=29, args_size=1
        start local 0 // java.lang.String[] ava
         0: .line 67
            new java.util.ArrayList
            dup
            aload 0 /* ava */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 1 /* av */
        start local 1 // java.util.List av
         1: .line 69
            iconst_1
            istore 2 /* doPack */
        start local 2 // boolean doPack
         2: .line 70
            iconst_0
            istore 3 /* doUnpack */
        start local 3 // boolean doUnpack
         3: .line 71
            iconst_0
            istore 4 /* doRepack */
        start local 4 // boolean doRepack
         4: .line 72
            iconst_1
            istore 5 /* doZip */
        start local 5 // boolean doZip
         5: .line 73
            aload 1 /* av */
            ldc "-XDsuppress-tool-removal-message"
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            putstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
         6: .line 74
            aconst_null
            astore 6 /* logFile */
        start local 6 // java.lang.String logFile
         7: .line 75
            ldc "com.sun.java.util.jar.pack.verbose"
            astore 7 /* verboseProp */
        start local 7 // java.lang.String verboseProp
         8: .line 79
            aload 1 /* av */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 9
            ldc ""
            goto 10
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String
      StackMap stack:
         9: aload 1 /* av */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
      StackMap locals:
      StackMap stack: java.lang.String
        10: astore 8 /* arg0 */
        start local 8 // java.lang.String arg0
        11: .line 80
            aload 8 /* arg0 */
            dup
            astore 9
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
           1333303225: 12
           1559677394: 13
              default: 19
          }
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
        12: aload 9
            ldc "--pack"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 14
            goto 19
      StackMap locals:
      StackMap stack:
        13: aload 9
            ldc "--unpack"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 16
            goto 19
        14: .line 82
      StackMap locals:
      StackMap stack:
            aload 1 /* av */
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        15: .line 83
            goto 19
        16: .line 85
      StackMap locals:
      StackMap stack:
            aload 1 /* av */
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        17: .line 86
            iconst_0
            istore 2 /* doPack */
        18: .line 87
            iconst_1
            istore 3 /* doUnpack */
        end local 8 // java.lang.String arg0
        19: .line 92
      StackMap locals:
      StackMap stack:
            getstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
            ifne 21
        20: .line 93
            iload 2 /* doPack */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokestatic com.sun.java.util.jar.pack.Driver.printDeprecateWarning:(ZLjava/io/PrintStream;)V
        21: .line 97
      StackMap locals:
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 8 /* engProps */
        start local 8 // java.util.Map engProps
        22: .line 98
            aload 8 /* engProps */
            aload 7 /* verboseProp */
            aload 7 /* verboseProp */
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 102
            iload 2 /* doPack */
            ifeq 27
        24: .line 103
            ldc "--repack                 $ \n  -r +>- @--repack              $ \n--no-gzip                $ \n  -g +>- @--no-gzip             $ \n--strip-debug            $ \n  -G +>- @--strip-debug         $ \n--no-keep-file-order     $ \n  -O +>- @--no-keep-file-order  $ \n--segment-limit=      *> = \n  -S +>  @--segment-limit=      = \n--effort=             *> = \n  -E +>  @--effort=             = \n--deflate-hint=       *> = \n  -H +>  @--deflate-hint=       = \n--modification-time=  *> = \n  -m +>  @--modification-time=  = \n--pass-file=        *> &\u0000 \n  -P +>  @--pass-file=        &\u0000 \n--unknown-attribute=  *> = \n  -U +>  @--unknown-attribute=  = \n--class-attribute=  *> &\u0000 \n  -C +>  @--class-attribute=  &\u0000 \n--field-attribute=  *> &\u0000 \n  -F +>  @--field-attribute=  &\u0000 \n--method-attribute= *> &\u0000 \n  -M +>  @--method-attribute= &\u0000 \n--code-attribute=   *> &\u0000 \n  -D +>  @--code-attribute=   &\u0000 \n--config-file=      *>   . \n  -f +>  @--config-file=        . \n--no-strip-debug  !--strip-debug         \n--gzip            !--no-gzip             \n--keep-file-order !--no-keep-file-order  \n--verbose                $ \n  -v +>- @--verbose             $ \n--quiet        !--verbose  \n  -q +>- !--verbose               \n--log-file=           *> = \n  -l +>  @--log-file=           = \n--version                . \n  -V +>  @--version             . \n--help               . \n  -? +> @--help . \n  -h +> @--help . \n--           . \n-   +?    >- . \n"
            astore 9 /* optionMap */
        start local 9 // java.lang.String optionMap
        25: .line 104
            getstatic com.sun.java.util.jar.pack.Driver.PACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
            astore 10 /* propTable */
        start local 10 // java.lang.String[] propTable
        26: .line 105
            goto 29
        end local 10 // java.lang.String[] propTable
        end local 9 // java.lang.String optionMap
        27: .line 106
      StackMap locals: java.util.Map
      StackMap stack:
            ldc "--deflate-hint=       *> = \n  -H +>  @--deflate-hint=       = \n--verbose                $ \n  -v +>- @--verbose             $ \n--quiet        !--verbose  \n  -q +>- !--verbose               \n--remove-pack-file       $ \n  -r +>- @--remove-pack-file    $ \n--log-file=           *> = \n  -l +>  @--log-file=           = \n--config-file=        *> . \n  -f +>  @--config-file=        . \n--           . \n-   +?    >- . \n--version                . \n  -V +>  @--version             . \n--help               . \n  -? +> @--help . \n  -h +> @--help . \n"
            astore 9 /* optionMap */
        start local 9 // java.lang.String optionMap
        28: .line 107
            getstatic com.sun.java.util.jar.pack.Driver.UNPACK200_PROPERTY_TO_OPTION:[Ljava/lang/String;
            astore 10 /* propTable */
        start local 10 // java.lang.String[] propTable
        29: .line 111
      StackMap locals: java.lang.String java.lang.String[]
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 11 /* avProps */
        start local 11 // java.util.Map avProps
        30: .line 114
      StackMap locals: java.util.Map
      StackMap stack:
            aload 1 /* av */
            aload 9 /* optionMap */
            aload 11 /* avProps */
            invokestatic com.sun.java.util.jar.pack.Driver.parseCommandOptions:(Ljava/util/List;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
            astore 12 /* state */
        start local 12 // java.lang.String state
        31: .line 117
            aload 11 /* avProps */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 13 /* opti */
        start local 13 // java.util.Iterator opti
        32: .line 118
            goto 76
        33: .line 119
      StackMap locals: java.lang.String java.util.Iterator
      StackMap stack:
            aload 13 /* opti */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 14 /* opt */
        start local 14 // java.lang.String opt
        34: .line 120
            aconst_null
            astore 15 /* prop */
        start local 15 // java.lang.String prop
        35: .line 121
            iconst_0
            istore 16 /* i */
        start local 16 // int i
        36: goto 41
        37: .line 122
      StackMap locals: java.lang.String java.lang.String int
      StackMap stack:
            aload 14 /* opt */
            aload 10 /* propTable */
            iconst_1
            iload 16 /* i */
            iadd
            aaload
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 40
        38: .line 123
            aload 10 /* propTable */
            iconst_0
            iload 16 /* i */
            iadd
            aaload
            astore 15 /* prop */
        39: .line 124
            goto 42
        40: .line 121
      StackMap locals:
      StackMap stack:
            iinc 16 /* i */ 2
      StackMap locals:
      StackMap stack:
        41: iload 16 /* i */
            aload 10 /* propTable */
            arraylength
            if_icmplt 37
        end local 16 // int i
        42: .line 127
      StackMap locals:
      StackMap stack:
            aload 15 /* prop */
            ifnull 76
        43: .line 128
            aload 11 /* avProps */
            aload 14 /* opt */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 16 /* val */
        start local 16 // java.lang.String val
        44: .line 129
            aload 13 /* opti */
            invokeinterface java.util.Iterator.remove:()V
        45: .line 130
            aload 15 /* prop */
            ldc "."
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 60
        46: .line 132
            aload 14 /* opt */
            ldc "--verbose"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 58
        47: .line 133
            aload 14 /* opt */
            ldc "="
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 58
        48: .line 135
            aload 16 /* val */
            ifnull 49
            iconst_1
            goto 50
      StackMap locals: java.lang.String
      StackMap stack:
        49: iconst_0
      StackMap locals:
      StackMap stack: int
        50: istore 17 /* flag */
        start local 17 // boolean flag
        51: .line 136
            aload 14 /* opt */
            ldc "--no-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 55
        52: .line 137
            iload 17 /* flag */
            ifeq 53
            iconst_0
            goto 54
      StackMap locals: int
      StackMap stack:
        53: iconst_1
      StackMap locals:
      StackMap stack: int
        54: istore 17 /* flag */
        55: .line 138
      StackMap locals:
      StackMap stack:
            iload 17 /* flag */
            ifeq 56
            ldc "true"
            goto 57
      StackMap locals:
      StackMap stack:
        56: ldc "false"
      StackMap locals:
      StackMap stack: java.lang.String
        57: astore 16 /* val */
        end local 17 // boolean flag
        58: .line 140
      StackMap locals:
      StackMap stack:
            aload 8 /* engProps */
            aload 15 /* prop */
            aload 16 /* val */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        59: .line 141
            goto 76
      StackMap locals:
      StackMap stack:
        60: aload 15 /* prop */
            ldc ".attribute."
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 68
        61: .line 142
            aload 16 /* val */
            ldc "\u0000"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 20
            arraylength
            istore 19
            iconst_0
            istore 18
            goto 66
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String top int int java.lang.String[]
      StackMap stack:
        62: aload 20
            iload 18
            aaload
            astore 17 /* val1 */
        start local 17 // java.lang.String val1
        63: .line 143
            aload 17 /* val1 */
            ldc "="
            iconst_2
            invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
            astore 21 /* val2 */
        start local 21 // java.lang.String[] val2
        64: .line 144
            aload 8 /* engProps */
            new java.lang.StringBuilder
            dup
            aload 15 /* prop */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 21 /* val2 */
            iconst_0
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 21 /* val2 */
            iconst_1
            aaload
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 21 // java.lang.String[] val2
        end local 17 // java.lang.String val1
        65: .line 142
            iinc 18 1
      StackMap locals:
      StackMap stack:
        66: iload 18
            iload 19
            if_icmplt 62
        67: .line 146
            goto 76
        68: .line 148
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String
      StackMap stack:
            iconst_1
            istore 17 /* idx */
        start local 17 // int idx
        69: .line 149
            aload 16 /* val */
            ldc "\u0000"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 21
            arraylength
            istore 20
            iconst_0
            istore 19
            goto 75
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String int top int int java.lang.String[]
      StackMap stack:
        70: aload 21
            iload 19
            aaload
            astore 18 /* val1 */
        start local 18 // java.lang.String val1
        71: .line 152
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String int java.lang.String int int java.lang.String[]
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 15 /* prop */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "cli."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 17 /* idx */
            iinc 17 /* idx */ 1
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 22 /* prop1 */
        start local 22 // java.lang.String prop1
        72: .line 153
            aload 8 /* engProps */
            aload 22 /* prop1 */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 71
        73: .line 154
            aload 8 /* engProps */
            aload 22 /* prop1 */
            aload 18 /* val1 */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 22 // java.lang.String prop1
        end local 18 // java.lang.String val1
        74: .line 149
            iinc 19 1
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String java.lang.String int top int int java.lang.String[]
      StackMap stack:
        75: iload 19
            iload 20
            if_icmplt 70
        end local 17 // int idx
        end local 16 // java.lang.String val
        end local 15 // java.lang.String prop
        end local 14 // java.lang.String opt
        76: .line 118
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator
      StackMap stack:
            aload 13 /* opti */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 33
        end local 13 // java.util.Iterator opti
        77: .line 161
            ldc "--config-file="
            aload 12 /* state */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 96
        78: .line 162
            aload 1 /* av */
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 13 /* propFile */
        start local 13 // java.lang.String propFile
        79: .line 163
            new java.util.Properties
            dup
            invokespecial java.util.Properties.<init>:()V
            astore 14 /* fileProps */
        start local 14 // java.util.Properties fileProps
        80: .line 164
            aconst_null
            astore 15
            aconst_null
            astore 16
        81: new java.io.FileInputStream
            dup
            aload 13 /* propFile */
            invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
            astore 17 /* propIn */
        start local 17 // java.io.InputStream propIn
        82: .line 165
            aload 14 /* fileProps */
            aload 17 /* propIn */
            invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
        83: .line 166
            aload 17 /* propIn */
            ifnull 89
            aload 17 /* propIn */
            invokevirtual java.io.InputStream.close:()V
            goto 89
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.lang.String java.util.Properties java.lang.Throwable java.lang.Throwable java.io.InputStream
      StackMap stack: java.lang.Throwable
        84: astore 15
            aload 17 /* propIn */
            ifnull 85
            aload 17 /* propIn */
            invokevirtual java.io.InputStream.close:()V
        end local 17 // java.io.InputStream propIn
      StackMap locals:
      StackMap stack:
        85: aload 15
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        86: astore 16
            aload 15
            ifnonnull 87
            aload 16
            astore 15
            goto 88
      StackMap locals:
      StackMap stack:
        87: aload 15
            aload 16
            if_acmpeq 88
            aload 15
            aload 16
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        88: aload 15
            athrow
        89: .line 167
      StackMap locals:
      StackMap stack:
            aload 8 /* engProps */
            aload 7 /* verboseProp */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 91
        90: .line 168
            aload 14 /* fileProps */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual java.util.Properties.list:(Ljava/io/PrintStream;)V
        91: .line 169
      StackMap locals:
      StackMap stack:
            aload 14 /* fileProps */
            invokevirtual java.util.Properties.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 16
            goto 94
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.lang.String java.util.Properties top java.util.Iterator
      StackMap stack:
        92: aload 16
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 15 /* me */
        start local 15 // java.util.Map$Entry me
        93: .line 170
            aload 8 /* engProps */
            aload 15 /* me */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 15 /* me */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 15 // java.util.Map$Entry me
        94: .line 169
      StackMap locals:
      StackMap stack:
            aload 16
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 92
        end local 14 // java.util.Properties fileProps
        end local 13 // java.lang.String propFile
        95: .line 172
            goto 30
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String
      StackMap stack:
        96: ldc "--version"
            aload 12 /* state */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 101
        97: .line 173
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "VERSION"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        98: .line 174
            ldc Lcom/sun/java/util/jar/pack/Driver;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc "1.31, 07/05/05"
            aastore
        99: .line 173
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       100: .line 175
            return
       101: .line 176
      StackMap locals:
      StackMap stack:
            ldc "--help"
            aload 12 /* state */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 110
       102: .line 177
            iload 2 /* doPack */
            iconst_1
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
       103: .line 178
            iconst_0
            invokestatic java.lang.System.exit:(I)V
       104: .line 179
            return
        end local 12 // java.lang.String state
       105: .line 184
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map
      StackMap stack: java.lang.IllegalArgumentException
            astore 12 /* ee */
        start local 12 // java.lang.IllegalArgumentException ee
       106: .line 185
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "BAD_ARGUMENT"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 12 /* ee */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       107: .line 186
            iload 2 /* doPack */
            iconst_0
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
       108: .line 187
            iconst_2
            invokestatic java.lang.System.exit:(I)V
       109: .line 188
            return
        end local 12 // java.lang.IllegalArgumentException ee
       110: .line 192
      StackMap locals:
      StackMap stack:
            aload 11 /* avProps */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 13
            goto 129
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map top java.util.Iterator
      StackMap stack:
       111: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* opt */
        start local 12 // java.lang.String opt
       112: .line 193
            aload 11 /* avProps */
            aload 12 /* opt */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 14 /* val */
        start local 14 // java.lang.String val
       113: .line 194
            aload 12 /* opt */
            dup
            astore 15
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 3
           -845245370: 114
           1339571416: 115
           1465478252: 116
              default: 125
          }
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map java.lang.String java.util.Iterator java.lang.String java.lang.String
      StackMap stack:
       114: aload 15
            ldc "--no-gzip"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 119
            goto 125
      StackMap locals:
      StackMap stack:
       115: aload 15
            ldc "--log-file="
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 123
            goto 125
      StackMap locals:
      StackMap stack:
       116: aload 15
            ldc "--repack"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 117
            goto 125
       117: .line 196
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 4 /* doRepack */
       118: .line 197
            goto 129
       119: .line 199
      StackMap locals:
      StackMap stack:
            aload 14 /* val */
            ifnonnull 120
            iconst_1
            goto 121
      StackMap locals:
      StackMap stack:
       120: iconst_0
      StackMap locals:
      StackMap stack: int
       121: istore 5 /* doZip */
       122: .line 200
            goto 129
       123: .line 202
      StackMap locals:
      StackMap stack:
            aload 14 /* val */
            astore 6 /* logFile */
       124: .line 203
            goto 129
       125: .line 205
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
       126: .line 206
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "BAD_OPTION"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
       127: .line 207
            aload 12 /* opt */
            aastore
            dup
            iconst_1
            aload 11 /* avProps */
            aload 12 /* opt */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aastore
       128: .line 205
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 14 // java.lang.String val
        end local 12 // java.lang.String opt
       129: .line 192
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 111
       130: .line 211
            aload 6 /* logFile */
            ifnull 136
            aload 6 /* logFile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 136
       131: .line 212
            aload 6 /* logFile */
            ldc "-"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 134
       132: .line 213
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokestatic java.lang.System.setErr:(Ljava/io/PrintStream;)V
       133: .line 214
            goto 136
       134: .line 215
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map
      StackMap stack:
            new java.io.FileOutputStream
            dup
            aload 6 /* logFile */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
            astore 12 /* log */
        start local 12 // java.io.OutputStream log
       135: .line 217
            new java.io.PrintStream
            dup
            aload 12 /* log */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            invokestatic java.lang.System.setErr:(Ljava/io/PrintStream;)V
        end local 12 // java.io.OutputStream log
       136: .line 221
      StackMap locals:
      StackMap stack:
            aload 8 /* engProps */
            aload 7 /* verboseProp */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 137
            iconst_1
            goto 138
      StackMap locals:
      StackMap stack:
       137: iconst_0
      StackMap locals:
      StackMap stack: int
       138: istore 12 /* verbose */
        start local 12 // boolean verbose
       139: .line 223
            ldc ""
            astore 13 /* packfile */
        start local 13 // java.lang.String packfile
       140: .line 224
            aload 1 /* av */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 142
       141: .line 225
            aload 1 /* av */
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 13 /* packfile */
       142: .line 227
      StackMap locals: int java.lang.String
      StackMap stack:
            ldc ""
            astore 14 /* jarfile */
        start local 14 // java.lang.String jarfile
       143: .line 228
            aload 1 /* av */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 145
       144: .line 229
            aload 1 /* av */
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 14 /* jarfile */
       145: .line 231
      StackMap locals: java.lang.String
      StackMap stack:
            ldc ""
            astore 15 /* newfile */
        start local 15 // java.lang.String newfile
       146: .line 232
            ldc ""
            astore 16 /* bakfile */
        start local 16 // java.lang.String bakfile
       147: .line 233
            ldc ""
            astore 17 /* tmpfile */
        start local 17 // java.lang.String tmpfile
       148: .line 234
            iload 4 /* doRepack */
            ifeq 164
       149: .line 238
            aload 13 /* packfile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc ".pack"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 152
       150: .line 239
            aload 13 /* packfile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc ".pac"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 152
       151: .line 240
            aload 13 /* packfile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc ".gz"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 158
       152: .line 241
      StackMap locals: java.lang.String java.lang.String java.lang.String
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
       153: .line 242
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "BAD_REPACK_OUTPUT"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
       154: .line 243
            aload 13 /* packfile */
            aastore
       155: .line 241
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       156: .line 244
            iload 2 /* doPack */
            iconst_0
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
       157: .line 245
            iconst_2
            invokestatic java.lang.System.exit:(I)V
       158: .line 247
      StackMap locals:
      StackMap stack:
            aload 13 /* packfile */
            astore 15 /* newfile */
       159: .line 249
            aload 14 /* jarfile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 161
       160: .line 252
            aload 15 /* newfile */
            astore 14 /* jarfile */
       161: .line 254
      StackMap locals:
      StackMap stack:
            aload 15 /* newfile */
            ldc ".pack"
            invokestatic com.sun.java.util.jar.pack.Driver.createTempFile:(Ljava/lang/String;Ljava/lang/String;)Ljava/io/File;
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 17 /* tmpfile */
       162: .line 255
            aload 17 /* tmpfile */
            astore 13 /* packfile */
       163: .line 256
            iconst_0
            istore 5 /* doZip */
       164: .line 259
      StackMap locals:
      StackMap stack:
            aload 1 /* av */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 168
       165: .line 262
            aload 14 /* jarfile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc ".jar"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 171
       166: .line 263
            aload 14 /* jarfile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc ".zip"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 171
       167: .line 264
            aload 14 /* jarfile */
            ldc "-"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 168
            iload 2 /* doPack */
            ifeq 171
       168: .line 265
      StackMap locals:
      StackMap stack:
            iload 2 /* doPack */
            iconst_0
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
       169: .line 266
            iconst_2
            invokestatic java.lang.System.exit:(I)V
       170: .line 267
            return
       171: .line 270
      StackMap locals:
      StackMap stack:
            iload 4 /* doRepack */
            ifeq 173
       172: .line 271
            iconst_1
            dup
            istore 3 /* doUnpack */
            istore 2 /* doPack */
            goto 175
       173: .line 272
      StackMap locals:
      StackMap stack:
            iload 2 /* doPack */
            ifeq 175
       174: .line 273
            iconst_0
            istore 3 /* doUnpack */
       175: .line 275
      StackMap locals:
      StackMap stack:
            invokestatic java.util.jar.Pack200.newPacker:()Ljava/util/jar/Pack200$Packer;
            astore 18 /* jpack */
        start local 18 // java.util.jar.Pack200$Packer jpack
       176: .line 276
            invokestatic java.util.jar.Pack200.newUnpacker:()Ljava/util/jar/Pack200$Unpacker;
            astore 19 /* junpack */
        start local 19 // java.util.jar.Pack200$Unpacker junpack
       177: .line 278
            aload 18 /* jpack */
            invokeinterface java.util.jar.Pack200$Packer.properties:()Ljava/util/SortedMap;
            aload 8 /* engProps */
            invokeinterface java.util.SortedMap.putAll:(Ljava/util/Map;)V
       178: .line 279
            aload 19 /* junpack */
            invokeinterface java.util.jar.Pack200$Unpacker.properties:()Ljava/util/SortedMap;
            aload 8 /* engProps */
            invokeinterface java.util.SortedMap.putAll:(Ljava/util/Map;)V
       179: .line 280
            iload 4 /* doRepack */
            ifeq 188
            aload 15 /* newfile */
            aload 14 /* jarfile */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 188
       180: .line 281
            aload 14 /* jarfile */
            invokestatic com.sun.java.util.jar.pack.Driver.getZipComment:(Ljava/lang/String;)Ljava/lang/String;
            astore 20 /* zipc */
        start local 20 // java.lang.String zipc
       181: .line 282
            iload 12 /* verbose */
            ifeq 183
            aload 20 /* zipc */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 183
       182: .line 283
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "DETECTED_ZIP_COMMENT"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 20 /* zipc */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       183: .line 284
      StackMap locals: java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker java.lang.String
      StackMap stack:
            aload 20 /* zipc */
            ldc "PACK200"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 188
       184: .line 285
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "SKIP_FOR_REPACKED"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 14 /* jarfile */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       185: .line 286
            iconst_0
            istore 2 /* doPack */
       186: .line 287
            iconst_0
            istore 3 /* doUnpack */
       187: .line 288
            iconst_0
            istore 4 /* doRepack */
        end local 20 // java.lang.String zipc
       188: .line 294
      StackMap locals:
      StackMap stack:
            iload 2 /* doPack */
            ifeq 212
       189: .line 296
            new java.util.jar.JarFile
            dup
            new java.io.File
            dup
            aload 14 /* jarfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokespecial java.util.jar.JarFile.<init>:(Ljava/io/File;)V
            astore 20 /* in */
        start local 20 // java.util.jar.JarFile in
       190: .line 299
            aload 13 /* packfile */
            ldc "-"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 194
       191: .line 300
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            astore 21 /* out */
        start local 21 // java.io.OutputStream out
       192: .line 302
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokestatic java.lang.System.setOut:(Ljava/io/PrintStream;)V
       193: .line 303
            goto 210
        end local 21 // java.io.OutputStream out
      StackMap locals: java.util.jar.JarFile
      StackMap stack:
       194: iload 5 /* doZip */
            ifeq 203
       195: .line 304
            aload 13 /* packfile */
            ldc ".gz"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 199
       196: .line 305
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "WRITE_PACK_FILE"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 13 /* packfile */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       197: .line 306
            iload 2 /* doPack */
            iconst_0
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
       198: .line 307
            iconst_2
            invokestatic java.lang.System.exit:(I)V
       199: .line 309
      StackMap locals:
      StackMap stack:
            new java.io.FileOutputStream
            dup
            aload 13 /* packfile */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
            astore 21 /* out */
        start local 21 // java.io.OutputStream out
       200: .line 310
            new java.io.BufferedOutputStream
            dup
            aload 21 /* out */
            invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 21 /* out */
       201: .line 311
            new java.util.zip.GZIPOutputStream
            dup
            aload 21 /* out */
            invokespecial java.util.zip.GZIPOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 21 /* out */
       202: .line 312
            goto 210
        end local 21 // java.io.OutputStream out
       203: .line 313
      StackMap locals:
      StackMap stack:
            aload 13 /* packfile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc ".pack"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 208
       204: .line 314
            aload 13 /* packfile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            ldc ".pac"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 208
       205: .line 315
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "WRITE_PACKGZ_FILE"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 13 /* packfile */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       206: .line 316
            iload 2 /* doPack */
            iconst_0
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            invokestatic com.sun.java.util.jar.pack.Driver.printUsage:(ZZLjava/io/PrintStream;)V
       207: .line 317
            iconst_2
            invokestatic java.lang.System.exit:(I)V
       208: .line 319
      StackMap locals:
      StackMap stack:
            new java.io.FileOutputStream
            dup
            aload 13 /* packfile */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
            astore 21 /* out */
        start local 21 // java.io.OutputStream out
       209: .line 320
            new java.io.BufferedOutputStream
            dup
            aload 21 /* out */
            invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 21 /* out */
       210: .line 322
      StackMap locals: java.io.OutputStream
      StackMap stack:
            aload 18 /* jpack */
            aload 20 /* in */
            aload 21 /* out */
            invokeinterface java.util.jar.Pack200$Packer.pack:(Ljava/util/jar/JarFile;Ljava/io/OutputStream;)V
       211: .line 324
            aload 21 /* out */
            invokevirtual java.io.OutputStream.close:()V
        end local 21 // java.io.OutputStream out
        end local 20 // java.util.jar.JarFile in
       212: .line 327
      StackMap locals:
      StackMap stack:
            iload 4 /* doRepack */
            ifeq 219
            aload 15 /* newfile */
            aload 14 /* jarfile */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 219
       213: .line 331
            aload 14 /* jarfile */
            ldc ".bak"
            invokestatic com.sun.java.util.jar.pack.Driver.createTempFile:(Ljava/lang/String;Ljava/lang/String;)Ljava/io/File;
            astore 20 /* bakf */
        start local 20 // java.io.File bakf
       214: .line 333
            aload 20 /* bakf */
            invokevirtual java.io.File.delete:()Z
            pop
       215: .line 334
            new java.io.File
            dup
            aload 14 /* jarfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            aload 20 /* bakf */
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            istore 21 /* okBackup */
        start local 21 // boolean okBackup
       216: .line 335
            iload 21 /* okBackup */
            ifne 218
       217: .line 336
            new java.lang.Error
            dup
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "SKIP_FOR_MOVE_FAILED"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 16 /* bakfile */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
       218: .line 339
      StackMap locals: java.io.File int
      StackMap stack:
            aload 20 /* bakf */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 16 /* bakfile */
        end local 21 // boolean okBackup
        end local 20 // java.io.File bakf
       219: .line 343
      StackMap locals:
      StackMap stack:
            iload 3 /* doUnpack */
            ifeq 245
       220: .line 346
            aload 13 /* packfile */
            ldc "-"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 223
       221: .line 347
            getstatic java.lang.System.in:Ljava/io/InputStream;
            astore 20 /* in */
        start local 20 // java.io.InputStream in
       222: goto 224
        end local 20 // java.io.InputStream in
       223: .line 349
      StackMap locals:
      StackMap stack:
            new java.io.FileInputStream
            dup
            new java.io.File
            dup
            aload 13 /* packfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 20 /* in */
        start local 20 // java.io.InputStream in
       224: .line 350
      StackMap locals: java.io.InputStream
      StackMap stack:
            new java.io.BufferedInputStream
            dup
            aload 20 /* in */
            invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
            astore 21 /* inBuf */
        start local 21 // java.io.BufferedInputStream inBuf
       225: .line 351
            aload 21 /* inBuf */
            astore 20 /* in */
       226: .line 352
            aload 21 /* inBuf */
            invokestatic com.sun.java.util.jar.pack.Utils.readMagic:(Ljava/io/BufferedInputStream;)[B
            invokestatic com.sun.java.util.jar.pack.Utils.isGZIPMagic:([B)Z
            ifeq 228
       227: .line 353
            new java.util.zip.GZIPInputStream
            dup
            aload 20 /* in */
            invokespecial java.util.zip.GZIPInputStream.<init>:(Ljava/io/InputStream;)V
            astore 20 /* in */
       228: .line 355
      StackMap locals: java.io.BufferedInputStream
      StackMap stack:
            aload 15 /* newfile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 229
            aload 14 /* jarfile */
            goto 230
      StackMap locals:
      StackMap stack:
       229: aload 15 /* newfile */
      StackMap locals:
      StackMap stack: java.lang.String
       230: astore 22 /* outfile */
        start local 22 // java.lang.String outfile
       231: .line 357
            aload 22 /* outfile */
            ldc "-"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 234
       232: .line 358
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            astore 23 /* fileOut */
        start local 23 // java.io.OutputStream fileOut
       233: goto 235
        end local 23 // java.io.OutputStream fileOut
       234: .line 360
      StackMap locals: java.lang.String
      StackMap stack:
            new java.io.FileOutputStream
            dup
            aload 22 /* outfile */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
            astore 23 /* fileOut */
        start local 23 // java.io.OutputStream fileOut
       235: .line 361
      StackMap locals: java.io.OutputStream
      StackMap stack:
            new java.io.BufferedOutputStream
            dup
            aload 23 /* fileOut */
            invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 23 /* fileOut */
       236: .line 362
            aconst_null
            astore 24
            aconst_null
            astore 25
       237: new java.util.jar.JarOutputStream
            dup
            aload 23 /* fileOut */
            invokespecial java.util.jar.JarOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 26 /* out */
        start local 26 // java.util.jar.JarOutputStream out
       238: .line 363
            aload 19 /* junpack */
            aload 20 /* in */
            aload 26 /* out */
            invokeinterface java.util.jar.Pack200$Unpacker.unpack:(Ljava/io/InputStream;Ljava/util/jar/JarOutputStream;)V
       239: .line 365
            aload 26 /* out */
            ifnull 245
            aload 26 /* out */
            invokevirtual java.util.jar.JarOutputStream.close:()V
            goto 245
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker java.io.InputStream java.io.BufferedInputStream java.lang.String java.io.OutputStream java.lang.Throwable java.lang.Throwable java.util.jar.JarOutputStream
      StackMap stack: java.lang.Throwable
       240: astore 24
            aload 26 /* out */
            ifnull 241
            aload 26 /* out */
            invokevirtual java.util.jar.JarOutputStream.close:()V
        end local 26 // java.util.jar.JarOutputStream out
      StackMap locals:
      StackMap stack:
       241: aload 24
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
       242: astore 25
            aload 24
            ifnonnull 243
            aload 25
            astore 24
            goto 244
      StackMap locals:
      StackMap stack:
       243: aload 24
            aload 25
            if_acmpeq 244
            aload 24
            aload 25
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
       244: aload 24
            athrow
        end local 23 // java.io.OutputStream fileOut
        end local 22 // java.lang.String outfile
        end local 21 // java.io.BufferedInputStream inBuf
        end local 20 // java.io.InputStream in
       245: .line 369
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker
      StackMap stack:
            aload 16 /* bakfile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 257
       246: .line 371
            new java.io.File
            dup
            aload 16 /* bakfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.delete:()Z
            pop
       247: .line 372
            ldc ""
            astore 16 /* bakfile */
       248: .line 375
            goto 257
      StackMap locals:
      StackMap stack: java.lang.Throwable
       249: astore 27
       250: .line 377
            aload 16 /* bakfile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 254
       251: .line 378
            new java.io.File
            dup
            aload 14 /* jarfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 28 /* jarFile */
        start local 28 // java.io.File jarFile
       252: .line 379
            aload 28 /* jarFile */
            invokevirtual java.io.File.delete:()Z
            pop
       253: .line 380
            new java.io.File
            dup
            aload 16 /* bakfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            aload 28 /* jarFile */
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            pop
        end local 28 // java.io.File jarFile
       254: .line 383
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 17 /* tmpfile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 256
       255: .line 384
            new java.io.File
            dup
            aload 17 /* tmpfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.delete:()Z
            pop
       256: .line 385
      StackMap locals:
      StackMap stack:
            aload 27
            athrow
       257: .line 377
      StackMap locals: java.lang.String[] java.util.List int int int int java.lang.String java.lang.String java.util.Map java.lang.String java.lang.String[] java.util.Map int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.jar.Pack200$Packer java.util.jar.Pack200$Unpacker
      StackMap stack:
            aload 16 /* bakfile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 261
       258: .line 378
            new java.io.File
            dup
            aload 14 /* jarfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 28 /* jarFile */
        start local 28 // java.io.File jarFile
       259: .line 379
            aload 28 /* jarFile */
            invokevirtual java.io.File.delete:()Z
            pop
       260: .line 380
            new java.io.File
            dup
            aload 16 /* bakfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            aload 28 /* jarFile */
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            pop
        end local 28 // java.io.File jarFile
       261: .line 383
      StackMap locals:
      StackMap stack:
            aload 17 /* tmpfile */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 263
       262: .line 384
            new java.io.File
            dup
            aload 17 /* tmpfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.delete:()Z
            pop
       263: .line 386
      StackMap locals:
      StackMap stack:
            return
        end local 19 // java.util.jar.Pack200$Unpacker junpack
        end local 18 // java.util.jar.Pack200$Packer jpack
        end local 17 // java.lang.String tmpfile
        end local 16 // java.lang.String bakfile
        end local 15 // java.lang.String newfile
        end local 14 // java.lang.String jarfile
        end local 13 // java.lang.String packfile
        end local 12 // boolean verbose
        end local 11 // java.util.Map avProps
        end local 10 // java.lang.String[] propTable
        end local 9 // java.lang.String optionMap
        end local 8 // java.util.Map engProps
        end local 7 // java.lang.String verboseProp
        end local 6 // java.lang.String logFile
        end local 5 // boolean doZip
        end local 4 // boolean doRepack
        end local 3 // boolean doUnpack
        end local 2 // boolean doPack
        end local 1 // java.util.List av
        end local 0 // java.lang.String[] ava
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  264     0          ava  [Ljava/lang/String;
            1  264     1           av  Ljava/util/List<Ljava/lang/String;>;
            2  264     2       doPack  Z
            3  264     3     doUnpack  Z
            4  264     4     doRepack  Z
            5  264     5        doZip  Z
            7  264     6      logFile  Ljava/lang/String;
            8  264     7  verboseProp  Ljava/lang/String;
           11   19     8         arg0  Ljava/lang/String;
           22  264     8     engProps  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           25   27     9    optionMap  Ljava/lang/String;
           28  264     9    optionMap  Ljava/lang/String;
           26   27    10    propTable  [Ljava/lang/String;
           29  264    10    propTable  [Ljava/lang/String;
           30  264    11      avProps  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           31  105    12        state  Ljava/lang/String;
           32   77    13         opti  Ljava/util/Iterator<Ljava/lang/String;>;
           34   76    14          opt  Ljava/lang/String;
           35   76    15         prop  Ljava/lang/String;
           36   42    16            i  I
           44   76    16          val  Ljava/lang/String;
           51   58    17         flag  Z
           63   65    17         val1  Ljava/lang/String;
           64   65    21         val2  [Ljava/lang/String;
           69   76    17          idx  I
           71   74    18         val1  Ljava/lang/String;
           72   74    22        prop1  Ljava/lang/String;
           79   95    13     propFile  Ljava/lang/String;
           80   95    14    fileProps  Ljava/util/Properties;
           82   85    17       propIn  Ljava/io/InputStream;
           93   94    15           me  Ljava/util/Map$Entry<Ljava/lang/Object;Ljava/lang/Object;>;
          106  110    12           ee  Ljava/lang/IllegalArgumentException;
          112  129    12          opt  Ljava/lang/String;
          113  129    14          val  Ljava/lang/String;
          135  136    12          log  Ljava/io/OutputStream;
          139  264    12      verbose  Z
          140  264    13     packfile  Ljava/lang/String;
          143  264    14      jarfile  Ljava/lang/String;
          146  264    15      newfile  Ljava/lang/String;
          147  264    16      bakfile  Ljava/lang/String;
          148  264    17      tmpfile  Ljava/lang/String;
          176  264    18        jpack  Ljava/util/jar/Pack200$Packer;
          177  264    19      junpack  Ljava/util/jar/Pack200$Unpacker;
          181  188    20         zipc  Ljava/lang/String;
          190  212    20           in  Ljava/util/jar/JarFile;
          192  194    21          out  Ljava/io/OutputStream;
          200  203    21          out  Ljava/io/OutputStream;
          209  212    21          out  Ljava/io/OutputStream;
          214  219    20         bakf  Ljava/io/File;
          216  219    21     okBackup  Z
          222  223    20           in  Ljava/io/InputStream;
          224  245    20           in  Ljava/io/InputStream;
          225  245    21        inBuf  Ljava/io/BufferedInputStream;
          231  245    22      outfile  Ljava/lang/String;
          233  234    23      fileOut  Ljava/io/OutputStream;
          235  245    23      fileOut  Ljava/io/OutputStream;
          238  241    26          out  Ljava/util/jar/JarOutputStream;
          252  254    28      jarFile  Ljava/io/File;
          259  261    28      jarFile  Ljava/io/File;
      Exception table:
        from    to  target  type
          82    83      84  any
          81    86      86  any
          30   100     105  Class java.lang.IllegalArgumentException
         101   104     105  Class java.lang.IllegalArgumentException
         238   239     240  any
         237   242     242  any
         188   249     249  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      ava   

  private static java.io.File createTempFile(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/io/File;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.lang.String basefile
        start local 1 // java.lang.String suffix
         0: .line 390
            new java.io.File
            dup
            aload 0 /* basefile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 2 /* base */
        start local 2 // java.io.File base
         1: .line 391
            aload 2 /* base */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 3 /* prefix */
        start local 3 // java.lang.String prefix
         2: .line 392
            aload 3 /* prefix */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmpge 3
            new java.lang.StringBuilder
            dup
            aload 3 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "tmp"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* prefix */
         3: .line 394
      StackMap locals: java.io.File java.lang.String
      StackMap stack:
            aload 2 /* base */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            ifnonnull 5
            aload 1 /* suffix */
            ldc ".bak"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 395
            new java.io.File
            dup
            ldc "."
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getAbsoluteFile:()Ljava/io/File;
            goto 6
         5: .line 396
      StackMap locals:
      StackMap stack:
            aload 2 /* base */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
         6: .line 394
      StackMap locals:
      StackMap stack: java.io.File
            astore 4 /* where */
        start local 4 // java.io.File where
         7: .line 398
            aload 4 /* where */
            ifnonnull 9
         8: .line 399
            aload 3 /* prefix */
            aload 1 /* suffix */
            iconst_0
            anewarray java.nio.file.attribute.FileAttribute
            invokestatic java.nio.file.Files.createTempFile:(Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
            goto 10
         9: .line 400
      StackMap locals: java.io.File
      StackMap stack:
            aload 4 /* where */
            invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
            aload 3 /* prefix */
            aload 1 /* suffix */
            iconst_0
            anewarray java.nio.file.attribute.FileAttribute
            invokestatic java.nio.file.Files.createTempFile:(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
        10: .line 398
      StackMap locals:
      StackMap stack: java.nio.file.Path
            astore 5 /* tmpfile */
        start local 5 // java.nio.file.Path tmpfile
        11: .line 402
            aload 5 /* tmpfile */
            invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
            areturn
        end local 5 // java.nio.file.Path tmpfile
        end local 4 // java.io.File where
        end local 3 // java.lang.String prefix
        end local 2 // java.io.File base
        end local 1 // java.lang.String suffix
        end local 0 // java.lang.String basefile
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0  basefile  Ljava/lang/String;
            0   12     1    suffix  Ljava/lang/String;
            1   12     2      base  Ljava/io/File;
            2   12     3    prefix  Ljava/lang/String;
            7   12     4     where  Ljava/io/File;
           11   12     5   tmpfile  Ljava/nio/file/Path;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      basefile  
      suffix    

  private static void printDeprecateWarning(boolean, java.io.PrintStream);
    descriptor: (ZLjava/io/PrintStream;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // boolean doPack
        start local 1 // java.io.PrintStream out
         0: .line 407
            iload 0 /* doPack */
            ifeq 1
            ldc "pack200"
            goto 2
      StackMap locals:
      StackMap stack:
         1: ldc "unpack200"
      StackMap locals:
      StackMap stack: java.lang.String
         2: astore 2 /* prog */
        start local 2 // java.lang.String prog
         3: .line 408
            aload 1 /* out */
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "DEPRECATED"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* prog */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 409
            return
        end local 2 // java.lang.String prog
        end local 1 // java.io.PrintStream out
        end local 0 // boolean doPack
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  doPack  Z
            0    5     1     out  Ljava/io/PrintStream;
            3    5     2    prog  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      doPack  
      out     

  private static void printUsage(boolean, boolean, java.io.PrintStream);
    descriptor: (ZZLjava/io/PrintStream;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=3
        start local 0 // boolean doPack
        start local 1 // boolean full
        start local 2 // java.io.PrintStream out
         0: .line 413
            iload 0 /* doPack */
            ifeq 1
            ldc "pack200"
            goto 2
      StackMap locals:
      StackMap stack:
         1: ldc "unpack200"
      StackMap locals:
      StackMap stack: java.lang.String
         2: astore 3 /* prog */
        start local 3 // java.lang.String prog
         3: .line 414
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "PACK_HELP"
            invokevirtual java.util.ResourceBundle.getObject:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 4 /* packUsage */
        start local 4 // java.lang.String[] packUsage
         4: .line 415
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "UNPACK_HELP"
            invokevirtual java.util.ResourceBundle.getObject:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 5 /* unpackUsage */
        start local 5 // java.lang.String[] unpackUsage
         5: .line 416
            iload 0 /* doPack */
            ifeq 6
            aload 4 /* packUsage */
            goto 7
      StackMap locals: java.lang.String java.lang.String[] java.lang.String[]
      StackMap stack:
         6: aload 5 /* unpackUsage */
      StackMap locals:
      StackMap stack: java.lang.String[]
         7: astore 6 /* usage */
        start local 6 // java.lang.String[] usage
         8: .line 417
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         9: goto 15
        10: .line 418
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 2 /* out */
            aload 6 /* usage */
            iload 7 /* i */
            aaload
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        11: .line 419
            iload 1 /* full */
            ifne 14
        12: .line 420
            aload 2 /* out */
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "MORE_INFO"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* prog */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        13: .line 421
            goto 16
        14: .line 417
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 7 /* i */
            aload 6 /* usage */
            arraylength
            if_icmplt 10
        end local 7 // int i
        16: .line 426
      StackMap locals:
      StackMap stack:
            iload 1 /* full */
            ifeq 18
            getstatic com.sun.java.util.jar.pack.Driver.suppressDeprecateMsg:Z
            ifne 18
        17: .line 427
            iload 0 /* doPack */
            aload 2 /* out */
            invokestatic com.sun.java.util.jar.pack.Driver.printDeprecateWarning:(ZLjava/io/PrintStream;)V
        18: .line 429
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.lang.String[] usage
        end local 5 // java.lang.String[] unpackUsage
        end local 4 // java.lang.String[] packUsage
        end local 3 // java.lang.String prog
        end local 2 // java.io.PrintStream out
        end local 1 // boolean full
        end local 0 // boolean doPack
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0       doPack  Z
            0   19     1         full  Z
            0   19     2          out  Ljava/io/PrintStream;
            3   19     3         prog  Ljava/lang/String;
            4   19     4    packUsage  [Ljava/lang/String;
            5   19     5  unpackUsage  [Ljava/lang/String;
            8   19     6        usage  [Ljava/lang/String;
            9   16     7            i  I
    MethodParameters:
        Name  Flags
      doPack  
      full    
      out     

  private static java.lang.String getZipComment(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=1
        start local 0 // java.lang.String jarfile
         0: .line 433
            sipush 1000
            newarray 8
            astore 1 /* tail */
        start local 1 // byte[] tail
         1: .line 434
            new java.io.File
            dup
            aload 0 /* jarfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.length:()J
            lstore 2 /* filelen */
        start local 2 // long filelen
         2: .line 435
            lload 2 /* filelen */
            lconst_0
            lcmp
            ifgt 3
            ldc ""
            areturn
         3: .line 436
      StackMap locals: byte[] long
      StackMap stack:
            lconst_0
            lload 2 /* filelen */
            aload 1 /* tail */
            arraylength
            i2l
            lsub
            invokestatic java.lang.Math.max:(JJ)J
            lstore 4 /* skiplen */
        start local 4 // long skiplen
         4: .line 437
            aconst_null
            astore 6
            aconst_null
            astore 7
         5: new java.io.FileInputStream
            dup
            new java.io.File
            dup
            aload 0 /* jarfile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 8 /* in */
        start local 8 // java.io.InputStream in
         6: .line 438
            aload 8 /* in */
            lload 4 /* skiplen */
            invokevirtual java.io.InputStream.skip:(J)J
            pop2
         7: .line 439
            aload 8 /* in */
            aload 1 /* tail */
            invokevirtual java.io.InputStream.read:([B)I
            pop
         8: .line 440
            aload 1 /* tail */
            arraylength
            iconst_4
            isub
            istore 9 /* i */
        start local 9 // int i
         9: goto 20
        10: .line 441
      StackMap locals: java.lang.String byte[] long long java.lang.Throwable java.lang.Throwable java.io.InputStream int
      StackMap stack:
            aload 1 /* tail */
            iload 9 /* i */
            iconst_0
            iadd
            baload
            bipush 80
            if_icmpne 19
            aload 1 /* tail */
            iload 9 /* i */
            iconst_1
            iadd
            baload
            bipush 75
            if_icmpne 19
        11: .line 442
            aload 1 /* tail */
            iload 9 /* i */
            iconst_2
            iadd
            baload
            iconst_5
            if_icmpne 19
            aload 1 /* tail */
            iload 9 /* i */
            iconst_3
            iadd
            baload
            bipush 6
            if_icmpne 19
        12: .line 444
            iinc 9 /* i */ 22
        13: .line 445
            iload 9 /* i */
            aload 1 /* tail */
            arraylength
            if_icmpge 17
        14: .line 446
            new java.lang.String
            dup
            aload 1 /* tail */
            iload 9 /* i */
            aload 1 /* tail */
            arraylength
            iload 9 /* i */
            isub
            ldc "UTF8"
            invokespecial java.lang.String.<init>:([BIILjava/lang/String;)V
        15: .line 451
            aload 8 /* in */
            ifnull 16
            aload 8 /* in */
            invokevirtual java.io.InputStream.close:()V
        16: .line 446
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
        17: .line 451
      StackMap locals:
      StackMap stack:
            aload 8 /* in */
            ifnull 18
            aload 8 /* in */
            invokevirtual java.io.InputStream.close:()V
        18: .line 447
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
        19: .line 440
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ -1
      StackMap locals:
      StackMap stack:
        20: iload 9 /* i */
            ifge 10
        end local 9 // int i
        21: .line 451
            aload 8 /* in */
            ifnull 22
            aload 8 /* in */
            invokevirtual java.io.InputStream.close:()V
        22: .line 450
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 6
        24: .line 451
            aload 8 /* in */
            ifnull 25
            aload 8 /* in */
            invokevirtual java.io.InputStream.close:()V
        end local 8 // java.io.InputStream in
      StackMap locals:
      StackMap stack:
        25: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        26: astore 7
            aload 6
            ifnonnull 27
            aload 7
            astore 6
            goto 28
      StackMap locals:
      StackMap stack:
        27: aload 6
            aload 7
            if_acmpeq 28
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        28: aload 6
            athrow
        end local 4 // long skiplen
        end local 2 // long filelen
        end local 1 // byte[] tail
        end local 0 // java.lang.String jarfile
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   29     0  jarfile  Ljava/lang/String;
            1   29     1     tail  [B
            2   29     2  filelen  J
            4   29     4  skiplen  J
            6   25     8       in  Ljava/io/InputStream;
            9   21     9        i  I
      Exception table:
        from    to  target  type
           6    15      23  any
          19    21      23  any
           5    16      26  any
          17    18      26  any
          19    22      26  any
          23    26      26  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      jarfile  

  private static java.lang.String parseCommandOptions(java.util.List<java.lang.String>, java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/util/List;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=29, args_size=3
        start local 0 // java.util.List args
        start local 1 // java.lang.String options
        start local 2 // java.util.Map properties
         0: .line 545
            aconst_null
            astore 3 /* resultString */
        start local 3 // java.lang.String resultString
         1: .line 548
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 4 /* optmap */
        start local 4 // java.util.TreeMap optmap
         2: .line 550
            aload 1 /* options */
            ldc "\n"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 16
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap top int int java.lang.String[]
      StackMap stack:
         3: aload 8
            iload 6
            aaload
            astore 5 /* optline */
        start local 5 // java.lang.String optline
         4: .line 551
            aload 5 /* optline */
            ldc "\\p{Space}+"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 9 /* words */
        start local 9 // java.lang.String[] words
         5: .line 552
            aload 9 /* words */
            arraylength
            ifne 6
            goto 15
         6: .line 553
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.lang.String int int java.lang.String[] java.lang.String[]
      StackMap stack:
            aload 9 /* words */
            iconst_0
            aaload
            astore 10 /* opt */
        start local 10 // java.lang.String opt
         7: .line 554
            aload 9 /* words */
            iconst_0
            ldc ""
            aastore
         8: .line 555
            aload 10 /* opt */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
            aload 9 /* words */
            arraylength
            iconst_1
            if_icmplt 11
         9: .line 556
            aload 9 /* words */
            iconst_1
            aaload
            astore 10 /* opt */
        10: .line 557
            aload 9 /* words */
            iconst_1
            ldc ""
            aastore
        11: .line 559
      StackMap locals: java.lang.String
      StackMap stack:
            aload 10 /* opt */
            invokevirtual java.lang.String.length:()I
            ifne 12
            goto 15
        12: .line 560
      StackMap locals:
      StackMap stack:
            aload 4 /* optmap */
            aload 10 /* opt */
            aload 9 /* words */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 11 /* prevWords */
        start local 11 // java.lang.String[] prevWords
        13: .line 561
            aload 11 /* prevWords */
            ifnull 15
        14: .line 562
            new java.lang.RuntimeException
            dup
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "DUPLICATE_OPTION"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* optline */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 11 // java.lang.String[] prevWords
        end local 10 // java.lang.String opt
        end local 9 // java.lang.String[] words
        end local 5 // java.lang.String optline
        15: .line 550
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap top int int java.lang.String[]
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        16: iload 6
            iload 7
            if_icmplt 3
        17: .line 566
            aload 0 /* args */
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 5 /* argp */
        start local 5 // java.util.ListIterator argp
        18: .line 567
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            invokevirtual java.util.ArrayList.listIterator:()Ljava/util/ListIterator;
            astore 6 /* pbp */
        start local 6 // java.util.ListIterator pbp
        19: .line 573
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator
      StackMap stack:
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifeq 23
        20: .line 574
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* arg */
        start local 7 // java.lang.String arg
        21: .line 575
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.remove:()V
        22: .line 576
            goto 25
        end local 7 // java.lang.String arg
      StackMap locals:
      StackMap stack:
        23: aload 5 /* argp */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifeq 133
        24: .line 577
            aload 5 /* argp */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* arg */
        start local 7 // java.lang.String arg
        25: .line 583
      StackMap locals: java.lang.String
      StackMap stack:
            aload 7 /* arg */
            invokevirtual java.lang.String.length:()I
            istore 8 /* optlen */
        start local 8 // int optlen
        26: .line 589
      StackMap locals: int
      StackMap stack:
            aload 7 /* arg */
            iconst_0
            iload 8 /* optlen */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 9 /* opt */
        start local 9 // java.lang.String opt
        27: .line 590
            aload 4 /* optmap */
            aload 9 /* opt */
            invokevirtual java.util.TreeMap.containsKey:(Ljava/lang/Object;)Z
            ifeq 28
            goto 36
        28: .line 591
      StackMap locals: java.lang.String
      StackMap stack:
            iload 8 /* optlen */
            ifne 29
            goto 132
        29: .line 593
      StackMap locals:
      StackMap stack:
            aload 4 /* optmap */
            aload 9 /* opt */
            invokevirtual java.util.TreeMap.headMap:(Ljava/lang/Object;)Ljava/util/SortedMap;
            astore 10 /* pfxmap */
        start local 10 // java.util.SortedMap pfxmap
        30: .line 595
            aload 10 /* pfxmap */
            invokeinterface java.util.SortedMap.isEmpty:()Z
            ifeq 31
            iconst_0
            goto 32
      StackMap locals: java.util.SortedMap
      StackMap stack:
        31: aload 10 /* pfxmap */
            invokeinterface java.util.SortedMap.lastKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.String.length:()I
      StackMap locals:
      StackMap stack: int
        32: istore 11 /* len */
        start local 11 // int len
        33: .line 596
            iload 11 /* len */
            iload 8 /* optlen */
            iconst_1
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* optlen */
        34: .line 597
            aload 7 /* arg */
            iconst_0
            iload 8 /* optlen */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 9
        end local 11 // int len
        end local 10 // java.util.SortedMap pfxmap
        end local 9 // java.lang.String opt
        35: .line 588
            goto 26
        start local 9 // java.lang.String opt
        36: .line 601
      StackMap locals:
      StackMap stack:
            aload 9 /* opt */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            astore 9 /* opt */
        37: .line 602
            getstatic com.sun.java.util.jar.pack.Driver.$assertionsDisabled:Z
            ifne 38
            aload 7 /* arg */
            aload 9 /* opt */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 38
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        38: .line 603
      StackMap locals:
      StackMap stack:
            getstatic com.sun.java.util.jar.pack.Driver.$assertionsDisabled:Z
            ifne 39
            aload 9 /* opt */
            invokevirtual java.lang.String.length:()I
            iload 8 /* optlen */
            if_icmpeq 39
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        39: .line 604
      StackMap locals:
      StackMap stack:
            aload 7 /* arg */
            iload 8 /* optlen */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 10 /* val */
        start local 10 // java.lang.String val
        40: .line 608
            iconst_0
            istore 11 /* didAction */
        start local 11 // boolean didAction
        41: .line 609
            iconst_0
            istore 12 /* isError */
        start local 12 // boolean isError
        42: .line 611
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.nextIndex:()I
            istore 13 /* pbpMark */
        start local 13 // int pbpMark
        43: .line 612
            aload 4 /* optmap */
            aload 9 /* opt */
            invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 14 /* specs */
        start local 14 // java.lang.String[] specs
        44: .line 614
            aload 14 /* specs */
            dup
            astore 18
            arraylength
            istore 17
            iconst_0
            istore 16
            goto 121
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        45: aload 18
            iload 16
            aaload
            astore 15 /* spec */
        start local 15 // java.lang.String spec
        46: .line 615
            aload 15 /* spec */
            invokevirtual java.lang.String.length:()I
            ifne 47
            goto 120
        47: .line 616
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 15 /* spec */
            ldc "#"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 48
            goto 122
        48: .line 617
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 19 /* sidx */
        start local 19 // int sidx
        49: .line 618
            aload 15 /* spec */
            iload 19 /* sidx */
            iinc 19 /* sidx */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 20 /* specop */
        start local 20 // char specop
        50: .line 622
            iload 20 /* specop */
            tableswitch { // 42 - 43
                   42: 56
                   43: 51
              default: 59
          }
        51: .line 625
      StackMap locals: int int
      StackMap stack:
            aload 10 /* val */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 52
            iconst_0
            goto 53
      StackMap locals:
      StackMap stack:
        52: iconst_1
      StackMap locals:
      StackMap stack: int
        53: istore 21 /* ok */
        start local 21 // boolean ok
        54: .line 626
            aload 15 /* spec */
            iload 19 /* sidx */
            iinc 19 /* sidx */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 20 /* specop */
        55: .line 627
            goto 62
        end local 21 // boolean ok
        56: .line 630
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 21 /* ok */
        start local 21 // boolean ok
        57: .line 631
            aload 15 /* spec */
            iload 19 /* sidx */
            iinc 19 /* sidx */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 20 /* specop */
        58: .line 632
            goto 62
        end local 21 // boolean ok
        59: .line 636
      StackMap locals:
      StackMap stack:
            aload 10 /* val */
            invokevirtual java.lang.String.length:()I
            ifne 60
            iconst_1
            goto 61
      StackMap locals:
      StackMap stack:
        60: iconst_0
      StackMap locals:
      StackMap stack: int
        61: istore 21 /* ok */
        start local 21 // boolean ok
        62: .line 639
      StackMap locals: int
      StackMap stack:
            iload 21 /* ok */
            ifne 63
            goto 120
        63: .line 641
      StackMap locals:
      StackMap stack:
            aload 15 /* spec */
            iload 19 /* sidx */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 22 /* specarg */
        start local 22 // java.lang.String specarg
        64: .line 642
            iload 20 /* specop */
            lookupswitch { // 8
                   33: 79
                   36: 86
                   38: 97
                   46: 65
                   61: 97
                   62: 76
                   63: 69
                   64: 74
              default: 119
          }
        65: .line 644
      StackMap locals: java.lang.String
      StackMap stack:
            aload 22 /* specarg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 66
            aload 9 /* opt */
            goto 67
      StackMap locals:
      StackMap stack:
        66: aload 22 /* specarg */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        67: astore 3 /* resultString */
        68: .line 645
            goto 133
        69: .line 647
      StackMap locals:
      StackMap stack:
            aload 22 /* specarg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 70
            aload 7 /* arg */
            goto 71
      StackMap locals:
      StackMap stack:
        70: aload 22 /* specarg */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        71: astore 3 /* resultString */
        72: .line 648
            iconst_1
            istore 12 /* isError */
        73: .line 649
            goto 122
        74: .line 651
      StackMap locals:
      StackMap stack:
            aload 22 /* specarg */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
            astore 9 /* opt */
        75: .line 652
            goto 120
        76: .line 654
      StackMap locals:
      StackMap stack:
            aload 6 /* pbp */
            new java.lang.StringBuilder
            dup
            aload 22 /* specarg */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* val */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface java.util.ListIterator.add:(Ljava/lang/Object;)V
        77: .line 655
            ldc ""
            astore 10 /* val */
        78: .line 656
            goto 120
        79: .line 658
      StackMap locals:
      StackMap stack:
            aload 22 /* specarg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 80
            aload 9 /* opt */
            goto 81
      StackMap locals:
      StackMap stack:
        80: aload 22 /* specarg */
            invokevirtual java.lang.String.intern:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        81: astore 23 /* negopt */
        start local 23 // java.lang.String negopt
        82: .line 659
            aload 2 /* properties */
            aload 23 /* negopt */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        83: .line 660
            aload 2 /* properties */
            aload 23 /* negopt */
            aconst_null
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        84: .line 661
            iconst_1
            istore 11 /* didAction */
        85: .line 662
            goto 120
        end local 23 // java.lang.String negopt
        86: .line 665
      StackMap locals:
      StackMap stack:
            aload 22 /* specarg */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 89
        87: .line 667
            aload 22 /* specarg */
            astore 24 /* boolval */
        start local 24 // java.lang.String boolval
        88: .line 668
            goto 94
        end local 24 // java.lang.String boolval
        89: .line 669
      StackMap locals:
      StackMap stack:
            aload 2 /* properties */
            aload 9 /* opt */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 25 /* old */
        start local 25 // java.lang.String old
        90: .line 670
            aload 25 /* old */
            ifnull 91
            aload 25 /* old */
            invokevirtual java.lang.String.length:()I
            ifne 93
        91: .line 671
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String top top java.lang.String
      StackMap stack:
            ldc "1"
            astore 24 /* boolval */
        start local 24 // java.lang.String boolval
        92: .line 672
            goto 94
        end local 24 // java.lang.String boolval
        93: .line 674
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            iconst_1
            aload 25 /* old */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 24 /* boolval */
        end local 25 // java.lang.String old
        start local 24 // java.lang.String boolval
        94: .line 677
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String top java.lang.String
      StackMap stack:
            aload 2 /* properties */
            aload 9 /* opt */
            aload 24 /* boolval */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        95: .line 678
            iconst_1
            istore 11 /* didAction */
        96: .line 679
            goto 120
        end local 24 // java.lang.String boolval
        97: .line 683
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String
      StackMap stack:
            iload 20 /* specop */
            bipush 38
            if_icmpne 98
            iconst_1
            goto 99
      StackMap locals:
      StackMap stack:
        98: iconst_0
      StackMap locals:
      StackMap stack: int
        99: istore 25 /* append */
        start local 25 // boolean append
       100: .line 685
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifeq 104
       101: .line 686
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 26 /* strval */
        start local 26 // java.lang.String strval
       102: .line 687
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.remove:()V
       103: .line 688
            goto 110
        end local 26 // java.lang.String strval
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String top top int
      StackMap stack:
       104: aload 5 /* argp */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifeq 107
       105: .line 689
            aload 5 /* argp */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 26 /* strval */
        start local 26 // java.lang.String strval
       106: .line 690
            goto 110
        end local 26 // java.lang.String strval
       107: .line 691
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 7 /* arg */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " ?"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* resultString */
       108: .line 692
            iconst_1
            istore 12 /* isError */
       109: .line 693
            goto 122
        start local 26 // java.lang.String strval
       110: .line 695
      StackMap locals: java.lang.String
      StackMap stack:
            iload 25 /* append */
            ifeq 116
       111: .line 696
            aload 2 /* properties */
            aload 9 /* opt */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 27 /* old */
        start local 27 // java.lang.String old
       112: .line 697
            aload 27 /* old */
            ifnull 116
       113: .line 699
            aload 22 /* specarg */
            astore 28 /* delim */
        start local 28 // java.lang.String delim
       114: .line 700
            aload 28 /* delim */
            invokevirtual java.lang.String.length:()I
            ifne 115
            ldc " "
            astore 28 /* delim */
       115: .line 701
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 27 /* old */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 22 /* specarg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 26 /* strval */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 26 /* strval */
        end local 28 // java.lang.String delim
        end local 27 // java.lang.String old
       116: .line 704
      StackMap locals:
      StackMap stack:
            aload 2 /* properties */
            aload 9 /* opt */
            aload 26 /* strval */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       117: .line 705
            iconst_1
            istore 11 /* didAction */
       118: .line 706
            goto 120
        end local 26 // java.lang.String strval
        end local 25 // boolean append
       119: .line 708
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] java.lang.String int int java.lang.String[] int int int java.lang.String
      StackMap stack:
            new java.lang.RuntimeException
            dup
            getstatic com.sun.java.util.jar.pack.Driver.RESOURCE:Ljava/util/ResourceBundle;
            ldc "BAD_SPEC"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* opt */
            aastore
            dup
            iconst_1
            aload 15 /* spec */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 22 // java.lang.String specarg
        end local 21 // boolean ok
        end local 20 // char specop
        end local 19 // int sidx
        end local 15 // java.lang.String spec
       120: .line 614
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
            iinc 16 1
      StackMap locals:
      StackMap stack:
       121: iload 16
            iload 17
            if_icmplt 45
       122: .line 713
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int java.lang.String java.lang.String int int int java.lang.String[]
      StackMap stack:
            iload 11 /* didAction */
            ifeq 126
            iload 12 /* isError */
            ifne 126
       123: .line 714
            goto 19
       124: .line 720
      StackMap locals:
      StackMap stack:
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            pop
       125: .line 721
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.remove:()V
       126: .line 718
      StackMap locals:
      StackMap stack:
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.nextIndex:()I
            iload 13 /* pbpMark */
            if_icmpgt 124
       127: .line 724
            iload 12 /* isError */
            ifeq 129
       128: .line 725
            new java.lang.IllegalArgumentException
            dup
            aload 3 /* resultString */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
       129: .line 728
      StackMap locals:
      StackMap stack:
            iload 8 /* optlen */
            ifne 131
       130: .line 730
            goto 132
        end local 14 // java.lang.String[] specs
        end local 13 // int pbpMark
        end local 12 // boolean isError
        end local 11 // boolean didAction
        end local 10 // java.lang.String val
        end local 9 // java.lang.String opt
       131: .line 583
      StackMap locals: java.util.List java.lang.String java.util.Map java.lang.String java.util.TreeMap java.util.ListIterator java.util.ListIterator java.lang.String int
      StackMap stack:
            iinc 8 /* optlen */ -1
            goto 26
        end local 8 // int optlen
       132: .line 736
      StackMap locals:
      StackMap stack:
            aload 6 /* pbp */
            aload 7 /* arg */
            invokeinterface java.util.ListIterator.add:(Ljava/lang/Object;)V
        end local 7 // java.lang.String arg
       133: .line 740
      StackMap locals:
      StackMap stack:
            aload 0 /* args */
            iconst_0
            aload 5 /* argp */
            invokeinterface java.util.ListIterator.nextIndex:()I
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokeinterface java.util.List.clear:()V
       134: .line 742
            goto 136
       135: .line 743
      StackMap locals:
      StackMap stack:
            aload 0 /* args */
            iconst_0
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
       136: .line 742
      StackMap locals:
      StackMap stack:
            aload 6 /* pbp */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 135
       137: .line 746
            aload 3 /* resultString */
            areturn
        end local 6 // java.util.ListIterator pbp
        end local 5 // java.util.ListIterator argp
        end local 4 // java.util.TreeMap optmap
        end local 3 // java.lang.String resultString
        end local 2 // java.util.Map properties
        end local 1 // java.lang.String options
        end local 0 // java.util.List args
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0  138     0          args  Ljava/util/List<Ljava/lang/String;>;
            0  138     1       options  Ljava/lang/String;
            0  138     2    properties  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            1  138     3  resultString  Ljava/lang/String;
            2  138     4        optmap  Ljava/util/TreeMap<Ljava/lang/String;[Ljava/lang/String;>;
            4   15     5       optline  Ljava/lang/String;
            5   15     9         words  [Ljava/lang/String;
            7   15    10           opt  Ljava/lang/String;
           13   15    11     prevWords  [Ljava/lang/String;
           18  138     5          argp  Ljava/util/ListIterator<Ljava/lang/String;>;
           19  138     6           pbp  Ljava/util/ListIterator<Ljava/lang/String;>;
           21   23     7           arg  Ljava/lang/String;
           25  133     7           arg  Ljava/lang/String;
           26  132     8        optlen  I
           27   35     9           opt  Ljava/lang/String;
           36  131     9           opt  Ljava/lang/String;
           30   35    10        pfxmap  Ljava/util/SortedMap<Ljava/lang/String;[Ljava/lang/String;>;
           33   35    11           len  I
           40  131    10           val  Ljava/lang/String;
           41  131    11     didAction  Z
           42  131    12       isError  Z
           43  131    13       pbpMark  I
           44  131    14         specs  [Ljava/lang/String;
           46  120    15          spec  Ljava/lang/String;
           49  120    19          sidx  I
           50  120    20        specop  C
           54   56    21            ok  Z
           57   59    21            ok  Z
           62  120    21            ok  Z
           64  120    22       specarg  Ljava/lang/String;
           82   86    23        negopt  Ljava/lang/String;
           88   89    24       boolval  Ljava/lang/String;
           92   93    24       boolval  Ljava/lang/String;
           94   97    24       boolval  Ljava/lang/String;
           90   94    25           old  Ljava/lang/String;
          100  119    25        append  Z
          102  104    26        strval  Ljava/lang/String;
          106  107    26        strval  Ljava/lang/String;
          110  119    26        strval  Ljava/lang/String;
          112  116    27           old  Ljava/lang/String;
          114  116    28         delim  Ljava/lang/String;
    Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Ljava/lang/String;
    MethodParameters:
            Name  Flags
      args        
      options     
      properties  
}
SourceFile: "Driver.java"
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public abstract Packer = java.util.jar.Pack200$Packer of java.util.jar.Pack200
  public abstract Unpacker = java.util.jar.Pack200$Unpacker of java.util.jar.Pack200