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 3
            goto 4
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata int top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 2 /* seg */
        start local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         2: .line 639
            aload 2 /* seg */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.tag:I
            iload 1 /* tag */
            if_icmpne 4
         3: .line 640
            aload 2 /* seg */
            areturn
        end local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         4: .line 638
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 643
            aconst_null
            areturn
        end local 1 // int tag
        end local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0    6     1   tag  I
            2    4     2   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 651
            iload 2 /* first */
            ifeq 7
         1: .line 652
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.lang.Class int top java.util.Iterator
      StackMap stack:
         2: aload 4
            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 653
            aload 1 /* cls */
            aload 3 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 654
            aload 3 /* seg */
            areturn
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 652
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 657
            goto 14
         7: .line 659
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.lang.Class int
      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;
         8: .line 658
            astore 3 /* iter */
        start local 3 // java.util.ListIterator iter
         9: .line 660
            goto 13
        10: .line 661
      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
        11: .line 662
            aload 1 /* cls */
            aload 4 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 663
            aload 4 /* seg */
            areturn
        end local 4 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        13: .line 660
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.ListIterator.hasPrevious:()Z
            ifne 10
        end local 3 // java.util.ListIterator iter
        14: .line 667
      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   15     0   this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   15     1    cls  Ljava/lang/Class<+Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            0   15     2  first  Z
            3    5     3    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            9   14     3   iter  Ljava/util/ListIterator<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
           11   13     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 676
            iload 2 /* first */
            ifeq 10
         1: .line 677
            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 678
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 679
      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 680
            aload 1 /* cls */
            aload 5 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 681
            iload 4 /* i */
            ireturn
        end local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         7: .line 678
      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 684
            goto 19
        10: .line 686
      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 685
            astore 3 /* iter */
        start local 3 // java.util.ListIterator iter
        12: .line 687
            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 688
      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 689
            aload 1 /* cls */
            aload 5 /* seg */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 17
        16: .line 690
            iload 4 /* i */
            ireturn
        end local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        17: .line 687
      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 694
      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 699
            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 698
            astore 1 /* iter */
        start local 1 // java.util.ListIterator iter
         2: .line 700
            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 701
      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 702
            aload 3 /* seg */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.unknown:Z
            ifeq 7
         6: .line 703
            iload 2 /* i */
            ireturn
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         7: .line 700
      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 706
            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 712
            aconst_null
            astore 1 /* newGuy */
        start local 1 // com.sun.imageio.plugins.jpeg.JPEGMetadata newGuy
         1: .line 714
            aload 0 /* this */
            invokespecial java.lang.Object.clone:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.JPEGMetadata
            astore 1 /* newGuy */
         2: .line 715
            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 716
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            ifnull 6
         5: .line 717
            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 719
      StackMap locals:
      StackMap stack:
            aload 1 /* newGuy */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
         7: .line 720
            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 727
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            ifnonnull 2
         1: .line 728
            aconst_null
            areturn
         2: .line 730
      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 731
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 2 /* seg */
        start local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 732
            aload 1 /* retval */
            aload 2 /* 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 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         6: .line 731
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 735
            aload 1 /* retval */
            areturn
        end local 1 // java.util.List retval
        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;
            3    8     1  retval  Ljava/util/List<Lcom/sun/imageio/plugins/jpeg/MarkerSegment;>;
            5    6     2     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 742
            aload 1 /* formatName */
            ifnonnull 2
         1: .line 743
            new java.lang.IllegalArgumentException
            dup
            ldc "null formatName!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 745
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 5
         3: .line 746
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_stream_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
         4: .line 747
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.getNativeTree:()Ljavax/imageio/metadata/IIOMetadataNode;
            areturn
         5: .line 750
      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 751
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.getNativeTree:()Ljavax/imageio/metadata/IIOMetadataNode;
            areturn
         7: .line 753
      StackMap locals:
      StackMap stack:
            aload 1 /* formatName */
         8: .line 754
            ldc "javax_imageio_1.0"
         9: .line 753
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
        10: .line 754
            ifeq 12
        11: .line 755
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.getStandardTree:()Ljavax/imageio/metadata/IIOMetadataNode;
            areturn
        12: .line 758
      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 759
            aload 1 /* formatName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 758
            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 765
            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 766
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 5
         2: .line 767
            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 768
            aload 1 /* root */
            astore 2 /* top */
        start local 2 // javax.imageio.metadata.IIOMetadataNode top
         4: .line 769
            goto 22
        end local 2 // javax.imageio.metadata.IIOMetadataNode top
        end local 1 // javax.imageio.metadata.IIOMetadataNode root
         5: .line 770
      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 771
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.inThumb:Z
            ifne 17
         7: .line 772
            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 773
            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 774
            aload 1 /* root */
            aload 5 /* header */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        10: .line 776
            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 775
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            astore 6 /* jfif */
        start local 6 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        12: .line 777
            aload 6 /* jfif */
            ifnull 15
        13: .line 778
            aload 3 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            pop
        14: .line 779
            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 781
      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 782
            goto 18
        end local 1 // javax.imageio.metadata.IIOMetadataNode root
        17: .line 783
      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 785
      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 787
            goto 22
        20: .line 788
      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 789
            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 787
      StackMap locals:
      StackMap stack:
            aload 3 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        23: .line 791
            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 797
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
         1: .line 802
            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 801
            checkcast com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            astore 1 /* sof */
        start local 1 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         3: .line 803
            aload 1 /* sof */
            ifnonnull 5
         4: .line 805
            aconst_null
            areturn
         5: .line 808
      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 809
            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 810
            aload 2 /* chroma */
            aload 3 /* csType */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         8: .line 813
            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 815
            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 816
            aload 2 /* chroma */
            aload 5 /* numChanNode */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        11: .line 817
            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 820
            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 821
            iload 4 /* numChannels */
            iconst_1
            if_icmpne 16
        14: .line 822
            aload 3 /* csType */
            ldc "name"
            ldc "GRAY"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        15: .line 823
            goto 17
        16: .line 824
      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 826
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        18: .line 831
      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 830
            astore 6 /* adobe */
        start local 6 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        20: .line 832
            aload 6 /* adobe */
            ifnull 32
        21: .line 833
            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 835
      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 836
            goto 31
        24: .line 838
      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 839
            goto 31
        26: .line 841
      StackMap locals:
      StackMap stack:
            iload 4 /* numChannels */
            iconst_3
            if_icmpne 29
        27: .line 842
            aload 3 /* csType */
            ldc "name"
            ldc "RGB"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        28: .line 843
            goto 31
      StackMap locals:
      StackMap stack:
        29: iload 4 /* numChannels */
            iconst_4
            if_icmpne 31
        30: .line 844
            aload 3 /* csType */
            ldc "name"
            ldc "CMYK"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        31: .line 848
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        32: .line 852
      StackMap locals:
      StackMap stack:
            iload 4 /* numChannels */
            iconst_3
            if_icmpge 37
        33: .line 853
            aload 3 /* csType */
            ldc "name"
            ldc "GRAY"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        34: .line 854
            iload 4 /* numChannels */
            iconst_2
            if_icmpne 36
        35: .line 855
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        36: .line 857
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        37: .line 860
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* idsAreJFIF */
        start local 7 // boolean idsAreJFIF
        38: .line 862
            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 863
            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 864
            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 865
            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 866
            iconst_1
            istore 7 /* idsAreJFIF */
        43: .line 869
      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 870
            aload 3 /* csType */
            ldc "name"
            ldc "YCbCr"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        45: .line 871
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 47
        46: .line 872
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        47: .line 874
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        48: .line 878
      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 879
            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 880
            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 882
            aload 3 /* csType */
            ldc "name"
            ldc "RGB"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        52: .line 883
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 55
        53: .line 884
            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 885
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        55: .line 887
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        56: .line 890
      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 891
            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 892
            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 894
            aload 3 /* csType */
            ldc "name"
            ldc "PhotoYCC"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        60: .line 895
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 63
        61: .line 896
            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 897
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        63: .line 899
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        64: .line 905
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* subsampled */
        start local 11 // boolean subsampled
        65: .line 907
            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 908
            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 910
            iconst_1
            istore 14 /* i */
        start local 14 // int i
        68: goto 74
        69: .line 911
      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 912
            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 913
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 11 /* subsampled */
        72: .line 914
            goto 75
        73: .line 910
      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 918
      StackMap locals:
      StackMap stack:
            iload 11 /* subsampled */
            ifeq 80
        76: .line 919
            aload 3 /* csType */
            ldc "name"
            ldc "YCbCr"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        77: .line 920
            iload 4 /* numChannels */
            iconst_4
            if_icmpne 79
        78: .line 921
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
        79: .line 923
      StackMap locals:
      StackMap stack:
            aload 2 /* chroma */
            areturn
        80: .line 927
      StackMap locals:
      StackMap stack:
            iload 4 /* numChannels */
            iconst_3
            if_icmpne 83
        81: .line 928
            aload 3 /* csType */
            ldc "name"
            ldc "RGB"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        82: .line 929
            goto 84
        83: .line 930
      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 933
      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 938
            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 941
            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 942
            aload 2 /* name */
            ldc "value"
            ldc "JPEG"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 943
            aload 1 /* compression */
            aload 2 /* name */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         4: .line 946
            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 947
            aload 3 /* lossless */
            ldc "value"
            ldc "FALSE"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 948
            aload 1 /* compression */
            aload 3 /* lossless */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         7: .line 951
            iconst_0
            istore 4 /* sosCount */
        start local 4 // int sosCount
         8: .line 952
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 12
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode int top java.util.Iterator
      StackMap stack:
         9: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 5 /* ms */
        start local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment ms
        10: .line 953
            aload 5 /* ms */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.tag:I
            sipush 218
            if_icmpne 12
        11: .line 954
            iinc 4 /* sosCount */ 1
        end local 5 // com.sun.imageio.plugins.jpeg.MarkerSegment ms
        12: .line 952
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        13: .line 957
            iload 4 /* sosCount */
            ifeq 17
        14: .line 958
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "NumProgressiveScans"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 5 /* prog */
        start local 5 // javax.imageio.metadata.IIOMetadataNode prog
        15: .line 959
            aload 5 /* 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
        16: .line 960
            aload 1 /* compression */
            aload 5 /* prog */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 5 // javax.imageio.metadata.IIOMetadataNode prog
        17: .line 963
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode javax.imageio.metadata.IIOMetadataNode int
      StackMap stack:
            aload 1 /* compression */
            areturn
        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   18     0         this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1   18     1  compression  Ljavax/imageio/metadata/IIOMetadataNode;
            2   18     2         name  Ljavax/imageio/metadata/IIOMetadataNode;
            5   18     3     lossless  Ljavax/imageio/metadata/IIOMetadataNode;
            8   18     4     sosCount  I
           10   12     5           ms  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
           15   17     5         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 969
            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 970
            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 971
            aload 2 /* orient */
            ldc "value"
            ldc "normal"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 972
            aload 1 /* dim */
            aload 2 /* orient */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         4: .line 975
            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 974
            astore 3 /* jfif */
        start local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
         6: .line 976
            aload 3 /* jfif */
            ifnull 30
         7: .line 980
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
            ifne 10
         8: .line 982
            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 983
            goto 11
        end local 4 // float aspectRatio
        10: .line 985
      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 987
      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 988
            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 989
            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 992
            aload 3 /* jfif */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
            ifeq 30
        15: .line 994
            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 997
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "HorizontalPixelSize"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
        19: .line 996
            astore 7 /* horiz */
        start local 7 // javax.imageio.metadata.IIOMetadataNode horiz
        20: .line 998
            aload 7 /* horiz */
            ldc "value"
        21: .line 999
            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 998
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        23: .line 1000
            aload 1 /* dim */
            aload 7 /* horiz */
            invokevirtual javax.imageio.metadata.IIOMetadataNode.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        24: .line 1003
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "VerticalPixelSize"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
        25: .line 1002
            astore 8 /* vert */
        start local 8 // javax.imageio.metadata.IIOMetadataNode vert
        26: .line 1004
            aload 8 /* vert */
            ldc "value"
        27: .line 1005
            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 1004
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
        29: .line 1006
            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 1009
      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 1013
            aconst_null
            astore 1 /* text */
        start local 1 // javax.imageio.metadata.IIOMetadataNode text
         1: .line 1015
            aload 0 /* this */
            sipush 254
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(I)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            ifnull 12
         2: .line 1016
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Text"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* text */
         3: .line 1017
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 11
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode top java.util.Iterator
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 2 /* seg */
        start local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 1018
            aload 2 /* seg */
            getfield com.sun.imageio.plugins.jpeg.MarkerSegment.tag:I
            sipush 254
            if_icmpne 11
         6: .line 1019
            aload 2 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.COMMarkerSegment
            astore 4 /* com */
        start local 4 // com.sun.imageio.plugins.jpeg.COMMarkerSegment com
         7: .line 1020
            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
         8: .line 1021
            aload 5 /* entry */
            ldc "keyword"
            ldc "comment"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 1022
            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
        10: .line 1023
            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 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        11: .line 1017
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        12: .line 1027
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.metadata.IIOMetadataNode
      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   13     0   this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            1   13     1   text  Ljavax/imageio/metadata/IIOMetadataNode;
            5   11     2    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            7   11     4    com  Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;
            8   11     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 1031
            aconst_null
            astore 1 /* trans */
        start local 1 // javax.imageio.metadata.IIOMetadataNode trans
         1: .line 1032
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.hasAlpha:Z
            ifeq 6
         2: .line 1033
            new javax.imageio.metadata.IIOMetadataNode
            dup
            ldc "Transparency"
            invokespecial javax.imageio.metadata.IIOMetadataNode.<init>:(Ljava/lang/String;)V
            astore 1 /* trans */
         3: .line 1034
            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 1035
            aload 2 /* alpha */
            ldc "value"
            ldc "nonpremultiplied"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.setAttribute:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 1036
            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 1038
      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 1044
            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 1049
            aload 1 /* formatName */
            ifnonnull 2
         1: .line 1050
            new java.lang.IllegalArgumentException
            dup
            ldc "null formatName!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1052
      StackMap locals:
      StackMap stack:
            aload 2 /* root */
            ifnonnull 4
         3: .line 1053
            new java.lang.IllegalArgumentException
            dup
            ldc "null root!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1055
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* copy */
        start local 3 // java.util.List copy
         5: .line 1056
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            ifnonnull 9
         6: .line 1057
            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 1058
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            astore 3 /* copy */
         8: .line 1059
            goto 10
         9: .line 1060
      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 1062
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 14
        11: .line 1063
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_stream_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 14
        12: .line 1064
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeNativeTree:(Lorg/w3c/dom/Node;)V
        13: .line 1065
            goto 28
      StackMap locals:
      StackMap stack:
        14: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 18
        15: .line 1066
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_image_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 1067
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeNativeTree:(Lorg/w3c/dom/Node;)V
        17: .line 1068
            goto 28
      StackMap locals:
      StackMap stack:
        18: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 25
        19: .line 1069
            aload 1 /* formatName */
        20: .line 1070
            ldc "javax_imageio_1.0"
        21: .line 1069
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
        22: .line 1070
            ifeq 25
        23: .line 1071
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardTree:(Lorg/w3c/dom/Node;)V
        24: .line 1072
            goto 28
        25: .line 1073
      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 1074
            aload 1 /* formatName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 1073
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 1076
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.isConsistent:()Z
            ifne 33
        29: .line 1077
            aload 0 /* this */
            aload 3 /* copy */
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
        30: .line 1078
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
        31: .line 1079
            ldc "Merged tree is invalid; original restored"
            aload 2 /* root */
        32: .line 1078
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        33: .line 1081
      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 1084
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 1085
            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 1086
      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 1085
      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 1087
            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 1088
            aload 1 /* root */
         6: .line 1087
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
         7: .line 1090
      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 1091
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
         9: .line 1092
            ldc "JPEGvariety and markerSequence nodes must be present"
            aload 1 /* root */
        10: .line 1091
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        11: .line 1094
      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 1095
            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 1096
            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 1107
            aload 1 /* JPEGvariety */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            ifeq 8
         1: .line 1108
            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 1111
            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 1110
            astore 3 /* jfifSeg */
        start local 3 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfifSeg
         4: .line 1112
            aload 3 /* jfifSeg */
            ifnull 7
         5: .line 1113
            aload 3 /* jfifSeg */
            aload 2 /* jfifNode */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         6: .line 1114
            goto 8
         7: .line 1116
      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 1119
      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 1123
            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 1124
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 31
         3: .line 1125
      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 1126
            aload 4 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         5: .line 1127
            aload 5 /* name */
            ldc "dqt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 1128
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeDQTNode:(Lorg/w3c/dom/Node;)V
         7: .line 1129
            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 1130
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeDHTNode:(Lorg/w3c/dom/Node;)V
        10: .line 1131
            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 1132
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeDRINode:(Lorg/w3c/dom/Node;)V
        13: .line 1133
            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 1134
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeCOMNode:(Lorg/w3c/dom/Node;)V
        16: .line 1135
            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 1136
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeAdobeNode:(Lorg/w3c/dom/Node;)V
        19: .line 1137
            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 1138
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeUnknownNode:(Lorg/w3c/dom/Node;)V
        22: .line 1139
            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 1140
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeSOFNode:(Lorg/w3c/dom/Node;)V
        25: .line 1141
            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 1142
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeSOSNode:(Lorg/w3c/dom/Node;)V
        28: .line 1143
            goto 30
        29: .line 1144
      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 1124
      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 1147
            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=13, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1168
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* oldDQTs */
        start local 2 // java.util.ArrayList oldDQTs
         1: .line 1169
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList top java.util.Iterator
      StackMap stack:
         2: aload 4
            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 1170
            aload 3 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            ifeq 5
         4: .line 1171
            aload 2 /* oldDQTs */
            aload 3 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 1169
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1174
            aload 2 /* oldDQTs */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifne 42
         7: .line 1175
            aload 1 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 3 /* children */
        start local 3 // org.w3c.dom.NodeList children
         8: .line 1176
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         9: goto 40
        10: .line 1177
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList 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
        11: .line 1178
            aload 5 /* child */
        12: .line 1179
            aconst_null
        13: .line 1180
            ldc "qtableId"
        14: .line 1181
            iconst_0
            iconst_3
        15: .line 1182
            iconst_1
        16: .line 1178
            invokestatic com.sun.imageio.plugins.jpeg.MarkerSegment.getAttributeValue:(Lorg/w3c/dom/Node;Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;IIZ)I
            istore 6 /* childID */
        start local 6 // int childID
        17: .line 1183
            aconst_null
            astore 7 /* dqt */
        start local 7 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment dqt
        18: .line 1184
            iconst_m1
            istore 8 /* tableIndex */
        start local 8 // int tableIndex
        19: .line 1185
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        20: goto 33
        21: .line 1186
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList org.w3c.dom.NodeList int org.w3c.dom.Node int com.sun.imageio.plugins.jpeg.DQTMarkerSegment int int
      StackMap stack:
            aload 2 /* oldDQTs */
            iload 9 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            astore 10 /* testDQT */
        start local 10 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testDQT
        22: .line 1187
            iconst_0
            istore 11 /* k */
        start local 11 // int k
        23: goto 30
        24: .line 1188
      StackMap locals: com.sun.imageio.plugins.jpeg.DQTMarkerSegment int
      StackMap stack:
            aload 10 /* testDQT */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            iload 11 /* k */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable
            astore 12 /* testTable */
        start local 12 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable testTable
        25: .line 1189
            iload 6 /* childID */
            aload 12 /* testTable */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable.tableID:I
            if_icmpne 29
        26: .line 1190
            aload 10 /* testDQT */
            astore 7 /* dqt */
        27: .line 1191
            iload 11 /* k */
            istore 8 /* tableIndex */
        28: .line 1192
            goto 31
        end local 12 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable testTable
        29: .line 1187
      StackMap locals:
      StackMap stack:
            iinc 11 /* k */ 1
      StackMap locals:
      StackMap stack:
        30: iload 11 /* k */
            aload 10 /* testDQT */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 24
        end local 11 // int k
        31: .line 1195
      StackMap locals:
      StackMap stack:
            aload 7 /* dqt */
            ifnull 32
            goto 34
        end local 10 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment testDQT
        32: .line 1185
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        33: iload 9 /* j */
            aload 2 /* oldDQTs */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 21
        end local 9 // int j
        34: .line 1197
      StackMap locals:
      StackMap stack:
            aload 7 /* dqt */
            ifnull 37
        35: .line 1198
            aload 7 /* dqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            iload 8 /* tableIndex */
            aload 7 /* dqt */
            aload 5 /* 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
        36: .line 1199
            goto 39
        37: .line 1200
      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 7 /* dqt */
        38: .line 1201
            aload 7 /* dqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            aload 7 /* dqt */
            aload 5 /* 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 8 // int tableIndex
        end local 7 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment dqt
        end local 6 // int childID
        end local 5 // org.w3c.dom.Node child
        39: .line 1176
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList org.w3c.dom.NodeList int
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 4 /* i */
            aload 3 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 10
        end local 4 // int i
        end local 3 // org.w3c.dom.NodeList children
        41: .line 1204
            goto 56
        42: .line 1205
      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 3 /* newGuy */
        start local 3 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment newGuy
        43: .line 1206
            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 4 /* firstDHT */
        start local 4 // int firstDHT
        44: .line 1207
            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 5 /* firstSOF */
        start local 5 // int firstSOF
        45: .line 1208
            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 6 /* firstSOS */
        start local 6 // int firstSOS
        46: .line 1209
            iload 4 /* firstDHT */
            iconst_m1
            if_icmpeq 49
        47: .line 1210
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 4 /* firstDHT */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        48: .line 1211
            goto 56
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList com.sun.imageio.plugins.jpeg.DQTMarkerSegment int int int
      StackMap stack:
        49: iload 5 /* firstSOF */
            iconst_m1
            if_icmpeq 52
        50: .line 1212
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 5 /* firstSOF */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        51: .line 1213
            goto 56
      StackMap locals:
      StackMap stack:
        52: iload 6 /* firstSOS */
            iconst_m1
            if_icmpeq 55
        53: .line 1214
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 6 /* firstSOS */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        54: .line 1215
            goto 56
        55: .line 1216
      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 6 // int firstSOS
        end local 5 // int firstSOF
        end local 4 // int firstDHT
        end local 3 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment newGuy
        56: .line 1219
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList
      StackMap stack:
            return
        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   57     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   57     1        node  Lorg/w3c/dom/Node;
            1   57     2     oldDQTs  Ljava/util/ArrayList<Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;>;
            3    5     3         seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            8   41     3    children  Lorg/w3c/dom/NodeList;
            9   41     4           i  I
           11   39     5       child  Lorg/w3c/dom/Node;
           17   39     6     childID  I
           18   39     7         dqt  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
           19   39     8  tableIndex  I
           20   34     9           j  I
           22   32    10     testDQT  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
           23   31    11           k  I
           25   29    12   testTable  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment$Qtable;
           43   56     3      newGuy  Lcom/sun/imageio/plugins/jpeg/DQTMarkerSegment;
           44   56     4    firstDHT  I
           45   56     5    firstSOF  I
           46   56     6    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=15, args_size=2
        start local 0 // com.sun.imageio.plugins.jpeg.JPEGMetadata this
        start local 1 // org.w3c.dom.Node node
         0: .line 1241
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* oldDHTs */
        start local 2 // java.util.ArrayList oldDHTs
         1: .line 1242
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList top java.util.Iterator
      StackMap stack:
         2: aload 4
            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 1243
            aload 3 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            ifeq 5
         4: .line 1244
            aload 2 /* oldDHTs */
            aload 3 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         5: .line 1242
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1247
            aload 2 /* oldDHTs */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifne 50
         7: .line 1248
            aload 1 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 3 /* children */
        start local 3 // org.w3c.dom.NodeList children
         8: .line 1249
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         9: goto 48
        10: .line 1250
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList 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
        11: .line 1251
            aload 5 /* child */
            invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            astore 6 /* attrs */
        start local 6 // org.w3c.dom.NamedNodeMap attrs
        12: .line 1252
            aload 5 /* child */
        13: .line 1253
            aload 6 /* attrs */
        14: .line 1254
            ldc "htableId"
        15: .line 1255
            iconst_0
            iconst_3
        16: .line 1256
            iconst_1
        17: .line 1252
            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 1257
            aload 5 /* child */
        19: .line 1258
            aload 6 /* attrs */
        20: .line 1259
            ldc "class"
        21: .line 1260
            iconst_0
            iconst_1
        22: .line 1261
            iconst_1
        23: .line 1257
            invokestatic com.sun.imageio.plugins.jpeg.MarkerSegment.getAttributeValue:(Lorg/w3c/dom/Node;Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;IIZ)I
            istore 8 /* childClass */
        start local 8 // int childClass
        24: .line 1262
            aconst_null
            astore 9 /* dht */
        start local 9 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment dht
        25: .line 1263
            iconst_m1
            istore 10 /* tableIndex */
        start local 10 // int tableIndex
        26: .line 1264
            iconst_0
            istore 11 /* j */
        start local 11 // int j
        27: goto 41
        28: .line 1265
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList 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 11 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            astore 12 /* testDHT */
        start local 12 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment testDHT
        29: .line 1266
            iconst_0
            istore 13 /* k */
        start local 13 // int k
        30: goto 38
        31: .line 1267
      StackMap locals: com.sun.imageio.plugins.jpeg.DHTMarkerSegment int
      StackMap stack:
            aload 12 /* testDHT */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            iload 13 /* k */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable
            astore 14 /* testTable */
        start local 14 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable testTable
        32: .line 1268
            iload 7 /* childID */
            aload 14 /* testTable */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable.tableID:I
            if_icmpne 37
        33: .line 1269
            iload 8 /* childClass */
            aload 14 /* testTable */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable.tableClass:I
            if_icmpne 37
        34: .line 1270
            aload 12 /* testDHT */
            astore 9 /* dht */
        35: .line 1271
            iload 13 /* k */
            istore 10 /* tableIndex */
        36: .line 1272
            goto 39
        end local 14 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable testTable
        37: .line 1266
      StackMap locals:
      StackMap stack:
            iinc 13 /* k */ 1
      StackMap locals:
      StackMap stack:
        38: iload 13 /* k */
            aload 12 /* testDHT */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 31
        end local 13 // int k
        39: .line 1275
      StackMap locals:
      StackMap stack:
            aload 9 /* dht */
            ifnull 40
            goto 42
        end local 12 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment testDHT
        40: .line 1264
      StackMap locals:
      StackMap stack:
            iinc 11 /* j */ 1
      StackMap locals:
      StackMap stack:
        41: iload 11 /* j */
            aload 2 /* oldDHTs */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 28
        end local 11 // int j
        42: .line 1277
      StackMap locals:
      StackMap stack:
            aload 9 /* dht */
            ifnull 45
        43: .line 1278
            aload 9 /* dht */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            iload 10 /* tableIndex */
            aload 9 /* dht */
            aload 5 /* 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
        44: .line 1279
            goto 47
        45: .line 1280
      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 9 /* dht */
        46: .line 1281
            aload 9 /* dht */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            aload 9 /* dht */
            aload 5 /* 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 10 // int tableIndex
        end local 9 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment dht
        end local 8 // int childClass
        end local 7 // int childID
        end local 6 // org.w3c.dom.NamedNodeMap attrs
        end local 5 // org.w3c.dom.Node child
        47: .line 1249
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList org.w3c.dom.NodeList int
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        48: iload 4 /* i */
            aload 3 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 10
        end local 4 // int i
        end local 3 // org.w3c.dom.NodeList children
        49: .line 1284
            goto 64
        50: .line 1285
      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 3 /* newGuy */
        start local 3 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment newGuy
        51: .line 1286
            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 4 /* lastDQT */
        start local 4 // int lastDQT
        52: .line 1287
            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 5 /* firstSOF */
        start local 5 // int firstSOF
        53: .line 1288
            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 6 /* firstSOS */
        start local 6 // int firstSOS
        54: .line 1289
            iload 4 /* lastDQT */
            iconst_m1
            if_icmpeq 57
        55: .line 1290
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 4 /* lastDQT */
            iconst_1
            iadd
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        56: .line 1291
            goto 64
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList com.sun.imageio.plugins.jpeg.DHTMarkerSegment int int int
      StackMap stack:
        57: iload 5 /* firstSOF */
            iconst_m1
            if_icmpeq 60
        58: .line 1292
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 5 /* firstSOF */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        59: .line 1293
            goto 64
      StackMap locals:
      StackMap stack:
        60: iload 6 /* firstSOS */
            iconst_m1
            if_icmpeq 63
        61: .line 1294
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            iload 6 /* firstSOS */
            aload 3 /* newGuy */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        62: .line 1295
            goto 64
        63: .line 1296
      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 6 // int firstSOS
        end local 5 // int firstSOF
        end local 4 // int lastDQT
        end local 3 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment newGuy
        64: .line 1299
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata org.w3c.dom.Node java.util.ArrayList
      StackMap stack:
            return
        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   65     0        this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   65     1        node  Lorg/w3c/dom/Node;
            1   65     2     oldDHTs  Ljava/util/ArrayList<Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;>;
            3    5     3         seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            8   49     3    children  Lorg/w3c/dom/NodeList;
            9   49     4           i  I
           11   47     5       child  Lorg/w3c/dom/Node;
           12   47     6       attrs  Lorg/w3c/dom/NamedNodeMap;
           18   47     7     childID  I
           24   47     8  childClass  I
           25   47     9         dht  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
           26   47    10  tableIndex  I
           27   42    11           j  I
           29   40    12     testDHT  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
           30   39    13           k  I
           32   37    14   testTable  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment$Htable;
           51   64     3      newGuy  Lcom/sun/imageio/plugins/jpeg/DHTMarkerSegment;
           52   64     4     lastDQT  I
           53   64     5    firstSOF  I
           54   64     6    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 1316
            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 1315
            astore 2 /* dri */
        start local 2 // com.sun.imageio.plugins.jpeg.DRIMarkerSegment dri
         2: .line 1317
            aload 2 /* dri */
            ifnull 5
         3: .line 1318
            aload 2 /* dri */
            aload 1 /* node */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.DRIMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         4: .line 1319
            goto 15
         5: .line 1320
      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 1321
            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 1322
            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 1323
            iload 4 /* firstSOF */
            iconst_m1
            if_icmpeq 11
         9: .line 1324
            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 1325
            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 1326
            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 1327
            goto 15
        14: .line 1328
      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 1331
      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 1339
            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 1340
            aload 0 /* this */
            aload 2 /* newGuy */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.insertCOMMarkerSegment:(Lcom/sun/imageio/plugins/jpeg/COMMarkerSegment;)V
         2: .line 1341
            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 1356
            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 1357
            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 1358
            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 1359
            iload 2 /* lastCOM */
            iconst_m1
            if_icmpeq 8
         6: .line 1360
            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 1361
            goto 15
      StackMap locals: int int
      StackMap stack:
         8: iload 3 /* hasJFIF */
            ifeq 11
         9: .line 1362
            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 1363
            goto 15
      StackMap locals:
      StackMap stack:
        11: iload 4 /* firstAdobe */
            iconst_m1
            if_icmpeq 14
        12: .line 1364
            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 1365
            goto 15
        14: .line 1366
      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 1368
      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 1379
            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 1378
            astore 2 /* adobe */
        start local 2 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
         2: .line 1380
            aload 2 /* adobe */
            ifnull 5
         3: .line 1381
            aload 2 /* adobe */
            aload 1 /* node */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         4: .line 1382
            goto 7
         5: .line 1383
      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 1384
            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 1386
      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 1400
            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 1399
      StackMap locals:
      StackMap stack: int
            istore 2 /* hasJFIF */
        start local 2 // boolean hasJFIF
         3: .line 1401
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findLastUnknownMarkerSegmentPosition:()I
            istore 3 /* lastUnknown */
        start local 3 // int lastUnknown
         4: .line 1402
            iload 2 /* hasJFIF */
            ifeq 7
         5: .line 1403
            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 1404
            goto 11
      StackMap locals: int int
      StackMap stack:
         7: iload 3 /* lastUnknown */
            iconst_m1
            if_icmpeq 10
         8: .line 1405
            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 1406
            goto 11
        10: .line 1407
      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 1409
      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 1425
            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 1426
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findLastUnknownMarkerSegmentPosition:()I
            istore 3 /* lastUnknown */
        start local 3 // int lastUnknown
         2: .line 1427
            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 1428
            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 1429
            iload 3 /* lastUnknown */
            iconst_m1
            if_icmpeq 9
         7: .line 1430
            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 1431
            goto 11
      StackMap locals: int int
      StackMap stack:
         9: iload 4 /* hasJFIF */
            ifeq 11
        10: .line 1432
            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 1433
      StackMap locals:
      StackMap stack:
            iload 5 /* firstAdobe */
            iconst_m1
            if_icmpeq 14
        12: .line 1434
            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 1435
            goto 15
        14: .line 1436
      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 1438
      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 1454
            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 1453
            astore 2 /* sof */
        start local 2 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         2: .line 1455
            aload 2 /* sof */
            ifnull 5
         3: .line 1456
            aload 2 /* sof */
            aload 1 /* node */
            iconst_0
            invokevirtual com.sun.imageio.plugins.jpeg.SOFMarkerSegment.updateFromNativeNode:(Lorg/w3c/dom/Node;Z)V
         4: .line 1457
            goto 11
         5: .line 1458
      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 1459
            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 1460
            iload 4 /* firstSOS */
            iconst_m1
            if_icmpeq 10
         8: .line 1461
            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 1462
            goto 11
        10: .line 1463
      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 1466
      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 1480
            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 1479
            astore 2 /* firstSOS */
        start local 2 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment firstSOS
         2: .line 1482
            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 1481
            astore 3 /* lastSOS */
        start local 3 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment lastSOS
         4: .line 1483
            aload 2 /* firstSOS */
            ifnull 11
         5: .line 1484
            aload 2 /* firstSOS */
            aload 3 /* lastSOS */
            if_acmpeq 9
         6: .line 1485
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
         7: .line 1486
            ldc "Can't merge SOS node into a tree with > 1 SOS node"
            aload 1 /* node */
         8: .line 1485
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
         9: .line 1488
      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 1489
            goto 12
        11: .line 1490
      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 1492
      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 1497
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.transparencyDone:Z
         1: .line 1498
            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 1499
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 29
         4: .line 1500
      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 1501
            aload 4 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         6: .line 1502
            aload 5 /* name */
            ldc "Chroma"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 1503
            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 1504
            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 1505
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardCompressionNode:(Lorg/w3c/dom/Node;)V
        11: .line 1506
            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 1507
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardDataNode:(Lorg/w3c/dom/Node;)V
        14: .line 1508
            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 1509
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardDimensionNode:(Lorg/w3c/dom/Node;)V
        17: .line 1510
            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 1511
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardDocumentNode:(Lorg/w3c/dom/Node;)V
        20: .line 1512
            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 1513
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardTextNode:(Lorg/w3c/dom/Node;)V
        23: .line 1514
            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 1515
            aload 0 /* this */
            aload 4 /* node */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.mergeStandardTransparencyNode:(Lorg/w3c/dom/Node;)V
        26: .line 1516
            goto 28
        27: .line 1517
      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 1499
      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 1520
            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 1541
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.transparencyDone:Z
            ifeq 4
         1: .line 1542
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
         2: .line 1543
            ldc "Transparency node must follow Chroma node"
            aload 1 /* node */
         3: .line 1542
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
         4: .line 1546
      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 1547
            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 1549
      StackMap locals: org.w3c.dom.Node
      StackMap stack:
            return
         7: .line 1552
      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 1554
            iconst_0
            istore 5 /* numChannels */
        start local 5 // int numChannels
         9: .line 1555
            iconst_0
            istore 6 /* wantJFIF */
        start local 6 // boolean wantJFIF
        10: .line 1556
            iconst_0
            istore 7 /* wantAdobe */
        start local 7 // boolean wantAdobe
        11: .line 1557
            iconst_0
            istore 8 /* transform */
        start local 8 // int transform
        12: .line 1558
            iconst_0
            istore 9 /* willSubsample */
        start local 9 // boolean willSubsample
        13: .line 1559
            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 1560
            aload 4 /* csName */
            ldc "GRAY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        15: .line 1561
            iconst_1
            istore 5 /* numChannels */
        16: .line 1562
            iconst_1
            istore 6 /* wantJFIF */
        17: .line 1563
            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 1564
            iconst_3
            istore 5 /* numChannels */
        20: .line 1565
            iconst_1
            istore 6 /* wantJFIF */
        21: .line 1566
            iconst_1
            istore 9 /* willSubsample */
        22: .line 1567
            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 1568
            iconst_3
            istore 5 /* numChannels */
        25: .line 1569
            iconst_1
            istore 7 /* wantAdobe */
        26: .line 1570
            iconst_1
            istore 8 /* transform */
        27: .line 1571
            aload 10 /* ids */
            iconst_0
            bipush 89
            bastore
        28: .line 1572
            aload 10 /* ids */
            iconst_1
            bipush 67
            bastore
        29: .line 1573
            aload 10 /* ids */
            iconst_2
            bipush 99
            bastore
        30: .line 1574
            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 1575
            iconst_3
            istore 5 /* numChannels */
        33: .line 1576
            iconst_1
            istore 7 /* wantAdobe */
        34: .line 1577
            iconst_0
            istore 8 /* transform */
        35: .line 1578
            aload 10 /* ids */
            iconst_0
            bipush 82
            bastore
        36: .line 1579
            aload 10 /* ids */
            iconst_1
            bipush 71
            bastore
        37: .line 1580
            aload 10 /* ids */
            iconst_2
            bipush 66
            bastore
        38: .line 1581
            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 1582
            aload 4 /* csName */
            ldc "Lab"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        41: .line 1583
            aload 4 /* csName */
            ldc "Luv"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        42: .line 1584
            aload 4 /* csName */
            ldc "YxY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        43: .line 1585
            aload 4 /* csName */
            ldc "HSV"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        44: .line 1586
            aload 4 /* csName */
            ldc "HLS"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        45: .line 1587
            aload 4 /* csName */
            ldc "CMY"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 47
        46: .line 1588
            aload 4 /* csName */
            ldc "3CLR"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 49
        47: .line 1589
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 5 /* numChannels */
        48: .line 1590
            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 1591
            iconst_4
            istore 5 /* numChannels */
        51: .line 1592
            iconst_1
            istore 7 /* wantAdobe */
        52: .line 1593
            iconst_2
            istore 8 /* transform */
        53: .line 1594
            iconst_1
            istore 9 /* willSubsample */
        54: .line 1595
            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 1596
            iconst_4
            istore 5 /* numChannels */
        57: .line 1597
            iconst_1
            istore 7 /* wantAdobe */
        58: .line 1598
            iconst_0
            istore 8 /* transform */
        59: .line 1599
            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 1600
            iconst_4
            istore 5 /* numChannels */
        62: .line 1601
            goto 64
        63: .line 1602
      StackMap locals:
      StackMap stack:
            return
        64: .line 1605
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* wantAlpha */
        start local 11 // boolean wantAlpha
        65: .line 1606
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        66: goto 72
        67: .line 1607
      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 1608
            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 1609
            aload 0 /* this */
            aload 13 /* trans */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.wantAlpha:(Lorg/w3c/dom/Node;)Z
            istore 11 /* wantAlpha */
        70: .line 1610
            goto 73
        end local 13 // org.w3c.dom.Node trans
        71: .line 1606
      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 1614
      StackMap locals:
      StackMap stack:
            iload 11 /* wantAlpha */
            ifeq 79
        74: .line 1615
            iinc 5 /* numChannels */ 1
        75: .line 1616
            iconst_0
            istore 6 /* wantJFIF */
        76: .line 1617
            aload 10 /* ids */
            iconst_0
            baload
            bipush 82
            if_icmpne 79
        77: .line 1618
            aload 10 /* ids */
            iconst_3
            bipush 65
            bastore
        78: .line 1619
            iconst_0
            istore 7 /* wantAdobe */
        79: .line 1624
      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 1623
            astore 12 /* jfif */
        start local 12 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        81: .line 1626
            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 1625
            astore 13 /* adobe */
        start local 13 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        83: .line 1628
            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 1627
            astore 14 /* sof */
        start local 14 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        85: .line 1630
            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 1629
            astore 15 /* sos */
        start local 15 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        87: .line 1638
            aload 14 /* sof */
            ifnull 90
            aload 14 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.tag:I
            sipush 194
            if_icmpne 90
        88: .line 1639
            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 1640
            return
        90: .line 1645
      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 1646
            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 1650
      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 1651
            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 1656
      StackMap locals:
      StackMap stack:
            iload 7 /* wantAdobe */
            ifeq 101
        95: .line 1657
            aload 13 /* adobe */
            ifnonnull 99
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 99
        96: .line 1658
            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 1659
            aload 0 /* this */
            aload 13 /* adobe */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.insertAdobeMarkerSegment:(Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;)V
        98: .line 1660
            goto 103
        99: .line 1661
      StackMap locals:
      StackMap stack:
            aload 13 /* adobe */
            iload 8 /* transform */
            putfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
       100: .line 1663
            goto 103
      StackMap locals:
      StackMap stack:
       101: aload 13 /* adobe */
            ifnull 103
       102: .line 1664
            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 1667
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 16 /* updateQtables */
        start local 16 // boolean updateQtables
       104: .line 1668
            iconst_0
            istore 17 /* updateHtables */
        start local 17 // boolean updateHtables
       105: .line 1670
            iconst_0
            istore 18 /* progressive */
        start local 18 // boolean progressive
       106: .line 1672
            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 1673
            iconst_4
            newarray 10
            astore 20 /* nonSubsampledSelectors */
        start local 20 // int[] nonSubsampledSelectors
       108: .line 1675
            iload 9 /* willSubsample */
            ifeq 110
       109: .line 1676
            aload 19 /* subsampledSelectors */
            goto 111
       110: .line 1677
      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 1675
      StackMap locals:
      StackMap stack: int[]
            astore 21 /* newTableSelectors */
        start local 21 // int[] newTableSelectors
       112: .line 1680
            aconst_null
            astore 22 /* oldCompSpecs */
        start local 22 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] oldCompSpecs
       113: .line 1682
            aload 14 /* sof */
            ifnull 181
       114: .line 1683
            aload 14 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
            astore 22 /* oldCompSpecs */
       115: .line 1684
            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 1687
            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 1688
            new com.sun.imageio.plugins.jpeg.SOFMarkerSegment
            dup
            iload 18 /* progressive */
       120: .line 1689
            iconst_0
       121: .line 1690
            iload 9 /* willSubsample */
       122: .line 1691
            aload 10 /* ids */
       123: .line 1692
            iload 5 /* numChannels */
       124: .line 1688
            invokespecial com.sun.imageio.plugins.jpeg.SOFMarkerSegment.<init>:(ZZZ[BI)V
       125: .line 1687
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
       126: .line 1699
            iconst_0
            istore 23 /* i */
        start local 23 // int i
       127: goto 131
       128: .line 1700
      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 1701
            iconst_1
            istore 16 /* updateQtables */
       130: .line 1699
      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 1705
            iload 18 /* progressive */
            ifeq 162
       133: .line 1708
            iconst_0
            istore 23 /* idsDiffer */
        start local 23 // boolean idsDiffer
       134: .line 1709
            iconst_0
            istore 24 /* i */
        start local 24 // int i
       135: goto 139
       136: .line 1710
      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 1711
            iconst_1
            istore 23 /* idsDiffer */
       138: .line 1709
      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 1714
            iload 23 /* idsDiffer */
            ifeq 184
       141: .line 1716
            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 1717
            goto 160
       143: .line 1718
      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 1719
            aload 25 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            ifeq 160
       145: .line 1720
            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 1721
            iconst_0
            istore 27 /* i */
        start local 27 // int i
       147: goto 159
       148: .line 1723
      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 1722
            istore 28 /* oldSelector */
        start local 28 // int oldSelector
       150: .line 1730
            iconst_0
            istore 29 /* j */
        start local 29 // int j
       151: goto 157
       152: .line 1731
      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 1732
            aload 26 /* target */
            getfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            iload 27 /* i */
            aaload
       154: .line 1733
            aload 10 /* ids */
            iload 29 /* j */
            baload
       155: .line 1732
            putfield com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec.componentSelector:I
       156: .line 1730
      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 1721
            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 1717
      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 1740
            goto 184
       162: .line 1741
      StackMap locals:
      StackMap stack:
            aload 15 /* sos */
            ifnull 184
       163: .line 1744
            iconst_0
            istore 23 /* i */
        start local 23 // int i
       164: goto 173
       165: .line 1745
      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 1746
            aload 21 /* newTableSelectors */
            iload 23 /* i */
            iaload
       167: .line 1745
            if_icmpne 171
       168: .line 1747
            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 1748
            aload 21 /* newTableSelectors */
            iload 23 /* i */
            iaload
       170: .line 1747
            if_icmpeq 172
       171: .line 1749
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 17 /* updateHtables */
       172: .line 1744
      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 1754
            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 1755
            new com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            dup
            iload 9 /* willSubsample */
       176: .line 1756
            aload 10 /* ids */
       177: .line 1757
            iload 5 /* numChannels */
       178: .line 1755
            invokespecial com.sun.imageio.plugins.jpeg.SOSMarkerSegment.<init>:(Z[BI)V
       179: .line 1754
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
       180: .line 1760
            goto 184
       181: .line 1762
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 184
       182: .line 1764
            iconst_1
            istore 16 /* updateQtables */
       183: .line 1765
            iconst_1
            istore 17 /* updateHtables */
       184: .line 1769
      StackMap locals:
      StackMap stack:
            iload 16 /* updateQtables */
            ifeq 221
       185: .line 1770
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 23 /* tableSegments */
        start local 23 // java.util.List tableSegments
       186: .line 1771
            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 1772
            goto 191
       188: .line 1773
      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 1774
            aload 25 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DQTMarkerSegment
            ifeq 191
       190: .line 1775
            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 1772
      StackMap locals:
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 188
        end local 24 // java.util.Iterator iter
       192: .line 1781
            aload 23 /* tableSegments */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 221
            iload 9 /* willSubsample */
            ifeq 221
       193: .line 1788
            iconst_0
            istore 24 /* found */
        start local 24 // boolean found
       194: .line 1789
            aload 23 /* tableSegments */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 25 /* iter */
        start local 25 // java.util.Iterator iter
       195: .line 1790
            goto 204
       196: .line 1791
      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 1793
            aload 26 /* testdqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       198: .line 1792
            astore 27 /* tabiter */
        start local 27 // java.util.Iterator tabiter
       199: .line 1793
            goto 203
       200: .line 1794
      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 1795
            aload 28 /* tab */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable.tableID:I
            iconst_1
            if_icmpne 203
       202: .line 1796
            iconst_1
            istore 24 /* found */
        end local 28 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable tab
       203: .line 1793
      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 1790
      StackMap locals:
      StackMap stack:
            aload 25 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 196
        end local 25 // java.util.Iterator iter
       205: .line 1800
            iload 24 /* found */
            ifne 221
       206: .line 1802
            aconst_null
            astore 25 /* table0 */
        start local 25 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable table0
       207: .line 1804
            aload 23 /* tableSegments */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       208: .line 1803
            astore 26 /* iter */
        start local 26 // java.util.Iterator iter
       209: .line 1804
            goto 218
       210: .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 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 1807
            aload 27 /* testdqt */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       212: .line 1806
            astore 28 /* tabiter */
        start local 28 // java.util.Iterator tabiter
       213: .line 1807
            goto 217
       214: .line 1808
      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 1809
            aload 29 /* tab */
            getfield com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable.tableID:I
            ifne 217
       216: .line 1810
            aload 29 /* tab */
            astore 25 /* table0 */
        end local 29 // com.sun.imageio.plugins.jpeg.DQTMarkerSegment$Qtable tab
       217: .line 1807
      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 1804
      StackMap locals:
      StackMap stack:
            aload 26 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 210
        end local 26 // java.util.Iterator iter
       219: .line 1818
            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 1819
            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 1824
      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 1825
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 23 /* tableSegments */
        start local 23 // java.util.List tableSegments
       223: .line 1826
            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 1827
            goto 228
       225: .line 1828
      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 1829
            aload 25 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.DHTMarkerSegment
            ifeq 228
       227: .line 1830
            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 1827
      StackMap locals:
      StackMap stack:
            aload 24 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 225
        end local 24 // java.util.Iterator iter
       229: .line 1836
            aload 23 /* tableSegments */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 247
            iload 9 /* willSubsample */
            ifeq 247
       230: .line 1842
            iconst_0
            istore 24 /* found */
        start local 24 // boolean found
       231: .line 1843
            aload 23 /* tableSegments */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 25 /* iter */
        start local 25 // java.util.Iterator iter
       232: .line 1844
            goto 241
       233: .line 1845
      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 1847
            aload 26 /* testdht */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment.tables:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
       235: .line 1846
            astore 27 /* tabiter */
        start local 27 // java.util.Iterator tabiter
       236: .line 1847
            goto 240
       237: .line 1848
      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 1849
            aload 28 /* tab */
            getfield com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable.tableID:I
            iconst_1
            if_icmpne 240
       239: .line 1850
            iconst_1
            istore 24 /* found */
        end local 28 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment$Htable tab
       240: .line 1847
      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 1844
      StackMap locals:
      StackMap stack:
            aload 25 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 233
        end local 25 // java.util.Iterator iter
       242: .line 1854
            iload 24 /* found */
            ifne 247
       243: .line 1858
            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 1857
            astore 25 /* lastDHT */
        start local 25 // com.sun.imageio.plugins.jpeg.DHTMarkerSegment lastDHT
       245: .line 1859
            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 1860
            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 1864
      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 1867
            iconst_0
            istore 2 /* returnValue */
        start local 2 // boolean returnValue
         1: .line 1868
            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 1869
            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 1870
            aload 3 /* alpha */
            invokeinterface org.w3c.dom.Node.hasAttributes:()Z
            ifeq 8
         4: .line 1872
            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 1871
            astore 4 /* value */
        start local 4 // java.lang.String value
         6: .line 1873
            aload 4 /* value */
            ldc "none"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
         7: .line 1874
            iconst_1
            istore 2 /* returnValue */
        end local 4 // java.lang.String value
         8: .line 1878
      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 1879
            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 1887
            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 1892
            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 1899
            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 1898
            astore 2 /* jfif */
        start local 2 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
         2: .line 1900
            aload 2 /* jfif */
            ifnonnull 29
         3: .line 1905
            iconst_0
            istore 3 /* canHaveJFIF */
        start local 3 // boolean canHaveJFIF
         4: .line 1907
            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 1906
            astore 4 /* sof */
        start local 4 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         6: .line 1908
            aload 4 /* sof */
            ifnull 26
         7: .line 1909
            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 1910
            iload 5 /* numChannels */
            iconst_1
            if_icmpeq 9
            iload 5 /* numChannels */
            iconst_3
            if_icmpne 26
         9: .line 1911
      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 1912
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        11: goto 15
        12: .line 1913
      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 1914
            iconst_0
            istore 3 /* canHaveJFIF */
        14: .line 1912
      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 1919
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
        17: .line 1920
            iconst_1
        18: .line 1919
            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 1918
            astore 6 /* adobe */
        start local 6 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        20: .line 1921
            aload 6 /* adobe */
            ifnull 26
        21: .line 1922
            aload 6 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            iload 5 /* numChannels */
            iconst_1
            if_icmpne 23
        22: .line 1923
            iconst_0
            goto 24
        23: .line 1924
      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 1922
      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 1925
            iconst_0
            istore 3 /* canHaveJFIF */
        end local 6 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        end local 5 // int numChannels
        26: .line 1932
      StackMap locals:
      StackMap stack:
            iload 3 /* canHaveJFIF */
            ifeq 29
        27: .line 1933
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            dup
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.<init>:()V
            astore 2 /* jfif */
        28: .line 1934
            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 1937
      StackMap locals:
      StackMap stack:
            aload 2 /* jfif */
            ifnull 59
        30: .line 1938
            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 1939
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        32: goto 58
        33: .line 1940
      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 1941
            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 1942
            aload 5 /* child */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
        36: .line 1943
            aload 7 /* name */
            ldc "PixelAspectRatio"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 44
        37: .line 1944
            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 1945
            aload 8 /* valueString */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 9 /* value */
        start local 9 // float value
        39: .line 1946
            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 1947
            aload 2 /* jfif */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
        41: .line 1948
            aload 2 /* jfif */
            aload 10 /* p */
            getfield java.awt.Point.x:I
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.Xdensity:I
        42: .line 1949
            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 1950
            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 1951
            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 1952
            aload 8 /* valueString */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 9 /* value */
        start local 9 // float value
        47: .line 1954
            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 1955
            aload 2 /* jfif */
            iconst_2
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
        49: .line 1956
            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 1957
            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 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
        53: .line 1959
            aload 8 /* valueString */
            invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
            fstore 9 /* value */
        start local 9 // float value
        54: .line 1961
            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 1962
            aload 2 /* jfif */
            iconst_2
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment.resUnits:I
        56: .line 1963
            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 1939
      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 1968
      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 1975
            ldc 0.005
            fstore 1 /* epsilon */
        start local 1 // float epsilon
         1: .line 1978
            fload 0 /* value */
            invokestatic java.lang.Math.abs:(F)F
            fstore 0 /* value */
         2: .line 1981
            fload 0 /* value */
            fload 1 /* epsilon */
            fcmpg
            ifgt 4
         3: .line 1982
            new java.awt.Point
            dup
            iconst_1
            sipush 255
            invokespecial java.awt.Point.<init>:(II)V
            areturn
         4: .line 1986
      StackMap locals: float
      StackMap stack:
            fload 0 /* value */
            ldc 255.0
            fcmpl
            iflt 6
         5: .line 1987
            new java.awt.Point
            dup
            sipush 255
            iconst_1
            invokespecial java.awt.Point.<init>:(II)V
            areturn
         6: .line 1991
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* inverted */
        start local 2 // boolean inverted
         7: .line 1992
            fload 0 /* value */
            f2d
            dconst_1
            dcmpg
            ifge 10
         8: .line 1993
            fconst_1
            fload 0 /* value */
            fdiv
            fstore 0 /* value */
         9: .line 1994
            iconst_1
            istore 2 /* inverted */
        10: .line 1998
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 3 /* y */
        start local 3 // int y
        11: .line 1999
            fload 0 /* value */
            invokestatic java.lang.Math.round:(F)I
            istore 4 /* x */
        start local 4 // int x
        12: .line 2001
            iload 4 /* x */
            i2f
            fstore 5 /* ratio */
        start local 5 // float ratio
        13: .line 2002
            fload 0 /* value */
            fload 5 /* ratio */
            fsub
            invokestatic java.lang.Math.abs:(F)F
            fstore 6 /* delta */
        start local 6 // float delta
        14: .line 2003
            goto 19
        15: .line 2005
      StackMap locals: float float int int int float float
      StackMap stack:
            iinc 3 /* y */ 1
        16: .line 2006
            iload 3 /* y */
            i2f
            fload 0 /* value */
            fmul
            invokestatic java.lang.Math.round:(F)I
            istore 4 /* x */
        17: .line 2007
            iload 4 /* x */
            i2f
            iload 3 /* y */
            i2f
            fdiv
            fstore 5 /* ratio */
        18: .line 2008
            fload 0 /* value */
            fload 5 /* ratio */
            fsub
            invokestatic java.lang.Math.abs:(F)F
            fstore 6 /* delta */
        19: .line 2003
      StackMap locals:
      StackMap stack:
            fload 6 /* delta */
            fload 1 /* epsilon */
            fcmpl
            ifgt 15
        20: .line 2010
            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 2016
            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 2023
            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 2024
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 16
         3: .line 2025
      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 2026
            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 2027
            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 2028
            iconst_1
            istore 7 /* copyIt */
        start local 7 // boolean copyIt
         7: .line 2029
            aload 6 /* comp */
            ifnull 11
         8: .line 2030
            aload 6 /* comp */
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            astore 8 /* compString */
        start local 8 // java.lang.String compString
         9: .line 2031
            aload 8 /* compString */
            ldc "none"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 2032
            iconst_0
            istore 7 /* copyIt */
        end local 8 // java.lang.String compString
        11: .line 2035
      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 2036
            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 2037
            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 2038
            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 2024
      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 2041
            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 2049
            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 2050
            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 2054
            aload 0 /* this */
         3: .line 2055
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
         4: .line 2054
            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 2056
            aload 0 /* this */
         6: .line 2057
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
            iconst_1
         7: .line 2056
            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 2058
            aload 0 /* this */
         9: .line 2059
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
        10: .line 2058
            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 2060
            aload 0 /* this */
        12: .line 2061
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            iconst_1
        13: .line 2060
            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 2065
            aload 5 /* sof */
            ifnull 16
            aload 5 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.tag:I
            sipush 194
            if_icmpne 16
        15: .line 2066
            return
        16: .line 2071
      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 2072
            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 2073
            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 2075
            iload 8 /* hadAlpha */
            iload 2 /* wantAlpha */
            if_icmpeq 75
        22: .line 2076
            iload 2 /* wantAlpha */
            ifeq 58
        23: .line 2077
            iinc 7 /* numChannels */ 1
        24: .line 2078
            aload 3 /* jfif */
            ifnull 26
        25: .line 2079
            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 2083
      StackMap locals: int
      StackMap stack:
            aload 4 /* adobe */
            ifnull 28
        27: .line 2084
            aload 4 /* adobe */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
        28: .line 2089
      StackMap locals:
      StackMap stack:
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec
        29: .line 2088
            astore 9 /* newSpecs */
        start local 9 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] newSpecs
        30: .line 2090
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        31: goto 34
        32: .line 2091
      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 2090
            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 2093
            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 2094
            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 2095
            aload 9 /* newSpecs */
            iload 7 /* numChannels */
            iconst_1
            isub
        40: .line 2096
            aload 5 /* sof */
            iload 11 /* newID */
        41: .line 2097
            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 2098
            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 2096
            invokevirtual com.sun.imageio.plugins.jpeg.SOFMarkerSegment.getComponentSpec:(BII)Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
        44: .line 2095
            aastore
        45: .line 2100
            aload 5 /* sof */
            aload 9 /* newSpecs */
            putfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
        46: .line 2104
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec
        47: .line 2103
            astore 12 /* newScanSpecs */
        start local 12 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] newScanSpecs
        48: .line 2105
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        49: goto 52
        50: .line 2106
      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 2105
            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 2108
            aload 12 /* newScanSpecs */
            iload 7 /* numChannels */
            iconst_1
            isub
        54: .line 2109
            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 2108
            aastore
        56: .line 2110
            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 2111
            goto 75
        58: .line 2112
      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 2115
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec
        60: .line 2114
            astore 9 /* newSpecs */
        start local 9 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment$ComponentSpec[] newSpecs
        61: .line 2116
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        62: goto 65
        63: .line 2117
      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 2116
            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 2119
            aload 5 /* sof */
            aload 9 /* newSpecs */
            putfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.componentSpecs:[Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment$ComponentSpec;
        67: .line 2123
            iload 7 /* numChannels */
            anewarray com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec
        68: .line 2122
            astore 10 /* newScanSpecs */
        start local 10 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment$ScanComponentSpec[] newScanSpecs
        69: .line 2124
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        70: goto 73
        71: .line 2125
      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 2124
            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 2127
            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 2132
      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 2137
            aload 1 /* formatName */
            ifnonnull 2
         1: .line 2138
            new java.lang.IllegalArgumentException
            dup
            ldc "null formatName!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 2140
      StackMap locals:
      StackMap stack:
            aload 2 /* root */
            ifnonnull 4
         3: .line 2141
            new java.lang.IllegalArgumentException
            dup
            ldc "null root!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 2143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifeq 8
         5: .line 2144
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_stream_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 2145
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.setFromNativeTree:(Lorg/w3c/dom/Node;)V
         7: .line 2146
            goto 22
      StackMap locals:
      StackMap stack:
         8: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 12
         9: .line 2147
            aload 1 /* formatName */
            ldc "javax_imageio_jpeg_image_1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
        10: .line 2148
            aload 0 /* this */
            aload 2 /* root */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.setFromNativeTree:(Lorg/w3c/dom/Node;)V
        11: .line 2149
            goto 22
      StackMap locals:
      StackMap stack:
        12: aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 19
        13: .line 2150
            aload 1 /* formatName */
        14: .line 2151
            ldc "javax_imageio_1.0"
        15: .line 2150
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
        16: .line 2151
            ifeq 19
        17: .line 2153
            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 2154
            goto 22
        19: .line 2155
      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 2156
            aload 1 /* formatName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 2155
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 2158
      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 2161
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            ifnonnull 2
         1: .line 2162
            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 2164
      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 2168
            aload 1 /* root */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         4: .line 2169
            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 2170
      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 2169
      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 2171
            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 2172
            aload 1 /* root */
         9: .line 2171
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        10: .line 2174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 18
        11: .line 2175
            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 2176
            new javax.imageio.metadata.IIOInvalidTreeException
            dup
        13: .line 2177
            ldc "JPEGvariety and markerSequence nodes must be present"
            aload 1 /* root */
        14: .line 2176
            invokespecial javax.imageio.metadata.IIOInvalidTreeException.<init>:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
            athrow
        15: .line 2180
      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 2182
            aload 3 /* JPEGvariety */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            ifeq 18
        17: .line 2183
            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 2187
      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 2188
            aload 0 /* this */
            aload 3 /* markerSequenceNode */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.setFromMarkerSequenceNode:(Lorg/w3c/dom/Node;)V
        22: .line 2190
            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 2195
            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 2197
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 36
         3: .line 2198
      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 2199
            aload 4 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 5 /* childName */
        start local 5 // java.lang.String childName
         5: .line 2200
            aload 5 /* childName */
            ldc "dqt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 2201
            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 2202
            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 2203
            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 2204
            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 2205
            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 2206
            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 2207
            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 2208
            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 2209
            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 2210
            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 2211
            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 2212
            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 2213
            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 2214
            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 2215
            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 2216
            goto 35
        29: .line 2217
      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 2218
            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 2219
            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 2217
            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 2197
      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 2222
            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 2233
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
         1: .line 2234
            iconst_1
         2: .line 2233
            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 2232
            astore 1 /* sof */
        start local 1 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         4: .line 2236
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
         5: .line 2237
            iconst_1
         6: .line 2236
            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 2235
            astore 2 /* jfif */
        start local 2 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
         8: .line 2239
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
         9: .line 2240
            iconst_1
        10: .line 2239
            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 2238
            astore 3 /* adobe */
        start local 3 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        12: .line 2241
            iconst_1
            istore 4 /* retval */
        start local 4 // boolean retval
        13: .line 2242
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.isStream:Z
            ifne 43
        14: .line 2243
            aload 1 /* sof */
            ifnull 36
        15: .line 2245
            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 2246
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.countScanBands:()I
            istore 6 /* numScanBands */
        start local 6 // int numScanBands
        17: .line 2247
            iload 6 /* numScanBands */
            ifeq 20
        18: .line 2248
            iload 6 /* numScanBands */
            iload 5 /* numSOFBands */
            if_icmpeq 20
        19: .line 2249
            iconst_0
            istore 4 /* retval */
        20: .line 2253
      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 2254
            iload 5 /* numSOFBands */
            iconst_1
            if_icmpeq 23
            iload 5 /* numSOFBands */
            iconst_3
            if_icmpeq 23
        22: .line 2255
            iconst_0
            istore 4 /* retval */
        23: .line 2257
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        24: goto 28
        25: .line 2258
      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 2259
            iconst_0
            istore 4 /* retval */
        27: .line 2257
      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 2266
            aload 3 /* adobe */
            ifnull 43
        30: .line 2267
            iload 5 /* numSOFBands */
            iconst_1
            if_icmpne 32
        31: .line 2268
            aload 3 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            ifne 34
        32: .line 2269
      StackMap locals:
      StackMap stack:
            iload 5 /* numSOFBands */
            iconst_3
            if_icmpne 43
        33: .line 2270
            aload 3 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            iconst_1
            if_icmpeq 43
        34: .line 2271
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* retval */
        end local 6 // int numScanBands
        end local 5 // int numSOFBands
        35: .line 2274
            goto 43
        36: .line 2277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
        37: .line 2278
            iconst_1
        38: .line 2277
            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 2276
            astore 5 /* sos */
        start local 5 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
        40: .line 2279
            aload 2 /* jfif */
            ifnonnull 42
            aload 3 /* adobe */
            ifnonnull 42
        41: .line 2280
            aload 1 /* sof */
            ifnonnull 42
            aload 5 /* sos */
            ifnull 43
        42: .line 2281
      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 2285
      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 2293
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* ids */
        start local 1 // java.util.List ids
         1: .line 2294
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 13
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()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 2295
            aload 2 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            ifeq 13
         4: .line 2296
            aload 2 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.SOSMarkerSegment
            astore 4 /* sos */
        start local 4 // com.sun.imageio.plugins.jpeg.SOSMarkerSegment sos
         5: .line 2297
            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
         6: .line 2298
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 12
         8: .line 2299
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.util.List com.sun.imageio.plugins.jpeg.MarkerSegment java.util.Iterator 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
         9: .line 2300
            aload 1 /* ids */
            aload 7 /* id */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 2301
            aload 1 /* ids */
            aload 7 /* id */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.Integer id
        11: .line 2298
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            aload 5 /* specs */
            arraylength
            if_icmplt 8
        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 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        13: .line 2294
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata java.util.List top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        14: .line 2307
            aload 1 /* ids */
            invokeinterface java.util.List.size:()I
            ireturn
        end local 1 // java.util.List ids
        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;
            1   15     1    ids  Ljava/util/List<Ljava/lang/Integer;>;
            3   13     2    seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            5   13     4    sos  Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment;
            6   13     5  specs  [Lcom/sun/imageio/plugins/jpeg/SOSMarkerSegment$ScanComponentSpec;
            7   13     6      i  I
            9   11     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 2321
            iload 3 /* forceJFIF */
            ifeq 14
         1: .line 2325
            aload 1 /* ios */
         2: .line 2326
            aload 4 /* thumbnails */
         3: .line 2327
            aload 5 /* iccProfile */
         4: .line 2328
            aload 8 /* writer */
         5: .line 2325
            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 2329
            iload 6 /* ignoreAdobe */
            ifne 14
         7: .line 2330
            iload 7 /* newAdobeTransform */
            iconst_m1
            if_icmpeq 14
         8: .line 2331
            iload 7 /* newAdobeTransform */
            ifeq 14
         9: .line 2332
            iload 7 /* newAdobeTransform */
            iconst_1
            if_icmpeq 14
        10: .line 2334
            iconst_1
            istore 6 /* ignoreAdobe */
        11: .line 2335
            aload 8 /* writer */
        12: .line 2336
            bipush 13
        13: .line 2335
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.warningOccurred:(I)V
        14: .line 2341
      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 10
            goto 44
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.stream.ImageOutputStream int int java.util.List java.awt.color.ICC_Profile int int com.sun.imageio.plugins.jpeg.JPEGImageWriter top java.util.Iterator
      StackMap stack:
        15: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.MarkerSegment
            astore 9 /* seg */
        start local 9 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        16: .line 2342
            aload 9 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            ifeq 23
        17: .line 2343
            iload 2 /* ignoreJFIF */
            ifne 44
        18: .line 2344
            aload 9 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
            astore 11 /* jfif */
        start local 11 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment jfif
        19: .line 2345
            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
        20: .line 2346
            aload 5 /* iccProfile */
            ifnull 44
        21: .line 2347
            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
        22: .line 2350
            goto 44
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.stream.ImageOutputStream int int java.util.List java.awt.color.ICC_Profile int int com.sun.imageio.plugins.jpeg.JPEGImageWriter com.sun.imageio.plugins.jpeg.MarkerSegment java.util.Iterator
      StackMap stack:
        23: aload 9 /* seg */
            instanceof com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            ifeq 43
        24: .line 2351
            iload 6 /* ignoreAdobe */
            ifne 44
        25: .line 2352
            iload 7 /* newAdobeTransform */
            iconst_m1
            if_icmpeq 31
        26: .line 2354
            aload 9 /* seg */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.clone:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
        27: .line 2353
            astore 11 /* newAdobe */
        start local 11 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment newAdobe
        28: .line 2355
            aload 11 /* newAdobe */
            iload 7 /* newAdobeTransform */
            putfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
        29: .line 2356
            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
        30: .line 2357
            goto 44
      StackMap locals:
      StackMap stack:
        31: iload 3 /* forceJFIF */
            ifeq 41
        32: .line 2359
            aload 9 /* seg */
            checkcast com.sun.imageio.plugins.jpeg.AdobeMarkerSegment
            astore 11 /* adobe */
        start local 11 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        33: .line 2360
            aload 11 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            ifeq 35
        34: .line 2361
            aload 11 /* adobe */
            getfield com.sun.imageio.plugins.jpeg.AdobeMarkerSegment.transform:I
            iconst_1
            if_icmpne 37
        35: .line 2362
      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
        36: .line 2363
            goto 44
        37: .line 2364
      StackMap locals:
      StackMap stack:
            aload 8 /* writer */
        38: .line 2365
            bipush 13
        39: .line 2364
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.warningOccurred:(I)V
        end local 11 // com.sun.imageio.plugins.jpeg.AdobeMarkerSegment adobe
        40: .line 2367
            goto 44
        41: .line 2368
      StackMap locals:
      StackMap stack:
            aload 9 /* seg */
            aload 1 /* ios */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.write:(Ljavax/imageio/stream/ImageOutputStream;)V
        42: .line 2371
            goto 44
        43: .line 2372
      StackMap locals:
      StackMap stack:
            aload 9 /* seg */
            aload 1 /* ios */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.write:(Ljavax/imageio/stream/ImageOutputStream;)V
        end local 9 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
        44: .line 2341
      StackMap locals: com.sun.imageio.plugins.jpeg.JPEGMetadata javax.imageio.stream.ImageOutputStream int int java.util.List java.awt.color.ICC_Profile int int com.sun.imageio.plugins.jpeg.JPEGImageWriter top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        45: .line 2375
            return
        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   46     0               this  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            0   46     1                ios  Ljavax/imageio/stream/ImageOutputStream;
            0   46     2         ignoreJFIF  Z
            0   46     3          forceJFIF  Z
            0   46     4         thumbnails  Ljava/util/List<+Ljava/awt/image/BufferedImage;>;
            0   46     5         iccProfile  Ljava/awt/color/ICC_Profile;
            0   46     6        ignoreAdobe  Z
            0   46     7  newAdobeTransform  I
            0   46     8             writer  Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;
           16   44     9                seg  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
           19   22    11               jfif  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
           28   30    11           newAdobe  Lcom/sun/imageio/plugins/jpeg/AdobeMarkerSegment;
           33   40    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 2380
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
            ifnull 3
         1: .line 2381
            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 2382
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JPEGMetadata.resetSequence:Ljava/util/List;
         3: .line 2384
      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 2387
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 2388
      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 2389
            aload 2 /* seg */
            invokevirtual com.sun.imageio.plugins.jpeg.MarkerSegment.print:()V
        end local 2 // com.sun.imageio.plugins.jpeg.MarkerSegment seg
         4: .line 2387
            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 2391
            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