public class com.sun.imageio.plugins.jpeg.JPEGMetadata extends javax.imageio.metadata.IIOMetadata implements java.lang.Cloneable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.imageio.plugins.jpeg.JPEGMetadata
  super_class: javax.imageio.metadata.IIOMetadata
{
  private static final boolean debug;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private java.util.List<com.sun.imageio.plugins.jpeg.MarkerSegment> resetSequence;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;

  private boolean inThumb;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean hasAlpha;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  java.util.List<com.sun.imageio.plugins.jpeg.MarkerSegment> markerSequence;
    descriptor: Ljava/util/List;
    flags: (0x0000) 
    Signature: Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;

  final boolean isStream;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  private boolean transparencyDone;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  void <init>(boolean, boolean);
    descriptor: (ZZ)V
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // boolean isStream
        start local 2 // boolean inThumb
         0: .line 120
            aload 0 /* this */
            iconst_1
         1: .line 121
            ldc "javax_imageio_jpeg_image_1.0"
         2: .line 122
            ldc "com.sun.imageio.plugins.jpeg.JPEGImageMetadataFormat"
         3: .line 123
            aconst_null
            aconst_null
            invokespecial javax.imageio.metadata.IIOMetadata.<init>:(ZLjava/lang/String;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;)V
         4: .line 73
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
         5: .line 81
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.inThumb:Z
         6: .line 104
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
         7: .line 124
            aload 0 /* this */
            iload 2 /* inThumb */
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.inThumb:Z
         8: .line 126
            aload 0 /* this */
            iload 1 /* isStream */
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
         9: .line 127
            iload 1 /* isStream */
            ifeq 14
        10: .line 128
            aload 0 /* this */
            ldc "javax_imageio_jpeg_stream_1.0"
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.nativeMetadataFormatName:Ljava/lang/String;
        11: .line 129
            aload 0 /* this */
        12: .line 130
            ldc "com.sun.imageio.plugins.jpeg.JPEGStreamMetadataFormat"
        13: .line 129
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.nativeMetadataFormatClassName:Ljava/lang/String;
        14: .line 132
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata int int
      StackMap stack:
            return
        end local 2 // boolean inThumb
        end local 1 // boolean isStream
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   15     1  isStream  Z
            0   15     2   inThumb  Z
    MethodParameters:
          Name  Flags
      isStream  
      inThumb   

  void <init>(boolean, boolean, javax.imageio.stream.ImageInputStream, com.sun.imageio.plugins.jpeg.JPEGImageReader);
    descriptor: (ZZLjavax/imageio/stream/ImageInputStream;Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=11, args_size=5
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // boolean isStream
        start local 2 // boolean isThumb
        start local 3 // javax.imageio.stream.ImageInputStream iis
        start local 4 // com.sun.imageio.plugins.jpeg.JPEGImageReader reader
         0: .line 152
            aload 0 /* this */
            iload 1 /* isStream */
            iload 2 /* isThumb */
            invokespecial com.sun.imageio.plugins.jpeg.JPEGMetadata.<init>:(ZZ)V
         1: .line 154
            new com.sun.imageio.plugins.jpeg.JPEGBuffer
            dup
            aload 3 /* iis */
            invokespecial com.sun.imageio.plugins.jpeg.JPEGBuffer.<init>:(Ljavax/imageio/stream/ImageInputStream;)V
            astore 5 /* buffer */
        start local 5 // com.sun.imageio.plugins.jpeg.JPEGBuffer buffer
         2: .line 156
            aload 5 /* buffer */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGBuffer.loadBuf:(I)V
         3: .line 159
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            iconst_0
            baload
            sipush 255
            iand
            sipush 255
            if_icmpne 6
         4: .line 160
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            iconst_1
            baload
            sipush 255
            iand
            sipush 216
            if_icmpne 6
         5: .line 161
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            iconst_2
            baload
            sipush 255
            iand
            sipush 255
            if_icmpeq 7
         6: .line 162
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata int int javax.imageio.stream.ImageInputStream com.sun.imageio.plugins.jpeg.JPEGImageReader com.sun.imageio.plugins.jpeg.JPEGBuffer
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "Image format error"
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 165
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* done */
        start local 6 // boolean done
         8: .line 166
            aload 5 /* buffer */
            dup
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
            iconst_2
            isub
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
         9: .line 167
            aload 5 /* buffer */
            iconst_2
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
        10: .line 168
            aconst_null
            astore 7 /* newGuy */
        start local 7 // com.sun.imageio.plugins.jpeg.MarkerSegment newGuy
        11: .line 169
            goto 146
        12: .line 172
      StackMap locals: int com.sun.imageio.plugins.jpeg.MarkerSegment
      StackMap stack:
            aload 5 /* buffer */
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGBuffer.loadBuf:(I)V
        13: .line 177
            aload 5 /* buffer */
            aload 4 /* reader */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGBuffer.scanForFF:(Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;)Z
            pop
        14: .line 178
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            baload
            sipush 255
            iand
            lookupswitch { // 21
                    0: 15
                  192: 18
                  193: 18
                  194: 18
                  196: 26
                  208: 133
                  209: 133
                  210: 133
                  211: 133
                  212: 133
                  213: 133
                  214: 133
                  215: 133
                  217: 136
                  218: 127
                  219: 24
                  221: 28
                  224: 30
                  226: 80
                  238: 110
                  254: 125
              default: 140
          }
        15: .line 183
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            dup
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
            iconst_1
            isub
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
        16: .line 184
            aload 5 /* buffer */
            dup
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_1
            iadd
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
        17: .line 185
            goto 143
        18: .line 189
      StackMap locals:
      StackMap stack:
            iload 1 /* isStream */
            ifeq 22
        19: .line 190
            new javax.imageio.IIOException
            dup
        20: .line 191
            ldc "SOF not permitted in stream metadata"
        21: .line 190
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 193
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.SOFMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
        23: .line 194
            goto 143
        24: .line 196
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.DQTMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
        25: .line 197
            goto 143
        26: .line 199
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.DHTMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
        27: .line 200
            goto 143
        28: .line 202
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.DRIMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.DRIMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
        29: .line 203
            goto 143
        30: .line 206
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            bipush 8
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGBuffer.loadBuf:(I)V
        31: .line 207
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            astore 8 /* buf */
        start local 8 // byte[] buf
        32: .line 208
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            istore 9 /* ptr */
        start local 9 // int ptr
        33: .line 209
            aload 8 /* buf */
            iload 9 /* ptr */
            iconst_3
            iadd
            baload
            bipush 74
            if_icmpne 54
        34: .line 210
            aload 8 /* buf */
            iload 9 /* ptr */
            iconst_4
            iadd
            baload
            bipush 70
            if_icmpne 54
        35: .line 211
            aload 8 /* buf */
            iload 9 /* ptr */
            iconst_5
            iadd
            baload
            bipush 73
            if_icmpne 54
        36: .line 212
            aload 8 /* buf */
            iload 9 /* ptr */
            bipush 6
            iadd
            baload
            bipush 70
            if_icmpne 54
        37: .line 213
            aload 8 /* buf */
            iload 9 /* ptr */
            bipush 7
            iadd
            baload
            ifne 54
        38: .line 214
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.inThumb:Z
            ifeq 44
        39: .line 215
            aload 4 /* reader */
        40: .line 216
            iconst_1
        41: .line 215
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageReader.warningOccurred:(I)V
        42: .line 220
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
        43: .line 221
            goto 143
      StackMap locals: byte[] int
      StackMap stack:
        44: iload 1 /* isStream */
            ifeq 48
        45: .line 222
            new javax.imageio.IIOException
            dup
        46: .line 223
            ldc "JFIF not permitted in stream metadata"
        47: .line 222
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        48: .line 224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 52
        49: .line 225
            new javax.imageio.IIOException
            dup
        50: .line 226
            ldc "JFIF APP0 must be first marker after SOI"
        51: .line 225
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        52: .line 228
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
        53: .line 230
            goto 143
      StackMap locals:
      StackMap stack:
        54: aload 8 /* buf */
            iload 9 /* ptr */
            iconst_3
            iadd
            baload
            bipush 74
            if_icmpne 77
        55: .line 231
            aload 8 /* buf */
            iload 9 /* ptr */
            iconst_4
            iadd
            baload
            bipush 70
            if_icmpne 77
        56: .line 232
            aload 8 /* buf */
            iload 9 /* ptr */
            iconst_5
            iadd
            baload
            bipush 88
            if_icmpne 77
        57: .line 233
            aload 8 /* buf */
            iload 9 /* ptr */
            bipush 6
            iadd
            baload
            bipush 88
            if_icmpne 77
        58: .line 234
            aload 8 /* buf */
            iload 9 /* ptr */
            bipush 7
            iadd
            baload
            ifne 77
        59: .line 235
            iload 1 /* isStream */
            ifeq 63
        60: .line 236
            new javax.imageio.IIOException
            dup
        61: .line 237
            ldc "JFXX not permitted in stream metadata"
        62: .line 236
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        63: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.inThumb:Z
            ifeq 67
        64: .line 240
            new javax.imageio.IIOException
            dup
        65: .line 241
            ldc "JFXX markers not allowed in JFIF JPEG thumbnail"
        66: .line 240
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        67: .line 244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        68: .line 245
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
        69: .line 244
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
        70: .line 243
            astore 10 /* jfif */
        start local 10 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        71: .line 246
            aload 10 /* jfif */
            ifnonnull 75
        72: .line 247
            new javax.imageio.IIOException
            dup
        73: .line 248
            ldc "JFXX encountered without prior JFIF!"
        74: .line 247
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        75: .line 250
      StackMap locals: com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
      StackMap stack:
            aload 10 /* jfif */
            aload 5 /* buffer */
            aload 4 /* reader */
            invokevirtual com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.addJFXX:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;)V
        end local 10 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        76: .line 252
            goto 143
        77: .line 253
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.MarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.MarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
        78: .line 254
            aload 7 /* newGuy */
            aload 5 /* buffer */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.loadData:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
        79: .line 256
            goto 143
        end local 9 // int ptr
        end local 8 // byte[] buf
        80: .line 259
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            bipush 15
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGBuffer.loadBuf:(I)V
        81: .line 260
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_3
            iadd
            baload
            bipush 73
            if_icmpne 107
        82: .line 261
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_4
            iadd
            baload
            bipush 67
            if_icmpne 107
        83: .line 262
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_5
            iadd
            baload
            bipush 67
            if_icmpne 107
        84: .line 263
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 6
            iadd
            baload
            bipush 95
            if_icmpne 107
        85: .line 264
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 7
            iadd
            baload
            bipush 80
            if_icmpne 107
        86: .line 265
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 8
            iadd
            baload
            bipush 82
            if_icmpne 107
        87: .line 266
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 9
            iadd
            baload
            bipush 79
            if_icmpne 107
        88: .line 267
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 10
            iadd
            baload
            bipush 70
            if_icmpne 107
        89: .line 268
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 11
            iadd
            baload
            bipush 73
            if_icmpne 107
        90: .line 269
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 12
            iadd
            baload
            bipush 76
            if_icmpne 107
        91: .line 270
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 13
            iadd
            baload
            bipush 69
            if_icmpne 107
        92: .line 271
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 14
            iadd
            baload
            ifne 107
        93: .line 273
            iload 1 /* isStream */
            ifeq 97
        94: .line 274
            new javax.imageio.IIOException
            dup
        95: .line 275
            ldc "ICC profiles not permitted in stream metadata"
        96: .line 274
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        97: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        98: .line 280
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
        99: .line 279
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
       100: .line 278
            astore 10 /* jfif */
        start local 10 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
       101: .line 281
            aload 10 /* jfif */
            ifnonnull 105
       102: .line 282
            new com.sun.imageio.plugins.jpeg.MarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.MarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
       103: .line 283
            aload 7 /* newGuy */
            aload 5 /* buffer */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.loadData:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
       104: .line 284
            goto 143
       105: .line 285
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata int int javax.imageio.stream.ImageInputStream com.sun.imageio.plugins.jpeg.JPEGImageReader com.sun.imageio.plugins.jpeg.JPEGBuffer int com.sun.imageio.plugins.jpeg.MarkerSegment top top com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
      StackMap stack:
            aload 10 /* jfif */
            aload 5 /* buffer */
            invokevirtual com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.addICC:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
        end local 10 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
       106: .line 288
            goto 143
       107: .line 289
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata int int javax.imageio.stream.ImageInputStream com.sun.imageio.plugins.jpeg.JPEGImageReader com.sun.imageio.plugins.jpeg.JPEGBuffer int com.sun.imageio.plugins.jpeg.MarkerSegment
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.MarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.MarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
       108: .line 290
            aload 7 /* newGuy */
            aload 5 /* buffer */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.loadData:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
       109: .line 292
            goto 143
       110: .line 295
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            bipush 8
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGBuffer.loadBuf:(I)V
       111: .line 296
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_3
            iadd
            baload
            bipush 65
            if_icmpne 122
       112: .line 297
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_4
            iadd
            baload
            bipush 100
            if_icmpne 122
       113: .line 298
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_5
            iadd
            baload
            bipush 111
            if_icmpne 122
       114: .line 299
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 6
            iadd
            baload
            bipush 98
            if_icmpne 122
       115: .line 300
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.buf:[B
            aload 5 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            bipush 7
            iadd
            baload
            bipush 101
            if_icmpne 122
       116: .line 301
            iload 1 /* isStream */
            ifeq 120
       117: .line 302
            new javax.imageio.IIOException
            dup
       118: .line 303
            ldc "Adobe APP14 markers not permitted in stream metadata"
       119: .line 302
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       120: .line 305
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
       121: .line 306
            goto 143
       122: .line 307
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.MarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.MarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
       123: .line 308
            aload 7 /* newGuy */
            aload 5 /* buffer */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.loadData:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
       124: .line 311
            goto 143
       125: .line 313
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.COMMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.COMMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
       126: .line 314
            goto 143
       127: .line 316
      StackMap locals:
      StackMap stack:
            iload 1 /* isStream */
            ifeq 131
       128: .line 317
            new javax.imageio.IIOException
            dup
       129: .line 318
            ldc "SOS not permitted in stream metadata"
       130: .line 317
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       131: .line 320
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.SOSMarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
       132: .line 321
            goto 143
       133: .line 333
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            dup
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_1
            iadd
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
       134: .line 334
            aload 5 /* buffer */
            dup
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
            iconst_1
            isub
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
       135: .line 335
            goto 143
       136: .line 337
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 6 /* done */
       137: .line 338
            aload 5 /* buffer */
            dup
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
            iconst_1
            iadd
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
       138: .line 339
            aload 5 /* buffer */
            dup
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
            iconst_1
            isub
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
       139: .line 340
            goto 143
       140: .line 342
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.MarkerSegment
            dup
            aload 5 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.MarkerSegment.<init>:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
            astore 7 /* newGuy */
       141: .line 343
            aload 7 /* newGuy */
            aload 5 /* buffer */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.loadData:(Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
       142: .line 344
            aload 7 /* newGuy */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.MarkerSegment.unknown:Z
       143: .line 347
      StackMap locals:
      StackMap stack:
            aload 7 /* newGuy */
            ifnull 146
       144: .line 348
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 7 /* newGuy */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       145: .line 352
            aconst_null
            astore 7 /* newGuy */
       146: .line 169
      StackMap locals:
      StackMap stack:
            iload 6 /* done */
            ifeq 12
       147: .line 360
            aload 5 /* buffer */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGBuffer.pushBack:()V
       148: .line 362
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.isConsistent:()Z
            ifne 150
       149: .line 363
            new javax.imageio.IIOException
            dup
            ldc "Inconsistent metadata read from stream"
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       150: .line 365
      StackMap locals:
      StackMap stack:
            return
        end local 7 // com.sun.imageio.plugins.jpeg.MarkerSegment newGuy
        end local 6 // boolean done
        end local 5 // com.sun.imageio.plugins.jpeg.JPEGBuffer buffer
        end local 4 // com.sun.imageio.plugins.jpeg.JPEGImageReader reader
        end local 3 // javax.imageio.stream.ImageInputStream iis
        end local 2 // boolean isThumb
        end local 1 // boolean isStream
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0  151     0      this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0  151     1  isStream  Z
            0  151     2   isThumb  Z
            0  151     3       iis  Ljavax/imageio/stream/ImageInputStream;
            0  151     4    reader  Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;
            2  151     5    buffer  Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;
            8  151     6      done  Z
           11  151     7    newGuy  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
           32   80     8       buf  [B
           33   80     9       ptr  I
           71   76    10      jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
          101  106    10      jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      isStream  
      isThumb   
      iis       
      reader    

  void <init>(javax.imageio.ImageWriteParam, com.sun.imageio.plugins.jpeg.JPEGImageWriter);
    descriptor: (Ljavax/imageio/ImageWriteParam;Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // javax.imageio.ImageWriteParam param
        start local 2 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
         0: .line 372
            aload 0 /* this */
            iconst_1
            iconst_0
            invokespecial com.sun.imageio.plugins.jpeg.JPEGMetadata.<init>:(ZZ)V
         1: .line 374
            aconst_null
            astore 3 /* jparam */
        start local 3 // javax.imageio.plugins.jpeg.JPEGImageWriteParam jparam
         2: .line 376
            aload 1 /* param */
            ifnull 6
            aload 1 /* param */
            instanceof javax.imageio.plugins.jpeg.JPEGImageWriteParam
            ifeq 6
         3: .line 377
            aload 1 /* param */
            checkcast javax.imageio.plugins.jpeg.JPEGImageWriteParam
            astore 3 /* jparam */
         4: .line 378
            aload 3 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.areTablesSet:()Z
            ifne 6
         5: .line 379
            aconst_null
            astore 3 /* jparam */
         6: .line 382
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.ImageWriteParam com.sun.imageio.plugins.jpeg.JPEGImageWriter javax.imageio.plugins.jpeg.JPEGImageWriteParam
      StackMap stack:
            aload 3 /* jparam */
            ifnull 14
         7: .line 383
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            dup
            aload 3 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.getQTables:()[Ljavax/imageio/plugins/jpeg/JPEGQTable;
            invokespecial com.sun.imageio.plugins.jpeg.DQTMarkerSegment.<init>:([Ljavax/imageio/plugins/jpeg/JPEGQTable;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         8: .line 384
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
         9: .line 385
            new com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            dup
            aload 3 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.getDCHuffmanTables:()[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
        10: .line 386
            aload 3 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.getACHuffmanTables:()[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
        11: .line 385
            invokespecial com.sun.imageio.plugins.jpeg.DHTMarkerSegment.<init>:([Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;)V
        12: .line 384
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 387
            goto 18
        14: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            dup
            invokestatic com.sun.imageio.plugins.jpeg.JPEG.getDefaultQTables:()[Ljavax/imageio/plugins/jpeg/JPEGQTable;
            invokespecial com.sun.imageio.plugins.jpeg.DQTMarkerSegment.<init>:([Ljavax/imageio/plugins/jpeg/JPEGQTable;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 390
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            dup
            iconst_1
            invokestatic com.sun.imageio.plugins.jpeg.JPEG.getDefaultHuffmanTables:(Z)[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
        16: .line 391
            iconst_0
            invokestatic com.sun.imageio.plugins.jpeg.JPEG.getDefaultHuffmanTables:(Z)[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
            invokespecial com.sun.imageio.plugins.jpeg.DHTMarkerSegment.<init>:([Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;)V
        17: .line 390
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 395
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.isConsistent:()Z
            ifne 20
        19: .line 396
            new java.lang.InternalError
            dup
            ldc "Default stream metadata is inconsistent"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 398
      StackMap locals:
      StackMap stack:
            return
        end local 3 // javax.imageio.plugins.jpeg.JPEGImageWriteParam jparam
        end local 2 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
        end local 1 // javax.imageio.ImageWriteParam param
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   21     1   param  Ljavax/imageio/ImageWriteParam;
            0   21     2  writer  Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;
            2   21     3  jparam  Ljavax/imageio/plugins/jpeg/JPEGImageWriteParam;
    MethodParameters:
        Name  Flags
      param   
      writer  

  void <init>(javax.imageio.ImageTypeSpecifier, javax.imageio.ImageWriteParam, com.sun.imageio.plugins.jpeg.JPEGImageWriter);
    descriptor: (Ljavax/imageio/ImageTypeSpecifier;Ljavax/imageio/ImageWriteParam;Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=23, args_size=4
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // javax.imageio.ImageTypeSpecifier imageType
        start local 2 // javax.imageio.ImageWriteParam param
        start local 3 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
         0: .line 407
            aload 0 /* this */
            iconst_0
            iconst_0
            invokespecial com.sun.imageio.plugins.jpeg.JPEGMetadata.<init>:(ZZ)V
         1: .line 409
            iconst_1
            istore 4 /* wantJFIF */
        start local 4 // boolean wantJFIF
         2: .line 410
            iconst_0
            istore 5 /* wantAdobe */
        start local 5 // boolean wantAdobe
         3: .line 411
            iconst_0
            istore 6 /* transform */
        start local 6 // int transform
         4: .line 412
            iconst_1
            istore 7 /* willSubsample */
        start local 7 // boolean willSubsample
         5: .line 413
            iconst_0
            istore 8 /* wantICC */
        start local 8 // boolean wantICC
         6: .line 414
            iconst_0
            istore 9 /* wantProg */
        start local 9 // boolean wantProg
         7: .line 415
            iconst_0
            istore 10 /* wantOptimized */
        start local 10 // boolean wantOptimized
         8: .line 416
            iconst_0
            istore 11 /* wantExtended */
        start local 11 // boolean wantExtended
         9: .line 417
            iconst_1
            istore 12 /* wantQTables */
        start local 12 // boolean wantQTables
        10: .line 418
            iconst_1
            istore 13 /* wantHTables */
        start local 13 // boolean wantHTables
        11: .line 419
            ldc 0.75
            fstore 14 /* quality */
        start local 14 // float quality
        12: .line 420
            iconst_4
            newarray 8
            dup
            iconst_0
            iconst_1
            bastore
            dup
            iconst_1
            iconst_2
            bastore
            dup
            iconst_2
            iconst_3
            bastore
            dup
            iconst_3
            iconst_4
            bastore
            astore 15 /* componentIDs */
        start local 15 // byte[] componentIDs
        13: .line 421
            iconst_0
            istore 16 /* numComponents */
        start local 16 // int numComponents
        14: .line 423
            aconst_null
            astore 17 /* destType */
        start local 17 // javax.imageio.ImageTypeSpecifier destType
        15: .line 425
            aload 2 /* param */
            ifnull 43
        16: .line 426
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getDestinationType:()Ljavax/imageio/ImageTypeSpecifier;
            astore 17 /* destType */
        17: .line 427
            aload 17 /* destType */
            ifnull 23
        18: .line 428
            aload 1 /* imageType */
            ifnull 23
        19: .line 430
            aload 3 /* writer */
        20: .line 431
            iconst_0
        21: .line 430
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.warningOccurred:(I)V
        22: .line 432
            aconst_null
            astore 17 /* destType */
        23: .line 436
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.ImageTypeSpecifier javax.imageio.ImageWriteParam com.sun.imageio.plugins.jpeg.JPEGImageWriter int int int int int int int int int int float byte[] int javax.imageio.ImageTypeSpecifier
      StackMap stack:
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.canWriteProgressive:()Z
            ifeq 28
        24: .line 439
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getProgressiveMode:()I
            iconst_1
            if_icmpne 28
        25: .line 440
            iconst_1
            istore 9 /* wantProg */
        26: .line 441
            iconst_1
            istore 10 /* wantOptimized */
        27: .line 442
            iconst_0
            istore 13 /* wantHTables */
        28: .line 446
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            instanceof javax.imageio.plugins.jpeg.JPEGImageWriteParam
            ifeq 40
        29: .line 447
            aload 2 /* param */
            checkcast javax.imageio.plugins.jpeg.JPEGImageWriteParam
            astore 18 /* jparam */
        start local 18 // javax.imageio.plugins.jpeg.JPEGImageWriteParam jparam
        30: .line 448
            aload 18 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.areTablesSet:()Z
            ifeq 36
        31: .line 449
            iconst_0
            istore 12 /* wantQTables */
        32: .line 450
            iconst_0
            istore 13 /* wantHTables */
        33: .line 451
            aload 18 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.getDCHuffmanTables:()[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
            arraylength
            iconst_2
            if_icmpgt 35
        34: .line 452
            aload 18 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.getACHuffmanTables:()[Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
            arraylength
            iconst_2
            if_icmple 36
        35: .line 453
      StackMap locals: javax.imageio.plugins.jpeg.JPEGImageWriteParam
      StackMap stack:
            iconst_1
            istore 11 /* wantExtended */
        36: .line 458
      StackMap locals:
      StackMap stack:
            iload 9 /* wantProg */
            ifne 40
        37: .line 459
            aload 18 /* jparam */
            invokevirtual javax.imageio.plugins.jpeg.JPEGImageWriteParam.getOptimizeHuffmanTables:()Z
            istore 10 /* wantOptimized */
        38: .line 460
            iload 10 /* wantOptimized */
            ifeq 40
        39: .line 461
            iconst_0
            istore 13 /* wantHTables */
        end local 18 // javax.imageio.plugins.jpeg.JPEGImageWriteParam jparam
        40: .line 470
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.canWriteCompressed:()Z
            ifeq 43
        41: .line 471
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getCompressionMode:()I
            iconst_2
            if_icmpne 43
        42: .line 472
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getCompressionQuality:()F
            fstore 14 /* quality */
        43: .line 479
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 18 /* cs */
        start local 18 // java.awt.color.ColorSpace cs
        44: .line 480
            aload 17 /* destType */
            ifnull 76
        45: .line 481
            aload 17 /* destType */
            invokevirtual javax.imageio.ImageTypeSpecifier.getColorModel:()Ljava/awt/image/ColorModel;
            astore 19 /* cm */
        start local 19 // java.awt.image.ColorModel cm
        46: .line 482
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.getNumComponents:()I
            istore 16 /* numComponents */
        47: .line 483
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.getNumColorComponents:()I
            iload 16 /* numComponents */
            if_icmpeq 48
            iconst_1
            goto 49
      StackMap locals: java.awt.color.ColorSpace java.awt.image.ColorModel
      StackMap stack:
        48: iconst_0
      StackMap locals:
      StackMap stack: int
        49: istore 20 /* hasExtraComponents */
        start local 20 // boolean hasExtraComponents
        50: .line 484
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.hasAlpha:()Z
            istore 21 /* hasAlpha */
        start local 21 // boolean hasAlpha
        51: .line 485
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.getColorSpace:()Ljava/awt/color/ColorSpace;
            astore 18 /* cs */
        52: .line 486
            aload 18 /* cs */
            invokevirtual java.awt.color.ColorSpace.getType:()I
            istore 22 /* type */
        start local 22 // int type
        53: .line 487
            iload 22 /* type */
            tableswitch { // 3 - 6
                    3: 58
                    4: 73
                    5: 64
                    6: 54
              default: 73
          }
        54: .line 489
      StackMap locals: int int int
      StackMap stack:
            iconst_0
            istore 7 /* willSubsample */
        55: .line 490
            iload 20 /* hasExtraComponents */
            ifeq 116
        56: .line 491
            iconst_0
            istore 4 /* wantJFIF */
        57: .line 493
            goto 116
        58: .line 495
      StackMap locals:
      StackMap stack:
            iload 20 /* hasExtraComponents */
            ifeq 116
        59: .line 496
            iconst_0
            istore 4 /* wantJFIF */
        60: .line 497
            iload 21 /* hasAlpha */
            ifne 116
        61: .line 498
            iconst_1
            istore 5 /* wantAdobe */
        62: .line 499
            iconst_2
            istore 6 /* transform */
        63: .line 502
            goto 116
        64: .line 504
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* wantJFIF */
        65: .line 505
            iconst_1
            istore 5 /* wantAdobe */
        66: .line 506
            iconst_0
            istore 7 /* willSubsample */
        67: .line 507
            aload 15 /* componentIDs */
            iconst_0
            bipush 82
            bastore
        68: .line 508
            aload 15 /* componentIDs */
            iconst_1
            bipush 71
            bastore
        69: .line 509
            aload 15 /* componentIDs */
            iconst_2
            bipush 66
            bastore
        70: .line 510
            iload 21 /* hasAlpha */
            ifeq 116
        71: .line 511
            aload 15 /* componentIDs */
            iconst_3
            bipush 65
            bastore
        72: .line 513
            goto 116
        73: .line 517
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* wantJFIF */
        74: .line 518
            iconst_0
            istore 7 /* willSubsample */
        end local 22 // int type
        end local 21 // boolean hasAlpha
        end local 20 // boolean hasExtraComponents
        end local 19 // java.awt.image.ColorModel cm
        75: .line 520
            goto 116
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.ImageTypeSpecifier javax.imageio.ImageWriteParam com.sun.imageio.plugins.jpeg.JPEGImageWriter int int int int int int int int int int float byte[] int javax.imageio.ImageTypeSpecifier java.awt.color.ColorSpace
      StackMap stack:
        76: aload 1 /* imageType */
            ifnull 116
        77: .line 521
            aload 1 /* imageType */
            invokevirtual javax.imageio.ImageTypeSpecifier.getColorModel:()Ljava/awt/image/ColorModel;
            astore 19 /* cm */
        start local 19 // java.awt.image.ColorModel cm
        78: .line 522
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.getNumComponents:()I
            istore 16 /* numComponents */
        79: .line 523
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.getNumColorComponents:()I
            iload 16 /* numComponents */
            if_icmpeq 80
            iconst_1
            goto 81
      StackMap locals: java.awt.image.ColorModel
      StackMap stack:
        80: iconst_0
      StackMap locals:
      StackMap stack: int
        81: istore 20 /* hasExtraComponents */
        start local 20 // boolean hasExtraComponents
        82: .line 524
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.hasAlpha:()Z
            istore 21 /* hasAlpha */
        start local 21 // boolean hasAlpha
        83: .line 525
            aload 19 /* cm */
            invokevirtual java.awt.image.ColorModel.getColorSpace:()Ljava/awt/color/ColorSpace;
            astore 18 /* cs */
        84: .line 526
            aload 18 /* cs */
            invokevirtual java.awt.color.ColorSpace.getType:()I
            istore 22 /* type */
        start local 22 // int type
        85: .line 527
            iload 22 /* type */
            tableswitch { // 3 - 13
                    3: 104
                    4: 114
                    5: 90
                    6: 86
                    7: 114
                    8: 114
                    9: 110
                   10: 114
                   11: 114
                   12: 114
                   13: 93
              default: 114
          }
        86: .line 529
      StackMap locals: int int int
      StackMap stack:
            iconst_0
            istore 7 /* willSubsample */
        87: .line 530
            iload 20 /* hasExtraComponents */
            ifeq 116
        88: .line 531
            iconst_0
            istore 4 /* wantJFIF */
        89: .line 533
            goto 116
        90: .line 536
      StackMap locals:
      StackMap stack:
            iload 21 /* hasAlpha */
            ifeq 116
        91: .line 537
            iconst_0
            istore 4 /* wantJFIF */
        92: .line 539
            goto 116
        93: .line 541
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* wantJFIF */
        94: .line 542
            iconst_0
            istore 7 /* willSubsample */
        95: .line 543
            aload 18 /* cs */
            sipush 1002
            invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 116
        96: .line 544
            iconst_1
            istore 7 /* willSubsample */
        97: .line 545
            iconst_1
            istore 5 /* wantAdobe */
        98: .line 546
            aload 15 /* componentIDs */
            iconst_0
            bipush 89
            bastore
        99: .line 547
            aload 15 /* componentIDs */
            iconst_1
            bipush 67
            bastore
       100: .line 548
            aload 15 /* componentIDs */
            iconst_2
            bipush 99
            bastore
       101: .line 549
            iload 21 /* hasAlpha */
            ifeq 116
       102: .line 550
            aload 15 /* componentIDs */
            iconst_3
            bipush 65
            bastore
       103: .line 553
            goto 116
       104: .line 555
      StackMap locals:
      StackMap stack:
            iload 20 /* hasExtraComponents */
            ifeq 116
       105: .line 556
            iconst_0
            istore 4 /* wantJFIF */
       106: .line 557
            iload 21 /* hasAlpha */
            ifne 116
       107: .line 558
            iconst_1
            istore 5 /* wantAdobe */
       108: .line 559
            iconst_2
            istore 6 /* transform */
       109: .line 562
            goto 116
       110: .line 564
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* wantJFIF */
       111: .line 565
            iconst_1
            istore 5 /* wantAdobe */
       112: .line 566
            iconst_2
            istore 6 /* transform */
       113: .line 567
            goto 116
       114: .line 572
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* wantJFIF */
       115: .line 573
            iconst_0
            istore 7 /* willSubsample */
        end local 22 // int type
        end local 21 // boolean hasAlpha
        end local 20 // boolean hasExtraComponents
        end local 19 // java.awt.image.ColorModel cm
       116: .line 579
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.ImageTypeSpecifier javax.imageio.ImageWriteParam com.sun.imageio.plugins.jpeg.JPEGImageWriter int int int int int int int int int int float byte[] int javax.imageio.ImageTypeSpecifier java.awt.color.ColorSpace
      StackMap stack:
            iload 4 /* wantJFIF */
            ifeq 118
            aload 18 /* cs */
            invokestatic com.sun.imageio.plugins.jpeg.JPEG.isNonStandardICC:(Ljava/awt/color/ColorSpace;)Z
            ifeq 118
       117: .line 580
            iconst_1
            istore 8 /* wantICC */
       118: .line 584
      StackMap locals:
      StackMap stack:
            iload 4 /* wantJFIF */
            ifeq 125
       119: .line 585
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            dup
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:()V
            astore 19 /* jfif */
        start local 19 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
       120: .line 586
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 19 /* jfif */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       121: .line 587
            iload 8 /* wantICC */
            ifeq 125
       122: .line 589
            aload 19 /* jfif */
            aload 18 /* cs */
            checkcast java.awt.color.ICC_ColorSpace
            invokevirtual com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.addICC:(Ljava/awt/color/ICC_ColorSpace;)V
       123: .line 590
            goto 125
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.ImageTypeSpecifier javax.imageio.ImageWriteParam com.sun.imageio.plugins.jpeg.JPEGImageWriter int int int int int int int int int int float byte[] int javax.imageio.ImageTypeSpecifier java.awt.color.ColorSpace com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
      StackMap stack: java.io.IOException
       124: pop
        end local 19 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
       125: .line 594
      StackMap locals:
      StackMap stack:
            iload 5 /* wantAdobe */
            ifeq 127
       126: .line 595
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            dup
            iload 6 /* transform */
            invokespecial com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.<init>:(I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       127: .line 599
      StackMap locals:
      StackMap stack:
            iload 12 /* wantQTables */
            ifeq 129
       128: .line 600
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            dup
            fload 14 /* quality */
            iload 7 /* willSubsample */
            invokespecial com.sun.imageio.plugins.jpeg.DQTMarkerSegment.<init>:(FZ)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       129: .line 604
      StackMap locals:
      StackMap stack:
            iload 13 /* wantHTables */
            ifeq 131
       130: .line 605
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            dup
            iload 7 /* willSubsample */
            invokespecial com.sun.imageio.plugins.jpeg.DHTMarkerSegment.<init>:(Z)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       131: .line 609
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            dup
            iload 9 /* wantProg */
       132: .line 610
            iload 11 /* wantExtended */
       133: .line 611
            iload 7 /* willSubsample */
       134: .line 612
            aload 15 /* componentIDs */
       135: .line 613
            iload 16 /* numComponents */
            invokespecial com.sun.imageio.plugins.jpeg.SOFMarkerSegment.<init>:(ZZZ[BI)V
       136: .line 609
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       137: .line 616
            iload 9 /* wantProg */
            ifne 142
       138: .line 617
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            dup
            iload 7 /* willSubsample */
       139: .line 618
            aload 15 /* componentIDs */
       140: .line 619
            iload 16 /* numComponents */
            invokespecial com.sun.imageio.plugins.jpeg.SOSMarkerSegment.<init>:(Z[BI)V
       141: .line 617
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       142: .line 623
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.isConsistent:()Z
            ifne 144
       143: .line 624
            new java.lang.InternalError
            dup
            ldc "Default image metadata is inconsistent"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
       144: .line 626
      StackMap locals:
      StackMap stack:
            return
        end local 18 // java.awt.color.ColorSpace cs
        end local 17 // javax.imageio.ImageTypeSpecifier destType
        end local 16 // int numComponents
        end local 15 // byte[] componentIDs
        end local 14 // float quality
        end local 13 // boolean wantHTables
        end local 12 // boolean wantQTables
        end local 11 // boolean wantExtended
        end local 10 // boolean wantOptimized
        end local 9 // boolean wantProg
        end local 8 // boolean wantICC
        end local 7 // boolean willSubsample
        end local 6 // int transform
        end local 5 // boolean wantAdobe
        end local 4 // boolean wantJFIF
        end local 3 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
        end local 2 // javax.imageio.ImageWriteParam param
        end local 1 // javax.imageio.ImageTypeSpecifier imageType
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0  145     0                this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0  145     1           imageType  Ljavax/imageio/ImageTypeSpecifier;
            0  145     2               param  Ljavax/imageio/ImageWriteParam;
            0  145     3              writer  Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;
            2  145     4            wantJFIF  Z
            3  145     5           wantAdobe  Z
            4  145     6           transform  I
            5  145     7       willSubsample  Z
            6  145     8             wantICC  Z
            7  145     9            wantProg  Z
            8  145    10       wantOptimized  Z
            9  145    11        wantExtended  Z
           10  145    12         wantQTables  Z
           11  145    13         wantHTables  Z
           12  145    14             quality  F
           13  145    15        componentIDs  [B
           14  145    16       numComponents  I
           15  145    17            destType  Ljavax/imageio/ImageTypeSpecifier;
           30   40    18              jparam  Ljavax/imageio/plugins/jpeg/JPEGImageWriteParam;
           44  145    18                  cs  Ljava/awt/color/ColorSpace;
           46   75    19                  cm  Ljava/awt/image/ColorModel;
           50   75    20  hasExtraComponents  Z
           51   75    21            hasAlpha  Z
           53   75    22                type  I
           78  116    19                  cm  Ljava/awt/image/ColorModel;
           82  116    20  hasExtraComponents  Z
           83  116    21            hasAlpha  Z
           85  116    22                type  I
          120  125    19                jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
      Exception table:
        from    to  target  type
         122   123     124  Class java.io.IOException
    MethodParameters:
           Name  Flags
      imageType  
      param      
      writer     

  com.sun.imageio.plugins.jpeg.MarkerSegment findMarkerSegment(int);
    descriptor: (I)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // int tag
         0: .line 638
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         1: .line 639
            goto 5
         2: .line 640
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 3 /* seg */
        start local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         3: .line 641
            aload 3 /* seg */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.tag:I
            iload 1 /* tag */
            if_icmpne 5
         4: .line 642
            aload 3 /* seg */
            areturn
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 639
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 645
            aconst_null
            areturn
        end local 2 // java.util.Iterator iter
        end local 1 // int tag
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    7     1   tag  I
            1    7     2  iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            3    5     3   seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
    MethodParameters:
      Name  Flags
      tag   

  com.sun.imageio.plugins.jpeg.MarkerSegment findMarkerSegment(java.lang.Class<? extends com.sun.imageio.plugins.jpeg.MarkerSegment>, boolean);
    descriptor: (Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // java.lang.Class cls
        start local 2 // boolean first
         0: .line 653
            iload 2 /* first */
            ifeq 8
         1: .line 654
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         2: .line 655
            goto 6
         3: .line 656
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 4 /* seg */
        start local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         4: .line 657
            aload 1 /* cls */
            aload 4 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 658
            aload 4 /* seg */
            areturn
        end local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         6: .line 655
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 3 // java.util.Iterator iter
         7: .line 661
            goto 15
         8: .line 663
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokeinterface java.util.List.listIterator:(I)Ljava/util/ListIterator;
         9: .line 662
            astore 3 /* iter */
        start local 3 // java.util.ListIterator iter
        10: .line 664
            goto 14
        11: .line 665
      StackMap locals: java.util.ListIterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 4 /* seg */
        start local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        12: .line 666
            aload 1 /* cls */
            aload 4 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 14
        13: .line 667
            aload 4 /* seg */
            areturn
        end local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        14: .line 664
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 11
        end local 3 // java.util.ListIterator iter
        15: .line 671
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // boolean first
        end local 1 // java.lang.Class cls
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   16     1    cls  Ljava/lang/Class<+Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            0   16     2  first  Z
            2    7     3   iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            4    6     4    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
           10   15     3   iter  Ljava/util/ListIterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
           12   14     4    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
    Signature: (Ljava/lang/Class<+Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
    MethodParameters:
       Name  Flags
      cls    
      first  

  private int findMarkerSegmentPosition(java.lang.Class<? extends com.sun.imageio.plugins.jpeg.MarkerSegment>, );
    descriptor: (Ljava/lang/Class;Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // java.lang.Class cls
        start local 2 // boolean first
         0: .line 680
            iload 2 /* first */
            ifeq 10
         1: .line 681
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
            astore 3 /* iter */
        start local 3 // java.util.ListIterator iter
         2: .line 682
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 683
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 5 /* seg */
        start local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 684
            aload 1 /* cls */
            aload 5 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 685
            iload 4 /* i */
            ireturn
        end local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         7: .line 682
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: aload 3 /* iter */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifne 4
        end local 4 // int i
        end local 3 // java.util.ListIterator iter
         9: .line 688
            goto 19
        10: .line 690
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokeinterface java.util.List.listIterator:(I)Ljava/util/ListIterator;
        11: .line 689
            astore 3 /* iter */
        start local 3 // java.util.ListIterator iter
        12: .line 691
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 4 /* i */
        start local 4 // int i
        13: goto 18
        14: .line 692
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 5 /* seg */
        start local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        15: .line 693
            aload 1 /* cls */
            aload 5 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 17
        16: .line 694
            iload 4 /* i */
            ireturn
        end local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        17: .line 691
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
        18: aload 3 /* iter */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 14
        end local 4 // int i
        end local 3 // java.util.ListIterator iter
        19: .line 698
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 2 // boolean first
        end local 1 // java.lang.Class cls
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   20     1    cls  Ljava/lang/Class<+Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            0   20     2  first  Z
            2    9     3   iter  Ljava/util/ListIterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            3    9     4      i  I
            5    7     5    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
           12   19     3   iter  Ljava/util/ListIterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
           13   19     4      i  I
           15   17     5    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
    Signature: (Ljava/lang/Class<+Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;Z)I
    MethodParameters:
       Name  Flags
      cls    
      first  

  private int findLastUnknownMarkerSegmentPosition();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 703
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokeinterface java.util.List.listIterator:(I)Ljava/util/ListIterator;
         1: .line 702
            astore 1 /* iter */
        start local 1 // java.util.ListIterator iter
         2: .line 704
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            istore 2 /* i */
        start local 2 // int i
         3: goto 8
         4: .line 705
      StackMap locals: java.util.ListIterator int
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 3 /* seg */
        start local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 706
            aload 3 /* seg */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.unknown:Z
            ifeq 7
         6: .line 707
            iload 2 /* i */
            ireturn
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         7: .line 704
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
         8: aload 1 /* iter */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 4
        end local 2 // int i
         9: .line 710
            iconst_m1
            ireturn
        end local 1 // java.util.ListIterator iter
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            2   10     1  iter  Ljava/util/ListIterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            3    9     2     i  I
            5    7     3   seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;

  protected java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 716
            aconst_null
            astore 1 /* newGuy */
        start local 1 // com.sun.imageio.plugins.jpeg.JPEGMetadata newGuy
         1: .line 718
            aload 0 /* this */
            invokespecial java.lang.Object.clone:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.JPEGMetadata
            astore 1 /* newGuy */
         2: .line 719
            goto 4
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata com.sun.imageio.plugins.jpeg.JPEGMetadata
      StackMap stack: java.lang.CloneNotSupportedException
         3: pop
         4: .line 720
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            ifnull 6
         5: .line 721
            aload 1 /* newGuy */
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.cloneSequence:()Ljava/util/List;
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
         6: .line 723
      StackMap locals:
      StackMap stack:
            aload 1 /* newGuy */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
         7: .line 724
            aload 1 /* newGuy */
            areturn
        end local 1 // com.sun.imageio.plugins.jpeg.JPEGMetadata newGuy
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1    8     1  newGuy  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.CloneNotSupportedException

  private java.util.List<com.sun.imageio.plugins.jpeg.MarkerSegment> cloneSequence();
    descriptor: ()Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 731
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            ifnonnull 2
         1: .line 732
            aconst_null
            areturn
         2: .line 734
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* retval */
        start local 1 // java.util.List retval
         3: .line 735
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         4: .line 736
            goto 7
         5: .line 737
      StackMap locals: java.util.List java.util.Iterator
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 3 /* seg */
        start local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         6: .line 738
            aload 1 /* retval */
            aload 3 /* seg */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.clone:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         7: .line 736
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 741
            aload 1 /* retval */
            areturn
        end local 2 // java.util.Iterator iter
        end local 1 // java.util.List retval
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            3    9     1  retval  Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            4    9     2    iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            6    7     3     seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
    Signature: ()Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;

  public org.w3c.dom.Node getAsTree(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/w3c/dom/Node;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // java.lang.String formatName
         0: .line 748
            aload 1 /* formatName */
            ifnonnull 2
         1: .line 749
            new java.lang.IllegalArgumentException
            dup
            ldc "null formatName!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 751
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 5
         3: .line 752
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_stream_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
         4: .line 753
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.getNativeTree:()Ljavax/imageio/metadata/IIOMetadataNode;
            areturn
         5: .line 756
      StackMap locals:
      StackMap stack:
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_image_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 757
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.getNativeTree:()Ljavax/imageio/metadata/IIOMetadataNode;
            areturn
         7: .line 759
      StackMap locals:
      StackMap stack:
            aload 1 /* formatName */
         8: .line 760
            ldc "javax_imageio_1.0"
         9: .line 759
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
        10: .line 760
            ifeq 12
        11: .line 761
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.getStandardTree:()Ljavax/imageio/metadata/IIOMetadataNode;
            areturn
        12: .line 764
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported format name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        13: .line 765
            aload 1 /* formatName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 764
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String formatName
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   15     1  formatName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      formatName  

  javax.imageio.metadata.IIOMetadataNode getNativeTree();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadataNode;
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 771
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         1: .line 772
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 5
         2: .line 773
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "javax_imageio_jpeg_stream_1.0"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* root */
        start local 1 // javax.imageio.metadata.IIOMetadataNode root
         3: .line 774
            aload 1 /* root */
            astore 2 /* top */
        start local 2 // javax.imageio.metadata.IIOMetadataNode top
         4: .line 775
            goto 22
        end local 2 // javax.imageio.metadata.IIOMetadataNode top
        end local 1 // javax.imageio.metadata.IIOMetadataNode root
         5: .line 776
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata top top java.util.Iterator
      StackMap stack:
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "markerSequence"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 4 /* sequence */
        start local 4 // javax.imageio.metadata.IIOMetadataNode sequence
         6: .line 777
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.inThumb:Z
            ifne 17
         7: .line 778
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "javax_imageio_jpeg_image_1.0"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* root */
        start local 1 // javax.imageio.metadata.IIOMetadataNode root
         8: .line 779
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "JPEGvariety"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 5 /* header */
        start local 5 // javax.imageio.metadata.IIOMetadataNode header
         9: .line 780
            aload 1 /* root */
            aload 5 /* header */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        10: .line 782
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
        11: .line 781
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            astore 6 /* jfif */
        start local 6 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        12: .line 783
            aload 6 /* jfif */
            ifnull 15
        13: .line 784
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            pop
        14: .line 785
            aload 5 /* header */
            aload 6 /* jfif */
            invokevirtual com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.getNativeNode:()Ljavax/imageio/metadata/IIOMetadataNode;
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        15: .line 787
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode top java.util.Iterator javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
      StackMap stack:
            aload 1 /* root */
            aload 4 /* sequence */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 6 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        end local 5 // javax.imageio.metadata.IIOMetadataNode header
        16: .line 788
            goto 18
        end local 1 // javax.imageio.metadata.IIOMetadataNode root
        17: .line 789
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata top top java.util.Iterator javax.imageio.metadata.IIOMetadataNode
      StackMap stack:
            aload 4 /* sequence */
            astore 1 /* root */
        start local 1 // javax.imageio.metadata.IIOMetadataNode root
        18: .line 791
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode top java.util.Iterator javax.imageio.metadata.IIOMetadataNode
      StackMap stack:
            aload 4 /* sequence */
            astore 2 /* top */
        end local 4 // javax.imageio.metadata.IIOMetadataNode sequence
        start local 2 // javax.imageio.metadata.IIOMetadataNode top
        19: .line 793
            goto 22
        20: .line 794
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 4 /* seg */
        start local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        21: .line 795
            aload 2 /* top */
            aload 4 /* seg */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.getNativeNode:()Ljavax/imageio/metadata/IIOMetadataNode;
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        22: .line 793
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        23: .line 797
            aload 1 /* root */
            areturn
        end local 3 // java.util.Iterator iter
        end local 2 // javax.imageio.metadata.IIOMetadataNode top
        end local 1 // javax.imageio.metadata.IIOMetadataNode root
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   24     0      this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            3    5     1      root  Ljavax/imageio/metadata/IIOMetadataNode;
            8   17     1      root  Ljavax/imageio/metadata/IIOMetadataNode;
           18   24     1      root  Ljavax/imageio/metadata/IIOMetadataNode;
            4    5     2       top  Ljavax/imageio/metadata/IIOMetadataNode;
           19   24     2       top  Ljavax/imageio/metadata/IIOMetadataNode;
            1   24     3      iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            6   19     4  sequence  Ljavax/imageio/metadata/IIOMetadataNode;
            9   16     5    header  Ljavax/imageio/metadata/IIOMetadataNode;
           12   16     6      jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
           21   22     4       seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;

  protected javax.imageio.metadata.IIOMetadataNode getStandardChromaNode();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadataNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=15, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 803
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
         1: .line 808
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
         2: .line 807
            checkcast com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            astore 1 /* sof */
        start local 1 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         3: .line 809
            aload 1 /* sof */
            ifnonnull 5
         4: .line 811
            aconst_null
            areturn
         5: .line 814
      StackMap locals: com.sun.imageio.plugins.jpeg.SOFMarkerSegment
      StackMap stack:
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Chroma"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 2 /* chroma */
        start local 2 // javax.imageio.metadata.IIOMetadataNode chroma
         6: .line 815
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "ColorSpaceType"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 3 /* csType */
        start local 3 // javax.imageio.metadata.IIOMetadataNode csType
         7: .line 816
            aload 2 /* chroma */
            aload 3 /* csType */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         8: .line 819
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            istore 4 /* numChannels */
        start local 4 // int numChannels
         9: .line 821
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "NumChannels"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 5 /* numChanNode */
        start local 5 // javax.imageio.metadata.IIOMetadataNode numChanNode
        10: .line 822
            aload 2 /* chroma */
            aload 5 /* numChanNode */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        11: .line 823
            aload 5 /* numChanNode */
            ldc "value"
            iload 4 /* numChannels */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        12: .line 826
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            ifnull 18
        13: .line 827
            iload 4 /* numChannels */
            iconst_1
            if_icmpne 16
        14: .line 828
            aload 3 /* csType */
            ldc "name"
            ldc "GRAY"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        15: .line 829
            goto 17
        16: .line 830
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata com.sun.imageio.plugins.jpeg.SOFMarkerSegment javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode int javax.imageio.metadata.IIOMetadataNode
      StackMap stack:
            aload 3 /* csType */
            ldc "name"
            ldc "YCbCr"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        17: .line 832
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        18: .line 837
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
        19: .line 836
            astore 6 /* adobe */
        start local 6 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        20: .line 838
            aload 6 /* adobe */
            ifnull 32
        21: .line 839
            aload 6 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            tableswitch { // 0 - 2
                    0: 26
                    1: 24
                    2: 22
              default: 31
          }
        22: .line 841
      StackMap locals: com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
      StackMap stack:
            aload 3 /* csType */
            ldc "name"
            ldc "YCCK"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        23: .line 842
            goto 31
        24: .line 844
      StackMap locals:
      StackMap stack:
            aload 3 /* csType */
            ldc "name"
            ldc "YCbCr"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        25: .line 845
            goto 31
        26: .line 847
      StackMap locals:
      StackMap stack:
            iload 4 /* numChannels */
            iconst_3
            if_icmpne 29
        27: .line 848
            aload 3 /* csType */
            ldc "name"
            ldc "RGB"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        28: .line 849
            goto 31
      StackMap locals:
      StackMap stack:
        29: iload 4 /* numChannels */
            iconst_4
            if_icmpne 31
        30: .line 850
            aload 3 /* csType */
            ldc "name"
            ldc "CMYK"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        31: .line 854
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        32: .line 858
      StackMap locals:
      StackMap stack:
            iload 4 /* numChannels */
            iconst_3
            if_icmpge 37
        33: .line 859
            aload 3 /* csType */
            ldc "name"
            ldc "GRAY"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        34: .line 860
            iload 4 /* numChannels */
            iconst_2
            if_icmpne 36
        35: .line 861
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        36: .line 863
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        37: .line 866
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* idsAreJFIF */
        start local 7 // boolean idsAreJFIF
        38: .line 868
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            istore 8 /* cid0 */
        start local 8 // int cid0
        39: .line 869
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_1
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            istore 9 /* cid1 */
        start local 9 // int cid1
        40: .line 870
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_2
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            istore 10 /* cid2 */
        start local 10 // int cid2
        41: .line 871
            iload 8 /* cid0 */
            iconst_1
            if_icmpne 43
            iload 9 /* cid1 */
            iconst_2
            if_icmpne 43
            iload 10 /* cid2 */
            iconst_3
            if_icmpne 43
        42: .line 872
            iconst_1
            istore 7 /* idsAreJFIF */
        43: .line 875
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata com.sun.imageio.plugins.jpeg.SOFMarkerSegment javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode int javax.imageio.metadata.IIOMetadataNode com.sun.imageio.plugins.jpeg.AdobeMarkerSegment int int int int
      StackMap stack:
            iload 7 /* idsAreJFIF */
            ifeq 48
        44: .line 876
            aload 3 /* csType */
            ldc "name"
            ldc "YCbCr"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        45: .line 877
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 47
        46: .line 878
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        47: .line 880
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        48: .line 884
      StackMap locals:
      StackMap stack:
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 82
            if_icmpne 56
        49: .line 885
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_1
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 71
            if_icmpne 56
        50: .line 886
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_2
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 66
            if_icmpne 56
        51: .line 888
            aload 3 /* csType */
            ldc "name"
            ldc "RGB"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        52: .line 889
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 55
        53: .line 890
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_3
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 65
            if_icmpne 55
        54: .line 891
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        55: .line 893
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        56: .line 896
      StackMap locals:
      StackMap stack:
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 89
            if_icmpne 64
        57: .line 897
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_1
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 67
            if_icmpne 64
        58: .line 898
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_2
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 99
            if_icmpne 64
        59: .line 900
            aload 3 /* csType */
            ldc "name"
            ldc "PhotoYCC"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        60: .line 901
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 63
        61: .line 902
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_3
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            bipush 65
            if_icmpne 63
        62: .line 903
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        63: .line 905
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        64: .line 911
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* subsampled */
        start local 11 // boolean subsampled
        65: .line 913
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.HsamplingFactor:I
            istore 12 /* hfactor */
        start local 12 // int hfactor
        66: .line 914
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.VsamplingFactor:I
            istore 13 /* vfactor */
        start local 13 // int vfactor
        67: .line 916
            iconst_1
            istore 14 /* i */
        start local 14 // int i
        68: goto 74
        69: .line 917
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata com.sun.imageio.plugins.jpeg.SOFMarkerSegment javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode int javax.imageio.metadata.IIOMetadataNode com.sun.imageio.plugins.jpeg.AdobeMarkerSegment int int int int int int int int
      StackMap stack:
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iload 14 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.HsamplingFactor:I
            iload 12 /* hfactor */
            if_icmpne 71
        70: .line 918
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iload 14 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.VsamplingFactor:I
            iload 13 /* vfactor */
            if_icmpeq 73
        71: .line 919
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 11 /* subsampled */
        72: .line 920
            goto 75
        73: .line 916
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        74: iload 14 /* i */
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            if_icmplt 69
        end local 14 // int i
        75: .line 924
      StackMap locals:
      StackMap stack:
            iload 11 /* subsampled */
            ifeq 80
        76: .line 925
            aload 3 /* csType */
            ldc "name"
            ldc "YCbCr"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        77: .line 926
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 79
        78: .line 927
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        79: .line 929
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        80: .line 933
      StackMap locals:
      StackMap stack:
            iload 4 /* numChannels */
            iconst_3
            if_icmpne 83
        81: .line 934
            aload 3 /* csType */
            ldc "name"
            ldc "RGB"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        82: .line 935
            goto 84
        83: .line 936
      StackMap locals:
      StackMap stack:
            aload 3 /* csType */
            ldc "name"
            ldc "CMYK"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        84: .line 939
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        end local 13 // int vfactor
        end local 12 // int hfactor
        end local 11 // boolean subsampled
        end local 10 // int cid2
        end local 9 // int cid1
        end local 8 // int cid0
        end local 7 // boolean idsAreJFIF
        end local 6 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        end local 5 // javax.imageio.metadata.IIOMetadataNode numChanNode
        end local 4 // int numChannels
        end local 3 // javax.imageio.metadata.IIOMetadataNode csType
        end local 2 // javax.imageio.metadata.IIOMetadataNode chroma
        end local 1 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   85     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            3   85     1          sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            6   85     2       chroma  Ljavax/imageio/metadata/IIOMetadataNode;
            7   85     3       csType  Ljavax/imageio/metadata/IIOMetadataNode;
            9   85     4  numChannels  I
           10   85     5  numChanNode  Ljavax/imageio/metadata/IIOMetadataNode;
           20   85     6        adobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
           38   85     7   idsAreJFIF  Z
           39   85     8         cid0  I
           40   85     9         cid1  I
           41   85    10         cid2  I
           65   85    11   subsampled  Z
           66   85    12      hfactor  I
           67   85    13      vfactor  I
           68   75    14            i  I

  protected javax.imageio.metadata.IIOMetadataNode getStandardCompressionNode();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadataNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 944
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Compression"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* compression */
        start local 1 // javax.imageio.metadata.IIOMetadataNode compression
         1: .line 947
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "CompressionTypeName"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 2 /* name */
        start local 2 // javax.imageio.metadata.IIOMetadataNode name
         2: .line 948
            aload 2 /* name */
            ldc "value"
            ldc "JPEG"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 949
            aload 1 /* compression */
            aload 2 /* name */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         4: .line 952
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Lossless"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 3 /* lossless */
        start local 3 // javax.imageio.metadata.IIOMetadataNode lossless
         5: .line 953
            aload 3 /* lossless */
            ldc "value"
            ldc "FALSE"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 954
            aload 1 /* compression */
            aload 3 /* lossless */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         7: .line 957
            iconst_0
            istore 4 /* sosCount */
        start local 4 // int sosCount
         8: .line 958
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5 /* iter */
        start local 5 // java.util.Iterator iter
         9: .line 959
            goto 13
        10: .line 960
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode int java.util.Iterator
      StackMap stack:
            aload 5 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 6 /* ms */
        start local 6 // com.sun.imageio.plugins.jpeg.MarkerSegment ms
        11: .line 961
            aload 6 /* ms */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.tag:I
            sipush 218
            if_icmpne 13
        12: .line 962
            iinc 4 /* sosCount */ 1
        end local 6 // com.sun.imageio.plugins.jpeg.MarkerSegment ms
        13: .line 959
      StackMap locals:
      StackMap stack:
            aload 5 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        14: .line 965
            iload 4 /* sosCount */
            ifeq 18
        15: .line 966
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "NumProgressiveScans"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 6 /* prog */
        start local 6 // javax.imageio.metadata.IIOMetadataNode prog
        16: .line 967
            aload 6 /* prog */
            ldc "value"
            iload 4 /* sosCount */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        17: .line 968
            aload 1 /* compression */
            aload 6 /* prog */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 6 // javax.imageio.metadata.IIOMetadataNode prog
        18: .line 971
      StackMap locals:
      StackMap stack:
            aload 1 /* compression */
            areturn
        end local 5 // java.util.Iterator iter
        end local 4 // int sosCount
        end local 3 // javax.imageio.metadata.IIOMetadataNode lossless
        end local 2 // javax.imageio.metadata.IIOMetadataNode name
        end local 1 // javax.imageio.metadata.IIOMetadataNode compression
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1   19     1  compression  Ljavax/imageio/metadata/IIOMetadataNode;
            2   19     2         name  Ljavax/imageio/metadata/IIOMetadataNode;
            5   19     3     lossless  Ljavax/imageio/metadata/IIOMetadataNode;
            8   19     4     sosCount  I
            9   19     5         iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
           11   13     6           ms  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
           16   18     6         prog  Ljavax/imageio/metadata/IIOMetadataNode;

  protected javax.imageio.metadata.IIOMetadataNode getStandardDimensionNode();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadataNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=9, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 977
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Dimension"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* dim */
        start local 1 // javax.imageio.metadata.IIOMetadataNode dim
         1: .line 978
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "ImageOrientation"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 2 /* orient */
        start local 2 // javax.imageio.metadata.IIOMetadataNode orient
         2: .line 979
            aload 2 /* orient */
            ldc "value"
            ldc "normal"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 980
            aload 1 /* dim */
            aload 2 /* orient */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         4: .line 983
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
         5: .line 982
            astore 3 /* jfif */
        start local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
         6: .line 984
            aload 3 /* jfif */
            ifnull 30
         7: .line 988
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
            ifne 10
         8: .line 990
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Xdensity:I
            i2f
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Ydensity:I
            i2f
            fdiv
            fstore 4 /* aspectRatio */
        start local 4 // float aspectRatio
         9: .line 991
            goto 11
        end local 4 // float aspectRatio
        10: .line 993
      StackMap locals: javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
      StackMap stack:
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Ydensity:I
            i2f
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Xdensity:I
            i2f
            fdiv
            fstore 4 /* aspectRatio */
        start local 4 // float aspectRatio
        11: .line 995
      StackMap locals: float
      StackMap stack:
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "PixelAspectRatio"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 5 /* aspect */
        start local 5 // javax.imageio.metadata.IIOMetadataNode aspect
        12: .line 996
            aload 5 /* aspect */
            ldc "value"
            fload 4 /* aspectRatio */
            invokestatic java.lang.Float.toString:(F)Ljava/lang/String;
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        13: .line 997
            aload 1 /* dim */
            aload 5 /* aspect */
            aload 2 /* orient */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.insertBefore:(Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        14: .line 1000
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
            ifeq 30
        15: .line 1002
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
            iconst_1
            if_icmpne 16
            ldc 25.4
            goto 17
      StackMap locals: javax.imageio.metadata.IIOMetadataNode
      StackMap stack:
        16: ldc 10.0
      StackMap locals:
      StackMap stack: float
        17: fstore 6 /* scale */
        start local 6 // float scale
        18: .line 1005
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "HorizontalPixelSize"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
        19: .line 1004
            astore 7 /* horiz */
        start local 7 // javax.imageio.metadata.IIOMetadataNode horiz
        20: .line 1006
            aload 7 /* horiz */
            ldc "value"
        21: .line 1007
            fload 6 /* scale */
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Xdensity:I
            i2f
            fdiv
            invokestatic java.lang.Float.toString:(F)Ljava/lang/String;
        22: .line 1006
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        23: .line 1008
            aload 1 /* dim */
            aload 7 /* horiz */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        24: .line 1011
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "VerticalPixelSize"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
        25: .line 1010
            astore 8 /* vert */
        start local 8 // javax.imageio.metadata.IIOMetadataNode vert
        26: .line 1012
            aload 8 /* vert */
            ldc "value"
        27: .line 1013
            fload 6 /* scale */
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Ydensity:I
            i2f
            fdiv
            invokestatic java.lang.Float.toString:(F)Ljava/lang/String;
        28: .line 1012
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        29: .line 1014
            aload 1 /* dim */
            aload 8 /* vert */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 8 // javax.imageio.metadata.IIOMetadataNode vert
        end local 7 // javax.imageio.metadata.IIOMetadataNode horiz
        end local 6 // float scale
        end local 5 // javax.imageio.metadata.IIOMetadataNode aspect
        end local 4 // float aspectRatio
        30: .line 1017
      StackMap locals:
      StackMap stack:
            aload 1 /* dim */
            areturn
        end local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        end local 2 // javax.imageio.metadata.IIOMetadataNode orient
        end local 1 // javax.imageio.metadata.IIOMetadataNode dim
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   31     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1   31     1          dim  Ljavax/imageio/metadata/IIOMetadataNode;
            2   31     2       orient  Ljavax/imageio/metadata/IIOMetadataNode;
            6   31     3         jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            9   10     4  aspectRatio  F
           11   30     4  aspectRatio  F
           12   30     5       aspect  Ljavax/imageio/metadata/IIOMetadataNode;
           18   30     6        scale  F
           20   30     7        horiz  Ljavax/imageio/metadata/IIOMetadataNode;
           26   30     8         vert  Ljavax/imageio/metadata/IIOMetadataNode;

  protected javax.imageio.metadata.IIOMetadataNode getStandardTextNode();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadataNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 1021
            aconst_null
            astore 1 /* text */
        start local 1 // javax.imageio.metadata.IIOMetadataNode text
         1: .line 1023
            aload 0 /* this */
            sipush 254
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(I)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            ifnull 13
         2: .line 1024
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Text"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* text */
         3: .line 1025
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         4: .line 1026
            goto 12
         5: .line 1027
      StackMap locals: javax.imageio.metadata.IIOMetadataNode java.util.Iterator
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 3 /* seg */
        start local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         6: .line 1028
            aload 3 /* seg */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.tag:I
            sipush 254
            if_icmpne 12
         7: .line 1029
            aload 3 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.COMMarkerSegment
            astore 4 /* com */
        start local 4 // com.sun.imageio.plugins.jpeg.COMMarkerSegment com
         8: .line 1030
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "TextEntry"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 5 /* entry */
        start local 5 // javax.imageio.metadata.IIOMetadataNode entry
         9: .line 1031
            aload 5 /* entry */
            ldc "keyword"
            ldc "comment"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        10: .line 1032
            aload 5 /* entry */
            ldc "value"
            aload 4 /* com */
            invokevirtual com.sun.imageio.plugins.jpeg.COMMarkerSegment.getComment:()Ljava/lang/String;
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        11: .line 1033
            aload 1 /* text */
            aload 5 /* entry */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 5 // javax.imageio.metadata.IIOMetadataNode entry
        end local 4 // com.sun.imageio.plugins.jpeg.COMMarkerSegment com
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        12: .line 1026
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 2 // java.util.Iterator iter
        13: .line 1037
      StackMap locals:
      StackMap stack:
            aload 1 /* text */
            areturn
        end local 1 // javax.imageio.metadata.IIOMetadataNode text
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   14     0   this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1   14     1   text  Ljavax/imageio/metadata/IIOMetadataNode;
            4   13     2   iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            6   12     3    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            8   12     4    com  Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;
            9   12     5  entry  Ljavax/imageio/metadata/IIOMetadataNode;

  protected javax.imageio.metadata.IIOMetadataNode getStandardTransparencyNode();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadataNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 1041
            aconst_null
            astore 1 /* trans */
        start local 1 // javax.imageio.metadata.IIOMetadataNode trans
         1: .line 1042
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
            ifeq 6
         2: .line 1043
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Transparency"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* trans */
         3: .line 1044
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Alpha"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 2 /* alpha */
        start local 2 // javax.imageio.metadata.IIOMetadataNode alpha
         4: .line 1045
            aload 2 /* alpha */
            ldc "value"
            ldc "nonpremultiplied"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1046
            aload 1 /* trans */
            aload 2 /* alpha */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 2 // javax.imageio.metadata.IIOMetadataNode alpha
         6: .line 1048
      StackMap locals: javax.imageio.metadata.IIOMetadataNode
      StackMap stack:
            aload 1 /* trans */
            areturn
        end local 1 // javax.imageio.metadata.IIOMetadataNode trans
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1    7     1  trans  Ljavax/imageio/metadata/IIOMetadataNode;
            4    6     2  alpha  Ljavax/imageio/metadata/IIOMetadataNode;

  public boolean isReadOnly();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 1054
            iconst_0
            ireturn
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;

  public void mergeTree(java.lang.String, org.w3c.dom.Node);
    descriptor: (Ljava/lang/String;Lorg/w3c/dom/Node;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // java.lang.String formatName
        start local 2 // org.w3c.dom.Node root
         0: .line 1059
            aload 1 /* formatName */
            ifnonnull 2
         1: .line 1060
            new java.lang.IllegalArgumentException
            dup
            ldc "null formatName!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1062
      StackMap locals:
      StackMap stack:
            aload 2 /* root */
            ifnonnull 4
         3: .line 1063
            new java.lang.IllegalArgumentException
            dup
            ldc "null root!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1065
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* copy */
        start local 3 // java.util.List copy
         5: .line 1066
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            ifnonnull 9
         6: .line 1067
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.cloneSequence:()Ljava/util/List;
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
         7: .line 1068
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            astore 3 /* copy */
         8: .line 1069
            goto 10
         9: .line 1070
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.cloneSequence:()Ljava/util/List;
            astore 3 /* copy */
        10: .line 1072
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 14
        11: .line 1073
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_stream_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        12: .line 1074
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeNativeTree:(Lorg/w3c/dom/Node;)V
        13: .line 1075
            goto 28
      StackMap locals:
      StackMap stack:
        14: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 18
        15: .line 1076
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_image_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 1077
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeNativeTree:(Lorg/w3c/dom/Node;)V
        17: .line 1078
            goto 28
      StackMap locals:
      StackMap stack:
        18: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 25
        19: .line 1079
            aload 1 /* formatName */
        20: .line 1080
            ldc "javax_imageio_1.0"
        21: .line 1079
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
        22: .line 1080
            ifeq 25
        23: .line 1081
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardTree:(Lorg/w3c/dom/Node;)V
        24: .line 1082
            goto 28
        25: .line 1083
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported format name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        26: .line 1084
            aload 1 /* formatName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 1083
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 1086
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.isConsistent:()Z
            ifne 33
        29: .line 1087
            aload 0 /* this */
            aload 3 /* copy */
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
        30: .line 1088
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
        31: .line 1089
            ldc "Merged tree is invalid; original restored"
            aload 2 /* root */
        32: .line 1088
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        33: .line 1091
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.util.List copy
        end local 2 // org.w3c.dom.Node root
        end local 1 // java.lang.String formatName
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   34     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   34     1  formatName  Ljava/lang/String;
            0   34     2        root  Lorg/w3c/dom/Node;
            5   34     3        copy  Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
            Name  Flags
      formatName  
      root        

  private void mergeNativeTree(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node root
         0: .line 1094
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 1095
            aload 2 /* name */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 2
            ldc "javax_imageio_jpeg_stream_1.0"
            goto 3
         2: .line 1096
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.lang.String
      StackMap stack: java.lang.String
            ldc "javax_imageio_jpeg_image_1.0"
         3: .line 1095
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.lang.String
      StackMap stack: java.lang.String java.lang.String
            if_acmpeq 7
         4: .line 1097
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid root node name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1098
            aload 1 /* root */
         6: .line 1097
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
         7: .line 1100
      StackMap locals:
      StackMap stack:
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            iconst_2
            if_icmpeq 11
         8: .line 1101
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
         9: .line 1102
            ldc "JPEGvariety and markerSequence nodes must be present"
            aload 1 /* root */
        10: .line 1101
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        11: .line 1104
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getFirstChild:()Lorg/w3c/dom/Node;
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeJFIFsubtree:(Lorg/w3c/dom/Node;)V
        12: .line 1105
            aload 0 /* this */
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getLastChild:()Lorg/w3c/dom/Node;
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeSequenceSubtree:(Lorg/w3c/dom/Node;)V
        13: .line 1106
            return
        end local 2 // java.lang.String name
        end local 1 // org.w3c.dom.Node root
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   14     1  root  Lorg/w3c/dom/Node;
            1   14     2  name  Ljava/lang/String;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      root  

  private void mergeJFIFsubtree(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node JPEGvariety
         0: .line 1117
            aload 1 /* JPEGvariety */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            ifeq 8
         1: .line 1118
            aload 1 /* JPEGvariety */
            invokeinterface org.w3c.dom.Node.getFirstChild:()Lorg/w3c/dom/Node;
            astore 2 /* jfifNode */
        start local 2 // org.w3c.dom.Node jfifNode
         2: .line 1121
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
         3: .line 1120
            astore 3 /* jfifSeg */
        start local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfifSeg
         4: .line 1122
            aload 3 /* jfifSeg */
            ifnull 7
         5: .line 1123
            aload 3 /* jfifSeg */
            aload 2 /* jfifNode */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         6: .line 1124
            goto 8
         7: .line 1126
      StackMap locals: org.w3c.dom.Node com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_0
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            dup
            aload 2 /* jfifNode */
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        end local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfifSeg
        end local 2 // org.w3c.dom.Node jfifNode
         8: .line 1129
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.w3c.dom.Node JPEGvariety
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    9     1  JPEGvariety  Lorg/w3c/dom/Node;
            2    8     2     jfifNode  Lorg/w3c/dom/Node;
            4    8     3      jfifSeg  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
             Name  Flags
      JPEGvariety  

  private void mergeSequenceSubtree(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node sequenceTree
         0: .line 1133
            aload 1 /* sequenceTree */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 2 /* children */
        start local 2 // org.w3c.dom.NodeList children
         1: .line 1134
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 31
         3: .line 1135
      StackMap locals: org.w3c.dom.NodeList int
      StackMap stack:
            aload 2 /* children */
            iload 3 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 4 /* node */
        start local 4 // org.w3c.dom.Node node
         4: .line 1136
            aload 4 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         5: .line 1137
            aload 5 /* name */
            ldc "dqt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 1138
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeDQTNode:(Lorg/w3c/dom/Node;)V
         7: .line 1139
            goto 30
      StackMap locals: org.w3c.dom.Node java.lang.String
      StackMap stack:
         8: aload 5 /* name */
            ldc "dht"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
         9: .line 1140
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeDHTNode:(Lorg/w3c/dom/Node;)V
        10: .line 1141
            goto 30
      StackMap locals:
      StackMap stack:
        11: aload 5 /* name */
            ldc "dri"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        12: .line 1142
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeDRINode:(Lorg/w3c/dom/Node;)V
        13: .line 1143
            goto 30
      StackMap locals:
      StackMap stack:
        14: aload 5 /* name */
            ldc "com"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
        15: .line 1144
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeCOMNode:(Lorg/w3c/dom/Node;)V
        16: .line 1145
            goto 30
      StackMap locals:
      StackMap stack:
        17: aload 5 /* name */
            ldc "app14Adobe"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        18: .line 1146
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeAdobeNode:(Lorg/w3c/dom/Node;)V
        19: .line 1147
            goto 30
      StackMap locals:
      StackMap stack:
        20: aload 5 /* name */
            ldc "unknown"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        21: .line 1148
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeUnknownNode:(Lorg/w3c/dom/Node;)V
        22: .line 1149
            goto 30
      StackMap locals:
      StackMap stack:
        23: aload 5 /* name */
            ldc "sof"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        24: .line 1150
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeSOFNode:(Lorg/w3c/dom/Node;)V
        25: .line 1151
            goto 30
      StackMap locals:
      StackMap stack:
        26: aload 5 /* name */
            ldc "sos"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 29
        27: .line 1152
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeSOSNode:(Lorg/w3c/dom/Node;)V
        28: .line 1153
            goto 30
        29: .line 1154
      StackMap locals:
      StackMap stack:
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid node: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* node */
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        end local 5 // java.lang.String name
        end local 4 // org.w3c.dom.Node node
        30: .line 1134
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 3 /* i */
            aload 2 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 3
        end local 3 // int i
        32: .line 1157
            return
        end local 2 // org.w3c.dom.NodeList children
        end local 1 // org.w3c.dom.Node sequenceTree
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   33     0          this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   33     1  sequenceTree  Lorg/w3c/dom/Node;
            1   33     2      children  Lorg/w3c/dom/NodeList;
            2   32     3             i  I
            4   30     4          node  Lorg/w3c/dom/Node;
            5   30     5          name  Ljava/lang/String;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
              Name  Flags
      sequenceTree  

  private void mergeDQTNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=14, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1178
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* oldDQTs */
        start local 2 // java.util.ArrayList oldDQTs
         1: .line 1179
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         2: .line 1180
            goto 6
         3: .line 1181
      StackMap locals: java.util.ArrayList java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 4 /* seg */
        start local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         4: .line 1182
            aload 4 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            ifeq 6
         5: .line 1183
            aload 2 /* oldDQTs */
            aload 4 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         6: .line 1180
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 1186
            aload 2 /* oldDQTs */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifne 43
         8: .line 1187
            aload 1 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 4 /* children */
        start local 4 // org.w3c.dom.NodeList children
         9: .line 1188
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        10: goto 41
        11: .line 1189
      StackMap locals: org.w3c.dom.NodeList int
      StackMap stack:
            aload 4 /* children */
            iload 5 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 6 /* child */
        start local 6 // org.w3c.dom.Node child
        12: .line 1190
            aload 6 /* child */
        13: .line 1191
            aconst_null
        14: .line 1192
            ldc "qtableId"
        15: .line 1193
            iconst_0
            iconst_3
        16: .line 1194
            iconst_1
        17: .line 1190
            invokestatic com.sun.imageio.plugins.jpeg.MarkerSegment.getAttributeValue:(Lorg/w3c/dom/Node;Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;IIZ)I
            istore 7 /* childID */
        start local 7 // int childID
        18: .line 1195
            aconst_null
            astore 8 /* dqt */
        start local 8 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment dqt
        19: .line 1196
            iconst_m1
            istore 9 /* tableIndex */
        start local 9 // int tableIndex
        20: .line 1197
            iconst_0
            istore 10 /* j */
        start local 10 // int j
        21: goto 34
        22: .line 1198
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator org.w3c.dom.NodeList int org.w3c.dom.Node int com.sun.imageio.plugins.jpeg.DQTMarkerSegment int int
      StackMap stack:
            aload 2 /* oldDQTs */
            iload 10 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            astore 11 /* testDQT */
        start local 11 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testDQT
        23: .line 1199
            iconst_0
            istore 12 /* k */
        start local 12 // int k
        24: goto 31
        25: .line 1200
      StackMap locals: com.sun.imageio.plugins.jpeg.DQTMarkerSegment int
      StackMap stack:
            aload 11 /* testDQT */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            iload 12 /* k */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable
            astore 13 /* testTable */
        start local 13 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable testTable
        26: .line 1201
            iload 7 /* childID */
            aload 13 /* testTable */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable.tableID:I
            if_icmpne 30
        27: .line 1202
            aload 11 /* testDQT */
            astore 8 /* dqt */
        28: .line 1203
            iload 12 /* k */
            istore 9 /* tableIndex */
        29: .line 1204
            goto 32
        end local 13 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable testTable
        30: .line 1199
      StackMap locals:
      StackMap stack:
            iinc 12 /* k */ 1
      StackMap locals:
      StackMap stack:
        31: iload 12 /* k */
            aload 11 /* testDQT */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 25
        end local 12 // int k
        32: .line 1207
      StackMap locals:
      StackMap stack:
            aload 8 /* dqt */
            ifnull 33
            goto 35
        end local 11 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testDQT
        33: .line 1197
      StackMap locals:
      StackMap stack:
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
        34: iload 10 /* j */
            aload 2 /* oldDQTs */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 22
        end local 10 // int j
        35: .line 1209
      StackMap locals:
      StackMap stack:
            aload 8 /* dqt */
            ifnull 38
        36: .line 1210
            aload 8 /* dqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            iload 9 /* tableIndex */
            aload 8 /* dqt */
            aload 6 /* child */
            invokevirtual com.sun.imageio.plugins.jpeg.DQTMarkerSegment.getQtableFromNode:(Lorg/w3c/dom/Node;)Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        37: .line 1211
            goto 40
        38: .line 1212
      StackMap locals:
      StackMap stack:
            aload 2 /* oldDQTs */
            aload 2 /* oldDQTs */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            astore 8 /* dqt */
        39: .line 1213
            aload 8 /* dqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            aload 8 /* dqt */
            aload 6 /* child */
            invokevirtual com.sun.imageio.plugins.jpeg.DQTMarkerSegment.getQtableFromNode:(Lorg/w3c/dom/Node;)Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // int tableIndex
        end local 8 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment dqt
        end local 7 // int childID
        end local 6 // org.w3c.dom.Node child
        40: .line 1188
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator org.w3c.dom.NodeList int
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 5 /* i */
            aload 4 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 11
        end local 5 // int i
        end local 4 // org.w3c.dom.NodeList children
        42: .line 1216
            goto 57
        43: .line 1217
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.DQTMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            astore 4 /* newGuy */
        start local 4 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment newGuy
        44: .line 1218
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 5 /* firstDHT */
        start local 5 // int firstDHT
        45: .line 1219
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 6 /* firstSOF */
        start local 6 // int firstSOF
        46: .line 1220
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 7 /* firstSOS */
        start local 7 // int firstSOS
        47: .line 1221
            iload 5 /* firstDHT */
            iconst_m1
            if_icmpeq 50
        48: .line 1222
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 5 /* firstDHT */
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        49: .line 1223
            goto 57
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator com.sun.imageio.plugins.jpeg.DQTMarkerSegment int int int
      StackMap stack:
        50: iload 6 /* firstSOF */
            iconst_m1
            if_icmpeq 53
        51: .line 1224
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 6 /* firstSOF */
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        52: .line 1225
            goto 57
      StackMap locals:
      StackMap stack:
        53: iload 7 /* firstSOS */
            iconst_m1
            if_icmpeq 56
        54: .line 1226
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 7 /* firstSOS */
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        55: .line 1227
            goto 57
        56: .line 1228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // int firstSOS
        end local 6 // int firstSOF
        end local 5 // int firstDHT
        end local 4 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment newGuy
        57: .line 1231
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator
      StackMap stack:
            return
        end local 3 // java.util.Iterator iter
        end local 2 // java.util.ArrayList oldDQTs
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   58     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   58     1        node  Lorg/w3c/dom/Node;
            1   58     2     oldDQTs  Ljava/util/ArrayList<Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;>;
            2   58     3        iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            4    6     4         seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            9   42     4    children  Lorg/w3c/dom/NodeList;
           10   42     5           i  I
           12   40     6       child  Lorg/w3c/dom/Node;
           18   40     7     childID  I
           19   40     8         dqt  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
           20   40     9  tableIndex  I
           21   35    10           j  I
           23   33    11     testDQT  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
           24   32    12           k  I
           26   30    13   testTable  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
           44   57     4      newGuy  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
           45   57     5    firstDHT  I
           46   57     6    firstSOF  I
           47   57     7    firstSOS  I
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeDHTNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=16, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1253
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* oldDHTs */
        start local 2 // java.util.ArrayList oldDHTs
         1: .line 1254
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* iter */
        start local 3 // java.util.Iterator iter
         2: .line 1255
            goto 6
         3: .line 1256
      StackMap locals: java.util.ArrayList java.util.Iterator
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 4 /* seg */
        start local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         4: .line 1257
            aload 4 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            ifeq 6
         5: .line 1258
            aload 2 /* oldDHTs */
            aload 4 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         6: .line 1255
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 1261
            aload 2 /* oldDHTs */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifne 51
         8: .line 1262
            aload 1 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 4 /* children */
        start local 4 // org.w3c.dom.NodeList children
         9: .line 1263
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        10: goto 49
        11: .line 1264
      StackMap locals: org.w3c.dom.NodeList int
      StackMap stack:
            aload 4 /* children */
            iload 5 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 6 /* child */
        start local 6 // org.w3c.dom.Node child
        12: .line 1265
            aload 6 /* child */
            invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            astore 7 /* attrs */
        start local 7 // org.w3c.dom.NamedNodeMap attrs
        13: .line 1266
            aload 6 /* child */
        14: .line 1267
            aload 7 /* attrs */
        15: .line 1268
            ldc "htableId"
        16: .line 1269
            iconst_0
            iconst_3
        17: .line 1270
            iconst_1
        18: .line 1266
            invokestatic com.sun.imageio.plugins.jpeg.MarkerSegment.getAttributeValue:(Lorg/w3c/dom/Node;Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;IIZ)I
            istore 8 /* childID */
        start local 8 // int childID
        19: .line 1271
            aload 6 /* child */
        20: .line 1272
            aload 7 /* attrs */
        21: .line 1273
            ldc "class"
        22: .line 1274
            iconst_0
            iconst_1
        23: .line 1275
            iconst_1
        24: .line 1271
            invokestatic com.sun.imageio.plugins.jpeg.MarkerSegment.getAttributeValue:(Lorg/w3c/dom/Node;Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;IIZ)I
            istore 9 /* childClass */
        start local 9 // int childClass
        25: .line 1276
            aconst_null
            astore 10 /* dht */
        start local 10 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment dht
        26: .line 1277
            iconst_m1
            istore 11 /* tableIndex */
        start local 11 // int tableIndex
        27: .line 1278
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        28: goto 42
        29: .line 1279
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator org.w3c.dom.NodeList int org.w3c.dom.Node org.w3c.dom.NamedNodeMap int int com.sun.imageio.plugins.jpeg.DHTMarkerSegment int int
      StackMap stack:
            aload 2 /* oldDHTs */
            iload 12 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            astore 13 /* testDHT */
        start local 13 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment testDHT
        30: .line 1280
            iconst_0
            istore 14 /* k */
        start local 14 // int k
        31: goto 39
        32: .line 1281
      StackMap locals: com.sun.imageio.plugins.jpeg.DHTMarkerSegment int
      StackMap stack:
            aload 13 /* testDHT */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            iload 14 /* k */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable
            astore 15 /* testTable */
        start local 15 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable testTable
        33: .line 1282
            iload 8 /* childID */
            aload 15 /* testTable */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable.tableID:I
            if_icmpne 38
        34: .line 1283
            iload 9 /* childClass */
            aload 15 /* testTable */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable.tableClass:I
            if_icmpne 38
        35: .line 1284
            aload 13 /* testDHT */
            astore 10 /* dht */
        36: .line 1285
            iload 14 /* k */
            istore 11 /* tableIndex */
        37: .line 1286
            goto 40
        end local 15 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable testTable
        38: .line 1280
      StackMap locals:
      StackMap stack:
            iinc 14 /* k */ 1
      StackMap locals:
      StackMap stack:
        39: iload 14 /* k */
            aload 13 /* testDHT */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 32
        end local 14 // int k
        40: .line 1289
      StackMap locals:
      StackMap stack:
            aload 10 /* dht */
            ifnull 41
            goto 43
        end local 13 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment testDHT
        41: .line 1278
      StackMap locals:
      StackMap stack:
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        42: iload 12 /* j */
            aload 2 /* oldDHTs */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 29
        end local 12 // int j
        43: .line 1291
      StackMap locals:
      StackMap stack:
            aload 10 /* dht */
            ifnull 46
        44: .line 1292
            aload 10 /* dht */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            iload 11 /* tableIndex */
            aload 10 /* dht */
            aload 6 /* child */
            invokevirtual com.sun.imageio.plugins.jpeg.DHTMarkerSegment.getHtableFromNode:(Lorg/w3c/dom/Node;)Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment$Htable;
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        45: .line 1293
            goto 48
        46: .line 1294
      StackMap locals:
      StackMap stack:
            aload 2 /* oldDHTs */
            aload 2 /* oldDHTs */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            astore 10 /* dht */
        47: .line 1295
            aload 10 /* dht */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            aload 10 /* dht */
            aload 6 /* child */
            invokevirtual com.sun.imageio.plugins.jpeg.DHTMarkerSegment.getHtableFromNode:(Lorg/w3c/dom/Node;)Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment$Htable;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // int tableIndex
        end local 10 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment dht
        end local 9 // int childClass
        end local 8 // int childID
        end local 7 // org.w3c.dom.NamedNodeMap attrs
        end local 6 // org.w3c.dom.Node child
        48: .line 1263
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator org.w3c.dom.NodeList int
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        49: iload 5 /* i */
            aload 4 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 11
        end local 5 // int i
        end local 4 // org.w3c.dom.NodeList children
        50: .line 1298
            goto 65
        51: .line 1299
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.DHTMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            astore 4 /* newGuy */
        start local 4 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment newGuy
        52: .line 1300
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 5 /* lastDQT */
        start local 5 // int lastDQT
        53: .line 1301
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 6 /* firstSOF */
        start local 6 // int firstSOF
        54: .line 1302
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 7 /* firstSOS */
        start local 7 // int firstSOS
        55: .line 1303
            iload 5 /* lastDQT */
            iconst_m1
            if_icmpeq 58
        56: .line 1304
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 5 /* lastDQT */
            iconst_1
            iadd
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        57: .line 1305
            goto 65
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator com.sun.imageio.plugins.jpeg.DHTMarkerSegment int int int
      StackMap stack:
        58: iload 6 /* firstSOF */
            iconst_m1
            if_icmpeq 61
        59: .line 1306
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 6 /* firstSOF */
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        60: .line 1307
            goto 65
      StackMap locals:
      StackMap stack:
        61: iload 7 /* firstSOS */
            iconst_m1
            if_icmpeq 64
        62: .line 1308
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 7 /* firstSOS */
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        63: .line 1309
            goto 65
        64: .line 1310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 4 /* newGuy */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // int firstSOS
        end local 6 // int firstSOF
        end local 5 // int lastDQT
        end local 4 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment newGuy
        65: .line 1313
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList java.util.Iterator
      StackMap stack:
            return
        end local 3 // java.util.Iterator iter
        end local 2 // java.util.ArrayList oldDHTs
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   66     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   66     1        node  Lorg/w3c/dom/Node;
            1   66     2     oldDHTs  Ljava/util/ArrayList<Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;>;
            2   66     3        iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            4    6     4         seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            9   50     4    children  Lorg/w3c/dom/NodeList;
           10   50     5           i  I
           12   48     6       child  Lorg/w3c/dom/Node;
           13   48     7       attrs  Lorg/w3c/dom/NamedNodeMap;
           19   48     8     childID  I
           25   48     9  childClass  I
           26   48    10         dht  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
           27   48    11  tableIndex  I
           28   43    12           j  I
           30   41    13     testDHT  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
           31   40    14           k  I
           33   38    15   testTable  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment$Htable;
           52   65     4      newGuy  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
           53   65     5     lastDQT  I
           54   65     6    firstSOF  I
           55   65     7    firstSOS  I
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeDRINode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1330
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/DRIMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.DRIMarkerSegment
         1: .line 1329
            astore 2 /* dri */
        start local 2 // com.sun.imageio.plugins.jpeg.DRIMarkerSegment dri
         2: .line 1331
            aload 2 /* dri */
            ifnull 5
         3: .line 1332
            aload 2 /* dri */
            aload 1 /* node */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.DRIMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         4: .line 1333
            goto 15
         5: .line 1334
      StackMap locals: com.sun.imageio.plugins.jpeg.DRIMarkerSegment
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.DRIMarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.DRIMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            astore 3 /* newGuy */
        start local 3 // com.sun.imageio.plugins.jpeg.DRIMarkerSegment newGuy
         6: .line 1335
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 4 /* firstSOF */
        start local 4 // int firstSOF
         7: .line 1336
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 5 /* firstSOS */
        start local 5 // int firstSOS
         8: .line 1337
            iload 4 /* firstSOF */
            iconst_m1
            if_icmpeq 11
         9: .line 1338
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 4 /* firstSOF */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        10: .line 1339
            goto 15
      StackMap locals: com.sun.imageio.plugins.jpeg.DRIMarkerSegment int int
      StackMap stack:
        11: iload 5 /* firstSOS */
            iconst_m1
            if_icmpeq 14
        12: .line 1340
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 5 /* firstSOS */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        13: .line 1341
            goto 15
        14: .line 1342
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // int firstSOS
        end local 4 // int firstSOF
        end local 3 // com.sun.imageio.plugins.jpeg.DRIMarkerSegment newGuy
        15: .line 1345
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.imageio.plugins.jpeg.DRIMarkerSegment dri
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   16     1      node  Lorg/w3c/dom/Node;
            2   16     2       dri  Lcom/sun/imageio/plugins/jpeg/DRIMarkerSegment;
            6   15     3    newGuy  Lcom/sun/imageio/plugins/jpeg/DRIMarkerSegment;
            7   15     4  firstSOF  I
            8   15     5  firstSOS  I
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeCOMNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1353
            new com.sun.imageio.plugins.jpeg.COMMarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.COMMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            astore 2 /* newGuy */
        start local 2 // com.sun.imageio.plugins.jpeg.COMMarkerSegment newGuy
         1: .line 1354
            aload 0 /* this */
            aload 2 /* newGuy */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.insertCOMMarkerSegment:(Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;)V
         2: .line 1355
            return
        end local 2 // com.sun.imageio.plugins.jpeg.COMMarkerSegment newGuy
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    3     1    node  Lorg/w3c/dom/Node;
            1    3     2  newGuy  Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void insertCOMMarkerSegment(com.sun.imageio.plugins.jpeg.COMMarkerSegment);
    descriptor: (Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // com.sun.imageio.plugins.jpeg.COMMarkerSegment newGuy
         0: .line 1370
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 2 /* lastCOM */
        start local 2 // int lastCOM
         1: .line 1371
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* hasJFIF */
        start local 3 // boolean hasJFIF
         4: .line 1372
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 4 /* firstAdobe */
        start local 4 // int firstAdobe
         5: .line 1373
            iload 2 /* lastCOM */
            iconst_m1
            if_icmpeq 8
         6: .line 1374
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 2 /* lastCOM */
            iconst_1
            iadd
            aload 1 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         7: .line 1375
            goto 15
      StackMap locals: int int
      StackMap stack:
         8: iload 3 /* hasJFIF */
            ifeq 11
         9: .line 1376
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_1
            aload 1 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        10: .line 1377
            goto 15
      StackMap locals:
      StackMap stack:
        11: iload 4 /* firstAdobe */
            iconst_m1
            if_icmpeq 14
        12: .line 1378
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 4 /* firstAdobe */
            iconst_1
            iadd
            aload 1 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        13: .line 1379
            goto 15
        14: .line 1380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_0
            aload 1 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        15: .line 1382
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int firstAdobe
        end local 3 // boolean hasJFIF
        end local 2 // int lastCOM
        end local 1 // com.sun.imageio.plugins.jpeg.COMMarkerSegment newGuy
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   16     1      newGuy  Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;
            1   16     2     lastCOM  I
            4   16     3     hasJFIF  Z
            5   16     4  firstAdobe  I
    MethodParameters:
        Name  Flags
      newGuy  

  private void mergeAdobeNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1393
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
         1: .line 1392
            astore 2 /* adobe */
        start local 2 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
         2: .line 1394
            aload 2 /* adobe */
            ifnull 5
         3: .line 1395
            aload 2 /* adobe */
            aload 1 /* node */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         4: .line 1396
            goto 7
         5: .line 1397
      StackMap locals: com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            astore 3 /* newGuy */
        start local 3 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment newGuy
         6: .line 1398
            aload 0 /* this */
            aload 3 /* newGuy */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.insertAdobeMarkerSegment:(Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;)V
        end local 3 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment newGuy
         7: .line 1400
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    8     1    node  Lorg/w3c/dom/Node;
            2    8     2   adobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            6    7     3  newGuy  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void insertAdobeMarkerSegment(com.sun.imageio.plugins.jpeg.AdobeMarkerSegment);
    descriptor: (Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment newGuy
         0: .line 1414
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
         2: .line 1413
      StackMap locals:
      StackMap stack: int
            istore 2 /* hasJFIF */
        start local 2 // boolean hasJFIF
         3: .line 1415
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findLastUnknownMarkerSegmentPosition:()I
            istore 3 /* lastUnknown */
        start local 3 // int lastUnknown
         4: .line 1416
            iload 2 /* hasJFIF */
            ifeq 7
         5: .line 1417
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_1
            aload 1 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         6: .line 1418
            goto 11
      StackMap locals: int int
      StackMap stack:
         7: iload 3 /* lastUnknown */
            iconst_m1
            if_icmpeq 10
         8: .line 1419
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 3 /* lastUnknown */
            iconst_1
            iadd
            aload 1 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         9: .line 1420
            goto 11
        10: .line 1421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_0
            aload 1 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        11: .line 1423
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int lastUnknown
        end local 2 // boolean hasJFIF
        end local 1 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment newGuy
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   12     1       newGuy  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            3   12     2      hasJFIF  Z
            4   12     3  lastUnknown  I
    MethodParameters:
        Name  Flags
      newGuy  

  private void mergeUnknownNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1439
            new com.sun.imageio.plugins.jpeg.MarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.MarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            astore 2 /* newGuy */
        start local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment newGuy
         1: .line 1440
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findLastUnknownMarkerSegmentPosition:()I
            istore 3 /* lastUnknown */
        start local 3 // int lastUnknown
         2: .line 1441
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            ifnull 3
            iconst_1
            goto 4
      StackMap locals: com.sun.imageio.plugins.jpeg.MarkerSegment int
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 4 /* hasJFIF */
        start local 4 // boolean hasJFIF
         5: .line 1442
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 5 /* firstAdobe */
        start local 5 // int firstAdobe
         6: .line 1443
            iload 3 /* lastUnknown */
            iconst_m1
            if_icmpeq 9
         7: .line 1444
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 3 /* lastUnknown */
            iconst_1
            iadd
            aload 2 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         8: .line 1445
            goto 11
      StackMap locals: int int
      StackMap stack:
         9: iload 4 /* hasJFIF */
            ifeq 11
        10: .line 1446
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_1
            aload 2 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        11: .line 1447
      StackMap locals:
      StackMap stack:
            iload 5 /* firstAdobe */
            iconst_m1
            if_icmpeq 14
        12: .line 1448
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 5 /* firstAdobe */
            aload 2 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        13: .line 1449
            goto 15
        14: .line 1450
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_0
            aload 2 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        15: .line 1452
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int firstAdobe
        end local 4 // boolean hasJFIF
        end local 3 // int lastUnknown
        end local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment newGuy
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   16     1         node  Lorg/w3c/dom/Node;
            1   16     2       newGuy  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            2   16     3  lastUnknown  I
            5   16     4      hasJFIF  Z
            6   16     5   firstAdobe  I
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeSOFNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1468
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOFMarkerSegment
         1: .line 1467
            astore 2 /* sof */
        start local 2 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         2: .line 1469
            aload 2 /* sof */
            ifnull 5
         3: .line 1470
            aload 2 /* sof */
            aload 1 /* node */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.SOFMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         4: .line 1471
            goto 11
         5: .line 1472
      StackMap locals: com.sun.imageio.plugins.jpeg.SOFMarkerSegment
      StackMap stack:
            new com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.SOFMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            astore 3 /* newGuy */
        start local 3 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment newGuy
         6: .line 1473
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegmentPosition:(Ljava/lang/Class;Z)I
            istore 4 /* firstSOS */
        start local 4 // int firstSOS
         7: .line 1474
            iload 4 /* firstSOS */
            iconst_m1
            if_icmpeq 10
         8: .line 1475
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 4 /* firstSOS */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         9: .line 1476
            goto 11
        10: .line 1477
      StackMap locals: com.sun.imageio.plugins.jpeg.SOFMarkerSegment int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // int firstSOS
        end local 3 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment newGuy
        11: .line 1480
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   12     1      node  Lorg/w3c/dom/Node;
            2   12     2       sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            6   11     3    newGuy  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            7   11     4  firstSOS  I
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeSOSNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1494
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
         1: .line 1493
            astore 2 /* firstSOS */
        start local 2 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment firstSOS
         2: .line 1496
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
         3: .line 1495
            astore 3 /* lastSOS */
        start local 3 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment lastSOS
         4: .line 1497
            aload 2 /* firstSOS */
            ifnull 11
         5: .line 1498
            aload 2 /* firstSOS */
            aload 3 /* lastSOS */
            if_acmpeq 9
         6: .line 1499
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
         7: .line 1500
            ldc "Can't merge SOS node into a tree with > 1 SOS node"
            aload 1 /* node */
         8: .line 1499
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
         9: .line 1502
      StackMap locals: com.sun.imageio.plugins.jpeg.SOSMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment
      StackMap stack:
            aload 2 /* firstSOS */
            aload 1 /* node */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.SOSMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
        10: .line 1503
            goto 12
        11: .line 1504
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            dup
            aload 1 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.SOSMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 1506
      StackMap locals:
      StackMap stack:
            return
        end local 3 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment lastSOS
        end local 2 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment firstSOS
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   13     1      node  Lorg/w3c/dom/Node;
            2   13     2  firstSOS  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            4   13     3   lastSOS  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeStandardTree(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node root
         0: .line 1511
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.transparencyDone:Z
         1: .line 1512
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 2 /* children */
        start local 2 // org.w3c.dom.NodeList children
         2: .line 1513
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 29
         4: .line 1514
      StackMap locals: org.w3c.dom.NodeList int
      StackMap stack:
            aload 2 /* children */
            iload 3 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 4 /* node */
        start local 4 // org.w3c.dom.Node node
         5: .line 1515
            aload 4 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         6: .line 1516
            aload 5 /* name */
            ldc "Chroma"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 1517
            aload 0 /* this */
            aload 4 /* node */
            aload 2 /* children */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardChromaNode:(Lorg/w3c/dom/Node;Lorg/w3c/dom/NodeList;)V
         8: .line 1518
            goto 28
      StackMap locals: org.w3c.dom.Node java.lang.String
      StackMap stack:
         9: aload 5 /* name */
            ldc "Compression"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
        10: .line 1519
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardCompressionNode:(Lorg/w3c/dom/Node;)V
        11: .line 1520
            goto 28
      StackMap locals:
      StackMap stack:
        12: aload 5 /* name */
            ldc "Data"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 1521
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardDataNode:(Lorg/w3c/dom/Node;)V
        14: .line 1522
            goto 28
      StackMap locals:
      StackMap stack:
        15: aload 5 /* name */
            ldc "Dimension"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 1523
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardDimensionNode:(Lorg/w3c/dom/Node;)V
        17: .line 1524
            goto 28
      StackMap locals:
      StackMap stack:
        18: aload 5 /* name */
            ldc "Document"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        19: .line 1525
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardDocumentNode:(Lorg/w3c/dom/Node;)V
        20: .line 1526
            goto 28
      StackMap locals:
      StackMap stack:
        21: aload 5 /* name */
            ldc "Text"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        22: .line 1527
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardTextNode:(Lorg/w3c/dom/Node;)V
        23: .line 1528
            goto 28
      StackMap locals:
      StackMap stack:
        24: aload 5 /* name */
            ldc "Transparency"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 27
        25: .line 1529
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardTransparencyNode:(Lorg/w3c/dom/Node;)V
        26: .line 1530
            goto 28
        27: .line 1531
      StackMap locals:
      StackMap stack:
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid node: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* node */
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        end local 5 // java.lang.String name
        end local 4 // org.w3c.dom.Node node
        28: .line 1513
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 3 /* i */
            aload 2 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 4
        end local 3 // int i
        30: .line 1534
            return
        end local 2 // org.w3c.dom.NodeList children
        end local 1 // org.w3c.dom.Node root
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   31     0      this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   31     1      root  Lorg/w3c/dom/Node;
            2   31     2  children  Lorg/w3c/dom/NodeList;
            3   30     3         i  I
            5   28     4      node  Lorg/w3c/dom/Node;
            6   28     5      name  Ljava/lang/String;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      root  

  private void mergeStandardChromaNode(org.w3c.dom.Node, org.w3c.dom.NodeList);
    descriptor: (Lorg/w3c/dom/Node;Lorg/w3c/dom/NodeList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=30, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
        start local 2 // org.w3c.dom.NodeList siblings
         0: .line 1555
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.transparencyDone:Z
            ifeq 4
         1: .line 1556
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
         2: .line 1557
            ldc "Transparency node must follow Chroma node"
            aload 1 /* node */
         3: .line 1556
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
         4: .line 1560
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokeinterface org.w3c.dom.Node.getFirstChild:()Lorg/w3c/dom/Node;
            astore 3 /* csType */
        start local 3 // org.w3c.dom.Node csType
         5: .line 1561
            aload 3 /* csType */
            ifnull 6
            aload 3 /* csType */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            ldc "ColorSpaceType"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 1563
      StackMap locals: org.w3c.dom.Node
      StackMap stack:
            return
         7: .line 1566
      StackMap locals:
      StackMap stack:
            aload 3 /* csType */
            invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            ldc "name"
            invokeinterface org.w3c.dom.NamedNodeMap.getNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            astore 4 /* csName */
        start local 4 // java.lang.String csName
         8: .line 1568
            iconst_0
            istore 5 /* numChannels */
        start local 5 // int numChannels
         9: .line 1569
            iconst_0
            istore 6 /* wantJFIF */
        start local 6 // boolean wantJFIF
        10: .line 1570
            iconst_0
            istore 7 /* wantAdobe */
        start local 7 // boolean wantAdobe
        11: .line 1571
            iconst_0
            istore 8 /* transform */
        start local 8 // int transform
        12: .line 1572
            iconst_0
            istore 9 /* willSubsample */
        start local 9 // boolean willSubsample
        13: .line 1573
            iconst_4
            newarray 8
            dup
            iconst_0
            iconst_1
            bastore
            dup
            iconst_1
            iconst_2
            bastore
            dup
            iconst_2
            iconst_3
            bastore
            dup
            iconst_3
            iconst_4
            bastore
            astore 10 /* ids */
        start local 10 // byte[] ids
        14: .line 1574
            aload 4 /* csName */
            ldc "GRAY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        15: .line 1575
            iconst_1
            istore 5 /* numChannels */
        16: .line 1576
            iconst_1
            istore 6 /* wantJFIF */
        17: .line 1577
            goto 64
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[]
      StackMap stack:
        18: aload 4 /* csName */
            ldc "YCbCr"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        19: .line 1578
            iconst_3
            istore 5 /* numChannels */
        20: .line 1579
            iconst_1
            istore 6 /* wantJFIF */
        21: .line 1580
            iconst_1
            istore 9 /* willSubsample */
        22: .line 1581
            goto 64
      StackMap locals:
      StackMap stack:
        23: aload 4 /* csName */
            ldc "PhotoYCC"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 31
        24: .line 1582
            iconst_3
            istore 5 /* numChannels */
        25: .line 1583
            iconst_1
            istore 7 /* wantAdobe */
        26: .line 1584
            iconst_1
            istore 8 /* transform */
        27: .line 1585
            aload 10 /* ids */
            iconst_0
            bipush 89
            bastore
        28: .line 1586
            aload 10 /* ids */
            iconst_1
            bipush 67
            bastore
        29: .line 1587
            aload 10 /* ids */
            iconst_2
            bipush 99
            bastore
        30: .line 1588
            goto 64
      StackMap locals:
      StackMap stack:
        31: aload 4 /* csName */
            ldc "RGB"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 39
        32: .line 1589
            iconst_3
            istore 5 /* numChannels */
        33: .line 1590
            iconst_1
            istore 7 /* wantAdobe */
        34: .line 1591
            iconst_0
            istore 8 /* transform */
        35: .line 1592
            aload 10 /* ids */
            iconst_0
            bipush 82
            bastore
        36: .line 1593
            aload 10 /* ids */
            iconst_1
            bipush 71
            bastore
        37: .line 1594
            aload 10 /* ids */
            iconst_2
            bipush 66
            bastore
        38: .line 1595
            goto 64
      StackMap locals:
      StackMap stack:
        39: aload 4 /* csName */
            ldc "XYZ"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        40: .line 1596
            aload 4 /* csName */
            ldc "Lab"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        41: .line 1597
            aload 4 /* csName */
            ldc "Luv"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        42: .line 1598
            aload 4 /* csName */
            ldc "YxY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        43: .line 1599
            aload 4 /* csName */
            ldc "HSV"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        44: .line 1600
            aload 4 /* csName */
            ldc "HLS"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        45: .line 1601
            aload 4 /* csName */
            ldc "CMY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        46: .line 1602
            aload 4 /* csName */
            ldc "3CLR"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 49
        47: .line 1603
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 5 /* numChannels */
        48: .line 1604
            goto 64
      StackMap locals:
      StackMap stack:
        49: aload 4 /* csName */
            ldc "YCCK"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 55
        50: .line 1605
            iconst_4
            istore 5 /* numChannels */
        51: .line 1606
            iconst_1
            istore 7 /* wantAdobe */
        52: .line 1607
            iconst_2
            istore 8 /* transform */
        53: .line 1608
            iconst_1
            istore 9 /* willSubsample */
        54: .line 1609
            goto 64
      StackMap locals:
      StackMap stack:
        55: aload 4 /* csName */
            ldc "CMYK"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 60
        56: .line 1610
            iconst_4
            istore 5 /* numChannels */
        57: .line 1611
            iconst_1
            istore 7 /* wantAdobe */
        58: .line 1612
            iconst_0
            istore 8 /* transform */
        59: .line 1613
            goto 64
      StackMap locals:
      StackMap stack:
        60: aload 4 /* csName */
            ldc "4CLR"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 63
        61: .line 1614
            iconst_4
            istore 5 /* numChannels */
        62: .line 1615
            goto 64
        63: .line 1616
      StackMap locals:
      StackMap stack:
            return
        64: .line 1619
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* wantAlpha */
        start local 11 // boolean wantAlpha
        65: .line 1620
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        66: goto 72
        67: .line 1621
      StackMap locals: int int
      StackMap stack:
            aload 2 /* siblings */
            iload 12 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 13 /* trans */
        start local 13 // org.w3c.dom.Node trans
        68: .line 1622
            aload 13 /* trans */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            ldc "Transparency"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 71
        69: .line 1623
            aload 0 /* this */
            aload 13 /* trans */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.wantAlpha:(Lorg/w3c/dom/Node;)Z
            istore 11 /* wantAlpha */
        70: .line 1624
            goto 73
        end local 13 // org.w3c.dom.Node trans
        71: .line 1620
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        72: iload 12 /* i */
            aload 2 /* siblings */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 67
        end local 12 // int i
        73: .line 1628
      StackMap locals:
      StackMap stack:
            iload 11 /* wantAlpha */
            ifeq 79
        74: .line 1629
            iinc 5 /* numChannels */ 1
        75: .line 1630
            iconst_0
            istore 6 /* wantJFIF */
        76: .line 1631
            aload 10 /* ids */
            iconst_0
            baload
            bipush 82
            if_icmpne 79
        77: .line 1632
            aload 10 /* ids */
            iconst_3
            bipush 65
            bastore
        78: .line 1633
            iconst_0
            istore 7 /* wantAdobe */
        79: .line 1638
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
        80: .line 1637
            astore 12 /* jfif */
        start local 12 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        81: .line 1640
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
        82: .line 1639
            astore 13 /* adobe */
        start local 13 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        83: .line 1642
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOFMarkerSegment
        84: .line 1641
            astore 14 /* sof */
        start local 14 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        85: .line 1644
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
        86: .line 1643
            astore 15 /* sos */
        start local 15 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        87: .line 1652
            aload 14 /* sof */
            ifnull 90
            aload 14 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.tag:I
            sipush 194
            if_icmpne 90
        88: .line 1653
            aload 14 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            iload 5 /* numChannels */
            if_icmpeq 90
            aload 15 /* sos */
            ifnull 90
        89: .line 1654
            return
        90: .line 1659
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment
      StackMap stack:
            iload 6 /* wantJFIF */
            ifne 92
            aload 12 /* jfif */
            ifnull 92
        91: .line 1660
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 12 /* jfif */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        92: .line 1664
      StackMap locals:
      StackMap stack:
            iload 6 /* wantJFIF */
            ifeq 94
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 94
        93: .line 1665
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_0
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            dup
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:()V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        94: .line 1670
      StackMap locals:
      StackMap stack:
            iload 7 /* wantAdobe */
            ifeq 101
        95: .line 1671
            aload 13 /* adobe */
            ifnonnull 99
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 99
        96: .line 1672
            new com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            dup
            iload 8 /* transform */
            invokespecial com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.<init>:(I)V
            astore 13 /* adobe */
        97: .line 1673
            aload 0 /* this */
            aload 13 /* adobe */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.insertAdobeMarkerSegment:(Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;)V
        98: .line 1674
            goto 103
        99: .line 1675
      StackMap locals:
      StackMap stack:
            aload 13 /* adobe */
            iload 8 /* transform */
            putfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
       100: .line 1677
            goto 103
      StackMap locals:
      StackMap stack:
       101: aload 13 /* adobe */
            ifnull 103
       102: .line 1678
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 13 /* adobe */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
       103: .line 1681
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 16 /* updateQtables */
        start local 16 // boolean updateQtables
       104: .line 1682
            iconst_0
            istore 17 /* updateHtables */
        start local 17 // boolean updateHtables
       105: .line 1684
            iconst_0
            istore 18 /* progressive */
        start local 18 // boolean progressive
       106: .line 1686
            iconst_4
            newarray 10
            dup
            iconst_1
            iconst_1
            iastore
            dup
            iconst_2
            iconst_1
            iastore
            astore 19 /* subsampledSelectors */
        start local 19 // int[] subsampledSelectors
       107: .line 1687
            iconst_4
            newarray 10
            astore 20 /* nonSubsampledSelectors */
        start local 20 // int[] nonSubsampledSelectors
       108: .line 1689
            iload 9 /* willSubsample */
            ifeq 110
       109: .line 1690
            aload 19 /* subsampledSelectors */
            goto 111
       110: .line 1691
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int int int[] int[]
      StackMap stack:
            aload 20 /* nonSubsampledSelectors */
       111: .line 1689
      StackMap locals:
      StackMap stack: int[]
            astore 21 /* newTableSelectors */
        start local 21 // int[] newTableSelectors
       112: .line 1694
            aconst_null
            astore 22 /* oldCompSpecs */
        start local 22 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] oldCompSpecs
       113: .line 1696
            aload 14 /* sof */
            ifnull 181
       114: .line 1697
            aload 14 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            astore 22 /* oldCompSpecs */
       115: .line 1698
            aload 14 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.tag:I
            sipush 194
            if_icmpne 116
            iconst_1
            goto 117
      StackMap locals: int[] com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[]
      StackMap stack:
       116: iconst_0
      StackMap locals:
      StackMap stack: int
       117: istore 18 /* progressive */
       118: .line 1701
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 14 /* sof */
            invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
       119: .line 1702
            new com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            dup
            iload 18 /* progressive */
       120: .line 1703
            iconst_0
       121: .line 1704
            iload 9 /* willSubsample */
       122: .line 1705
            aload 10 /* ids */
       123: .line 1706
            iload 5 /* numChannels */
       124: .line 1702
            invokespecial com.sun.imageio.plugins.jpeg.SOFMarkerSegment.<init>:(ZZZ[BI)V
       125: .line 1701
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
       126: .line 1713
            iconst_0
            istore 23 /* i */
        start local 23 // int i
       127: goto 131
       128: .line 1714
      StackMap locals: int
      StackMap stack:
            aload 22 /* oldCompSpecs */
            iload 23 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.QtableSelector:I
            aload 21 /* newTableSelectors */
            iload 23 /* i */
            iaload
            if_icmpeq 130
       129: .line 1715
            iconst_1
            istore 16 /* updateQtables */
       130: .line 1713
      StackMap locals:
      StackMap stack:
            iinc 23 /* i */ 1
      StackMap locals:
      StackMap stack:
       131: iload 23 /* i */
            aload 22 /* oldCompSpecs */
            arraylength
            if_icmplt 128
        end local 23 // int i
       132: .line 1719
            iload 18 /* progressive */
            ifeq 162
       133: .line 1722
            iconst_0
            istore 23 /* idsDiffer */
        start local 23 // boolean idsDiffer
       134: .line 1723
            iconst_0
            istore 24 /* i */
        start local 24 // int i
       135: goto 139
       136: .line 1724
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int int int[] int[] int[] com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] int int
      StackMap stack:
            aload 10 /* ids */
            iload 24 /* i */
            baload
            aload 22 /* oldCompSpecs */
            iload 24 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            if_icmpeq 138
       137: .line 1725
            iconst_1
            istore 23 /* idsDiffer */
       138: .line 1723
      StackMap locals:
      StackMap stack:
            iinc 24 /* i */ 1
      StackMap locals:
      StackMap stack:
       139: iload 24 /* i */
            aload 22 /* oldCompSpecs */
            arraylength
            if_icmplt 136
        end local 24 // int i
       140: .line 1728
            iload 23 /* idsDiffer */
            ifeq 184
       141: .line 1730
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 24 /* iter */
        start local 24 // java.util.Iterator iter
       142: .line 1731
            goto 160
       143: .line 1732
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int int int[] int[] int[] com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] int java.util.Iterator
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 25 /* seg */
        start local 25 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
       144: .line 1733
            aload 25 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            ifeq 160
       145: .line 1734
            aload 25 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            astore 26 /* target */
        start local 26 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment target
       146: .line 1735
            iconst_0
            istore 27 /* i */
        start local 27 // int i
       147: goto 159
       148: .line 1737
      StackMap locals: com.sun.imageio.plugins.jpeg.MarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int
      StackMap stack:
            aload 26 /* target */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            iload 27 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec.componentSelector:I
       149: .line 1736
            istore 28 /* oldSelector */
        start local 28 // int oldSelector
       150: .line 1744
            iconst_0
            istore 29 /* j */
        start local 29 // int j
       151: goto 157
       152: .line 1745
      StackMap locals: int int
      StackMap stack:
            aload 22 /* oldCompSpecs */
            iload 29 /* j */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            iload 28 /* oldSelector */
            if_icmpne 156
       153: .line 1746
            aload 26 /* target */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            iload 27 /* i */
            aaload
       154: .line 1747
            aload 10 /* ids */
            iload 29 /* j */
            baload
       155: .line 1746
            putfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec.componentSelector:I
       156: .line 1744
      StackMap locals:
      StackMap stack:
            iinc 29 /* j */ 1
      StackMap locals:
      StackMap stack:
       157: iload 29 /* j */
            aload 22 /* oldCompSpecs */
            arraylength
            if_icmplt 152
        end local 29 // int j
        end local 28 // int oldSelector
       158: .line 1735
            iinc 27 /* i */ 1
      StackMap locals:
      StackMap stack:
       159: iload 27 /* i */
            aload 26 /* target */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            arraylength
            if_icmplt 148
        end local 27 // int i
        end local 26 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment target
        end local 25 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
       160: .line 1731
      StackMap locals:
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 143
        end local 24 // java.util.Iterator iter
        end local 23 // boolean idsDiffer
       161: .line 1754
            goto 184
       162: .line 1755
      StackMap locals:
      StackMap stack:
            aload 15 /* sos */
            ifnull 184
       163: .line 1758
            iconst_0
            istore 23 /* i */
        start local 23 // int i
       164: goto 173
       165: .line 1759
      StackMap locals: int
      StackMap stack:
            aload 15 /* sos */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            iload 23 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec.dcHuffTable:I
       166: .line 1760
            aload 21 /* newTableSelectors */
            iload 23 /* i */
            iaload
       167: .line 1759
            if_icmpne 171
       168: .line 1761
            aload 15 /* sos */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            iload 23 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec.acHuffTable:I
       169: .line 1762
            aload 21 /* newTableSelectors */
            iload 23 /* i */
            iaload
       170: .line 1761
            if_icmpeq 172
       171: .line 1763
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 17 /* updateHtables */
       172: .line 1758
      StackMap locals:
      StackMap stack:
            iinc 23 /* i */ 1
      StackMap locals:
      StackMap stack:
       173: iload 23 /* i */
            aload 15 /* sos */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            arraylength
            if_icmplt 165
        end local 23 // int i
       174: .line 1768
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 15 /* sos */
            invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
       175: .line 1769
            new com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            dup
            iload 9 /* willSubsample */
       176: .line 1770
            aload 10 /* ids */
       177: .line 1771
            iload 5 /* numChannels */
       178: .line 1769
            invokespecial com.sun.imageio.plugins.jpeg.SOSMarkerSegment.<init>:(Z[BI)V
       179: .line 1768
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
       180: .line 1774
            goto 184
       181: .line 1776
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 184
       182: .line 1778
            iconst_1
            istore 16 /* updateQtables */
       183: .line 1779
            iconst_1
            istore 17 /* updateHtables */
       184: .line 1783
      StackMap locals:
      StackMap stack:
            iload 16 /* updateQtables */
            ifeq 221
       185: .line 1784
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 23 /* tableSegments */
        start local 23 // java.util.List tableSegments
       186: .line 1785
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 24 /* iter */
        start local 24 // java.util.Iterator iter
       187: .line 1786
            goto 191
       188: .line 1787
      StackMap locals: java.util.List java.util.Iterator
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 25 /* seg */
        start local 25 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
       189: .line 1788
            aload 25 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            ifeq 191
       190: .line 1789
            aload 23 /* tableSegments */
            aload 25 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 25 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
       191: .line 1786
      StackMap locals:
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 188
        end local 24 // java.util.Iterator iter
       192: .line 1795
            aload 23 /* tableSegments */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 221
            iload 9 /* willSubsample */
            ifeq 221
       193: .line 1802
            iconst_0
            istore 24 /* found */
        start local 24 // boolean found
       194: .line 1803
            aload 23 /* tableSegments */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 25 /* iter */
        start local 25 // java.util.Iterator iter
       195: .line 1804
            goto 204
       196: .line 1805
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int int int[] int[] int[] com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] java.util.List int java.util.Iterator
      StackMap stack:
            aload 25 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            astore 26 /* testdqt */
        start local 26 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testdqt
       197: .line 1807
            aload 26 /* testdqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       198: .line 1806
            astore 27 /* tabiter */
        start local 27 // java.util.Iterator tabiter
       199: .line 1807
            goto 203
       200: .line 1808
      StackMap locals: com.sun.imageio.plugins.jpeg.DQTMarkerSegment java.util.Iterator
      StackMap stack:
            aload 27 /* tabiter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable
            astore 28 /* tab */
        start local 28 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable tab
       201: .line 1809
            aload 28 /* tab */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable.tableID:I
            iconst_1
            if_icmpne 203
       202: .line 1810
            iconst_1
            istore 24 /* found */
        end local 28 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable tab
       203: .line 1807
      StackMap locals:
      StackMap stack:
            aload 27 /* tabiter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 200
        end local 27 // java.util.Iterator tabiter
        end local 26 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testdqt
       204: .line 1804
      StackMap locals:
      StackMap stack:
            aload 25 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 196
        end local 25 // java.util.Iterator iter
       205: .line 1814
            iload 24 /* found */
            ifne 221
       206: .line 1816
            aconst_null
            astore 25 /* table0 */
        start local 25 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable table0
       207: .line 1818
            aload 23 /* tableSegments */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       208: .line 1817
            astore 26 /* iter */
        start local 26 // java.util.Iterator iter
       209: .line 1818
            goto 218
       210: .line 1819
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int int int[] int[] int[] com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] java.util.List int com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable java.util.Iterator
      StackMap stack:
            aload 26 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            astore 27 /* testdqt */
        start local 27 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testdqt
       211: .line 1821
            aload 27 /* testdqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       212: .line 1820
            astore 28 /* tabiter */
        start local 28 // java.util.Iterator tabiter
       213: .line 1821
            goto 217
       214: .line 1822
      StackMap locals: com.sun.imageio.plugins.jpeg.DQTMarkerSegment java.util.Iterator
      StackMap stack:
            aload 28 /* tabiter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable
            astore 29 /* tab */
        start local 29 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable tab
       215: .line 1823
            aload 29 /* tab */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable.tableID:I
            ifne 217
       216: .line 1824
            aload 29 /* tab */
            astore 25 /* table0 */
        end local 29 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable tab
       217: .line 1821
      StackMap locals:
      StackMap stack:
            aload 28 /* tabiter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 214
        end local 28 // java.util.Iterator tabiter
        end local 27 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testdqt
       218: .line 1818
      StackMap locals:
      StackMap stack:
            aload 26 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 210
        end local 26 // java.util.Iterator iter
       219: .line 1832
            aload 23 /* tableSegments */
            aload 23 /* tableSegments */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            astore 26 /* dqt */
        start local 26 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment dqt
       220: .line 1833
            aload 26 /* dqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            aload 26 /* dqt */
            aload 25 /* table0 */
            invokevirtual com.sun.imageio.plugins.jpeg.DQTMarkerSegment.getChromaForLuma:(Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;)Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 26 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment dqt
        end local 25 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable table0
        end local 24 // boolean found
        end local 23 // java.util.List tableSegments
       221: .line 1838
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int int int[] int[] int[] com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[]
      StackMap stack:
            iload 17 /* updateHtables */
            ifeq 247
       222: .line 1839
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 23 /* tableSegments */
        start local 23 // java.util.List tableSegments
       223: .line 1840
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 24 /* iter */
        start local 24 // java.util.Iterator iter
       224: .line 1841
            goto 228
       225: .line 1842
      StackMap locals: java.util.List java.util.Iterator
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 25 /* seg */
        start local 25 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
       226: .line 1843
            aload 25 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            ifeq 228
       227: .line 1844
            aload 23 /* tableSegments */
            aload 25 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 25 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
       228: .line 1841
      StackMap locals:
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 225
        end local 24 // java.util.Iterator iter
       229: .line 1850
            aload 23 /* tableSegments */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 247
            iload 9 /* willSubsample */
            ifeq 247
       230: .line 1856
            iconst_0
            istore 24 /* found */
        start local 24 // boolean found
       231: .line 1857
            aload 23 /* tableSegments */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 25 /* iter */
        start local 25 // java.util.Iterator iter
       232: .line 1858
            goto 241
       233: .line 1859
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList org.w3c.dom.Node java.lang.String int int int int int byte[] int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int int int[] int[] int[] com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] java.util.List int java.util.Iterator
      StackMap stack:
            aload 25 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            astore 26 /* testdht */
        start local 26 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment testdht
       234: .line 1861
            aload 26 /* testdht */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       235: .line 1860
            astore 27 /* tabiter */
        start local 27 // java.util.Iterator tabiter
       236: .line 1861
            goto 240
       237: .line 1862
      StackMap locals: com.sun.imageio.plugins.jpeg.DHTMarkerSegment java.util.Iterator
      StackMap stack:
            aload 27 /* tabiter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable
            astore 28 /* tab */
        start local 28 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable tab
       238: .line 1863
            aload 28 /* tab */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable.tableID:I
            iconst_1
            if_icmpne 240
       239: .line 1864
            iconst_1
            istore 24 /* found */
        end local 28 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable tab
       240: .line 1861
      StackMap locals:
      StackMap stack:
            aload 27 /* tabiter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 237
        end local 27 // java.util.Iterator tabiter
        end local 26 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment testdht
       241: .line 1858
      StackMap locals:
      StackMap stack:
            aload 25 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 233
        end local 25 // java.util.Iterator iter
       242: .line 1868
            iload 24 /* found */
            ifne 247
       243: .line 1872
            aload 23 /* tableSegments */
            aload 23 /* tableSegments */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
       244: .line 1871
            astore 25 /* lastDHT */
        start local 25 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment lastDHT
       245: .line 1873
            aload 25 /* lastDHT */
            getstatic javax.imageio.plugins.jpeg.JPEGHuffmanTable.StdDCLuminance:Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
            iconst_1
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.DHTMarkerSegment.addHtable:(Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;ZI)V
       246: .line 1874
            aload 25 /* lastDHT */
            getstatic javax.imageio.plugins.jpeg.JPEGHuffmanTable.StdACLuminance:Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;
            iconst_1
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.DHTMarkerSegment.addHtable:(Ljavax/imageio/plugins/jpeg/JPEGHuffmanTable;ZI)V
        end local 25 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment lastDHT
        end local 24 // boolean found
        end local 23 // java.util.List tableSegments
       247: .line 1878
      StackMap locals:
      StackMap stack:
            return
        end local 22 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] oldCompSpecs
        end local 21 // int[] newTableSelectors
        end local 20 // int[] nonSubsampledSelectors
        end local 19 // int[] subsampledSelectors
        end local 18 // boolean progressive
        end local 17 // boolean updateHtables
        end local 16 // boolean updateQtables
        end local 15 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        end local 14 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 13 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        end local 12 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        end local 11 // boolean wantAlpha
        end local 10 // byte[] ids
        end local 9 // boolean willSubsample
        end local 8 // int transform
        end local 7 // boolean wantAdobe
        end local 6 // boolean wantJFIF
        end local 5 // int numChannels
        end local 4 // java.lang.String csName
        end local 3 // org.w3c.dom.Node csType
        end local 2 // org.w3c.dom.NodeList siblings
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0  248     0                    this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0  248     1                    node  Lorg/w3c/dom/Node;
            0  248     2                siblings  Lorg/w3c/dom/NodeList;
            5  248     3                  csType  Lorg/w3c/dom/Node;
            8  248     4                  csName  Ljava/lang/String;
            9  248     5             numChannels  I
           10  248     6                wantJFIF  Z
           11  248     7               wantAdobe  Z
           12  248     8               transform  I
           13  248     9           willSubsample  Z
           14  248    10                     ids  [B
           65  248    11               wantAlpha  Z
           66   73    12                       i  I
           68   71    13                   trans  Lorg/w3c/dom/Node;
           81  248    12                    jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
           83  248    13                   adobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
           85  248    14                     sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
           87  248    15                     sos  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
          104  248    16           updateQtables  Z
          105  248    17           updateHtables  Z
          106  248    18             progressive  Z
          107  248    19     subsampledSelectors  [I
          108  248    20  nonSubsampledSelectors  [I
          112  248    21       newTableSelectors  [I
          113  248    22            oldCompSpecs  [Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
          127  132    23                       i  I
          134  161    23               idsDiffer  Z
          135  140    24                       i  I
          142  161    24                    iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
          144  160    25                     seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
          146  160    26                  target  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
          147  160    27                       i  I
          150  158    28             oldSelector  I
          151  158    29                       j  I
          164  174    23                       i  I
          186  221    23           tableSegments  Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;>;
          187  192    24                    iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
          189  191    25                     seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
          194  221    24                   found  Z
          195  205    25                    iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;>;
          197  204    26                 testdqt  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
          199  204    27                 tabiter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;>;
          201  203    28                     tab  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
          207  221    25                  table0  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
          209  219    26                    iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;>;
          211  218    27                 testdqt  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
          213  218    28                 tabiter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;>;
          215  217    29                     tab  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
          220  221    26                     dqt  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
          223  247    23           tableSegments  Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;>;
          224  229    24                    iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
          226  228    25                     seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
          231  247    24                   found  Z
          232  242    25                    iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;>;
          234  241    26                 testdht  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
          236  241    27                 tabiter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment$Htable;>;
          238  240    28                     tab  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment$Htable;
          245  247    25                 lastDHT  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
          Name  Flags
      node      
      siblings  

  private boolean wantAlpha(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node transparency
         0: .line 1881
            iconst_0
            istore 2 /* returnValue */
        start local 2 // boolean returnValue
         1: .line 1882
            aload 1 /* transparency */
            invokeinterface org.w3c.dom.Node.getFirstChild:()Lorg/w3c/dom/Node;
            astore 3 /* alpha */
        start local 3 // org.w3c.dom.Node alpha
         2: .line 1883
            aload 3 /* alpha */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            ldc "Alpha"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         3: .line 1884
            aload 3 /* alpha */
            invokeinterface org.w3c.dom.Node.hasAttributes:()Z
            ifeq 8
         4: .line 1886
            aload 3 /* alpha */
            invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            ldc "value"
            invokeinterface org.w3c.dom.NamedNodeMap.getNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
         5: .line 1885
            astore 4 /* value */
        start local 4 // java.lang.String value
         6: .line 1887
            aload 4 /* value */
            ldc "none"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
         7: .line 1888
            iconst_1
            istore 2 /* returnValue */
        end local 4 // java.lang.String value
         8: .line 1892
      StackMap locals: int org.w3c.dom.Node
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.transparencyDone:Z
         9: .line 1893
            iload 2 /* returnValue */
            ireturn
        end local 3 // org.w3c.dom.Node alpha
        end local 2 // boolean returnValue
        end local 1 // org.w3c.dom.Node transparency
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   10     1  transparency  Lorg/w3c/dom/Node;
            1   10     2   returnValue  Z
            2   10     3         alpha  Lorg/w3c/dom/Node;
            6    8     4         value  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      transparency  

  private void mergeStandardCompressionNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1901
            return
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    1     1  node  Lorg/w3c/dom/Node;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeStandardDataNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1906
            return
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    1     1  node  Lorg/w3c/dom/Node;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeStandardDimensionNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=11, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1913
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
         1: .line 1912
            astore 2 /* jfif */
        start local 2 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
         2: .line 1914
            aload 2 /* jfif */
            ifnonnull 29
         3: .line 1919
            iconst_0
            istore 3 /* canHaveJFIF */
        start local 3 // boolean canHaveJFIF
         4: .line 1921
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOFMarkerSegment
         5: .line 1920
            astore 4 /* sof */
        start local 4 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         6: .line 1922
            aload 4 /* sof */
            ifnull 26
         7: .line 1923
            aload 4 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            istore 5 /* numChannels */
        start local 5 // int numChannels
         8: .line 1924
            iload 5 /* numChannels */
            iconst_1
            if_icmpeq 9
            iload 5 /* numChannels */
            iconst_3
            if_icmpne 26
         9: .line 1925
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node com.sun.imageio.plugins.jpeg.JFIFMarkerSegment int com.sun.imageio.plugins.jpeg.SOFMarkerSegment int
      StackMap stack:
            iconst_1
            istore 3 /* canHaveJFIF */
        10: .line 1926
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        11: goto 15
        12: .line 1927
      StackMap locals: int
      StackMap stack:
            aload 4 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iload 6 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            iload 6 /* i */
            iconst_1
            iadd
            if_icmpeq 14
        13: .line 1928
            iconst_0
            istore 3 /* canHaveJFIF */
        14: .line 1926
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 6 /* i */
            aload 4 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            if_icmplt 12
        end local 6 // int i
        16: .line 1933
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
        17: .line 1934
            iconst_1
        18: .line 1933
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
        19: .line 1932
            astore 6 /* adobe */
        start local 6 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        20: .line 1935
            aload 6 /* adobe */
            ifnull 26
        21: .line 1936
            aload 6 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            iload 5 /* numChannels */
            iconst_1
            if_icmpne 23
        22: .line 1937
            iconst_0
            goto 24
        23: .line 1938
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node com.sun.imageio.plugins.jpeg.JFIFMarkerSegment int com.sun.imageio.plugins.jpeg.SOFMarkerSegment int com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
      StackMap stack: int
            iconst_1
        24: .line 1936
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node com.sun.imageio.plugins.jpeg.JFIFMarkerSegment int com.sun.imageio.plugins.jpeg.SOFMarkerSegment int com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
      StackMap stack: int int
            if_icmpeq 26
        25: .line 1939
            iconst_0
            istore 3 /* canHaveJFIF */
        end local 6 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        end local 5 // int numChannels
        26: .line 1946
      StackMap locals:
      StackMap stack:
            iload 3 /* canHaveJFIF */
            ifeq 29
        27: .line 1947
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            dup
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:()V
            astore 2 /* jfif */
        28: .line 1948
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iconst_0
            aload 2 /* jfif */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        end local 4 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 3 // boolean canHaveJFIF
        29: .line 1951
      StackMap locals:
      StackMap stack:
            aload 2 /* jfif */
            ifnull 59
        30: .line 1952
            aload 1 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 3 /* children */
        start local 3 // org.w3c.dom.NodeList children
        31: .line 1953
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        32: goto 58
        33: .line 1954
      StackMap locals: org.w3c.dom.NodeList int
      StackMap stack:
            aload 3 /* children */
            iload 4 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 5 /* child */
        start local 5 // org.w3c.dom.Node child
        34: .line 1955
            aload 5 /* child */
            invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            astore 6 /* attrs */
        start local 6 // org.w3c.dom.NamedNodeMap attrs
        35: .line 1956
            aload 5 /* child */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
        36: .line 1957
            aload 7 /* name */
            ldc "PixelAspectRatio"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 44
        37: .line 1958
            aload 6 /* attrs */
            ldc "value"
            invokeinterface org.w3c.dom.NamedNodeMap.getNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            astore 8 /* valueString */
        start local 8 // java.lang.String valueString
        38: .line 1959
            aload 8 /* valueString */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 9 /* value */
        start local 9 // float value
        39: .line 1960
            fload 9 /* value */
            invokestatic com.sun.imageio.plugins.jpeg.JPEGMetadata.findIntegerRatio:(F)Ljava/awt/Point;
            astore 10 /* p */
        start local 10 // java.awt.Point p
        40: .line 1961
            aload 2 /* jfif */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
        41: .line 1962
            aload 2 /* jfif */
            aload 10 /* p */
            getfield java.awt.Point.x:I
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Xdensity:I
        42: .line 1963
            aload 2 /* jfif */
            aload 10 /* p */
            getfield java.awt.Point.y:I
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Xdensity:I
        end local 10 // java.awt.Point p
        end local 9 // float value
        end local 8 // java.lang.String valueString
        43: .line 1964
            goto 57
      StackMap locals: org.w3c.dom.Node org.w3c.dom.NamedNodeMap java.lang.String
      StackMap stack:
        44: aload 7 /* name */
            ldc "HorizontalPixelSize"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 51
        45: .line 1965
            aload 6 /* attrs */
            ldc "value"
            invokeinterface org.w3c.dom.NamedNodeMap.getNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            astore 8 /* valueString */
        start local 8 // java.lang.String valueString
        46: .line 1966
            aload 8 /* valueString */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 9 /* value */
        start local 9 // float value
        47: .line 1968
            dconst_1
            fload 9 /* value */
            f2d
            ldc 10.0
            dmul
            ddiv
            invokestatic java.lang.Math.round:(D)J
            l2i
            istore 10 /* dpcm */
        start local 10 // int dpcm
        48: .line 1969
            aload 2 /* jfif */
            iconst_2
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
        49: .line 1970
            aload 2 /* jfif */
            iload 10 /* dpcm */
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Xdensity:I
        end local 10 // int dpcm
        end local 9 // float value
        end local 8 // java.lang.String valueString
        50: .line 1971
            goto 57
      StackMap locals:
      StackMap stack:
        51: aload 7 /* name */
            ldc "VerticalPixelSize"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 57
        52: .line 1972
            aload 6 /* attrs */
            ldc "value"
            invokeinterface org.w3c.dom.NamedNodeMap.getNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            astore 8 /* valueString */
        start local 8 // java.lang.String valueString
        53: .line 1973
            aload 8 /* valueString */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 9 /* value */
        start local 9 // float value
        54: .line 1975
            dconst_1
            fload 9 /* value */
            f2d
            ldc 10.0
            dmul
            ddiv
            invokestatic java.lang.Math.round:(D)J
            l2i
            istore 10 /* dpcm */
        start local 10 // int dpcm
        55: .line 1976
            aload 2 /* jfif */
            iconst_2
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
        56: .line 1977
            aload 2 /* jfif */
            iload 10 /* dpcm */
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Ydensity:I
        end local 10 // int dpcm
        end local 9 // float value
        end local 8 // java.lang.String valueString
        end local 7 // java.lang.String name
        end local 6 // org.w3c.dom.NamedNodeMap attrs
        end local 5 // org.w3c.dom.Node child
        57: .line 1953
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        58: iload 4 /* i */
            aload 3 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 33
        end local 4 // int i
        end local 3 // org.w3c.dom.NodeList children
        59: .line 1982
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   60     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   60     1         node  Lorg/w3c/dom/Node;
            2   60     2         jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            4   29     3  canHaveJFIF  Z
            6   29     4          sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            8   26     5  numChannels  I
           11   16     6            i  I
           20   26     6        adobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
           31   59     3     children  Lorg/w3c/dom/NodeList;
           32   59     4            i  I
           34   57     5        child  Lorg/w3c/dom/Node;
           35   57     6        attrs  Lorg/w3c/dom/NamedNodeMap;
           36   57     7         name  Ljava/lang/String;
           38   43     8  valueString  Ljava/lang/String;
           39   43     9        value  F
           40   43    10            p  Ljava/awt/Point;
           46   50     8  valueString  Ljava/lang/String;
           47   50     9        value  F
           48   50    10         dpcm  I
           53   57     8  valueString  Ljava/lang/String;
           54   57     9        value  F
           55   57    10         dpcm  I
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private static java.awt.Point findIntegerRatio(float);
    descriptor: (F)Ljava/awt/Point;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // float value
         0: .line 1989
            ldc 0.005
            fstore 1 /* epsilon */
        start local 1 // float epsilon
         1: .line 1992
            fload 0 /* value */
            invokestatic java.lang.Math.abs:(F)F
            fstore 0 /* value */
         2: .line 1995
            fload 0 /* value */
            fload 1 /* epsilon */
            fcmpg
            ifgt 4
         3: .line 1996
            new java.awt.Point
            dup
            iconst_1
            sipush 255
            invokespecial java.awt.Point.<init>:(II)V
            areturn
         4: .line 2000
      StackMap locals: float
      StackMap stack:
            fload 0 /* value */
            ldc 255.0
            fcmpl
            iflt 6
         5: .line 2001
            new java.awt.Point
            dup
            sipush 255
            iconst_1
            invokespecial java.awt.Point.<init>:(II)V
            areturn
         6: .line 2005
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* inverted */
        start local 2 // boolean inverted
         7: .line 2006
            fload 0 /* value */
            f2d
            dconst_1
            dcmpg
            ifge 10
         8: .line 2007
            fconst_1
            fload 0 /* value */
            fdiv
            fstore 0 /* value */
         9: .line 2008
            iconst_1
            istore 2 /* inverted */
        10: .line 2012
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 3 /* y */
        start local 3 // int y
        11: .line 2013
            fload 0 /* value */
            invokestatic java.lang.Math.round:(F)I
            istore 4 /* x */
        start local 4 // int x
        12: .line 2015
            iload 4 /* x */
            i2f
            fstore 5 /* ratio */
        start local 5 // float ratio
        13: .line 2016
            fload 0 /* value */
            fload 5 /* ratio */
            fsub
            invokestatic java.lang.Math.abs:(F)F
            fstore 6 /* delta */
        start local 6 // float delta
        14: .line 2017
            goto 19
        15: .line 2019
      StackMap locals: float float int int int float float
      StackMap stack:
            iinc 3 /* y */ 1
        16: .line 2020
            iload 3 /* y */
            i2f
            fload 0 /* value */
            fmul
            invokestatic java.lang.Math.round:(F)I
            istore 4 /* x */
        17: .line 2021
            iload 4 /* x */
            i2f
            iload 3 /* y */
            i2f
            fdiv
            fstore 5 /* ratio */
        18: .line 2022
            fload 0 /* value */
            fload 5 /* ratio */
            fsub
            invokestatic java.lang.Math.abs:(F)F
            fstore 6 /* delta */
        19: .line 2017
      StackMap locals:
      StackMap stack:
            fload 6 /* delta */
            fload 1 /* epsilon */
            fcmpl
            ifgt 15
        20: .line 2024
            iload 2 /* inverted */
            ifeq 21
            new java.awt.Point
            dup
            iload 3 /* y */
            iload 4 /* x */
            invokespecial java.awt.Point.<init>:(II)V
            goto 22
      StackMap locals:
      StackMap stack:
        21: new java.awt.Point
            dup
            iload 4 /* x */
            iload 3 /* y */
            invokespecial java.awt.Point.<init>:(II)V
      StackMap locals:
      StackMap stack: java.awt.Point
        22: areturn
        end local 6 // float delta
        end local 5 // float ratio
        end local 4 // int x
        end local 3 // int y
        end local 2 // boolean inverted
        end local 1 // float epsilon
        end local 0 // float value
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   23     0     value  F
            1   23     1   epsilon  F
            7   23     2  inverted  Z
           11   23     3         y  I
           12   23     4         x  I
           13   23     5     ratio  F
           14   23     6     delta  F
    MethodParameters:
       Name  Flags
      value  

  private void mergeStandardDocumentNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 2030
            return
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    1     1  node  Lorg/w3c/dom/Node;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeStandardTextNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=10, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 2037
            aload 1 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 2 /* children */
        start local 2 // org.w3c.dom.NodeList children
         1: .line 2038
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 16
         3: .line 2039
      StackMap locals: org.w3c.dom.NodeList int
      StackMap stack:
            aload 2 /* children */
            iload 3 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 4 /* child */
        start local 4 // org.w3c.dom.Node child
         4: .line 2040
            aload 4 /* child */
            invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            astore 5 /* attrs */
        start local 5 // org.w3c.dom.NamedNodeMap attrs
         5: .line 2041
            aload 5 /* attrs */
            ldc "compression"
            invokeinterface org.w3c.dom.NamedNodeMap.getNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            astore 6 /* comp */
        start local 6 // org.w3c.dom.Node comp
         6: .line 2042
            iconst_1
            istore 7 /* copyIt */
        start local 7 // boolean copyIt
         7: .line 2043
            aload 6 /* comp */
            ifnull 11
         8: .line 2044
            aload 6 /* comp */
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            astore 8 /* compString */
        start local 8 // java.lang.String compString
         9: .line 2045
            aload 8 /* compString */
            ldc "none"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 2046
            iconst_0
            istore 7 /* copyIt */
        end local 8 // java.lang.String compString
        11: .line 2049
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList int org.w3c.dom.Node org.w3c.dom.NamedNodeMap org.w3c.dom.Node int
      StackMap stack:
            iload 7 /* copyIt */
            ifeq 15
        12: .line 2050
            aload 5 /* attrs */
            ldc "value"
            invokeinterface org.w3c.dom.NamedNodeMap.getNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            astore 8 /* value */
        start local 8 // java.lang.String value
        13: .line 2051
            new com.sun.imageio.plugins.jpeg.COMMarkerSegment
            dup
            aload 8 /* value */
            invokespecial com.sun.imageio.plugins.jpeg.COMMarkerSegment.<init>:(Ljava/lang/String;)V
            astore 9 /* com */
        start local 9 // com.sun.imageio.plugins.jpeg.COMMarkerSegment com
        14: .line 2052
            aload 0 /* this */
            aload 9 /* com */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.insertCOMMarkerSegment:(Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;)V
        end local 9 // com.sun.imageio.plugins.jpeg.COMMarkerSegment com
        end local 8 // java.lang.String value
        end local 7 // boolean copyIt
        end local 6 // org.w3c.dom.Node comp
        end local 5 // org.w3c.dom.NamedNodeMap attrs
        end local 4 // org.w3c.dom.Node child
        15: .line 2038
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList int
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            aload 2 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 3
        end local 3 // int i
        17: .line 2055
            return
        end local 2 // org.w3c.dom.NodeList children
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   18     1        node  Lorg/w3c/dom/Node;
            1   18     2    children  Lorg/w3c/dom/NodeList;
            2   17     3           i  I
            4   15     4       child  Lorg/w3c/dom/Node;
            5   15     5       attrs  Lorg/w3c/dom/NamedNodeMap;
            6   15     6        comp  Lorg/w3c/dom/Node;
            7   15     7      copyIt  Z
            9   11     8  compString  Ljava/lang/String;
           13   15     8       value  Ljava/lang/String;
           14   15     9         com  Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  private void mergeStandardTransparencyNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=14, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 2063
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.transparencyDone:Z
            ifne 75
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 75
         1: .line 2064
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.wantAlpha:(Lorg/w3c/dom/Node;)Z
            istore 2 /* wantAlpha */
        start local 2 // boolean wantAlpha
         2: .line 2068
            aload 0 /* this */
         3: .line 2069
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
         4: .line 2068
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            astore 3 /* jfif */
        start local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
         5: .line 2070
            aload 0 /* this */
         6: .line 2071
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            iconst_1
         7: .line 2070
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            astore 4 /* adobe */
        start local 4 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
         8: .line 2072
            aload 0 /* this */
         9: .line 2073
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
        10: .line 2072
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            astore 5 /* sof */
        start local 5 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        11: .line 2074
            aload 0 /* this */
        12: .line 2075
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
        13: .line 2074
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            astore 6 /* sos */
        start local 6 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        14: .line 2079
            aload 5 /* sof */
            ifnull 16
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.tag:I
            sipush 194
            if_icmpne 16
        15: .line 2080
            return
        16: .line 2085
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment
      StackMap stack:
            aload 5 /* sof */
            ifnull 75
        17: .line 2086
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            istore 7 /* numChannels */
        start local 7 // int numChannels
        18: .line 2087
            iload 7 /* numChannels */
            iconst_2
            if_icmpeq 19
            iload 7 /* numChannels */
            iconst_4
            if_icmpeq 19
            iconst_0
            goto 20
      StackMap locals: int
      StackMap stack:
        19: iconst_1
      StackMap locals:
      StackMap stack: int
        20: istore 8 /* hadAlpha */
        start local 8 // boolean hadAlpha
        21: .line 2089
            iload 8 /* hadAlpha */
            iload 2 /* wantAlpha */
            if_icmpeq 75
        22: .line 2090
            iload 2 /* wantAlpha */
            ifeq 58
        23: .line 2091
            iinc 7 /* numChannels */ 1
        24: .line 2092
            aload 3 /* jfif */
            ifnull 26
        25: .line 2093
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 3 /* jfif */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        26: .line 2097
      StackMap locals: int
      StackMap stack:
            aload 4 /* adobe */
            ifnull 28
        27: .line 2098
            aload 4 /* adobe */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
        28: .line 2103
      StackMap locals:
      StackMap stack:
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec
        29: .line 2102
            astore 9 /* newSpecs */
        start local 9 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] newSpecs
        30: .line 2104
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        31: goto 34
        32: .line 2105
      StackMap locals: com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] int
      StackMap stack:
            aload 9 /* newSpecs */
            iload 10 /* i */
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iload 10 /* i */
            aaload
            aastore
        33: .line 2104
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 10 /* i */
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            if_icmplt 32
        end local 10 // int i
        35: .line 2107
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            i2b
            istore 10 /* oldFirstID */
        start local 10 // byte oldFirstID
        36: .line 2108
            iload 10 /* oldFirstID */
            iconst_1
            if_icmple 37
            bipush 65
            goto 38
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] int
      StackMap stack:
        37: iconst_4
      StackMap locals:
      StackMap stack: int
        38: i2b
            istore 11 /* newID */
        start local 11 // byte newID
        39: .line 2109
            aload 9 /* newSpecs */
            iload 7 /* numChannels */
            iconst_1
            isub
        40: .line 2110
            aload 5 /* sof */
            iload 11 /* newID */
        41: .line 2111
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.HsamplingFactor:I
        42: .line 2112
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iconst_0
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.QtableSelector:I
        43: .line 2110
            invokevirtual com.sun.imageio.plugins.jpeg.SOFMarkerSegment.getComponentSpec:(BII)Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
        44: .line 2109
            aastore
        45: .line 2114
            aload 5 /* sof */
            aload 9 /* newSpecs */
            putfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
        46: .line 2118
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec
        47: .line 2117
            astore 12 /* newScanSpecs */
        start local 12 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] newScanSpecs
        48: .line 2119
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        49: goto 52
        50: .line 2120
      StackMap locals: int com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] int
      StackMap stack:
            aload 12 /* newScanSpecs */
            iload 13 /* i */
            aload 6 /* sos */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            iload 13 /* i */
            aaload
            aastore
        51: .line 2119
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        52: iload 13 /* i */
            aload 6 /* sos */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            arraylength
            if_icmplt 50
        end local 13 // int i
        53: .line 2122
            aload 12 /* newScanSpecs */
            iload 7 /* numChannels */
            iconst_1
            isub
        54: .line 2123
            aload 6 /* sos */
            iload 11 /* newID */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.SOSMarkerSegment.getScanComponentSpec:(BI)Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
        55: .line 2122
            aastore
        56: .line 2124
            aload 6 /* sos */
            aload 12 /* newScanSpecs */
            putfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
        end local 12 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] newScanSpecs
        end local 11 // byte newID
        end local 10 // byte oldFirstID
        end local 9 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] newSpecs
        57: .line 2125
            goto 75
        58: .line 2126
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int
      StackMap stack:
            iinc 7 /* numChannels */ -1
        59: .line 2129
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec
        60: .line 2128
            astore 9 /* newSpecs */
        start local 9 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] newSpecs
        61: .line 2130
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        62: goto 65
        63: .line 2131
      StackMap locals: com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] int
      StackMap stack:
            aload 9 /* newSpecs */
            iload 10 /* i */
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iload 10 /* i */
            aaload
            aastore
        64: .line 2130
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        65: iload 10 /* i */
            iload 7 /* numChannels */
            if_icmplt 63
        end local 10 // int i
        66: .line 2133
            aload 5 /* sof */
            aload 9 /* newSpecs */
            putfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
        67: .line 2137
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec
        68: .line 2136
            astore 10 /* newScanSpecs */
        start local 10 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] newScanSpecs
        69: .line 2138
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        70: goto 73
        71: .line 2139
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node int com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment int int com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] int
      StackMap stack:
            aload 10 /* newScanSpecs */
            iload 11 /* i */
            aload 6 /* sos */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            iload 11 /* i */
            aaload
            aastore
        72: .line 2138
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        73: iload 11 /* i */
            iload 7 /* numChannels */
            if_icmplt 71
        end local 11 // int i
        74: .line 2141
            aload 6 /* sos */
            aload 10 /* newScanSpecs */
            putfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
        end local 10 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] newScanSpecs
        end local 9 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] newSpecs
        end local 8 // boolean hadAlpha
        end local 7 // int numChannels
        end local 6 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        end local 5 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 4 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        end local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        end local 2 // boolean wantAlpha
        75: .line 2146
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node
      StackMap stack:
            return
        end local 1 // org.w3c.dom.Node node
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   76     0          this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   76     1          node  Lorg/w3c/dom/Node;
            2   75     2     wantAlpha  Z
            5   75     3          jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            8   75     4         adobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
           11   75     5           sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
           14   75     6           sos  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
           18   75     7   numChannels  I
           21   75     8      hadAlpha  Z
           30   57     9      newSpecs  [Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
           31   35    10             i  I
           36   57    10    oldFirstID  B
           39   57    11         newID  B
           48   57    12  newScanSpecs  [Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
           49   53    13             i  I
           61   75     9      newSpecs  [Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
           62   66    10             i  I
           69   75    10  newScanSpecs  [Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
           70   74    11             i  I
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      node  

  public void setFromTree(java.lang.String, org.w3c.dom.Node);
    descriptor: (Ljava/lang/String;Lorg/w3c/dom/Node;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // java.lang.String formatName
        start local 2 // org.w3c.dom.Node root
         0: .line 2151
            aload 1 /* formatName */
            ifnonnull 2
         1: .line 2152
            new java.lang.IllegalArgumentException
            dup
            ldc "null formatName!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 2154
      StackMap locals:
      StackMap stack:
            aload 2 /* root */
            ifnonnull 4
         3: .line 2155
            new java.lang.IllegalArgumentException
            dup
            ldc "null root!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 2157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 8
         5: .line 2158
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_stream_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 2159
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.setFromNativeTree:(Lorg/w3c/dom/Node;)V
         7: .line 2160
            goto 22
      StackMap locals:
      StackMap stack:
         8: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 12
         9: .line 2161
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_image_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
        10: .line 2162
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.setFromNativeTree:(Lorg/w3c/dom/Node;)V
        11: .line 2163
            goto 22
      StackMap locals:
      StackMap stack:
        12: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 19
        13: .line 2164
            aload 1 /* formatName */
        14: .line 2165
            ldc "javax_imageio_1.0"
        15: .line 2164
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
        16: .line 2165
            ifeq 19
        17: .line 2167
            aload 0 /* this */
            aload 1 /* formatName */
            aload 2 /* root */
            invokespecial javax.imageio.metadata.IIOMetadata.setFromTree:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
        18: .line 2168
            goto 22
        19: .line 2169
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported format name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        20: .line 2170
            aload 1 /* formatName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 2169
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 2172
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.w3c.dom.Node root
        end local 1 // java.lang.String formatName
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   23     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   23     1  formatName  Ljava/lang/String;
            0   23     2        root  Lorg/w3c/dom/Node;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
            Name  Flags
      formatName  
      root        

  private void setFromNativeTree(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node root
         0: .line 2175
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            ifnonnull 2
         1: .line 2176
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
         2: .line 2178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
         3: .line 2182
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         4: .line 2183
            aload 2 /* name */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 5
            ldc "javax_imageio_jpeg_stream_1.0"
            goto 6
         5: .line 2184
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.lang.String
      StackMap stack: java.lang.String
            ldc "javax_imageio_jpeg_image_1.0"
         6: .line 2183
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.lang.String
      StackMap stack: java.lang.String java.lang.String
            if_acmpeq 10
         7: .line 2185
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid root node name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 2186
            aload 1 /* root */
         9: .line 2185
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        10: .line 2188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 18
        11: .line 2189
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            iconst_2
            if_icmpeq 15
        12: .line 2190
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
        13: .line 2191
            ldc "JPEGvariety and markerSequence nodes must be present"
            aload 1 /* root */
        14: .line 2190
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        15: .line 2194
      StackMap locals:
      StackMap stack:
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getFirstChild:()Lorg/w3c/dom/Node;
            astore 3 /* JPEGvariety */
        start local 3 // org.w3c.dom.Node JPEGvariety
        16: .line 2196
            aload 3 /* JPEGvariety */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            ifeq 18
        17: .line 2197
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            dup
            aload 3 /* JPEGvariety */
            invokeinterface org.w3c.dom.Node.getFirstChild:()Lorg/w3c/dom/Node;
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.w3c.dom.Node JPEGvariety
        18: .line 2201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 19
            aload 1 /* root */
            goto 20
      StackMap locals:
      StackMap stack:
        19: aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getLastChild:()Lorg/w3c/dom/Node;
      StackMap locals:
      StackMap stack: org.w3c.dom.Node
        20: astore 3 /* markerSequenceNode */
        start local 3 // org.w3c.dom.Node markerSequenceNode
        21: .line 2202
            aload 0 /* this */
            aload 3 /* markerSequenceNode */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.setFromMarkerSequenceNode:(Lorg/w3c/dom/Node;)V
        22: .line 2204
            return
        end local 3 // org.w3c.dom.Node markerSequenceNode
        end local 2 // java.lang.String name
        end local 1 // org.w3c.dom.Node root
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   23     0                this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   23     1                root  Lorg/w3c/dom/Node;
            4   23     2                name  Ljava/lang/String;
           16   18     3         JPEGvariety  Lorg/w3c/dom/Node;
           21   23     3  markerSequenceNode  Lorg/w3c/dom/Node;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
      Name  Flags
      root  

  void setFromMarkerSequenceNode(org.w3c.dom.Node);
    descriptor: (Lorg/w3c/dom/Node;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node markerSequenceNode
         0: .line 2209
            aload 1 /* markerSequenceNode */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 2 /* children */
        start local 2 // org.w3c.dom.NodeList children
         1: .line 2211
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 36
         3: .line 2212
      StackMap locals: org.w3c.dom.NodeList int
      StackMap stack:
            aload 2 /* children */
            iload 3 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 4 /* node */
        start local 4 // org.w3c.dom.Node node
         4: .line 2213
            aload 4 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 5 /* childName */
        start local 5 // java.lang.String childName
         5: .line 2214
            aload 5 /* childName */
            ldc "dqt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 2215
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.DQTMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         7: .line 2216
            goto 35
      StackMap locals: org.w3c.dom.Node java.lang.String
      StackMap stack:
         8: aload 5 /* childName */
            ldc "dht"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
         9: .line 2217
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.DHTMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 2218
            goto 35
      StackMap locals:
      StackMap stack:
        11: aload 5 /* childName */
            ldc "dri"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        12: .line 2219
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.DRIMarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.DRIMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 2220
            goto 35
      StackMap locals:
      StackMap stack:
        14: aload 5 /* childName */
            ldc "com"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
        15: .line 2221
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.COMMarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.COMMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        16: .line 2222
            goto 35
      StackMap locals:
      StackMap stack:
        17: aload 5 /* childName */
            ldc "app14Adobe"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        18: .line 2223
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 2224
            goto 35
      StackMap locals:
      StackMap stack:
        20: aload 5 /* childName */
            ldc "unknown"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        21: .line 2225
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.MarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.MarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 2226
            goto 35
      StackMap locals:
      StackMap stack:
        23: aload 5 /* childName */
            ldc "sof"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        24: .line 2227
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.SOFMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 2228
            goto 35
      StackMap locals:
      StackMap stack:
        26: aload 5 /* childName */
            ldc "sos"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 29
        27: .line 2229
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            new com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            dup
            aload 4 /* node */
            invokespecial com.sun.imageio.plugins.jpeg.SOSMarkerSegment.<init>:(Lorg/w3c/dom/Node;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        28: .line 2230
            goto 35
        29: .line 2231
      StackMap locals:
      StackMap stack:
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        30: .line 2232
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 31
            ldc "stream "
            goto 32
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList int org.w3c.dom.Node java.lang.String
      StackMap stack: new 29 new 29 java.lang.StringBuilder
        31: ldc "image "
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node org.w3c.dom.NodeList int org.w3c.dom.Node java.lang.String
      StackMap stack: new 29 new 29 java.lang.StringBuilder java.lang.String
        32: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "child: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        33: .line 2233
            aload 5 /* childName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* node */
        34: .line 2231
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        end local 5 // java.lang.String childName
        end local 4 // org.w3c.dom.Node node
        35: .line 2211
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        36: iload 3 /* i */
            aload 2 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 3
        end local 3 // int i
        37: .line 2236
            return
        end local 2 // org.w3c.dom.NodeList children
        end local 1 // org.w3c.dom.Node markerSequenceNode
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   38     0                this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   38     1  markerSequenceNode  Lorg/w3c/dom/Node;
            1   38     2            children  Lorg/w3c/dom/NodeList;
            2   37     3                   i  I
            4   35     4                node  Lorg/w3c/dom/Node;
            5   35     5           childName  Ljava/lang/String;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
                    Name  Flags
      markerSequenceNode  

  private boolean isConsistent();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 2247
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
         1: .line 2248
            iconst_1
         2: .line 2247
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOFMarkerSegment
         3: .line 2246
            astore 1 /* sof */
        start local 1 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         4: .line 2250
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
         5: .line 2251
            iconst_1
         6: .line 2250
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
         7: .line 2249
            astore 2 /* jfif */
        start local 2 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
         8: .line 2253
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
         9: .line 2254
            iconst_1
        10: .line 2253
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
        11: .line 2252
            astore 3 /* adobe */
        start local 3 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        12: .line 2255
            iconst_1
            istore 4 /* retval */
        start local 4 // boolean retval
        13: .line 2256
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 43
        14: .line 2257
            aload 1 /* sof */
            ifnull 36
        15: .line 2259
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            arraylength
            istore 5 /* numSOFBands */
        start local 5 // int numSOFBands
        16: .line 2260
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.countScanBands:()I
            istore 6 /* numScanBands */
        start local 6 // int numScanBands
        17: .line 2261
            iload 6 /* numScanBands */
            ifeq 20
        18: .line 2262
            iload 6 /* numScanBands */
            iload 5 /* numSOFBands */
            if_icmpeq 20
        19: .line 2263
            iconst_0
            istore 4 /* retval */
        20: .line 2267
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata com.sun.imageio.plugins.jpeg.SOFMarkerSegment com.sun.imageio.plugins.jpeg.JFIFMarkerSegment com.sun.imageio.plugins.jpeg.AdobeMarkerSegment int int int
      StackMap stack:
            aload 2 /* jfif */
            ifnull 43
        21: .line 2268
            iload 5 /* numSOFBands */
            iconst_1
            if_icmpeq 23
            iload 5 /* numSOFBands */
            iconst_3
            if_icmpeq 23
        22: .line 2269
            iconst_0
            istore 4 /* retval */
        23: .line 2271
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        24: goto 28
        25: .line 2272
      StackMap locals: int
      StackMap stack:
            aload 1 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            iload 7 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec.componentId:I
            iload 7 /* i */
            iconst_1
            iadd
            if_icmpeq 27
        26: .line 2273
            iconst_0
            istore 4 /* retval */
        27: .line 2271
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 7 /* i */
            iload 5 /* numSOFBands */
            if_icmplt 25
        end local 7 // int i
        29: .line 2280
            aload 3 /* adobe */
            ifnull 43
        30: .line 2281
            iload 5 /* numSOFBands */
            iconst_1
            if_icmpne 32
        31: .line 2282
            aload 3 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            ifne 34
        32: .line 2283
      StackMap locals:
      StackMap stack:
            iload 5 /* numSOFBands */
            iconst_3
            if_icmpne 43
        33: .line 2284
            aload 3 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            iconst_1
            if_icmpeq 43
        34: .line 2285
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* retval */
        end local 6 // int numScanBands
        end local 5 // int numSOFBands
        35: .line 2288
            goto 43
        36: .line 2291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
        37: .line 2292
            iconst_1
        38: .line 2291
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
        39: .line 2290
            astore 5 /* sos */
        start local 5 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        40: .line 2293
            aload 2 /* jfif */
            ifnonnull 42
            aload 3 /* adobe */
            ifnonnull 42
        41: .line 2294
            aload 1 /* sof */
            ifnonnull 42
            aload 5 /* sos */
            ifnull 43
        42: .line 2295
      StackMap locals: com.sun.imageio.plugins.jpeg.SOSMarkerSegment
      StackMap stack:
            iconst_0
            istore 4 /* retval */
        end local 5 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        43: .line 2299
      StackMap locals:
      StackMap stack:
            iload 4 /* retval */
            ireturn
        end local 4 // boolean retval
        end local 3 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        end local 2 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        end local 1 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   44     0          this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            4   44     1           sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            8   44     2          jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
           12   44     3         adobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
           13   44     4        retval  Z
           16   35     5   numSOFBands  I
           17   35     6  numScanBands  I
           24   29     7             i  I
           40   43     5           sos  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;

  private int countScanBands();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=8, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 2307
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* ids */
        start local 1 // java.util.List ids
         1: .line 2308
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         2: .line 2309
            goto 14
         3: .line 2310
      StackMap locals: java.util.List java.util.Iterator
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 3 /* seg */
        start local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         4: .line 2311
            aload 3 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            ifeq 14
         5: .line 2312
            aload 3 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            astore 4 /* sos */
        start local 4 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
         6: .line 2313
            aload 4 /* sos */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            astore 5 /* specs */
        start local 5 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] specs
         7: .line 2314
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         8: goto 13
         9: .line 2315
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.util.List java.util.Iterator com.sun.imageio.plugins.jpeg.MarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] int
      StackMap stack:
            aload 5 /* specs */
            iload 6 /* i */
            aaload
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec.componentSelector:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 7 /* id */
        start local 7 // java.lang.Integer id
        10: .line 2316
            aload 1 /* ids */
            aload 7 /* id */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 2317
            aload 1 /* ids */
            aload 7 /* id */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.Integer id
        12: .line 2314
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            aload 5 /* specs */
            arraylength
            if_icmplt 9
        end local 6 // int i
        end local 5 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] specs
        end local 4 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        14: .line 2309
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.util.List java.util.Iterator
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        15: .line 2323
            aload 1 /* ids */
            invokeinterface java.util.List.size:()I
            ireturn
        end local 2 // java.util.Iterator iter
        end local 1 // java.util.List ids
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1   16     1    ids  Ljava/util/List<Ljava/lang/Integer;>;
            2   16     2   iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            4   14     3    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            6   14     4    sos  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            7   14     5  specs  [Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            8   14     6      i  I
           10   12     7     id  Ljava/lang/Integer;

  void writeToStream(javax.imageio.stream.ImageOutputStream, boolean, boolean, java.util.List<? extends java.awt.image.BufferedImage>, java.awt.color.ICC_Profile, boolean, int, com.sun.imageio.plugins.jpeg.JPEGImageWriter);
    descriptor: (Ljavax/imageio/stream/ImageOutputStream;ZZLjava/util/List;Ljava/awt/color/ICC_Profile;ZILcom/sun/imageio/plugins/jpeg/JPEGImageWriter;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=12, args_size=9
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // javax.imageio.stream.ImageOutputStream ios
        start local 2 // boolean ignoreJFIF
        start local 3 // boolean forceJFIF
        start local 4 // java.util.List thumbnails
        start local 5 // java.awt.color.ICC_Profile iccProfile
        start local 6 // boolean ignoreAdobe
        start local 7 // int newAdobeTransform
        start local 8 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
         0: .line 2337
            iload 3 /* forceJFIF */
            ifeq 14
         1: .line 2341
            aload 1 /* ios */
         2: .line 2342
            aload 4 /* thumbnails */
         3: .line 2343
            aload 5 /* iccProfile */
         4: .line 2344
            aload 8 /* writer */
         5: .line 2341
            invokestatic com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.writeDefaultJFIF:(Ljavax/imageio/stream/ImageOutputStream;Ljava/util/List;Ljava/awt/color/ICC_Profile;Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;)V
         6: .line 2345
            iload 6 /* ignoreAdobe */
            ifne 14
         7: .line 2346
            iload 7 /* newAdobeTransform */
            iconst_m1
            if_icmpeq 14
         8: .line 2347
            iload 7 /* newAdobeTransform */
            ifeq 14
         9: .line 2348
            iload 7 /* newAdobeTransform */
            iconst_1
            if_icmpeq 14
        10: .line 2350
            iconst_1
            istore 6 /* ignoreAdobe */
        11: .line 2351
            aload 8 /* writer */
        12: .line 2352
            bipush 13
        13: .line 2351
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.warningOccurred:(I)V
        14: .line 2357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9 /* iter */
        start local 9 // java.util.Iterator iter
        15: .line 2358
            goto 45
        16: .line 2359
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 9 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 10 /* seg */
        start local 10 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        17: .line 2360
            aload 10 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            ifeq 24
        18: .line 2361
            iload 2 /* ignoreJFIF */
            ifne 45
        19: .line 2362
            aload 10 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            astore 11 /* jfif */
        start local 11 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        20: .line 2363
            aload 11 /* jfif */
            aload 1 /* ios */
            aload 4 /* thumbnails */
            aload 8 /* writer */
            invokevirtual com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.writeWithThumbs:(Ljavax/imageio/stream/ImageOutputStream;Ljava/util/List;Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;)V
        21: .line 2364
            aload 5 /* iccProfile */
            ifnull 45
        22: .line 2365
            aload 5 /* iccProfile */
            aload 1 /* ios */
            invokestatic com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.writeICC:(Ljava/awt/color/ICC_Profile;Ljavax/imageio/stream/ImageOutputStream;)V
        end local 11 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        23: .line 2368
            goto 45
      StackMap locals: com.sun.imageio.plugins.jpeg.MarkerSegment
      StackMap stack:
        24: aload 10 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            ifeq 44
        25: .line 2369
            iload 6 /* ignoreAdobe */
            ifne 45
        26: .line 2370
            iload 7 /* newAdobeTransform */
            iconst_m1
            if_icmpeq 32
        27: .line 2372
            aload 10 /* seg */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.clone:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
        28: .line 2371
            astore 11 /* newAdobe */
        start local 11 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment newAdobe
        29: .line 2373
            aload 11 /* newAdobe */
            iload 7 /* newAdobeTransform */
            putfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
        30: .line 2374
            aload 11 /* newAdobe */
            aload 1 /* ios */
            invokevirtual com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.write:(Ljavax/imageio/stream/ImageOutputStream;)V
        end local 11 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment newAdobe
        31: .line 2375
            goto 45
      StackMap locals:
      StackMap stack:
        32: iload 3 /* forceJFIF */
            ifeq 42
        33: .line 2377
            aload 10 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            astore 11 /* adobe */
        start local 11 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        34: .line 2378
            aload 11 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            ifeq 36
        35: .line 2379
            aload 11 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            iconst_1
            if_icmpne 38
        36: .line 2380
      StackMap locals: com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
      StackMap stack:
            aload 11 /* adobe */
            aload 1 /* ios */
            invokevirtual com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.write:(Ljavax/imageio/stream/ImageOutputStream;)V
        37: .line 2381
            goto 45
        38: .line 2382
      StackMap locals:
      StackMap stack:
            aload 8 /* writer */
        39: .line 2383
            bipush 13
        40: .line 2382
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.warningOccurred:(I)V
        end local 11 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        41: .line 2385
            goto 45
        42: .line 2386
      StackMap locals:
      StackMap stack:
            aload 10 /* seg */
            aload 1 /* ios */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.write:(Ljavax/imageio/stream/ImageOutputStream;)V
        43: .line 2389
            goto 45
        44: .line 2390
      StackMap locals:
      StackMap stack:
            aload 10 /* seg */
            aload 1 /* ios */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.write:(Ljavax/imageio/stream/ImageOutputStream;)V
        end local 10 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        45: .line 2358
      StackMap locals:
      StackMap stack:
            aload 9 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        46: .line 2393
            return
        end local 9 // java.util.Iterator iter
        end local 8 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
        end local 7 // int newAdobeTransform
        end local 6 // boolean ignoreAdobe
        end local 5 // java.awt.color.ICC_Profile iccProfile
        end local 4 // java.util.List thumbnails
        end local 3 // boolean forceJFIF
        end local 2 // boolean ignoreJFIF
        end local 1 // javax.imageio.stream.ImageOutputStream ios
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   47     0               this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   47     1                ios  Ljavax/imageio/stream/ImageOutputStream;
            0   47     2         ignoreJFIF  Z
            0   47     3          forceJFIF  Z
            0   47     4         thumbnails  Ljava/util/List<+Ljava/awt/image/BufferedImage;>;
            0   47     5         iccProfile  Ljava/awt/color/ICC_Profile;
            0   47     6        ignoreAdobe  Z
            0   47     7  newAdobeTransform  I
            0   47     8             writer  Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;
           15   47     9               iter  Ljava/util/Iterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
           17   45    10                seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
           20   23    11               jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
           29   31    11           newAdobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
           34   41    11              adobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljavax/imageio/stream/ImageOutputStream;ZZLjava/util/List<+Ljava/awt/image/BufferedImage;>;Ljava/awt/color/ICC_Profile;ZILcom/sun/imageio/plugins/jpeg/JPEGImageWriter;)V
    MethodParameters:
                   Name  Flags
      ios                
      ignoreJFIF         
      forceJFIF          
      thumbnails         
      iccProfile         
      ignoreAdobe        
      newAdobeTransform  
      writer             

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 2398
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            ifnull 3
         1: .line 2399
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
         2: .line 2400
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
         3: .line 2402
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;

  public void print();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
         0: .line 2405
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 2406
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 1 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 2 /* seg */
        start local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         3: .line 2407
            aload 2 /* seg */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.print:()V
        end local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         4: .line 2405
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 2
        end local 1 // int i
         6: .line 2409
            return
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1    6     1     i  I
            3    4     2   seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
}
SourceFile: "JPEGMetadata.java"
InnerClasses:
  Htable = com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable of com.sun.imageio.plugins.jpeg.DHTMarkerSegment
  Qtable = com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable of com.sun.imageio.plugins.jpeg.DQTMarkerSegment
  ComponentSpec = com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec of com.sun.imageio.plugins.jpeg.SOFMarkerSegment
  ScanComponentSpec = com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec of com.sun.imageio.plugins.jpeg.SOSMarkerSegment