public final class jdk.internal.vm.compiler.libgraal.OptionsEncoder
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: jdk.internal.vm.compiler.libgraal.OptionsEncoder
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.vm.compiler.libgraal.OptionsEncoder this
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 41
            return
        end local 0 // jdk.internal.vm.compiler.libgraal.OptionsEncoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/vm/compiler/libgraal/OptionsEncoder;

  public static boolean isValueSupported(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.Object value
         0: .line 47
            aload 0 /* value */
            ifnonnull 2
         1: .line 48
            iconst_0
            ireturn
         2: .line 50
      StackMap locals:
      StackMap stack:
            aload 0 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 1 /* valueClass */
        start local 1 // java.lang.Class valueClass
         3: .line 51
            aload 1 /* valueClass */
            ldc Ljava/lang/Boolean;
            if_acmpeq 14
         4: .line 52
            aload 1 /* valueClass */
            ldc Ljava/lang/Byte;
            if_acmpeq 14
         5: .line 53
            aload 1 /* valueClass */
            ldc Ljava/lang/Short;
            if_acmpeq 14
         6: .line 54
            aload 1 /* valueClass */
            ldc Ljava/lang/Character;
            if_acmpeq 14
         7: .line 55
            aload 1 /* valueClass */
            ldc Ljava/lang/Integer;
            if_acmpeq 14
         8: .line 56
            aload 1 /* valueClass */
            ldc Ljava/lang/Long;
            if_acmpeq 14
         9: .line 57
            aload 1 /* valueClass */
            ldc Ljava/lang/Float;
            if_acmpeq 14
        10: .line 58
            aload 1 /* valueClass */
            ldc Ljava/lang/Double;
            if_acmpeq 14
        11: .line 59
            aload 1 /* valueClass */
            ldc Ljava/lang/String;
            if_acmpeq 14
        12: .line 60
            aload 0 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isEnum:()Z
            ifne 14
        13: .line 51
            iconst_0
            ireturn
      StackMap locals: java.lang.Class
      StackMap stack:
        14: iconst_1
            ireturn
        end local 1 // java.lang.Class valueClass
        end local 0 // java.lang.Object value
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0       value  Ljava/lang/Object;
            3   15     1  valueClass  Ljava/lang/Class<*>;
    MethodParameters:
       Name  Flags
      value  

  public static byte[] encode(java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: (Ljava/util/Map;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=12, args_size=1
        start local 0 // java.util.Map options
         0: .line 70
            aconst_null
            astore 1
            aconst_null
            astore 2
         1: new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 3 /* baout */
        start local 3 // java.io.ByteArrayOutputStream baout
         2: .line 71
            aconst_null
            astore 4
            aconst_null
            astore 5
         3: new java.io.DataOutputStream
            dup
            aload 3 /* baout */
            invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 6 /* out */
        start local 6 // java.io.DataOutputStream out
         4: .line 72
            aload 6 /* out */
            aload 0 /* options */
            invokeinterface java.util.Map.size:()I
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         5: .line 73
            aload 0 /* options */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 52
      StackMap locals: java.util.Map java.lang.Throwable java.lang.Throwable java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable java.io.DataOutputStream top java.util.Iterator
      StackMap stack:
         6: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 7 /* e */
        start local 7 // java.util.Map$Entry e
         7: .line 74
            aload 7 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 9 /* key */
        start local 9 // java.lang.String key
         8: .line 75
            aload 6 /* out */
            aload 9 /* key */
            invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
         9: .line 76
            aload 7 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            astore 10 /* value */
        start local 10 // java.lang.Object value
        10: .line 77
            aload 10 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 11 /* valueClz */
        start local 11 // java.lang.Class valueClz
        11: .line 78
            aload 11 /* valueClz */
            ldc Ljava/lang/Boolean;
            if_acmpne 15
        12: .line 79
            aload 6 /* out */
            bipush 90
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        13: .line 80
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual java.io.DataOutputStream.writeBoolean:(Z)V
        14: .line 81
            goto 52
      StackMap locals: java.util.Map java.lang.Throwable java.lang.Throwable java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable java.io.DataOutputStream java.util.Map$Entry java.util.Iterator java.lang.String java.lang.Object java.lang.Class
      StackMap stack:
        15: aload 11 /* valueClz */
            ldc Ljava/lang/Byte;
            if_acmpne 19
        16: .line 82
            aload 6 /* out */
            bipush 66
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        17: .line 83
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Byte
            invokevirtual java.lang.Byte.byteValue:()B
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        18: .line 84
            goto 52
      StackMap locals:
      StackMap stack:
        19: aload 11 /* valueClz */
            ldc Ljava/lang/Short;
            if_acmpne 23
        20: .line 85
            aload 6 /* out */
            bipush 83
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        21: .line 86
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Short
            invokevirtual java.lang.Short.shortValue:()S
            invokevirtual java.io.DataOutputStream.writeShort:(I)V
        22: .line 87
            goto 52
      StackMap locals:
      StackMap stack:
        23: aload 11 /* valueClz */
            ldc Ljava/lang/Character;
            if_acmpne 27
        24: .line 88
            aload 6 /* out */
            bipush 67
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        25: .line 89
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Character
            invokevirtual java.lang.Character.charValue:()C
            invokevirtual java.io.DataOutputStream.writeChar:(I)V
        26: .line 90
            goto 52
      StackMap locals:
      StackMap stack:
        27: aload 11 /* valueClz */
            ldc Ljava/lang/Integer;
            if_acmpne 31
        28: .line 91
            aload 6 /* out */
            bipush 73
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        29: .line 92
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
        30: .line 93
            goto 52
      StackMap locals:
      StackMap stack:
        31: aload 11 /* valueClz */
            ldc Ljava/lang/Long;
            if_acmpne 35
        32: .line 94
            aload 6 /* out */
            bipush 74
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        33: .line 95
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            invokevirtual java.io.DataOutputStream.writeLong:(J)V
        34: .line 96
            goto 52
      StackMap locals:
      StackMap stack:
        35: aload 11 /* valueClz */
            ldc Ljava/lang/Float;
            if_acmpne 39
        36: .line 97
            aload 6 /* out */
            bipush 70
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        37: .line 98
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Float
            invokevirtual java.lang.Float.floatValue:()F
            invokevirtual java.io.DataOutputStream.writeFloat:(F)V
        38: .line 99
            goto 52
      StackMap locals:
      StackMap stack:
        39: aload 11 /* valueClz */
            ldc Ljava/lang/Double;
            if_acmpne 43
        40: .line 100
            aload 6 /* out */
            bipush 68
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        41: .line 101
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            invokevirtual java.io.DataOutputStream.writeDouble:(D)V
        42: .line 102
            goto 52
      StackMap locals:
      StackMap stack:
        43: aload 11 /* valueClz */
            ldc Ljava/lang/String;
            if_acmpne 47
        44: .line 103
            aload 6 /* out */
            bipush 85
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        45: .line 104
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.String
            invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
        46: .line 105
            goto 52
      StackMap locals:
      StackMap stack:
        47: aload 11 /* valueClz */
            invokevirtual java.lang.Class.isEnum:()Z
            ifeq 51
        48: .line 106
            aload 6 /* out */
            bipush 85
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
        49: .line 107
            aload 6 /* out */
            aload 10 /* value */
            checkcast java.lang.Enum
            invokevirtual java.lang.Enum.name:()Ljava/lang/String;
            invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
        50: .line 108
            goto 52
        51: .line 109
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Key: %s, Value: %s, Value type: %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* key */
            aastore
            dup
            iconst_1
            aload 10 /* value */
            aastore
            dup
            iconst_2
            aload 11 /* valueClz */
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 11 // java.lang.Class valueClz
        end local 10 // java.lang.Object value
        end local 9 // java.lang.String key
        end local 7 // java.util.Map$Entry e
        52: .line 73
      StackMap locals: java.util.Map java.lang.Throwable java.lang.Throwable java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable java.io.DataOutputStream top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        53: .line 112
            aload 6 /* out */
            ifnull 59
            aload 6 /* out */
            invokevirtual java.io.DataOutputStream.close:()V
            goto 59
      StackMap locals: java.util.Map java.lang.Throwable java.lang.Throwable java.io.ByteArrayOutputStream java.lang.Throwable java.lang.Throwable java.io.DataOutputStream
      StackMap stack: java.lang.Throwable
        54: astore 4
            aload 6 /* out */
            ifnull 55
            aload 6 /* out */
            invokevirtual java.io.DataOutputStream.close:()V
        end local 6 // java.io.DataOutputStream out
      StackMap locals:
      StackMap stack:
        55: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        56: astore 5
            aload 4
            ifnonnull 57
            aload 5
            astore 4
            goto 58
      StackMap locals:
      StackMap stack:
        57: aload 4
            aload 5
            if_acmpeq 58
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        58: aload 4
            athrow
        59: .line 113
      StackMap locals:
      StackMap stack:
            aload 3 /* baout */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
        60: .line 114
            aload 3 /* baout */
            ifnull 61
            aload 3 /* baout */
            invokevirtual java.io.ByteArrayOutputStream.close:()V
        61: .line 113
      StackMap locals:
      StackMap stack: byte[]
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        62: astore 1
        63: .line 114
            aload 3 /* baout */
            ifnull 64
            aload 3 /* baout */
            invokevirtual java.io.ByteArrayOutputStream.close:()V
        end local 3 // java.io.ByteArrayOutputStream baout
      StackMap locals:
      StackMap stack:
        64: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        65: astore 2
            aload 1
            ifnonnull 66
            aload 2
            astore 1
            goto 67
      StackMap locals:
      StackMap stack:
        66: aload 1
            aload 2
            if_acmpeq 67
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        67: aload 1
            athrow
      StackMap locals: java.util.Map
      StackMap stack: java.io.IOException
        68: astore 1 /* ioe */
        start local 1 // java.io.IOException ioe
        69: .line 115
            new java.lang.IllegalArgumentException
            dup
            aload 1 /* ioe */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException ioe
        end local 0 // java.util.Map options
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   70     0   options  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            2   64     3     baout  Ljava/io/ByteArrayOutputStream;
            4   55     6       out  Ljava/io/DataOutputStream;
            7   52     7         e  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
            8   52     9       key  Ljava/lang/String;
           10   52    10     value  Ljava/lang/Object;
           11   52    11  valueClz  Ljava/lang/Class<*>;
           69   70     1       ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           4    53      54  any
           3    56      56  any
           2    60      62  any
           1    61      65  any
          62    65      65  any
           0    61      68  Class java.io.IOException
          62    68      68  Class java.io.IOException
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)[B
    MethodParameters:
         Name  Flags
      options  final

  public static java.util.Map<java.lang.String, java.lang.Object> decode(byte[]);
    descriptor: ([B)Ljava/util/Map;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=1
        start local 0 // byte[] input
         0: .line 125
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            astore 1 /* res */
        start local 1 // java.util.Map res
         1: .line 126
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: new java.io.DataInputStream
            dup
            new java.io.ByteArrayInputStream
            dup
            aload 0 /* input */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 4 /* in */
        start local 4 // java.io.DataInputStream in
         3: .line 127
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 5 /* size */
        start local 5 // int size
         4: .line 128
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         5: goto 30
         6: .line 129
      StackMap locals: byte[] java.util.Map java.lang.Throwable java.lang.Throwable java.io.DataInputStream int int
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
            astore 7 /* key */
        start local 7 // java.lang.String key
         7: .line 131
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readByte:()B
            istore 9 /* type */
        start local 9 // byte type
         8: .line 132
            iload 9 /* type */
            lookupswitch { // 9
                   66: 11
                   67: 15
                   68: 23
                   70: 21
                   73: 17
                   74: 19
                   83: 13
                   85: 25
                   90: 9
              default: 27
          }
         9: .line 134
      StackMap locals: byte[] java.util.Map java.lang.Throwable java.lang.Throwable java.io.DataInputStream int int java.lang.String top int
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readBoolean:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        10: .line 135
            goto 28
        end local 8 // java.lang.Object value
        11: .line 137
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readByte:()B
            invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        12: .line 138
            goto 28
        end local 8 // java.lang.Object value
        13: .line 140
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readShort:()S
            invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        14: .line 141
            goto 28
        end local 8 // java.lang.Object value
        15: .line 143
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readChar:()C
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        16: .line 144
            goto 28
        end local 8 // java.lang.Object value
        17: .line 146
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readInt:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        18: .line 147
            goto 28
        end local 8 // java.lang.Object value
        19: .line 149
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readLong:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        20: .line 150
            goto 28
        end local 8 // java.lang.Object value
        21: .line 152
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readFloat:()F
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        22: .line 153
            goto 28
        end local 8 // java.lang.Object value
        23: .line 155
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readDouble:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        24: .line 156
            goto 28
        end local 8 // java.lang.Object value
        25: .line 158
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
            astore 8 /* value */
        start local 8 // java.lang.Object value
        26: .line 159
            goto 28
        end local 8 // java.lang.Object value
        27: .line 161
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported value type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 9 /* type */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        start local 8 // java.lang.Object value
        28: .line 163
      StackMap locals: byte[] java.util.Map java.lang.Throwable java.lang.Throwable java.io.DataInputStream int int java.lang.String java.lang.Object int
      StackMap stack:
            aload 1 /* res */
            aload 7 /* key */
            aload 8 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 9 // byte type
        end local 8 // java.lang.Object value
        end local 7 // java.lang.String key
        29: .line 128
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 6 /* i */
            iload 5 /* size */
            if_icmplt 6
        end local 6 // int i
        31: .line 165
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.available:()I
            ifeq 33
        32: .line 166
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.available:()I
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " undecoded bytes"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // int size
        33: .line 168
      StackMap locals:
      StackMap stack:
            aload 4 /* in */
            ifnull 41
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.close:()V
            goto 41
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 2
            aload 4 /* in */
            ifnull 35
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.close:()V
        end local 4 // java.io.DataInputStream in
      StackMap locals:
      StackMap stack:
        35: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        36: astore 3
            aload 2
            ifnonnull 37
            aload 3
            astore 2
            goto 38
      StackMap locals:
      StackMap stack:
        37: aload 2
            aload 3
            if_acmpeq 38
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        38: aload 2
            athrow
      StackMap locals: byte[] java.util.Map
      StackMap stack: java.io.IOException
        39: astore 2 /* ioe */
        start local 2 // java.io.IOException ioe
        40: .line 169
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* ioe */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException ioe
        41: .line 171
      StackMap locals:
      StackMap stack:
            aload 1 /* res */
            areturn
        end local 1 // java.util.Map res
        end local 0 // byte[] input
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   42     0  input  [B
            1   42     1    res  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            3   35     4     in  Ljava/io/DataInputStream;
            4   33     5   size  I
            5   31     6      i  I
            7   29     7    key  Ljava/lang/String;
           10   11     8  value  Ljava/lang/Object;
           12   13     8  value  Ljava/lang/Object;
           14   15     8  value  Ljava/lang/Object;
           16   17     8  value  Ljava/lang/Object;
           18   19     8  value  Ljava/lang/Object;
           20   21     8  value  Ljava/lang/Object;
           22   23     8  value  Ljava/lang/Object;
           24   25     8  value  Ljava/lang/Object;
           26   27     8  value  Ljava/lang/Object;
           28   29     8  value  Ljava/lang/Object;
            8   29     9   type  B
           40   41     2    ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           3    33      34  any
           2    36      36  any
           1    39      39  Class java.io.IOException
    Signature: ([B)Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
    MethodParameters:
       Name  Flags
      input  
}
SourceFile: "OptionsEncoder.java"
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map