class com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG extends com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumb
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG
  super_class: com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumb
{
  com.sun.imageio.plugins.jpeg.JPEGMetadata thumbMetadata;
    descriptor: Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
    flags: (0x0000) 

  byte[] data;
    descriptor: [B
    flags: (0x0000) 

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

  final com.sun.imageio.plugins.jpeg.JFIFMarkerSegment this$0;
    descriptor: Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.sun.imageio.plugins.jpeg.JFIFMarkerSegment, com.sun.imageio.plugins.jpeg.JPEGBuffer, int, com.sun.imageio.plugins.jpeg.JPEGImageReader);
    descriptor: (Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;ILcom/sun/imageio/plugins/jpeg/JPEGImageReader;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
        start local 2 // com.sun.imageio.plugins.jpeg.JPEGBuffer buffer
        start local 3 // int length
        start local 4 // com.sun.imageio.plugins.jpeg.JPEGImageReader reader
         0: .line 1130
            aload 0 /* this */
            aload 1
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.this$0:Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
         1: .line 1131
            aload 0 /* this */
            aload 1
            aload 2 /* buffer */
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumb.<init>:(Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;)V
         2: .line 1124
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
         3: .line 1125
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
         4: .line 1133
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.streamPos:J
            iload 3 /* length */
            bipush 6
            isub
            i2l
            ladd
            lstore 5 /* finalPos */
        start local 5 // long finalPos
         5: .line 1136
            aload 2 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.streamPos:J
            invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
         6: .line 1137
            aload 0 /* this */
            new com.sun.imageio.plugins.jpeg.JPEGMetadata
            dup
            iconst_0
            iconst_1
            aload 2 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 4 /* reader */
            invokespecial com.sun.imageio.plugins.jpeg.JPEGMetadata.<init>:(ZZLjavax/imageio/stream/ImageInputStream;Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;)V
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
         7: .line 1139
            aload 2 /* buffer */
            getfield com.sun.imageio.plugins.jpeg.JPEGBuffer.iis:Ljavax/imageio/stream/ImageInputStream;
            lload 5 /* finalPos */
            invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
         8: .line 1141
            aload 2 /* buffer */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufAvail:I
         9: .line 1142
            aload 2 /* buffer */
            iconst_0
            putfield com.sun.imageio.plugins.jpeg.JPEGBuffer.bufPtr:I
        10: .line 1143
            return
        end local 5 // long finalPos
        end local 4 // com.sun.imageio.plugins.jpeg.JPEGImageReader reader
        end local 3 // int length
        end local 2 // com.sun.imageio.plugins.jpeg.JPEGBuffer buffer
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
            0   11     2    buffer  Lcom/sun/imageio/plugins/jpeg/JPEGBuffer;
            0   11     3    length  I
            0   11     4    reader  Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;
            5   11     5  finalPos  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      this$0  final
      buffer  
      length  
      reader  

  void <init>(com.sun.imageio.plugins.jpeg.JFIFMarkerSegment, Node);
    descriptor: (Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;LNode;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
         0: .line 59
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe import org.w3c cannot be resolved\n\tThe import org.w3c cannot be resolved\n\tThe import org.w3c cannot be resolved\n\tNode cannot be resolved to a type\n\tThe method appendChild(Node) from the type IIOMetadataNode refers to the missing type Node\n\tThe method appendChild(Node) from the type IIOMetadataNode refers to the missing type Node\n\tThe method appendChild(Node) from the type IIOMetadataNode refers to the missing type Node\n\tNode cannot be resolved to a type\n\tNamedNodeMap cannot be resolved to a type\n\tNodeList cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tNodeList cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tNamedNodeMap cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tThe method appendChild(Node) from the type IIOMetadataNode refers to the missing type Node\n\tNode cannot be resolved to a type\n\tNamedNodeMap cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tThe method appendChild(Node) from the type IIOMetadataNode refers to the missing type Node\n\tNode cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
    Exceptions:
      throws javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
        Name  Flags
      this$0  final
      node    

  void <init>(com.sun.imageio.plugins.jpeg.JFIFMarkerSegment, java.awt.image.BufferedImage);
    descriptor: (Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;Ljava/awt/image/BufferedImage;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
        start local 2 // java.awt.image.BufferedImage thumb
         0: .line 1163
            aload 0 /* this */
            aload 1
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.this$0:Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            aload 0 /* this */
            aload 1
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumb.<init>:(Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;)V
         1: .line 1124
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
         2: .line 1125
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
         3: .line 1164
            sipush 4096
            istore 3 /* INITIAL_BUFSIZE */
        start local 3 // int INITIAL_BUFSIZE
         4: .line 1165
            ldc 65527
            istore 4 /* MAZ_BUFSIZE */
        start local 4 // int MAZ_BUFSIZE
         5: .line 1168
            new java.io.ByteArrayOutputStream
            dup
            iload 3 /* INITIAL_BUFSIZE */
            invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
         6: .line 1167
            astore 5 /* baos */
        start local 5 // java.io.ByteArrayOutputStream baos
         7: .line 1170
            new javax.imageio.stream.MemoryCacheImageOutputStream
            dup
            aload 5 /* baos */
            invokespecial javax.imageio.stream.MemoryCacheImageOutputStream.<init>:(Ljava/io/OutputStream;)V
         8: .line 1169
            astore 6 /* mos */
        start local 6 // javax.imageio.stream.MemoryCacheImageOutputStream mos
         9: .line 1172
            new com.sun.imageio.plugins.jpeg.JPEGImageWriter
            dup
            aconst_null
            invokespecial com.sun.imageio.plugins.jpeg.JPEGImageWriter.<init>:(Ljavax/imageio/spi/ImageWriterSpi;)V
            astore 7 /* thumbWriter */
        start local 7 // com.sun.imageio.plugins.jpeg.JPEGImageWriter thumbWriter
        10: .line 1174
            aload 7 /* thumbWriter */
            aload 6 /* mos */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.setOutput:(Ljava/lang/Object;)V
        11: .line 1178
            aload 7 /* thumbWriter */
        12: .line 1179
            new javax.imageio.ImageTypeSpecifier
            dup
            aload 2 /* thumb */
            invokespecial javax.imageio.ImageTypeSpecifier.<init>:(Ljava/awt/image/RenderedImage;)V
            aconst_null
        13: .line 1178
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.getDefaultImageMetadata:(Ljavax/imageio/ImageTypeSpecifier;Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
            checkcast com.sun.imageio.plugins.jpeg.JPEGMetadata
        14: .line 1177
            astore 8 /* metadata */
        start local 8 // com.sun.imageio.plugins.jpeg.JPEGMetadata metadata
        15: .line 1182
            aload 8 /* metadata */
        16: .line 1183
            ldc Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;
            iconst_1
        17: .line 1182
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.findMarkerSegment:(Ljava/lang/Class;Z)Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
            astore 9 /* jfif */
        start local 9 // com.sun.imageio.plugins.jpeg.MarkerSegment jfif
        18: .line 1184
            aload 9 /* jfif */
            ifnonnull 20
        19: .line 1185
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException
            dup
            aload 1
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException.<init>:(Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;)V
            athrow
        20: .line 1188
      StackMap locals: com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG com.sun.imageio.plugins.jpeg.JFIFMarkerSegment java.awt.image.BufferedImage int int java.io.ByteArrayOutputStream javax.imageio.stream.MemoryCacheImageOutputStream com.sun.imageio.plugins.jpeg.JPEGImageWriter com.sun.imageio.plugins.jpeg.JPEGMetadata com.sun.imageio.plugins.jpeg.MarkerSegment
      StackMap stack:
            aload 8 /* metadata */
            getfield com.sun.imageio.plugins.jpeg.JPEGMetadata.markerSequence:Ljava/util/List;
            aload 9 /* jfif */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        21: .line 1211
            aload 7 /* thumbWriter */
            new javax.imageio.IIOImage
            dup
            aload 2 /* thumb */
            aconst_null
            aload 8 /* metadata */
            invokespecial javax.imageio.IIOImage.<init>:(Ljava/awt/image/RenderedImage;Ljava/util/List;Ljavax/imageio/metadata/IIOMetadata;)V
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.write:(Ljavax/imageio/IIOImage;)V
        22: .line 1213
            aload 7 /* thumbWriter */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.dispose:()V
        23: .line 1215
            aload 5 /* baos */
            invokevirtual java.io.ByteArrayOutputStream.size:()I
            iload 4 /* MAZ_BUFSIZE */
            if_icmple 25
        24: .line 1216
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException
            dup
            aload 1
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException.<init>:(Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;)V
            athrow
        25: .line 1218
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* baos */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
        end local 9 // com.sun.imageio.plugins.jpeg.MarkerSegment jfif
        end local 8 // com.sun.imageio.plugins.jpeg.JPEGMetadata metadata
        end local 7 // com.sun.imageio.plugins.jpeg.JPEGImageWriter thumbWriter
        end local 6 // javax.imageio.stream.MemoryCacheImageOutputStream mos
        end local 5 // java.io.ByteArrayOutputStream baos
        26: .line 1219
            goto 29
      StackMap locals: com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG com.sun.imageio.plugins.jpeg.JFIFMarkerSegment java.awt.image.BufferedImage int int
      StackMap stack: java.io.IOException
        27: pop
        28: .line 1220
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException
            dup
            aload 1
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException.<init>:(Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment;)V
            athrow
        29: .line 1222
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int MAZ_BUFSIZE
        end local 3 // int INITIAL_BUFSIZE
        end local 2 // java.awt.image.BufferedImage thumb
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   30     0             this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
            0   30     2            thumb  Ljava/awt/image/BufferedImage;
            4   30     3  INITIAL_BUFSIZE  I
            5   30     4      MAZ_BUFSIZE  I
            7   26     5             baos  Ljava/io/ByteArrayOutputStream;
            9   26     6              mos  Ljavax/imageio/stream/MemoryCacheImageOutputStream;
           10   26     7      thumbWriter  Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;
           15   26     8         metadata  Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
           18   26     9             jfif  Lcom/sun/imageio/plugins/jpeg/MarkerSegment;
      Exception table:
        from    to  target  type
           5    26      27  Class java.io.IOException
    Exceptions:
      throws com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException
    MethodParameters:
        Name  Flags
      this$0  final
      thumb   

  int getWidth();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
         0: .line 1225
            iconst_0
            istore 1 /* retval */
        start local 1 // int retval
         1: .line 1227
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
         2: .line 1228
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
         3: .line 1227
            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
         4: .line 1226
            astore 2 /* sof */
        start local 2 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         5: .line 1229
            aload 2 /* sof */
            ifnull 7
         6: .line 1230
            aload 2 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.samplesPerLine:I
            istore 1 /* retval */
         7: .line 1232
      StackMap locals: int com.sun.imageio.plugins.jpeg.SOFMarkerSegment
      StackMap stack:
            iload 1 /* retval */
            ireturn
        end local 2 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 1 // int retval
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
            1    8     1  retval  I
            5    8     2     sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;

  int getHeight();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
         0: .line 1236
            iconst_0
            istore 1 /* retval */
        start local 1 // int retval
         1: .line 1238
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
         2: .line 1239
            ldc Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;
            iconst_1
         3: .line 1238
            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
         4: .line 1237
            astore 2 /* sof */
        start local 2 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
         5: .line 1240
            aload 2 /* sof */
            ifnull 7
         6: .line 1241
            aload 2 /* sof */
            getfield com.sun.imageio.plugins.jpeg.SOFMarkerSegment.numLines:I
            istore 1 /* retval */
         7: .line 1243
      StackMap locals: int com.sun.imageio.plugins.jpeg.SOFMarkerSegment
      StackMap stack:
            iload 1 /* retval */
            ireturn
        end local 2 // com.sun.imageio.plugins.jpeg.SOFMarkerSegment sof
        end local 1 // int retval
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
            1    8     1  retval  I
            5    8     2     sof  Lcom/sun/imageio/plugins/jpeg/SOFMarkerSegment;

  java.awt.image.BufferedImage getThumbnail(javax.imageio.stream.ImageInputStream, com.sun.imageio.plugins.jpeg.JPEGImageReader);
    descriptor: (Ljavax/imageio/stream/ImageInputStream;Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;)Ljava/awt/image/BufferedImage;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
        start local 1 // javax.imageio.stream.ImageInputStream iis
        start local 2 // com.sun.imageio.plugins.jpeg.JPEGImageReader reader
         0: .line 1270
            aload 1 /* iis */
            invokeinterface javax.imageio.stream.ImageInputStream.mark:()V
         1: .line 1271
            aload 1 /* iis */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.streamPos:J
            invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
         2: .line 1272
            new com.sun.imageio.plugins.jpeg.JPEGImageReader
            dup
            aconst_null
            invokespecial com.sun.imageio.plugins.jpeg.JPEGImageReader.<init>:(Ljavax/imageio/spi/ImageReaderSpi;)V
            astore 3 /* thumbReader */
        start local 3 // com.sun.imageio.plugins.jpeg.JPEGImageReader thumbReader
         3: .line 1273
            aload 3 /* thumbReader */
            aload 1 /* iis */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageReader.setInput:(Ljava/lang/Object;)V
         4: .line 1274
            aload 3 /* thumbReader */
         5: .line 1275
            new com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG$ThumbnailReadListener
            dup
            aload 0 /* this */
            aload 2 /* reader */
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG$ThumbnailReadListener.<init>:(Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;)V
         6: .line 1274
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageReader.addIIOReadProgressListener:(Ljavax/imageio/event/IIOReadProgressListener;)V
         7: .line 1276
            aload 3 /* thumbReader */
            iconst_0
            aconst_null
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageReader.read:(ILjavax/imageio/ImageReadParam;)Ljava/awt/image/BufferedImage;
            astore 4 /* ret */
        start local 4 // java.awt.image.BufferedImage ret
         8: .line 1277
            aload 3 /* thumbReader */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageReader.dispose:()V
         9: .line 1278
            aload 1 /* iis */
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
        10: .line 1279
            aload 4 /* ret */
            areturn
        end local 4 // java.awt.image.BufferedImage ret
        end local 3 // com.sun.imageio.plugins.jpeg.JPEGImageReader thumbReader
        end local 2 // com.sun.imageio.plugins.jpeg.JPEGImageReader reader
        end local 1 // javax.imageio.stream.ImageInputStream iis
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
            0   11     1          iis  Ljavax/imageio/stream/ImageInputStream;
            0   11     2       reader  Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;
            3   11     3  thumbReader  Lcom/sun/imageio/plugins/jpeg/JPEGImageReader;
            8   11     4          ret  Ljava/awt/image/BufferedImage;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      iis     
      reader  

  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.JFIFMarkerSegment$JFIFThumbJPEG this
         0: .line 1283
            aload 0 /* this */
            invokespecial com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumb.clone:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG
            astore 1 /* newGuy */
        start local 1 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG newGuy
         1: .line 1284
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            ifnull 3
         2: .line 1285
            aload 1 /* newGuy */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGMetadata.clone:()Ljava/lang/Object;
            checkcast com.sun.imageio.plugins.jpeg.JPEGMetadata
            putfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.thumbMetadata:Lcom/sun/imageio/plugins/jpeg/JPEGMetadata;
         3: .line 1287
      StackMap locals: com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG
      StackMap stack:
            aload 1 /* newGuy */
            areturn
        end local 1 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG newGuy
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
            1    4     1  newGuy  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;

  javax.imageio.metadata.IIOMetadataNode getNativeNode();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadataNode;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
         0: .line 1293
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe method appendChild(Node) from the type IIOMetadataNode refers to the missing type Node\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;

  int getLength();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
         0: .line 1299
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
            ifnonnull 2
         1: .line 1300
            iconst_0
            ireturn
         2: .line 1302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
            arraylength
            ireturn
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;

  void write(javax.imageio.stream.ImageOutputStream, com.sun.imageio.plugins.jpeg.JPEGImageWriter);
    descriptor: (Ljavax/imageio/stream/ImageOutputStream;Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
        start local 1 // javax.imageio.stream.ImageOutputStream ios
        start local 2 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
         0: .line 1308
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
            arraylength
            bipush 20
            idiv
            istore 3 /* progInterval */
        start local 3 // int progInterval
         1: .line 1309
            iload 3 /* progInterval */
            ifne 3
         2: .line 1310
            iconst_1
            istore 3 /* progInterval */
         3: .line 1312
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 4 /* offset */
        start local 4 // int offset
         4: .line 1313
            goto 12
         5: .line 1314
      StackMap locals: int
      StackMap stack:
            iload 3 /* progInterval */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
            arraylength
            iload 4 /* offset */
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 5 /* len */
        start local 5 // int len
         6: .line 1315
            aload 1 /* ios */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
            iload 4 /* offset */
            iload 5 /* len */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:([BII)V
         7: .line 1316
            iload 4 /* offset */
            iload 3 /* progInterval */
            iadd
            istore 4 /* offset */
         8: .line 1317
            iload 4 /* offset */
            i2f
            ldc 100.0
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
            arraylength
            i2f
            fdiv
            fstore 6 /* percentDone */
        start local 6 // float percentDone
         9: .line 1318
            fload 6 /* percentDone */
            ldc 100.0
            fcmpl
            ifle 11
        10: .line 1319
            ldc 100.0
            fstore 6 /* percentDone */
        11: .line 1321
      StackMap locals: int float
      StackMap stack:
            aload 2 /* writer */
            fload 6 /* percentDone */
            invokevirtual com.sun.imageio.plugins.jpeg.JPEGImageWriter.thumbnailProgress:(F)V
        end local 6 // float percentDone
        end local 5 // int len
        12: .line 1313
      StackMap locals:
      StackMap stack:
            iload 4 /* offset */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG.data:[B
            arraylength
        13: .line 1312
            if_icmplt 5
        end local 4 // int offset
        14: .line 1323
            return
        end local 3 // int progInterval
        end local 2 // com.sun.imageio.plugins.jpeg.JPEGImageWriter writer
        end local 1 // javax.imageio.stream.ImageOutputStream ios
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
            0   15     1           ios  Ljavax/imageio/stream/ImageOutputStream;
            0   15     2        writer  Lcom/sun/imageio/plugins/jpeg/JPEGImageWriter;
            1   15     3  progInterval  I
            4   14     4        offset  I
            6   12     5           len  I
            9   12     6   percentDone  F
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      ios     
      writer  

  void print();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
         0: .line 1326
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "JFIF thumbnail stored as JPEG"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 1327
            return
        end local 0 // com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/imageio/plugins/jpeg/JFIFMarkerSegment$JFIFThumbJPEG;
}
SourceFile: "JFIFMarkerSegment.java"
NestHost: com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
InnerClasses:
  private IllegalThumbException = com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$IllegalThumbException of com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
  abstract JFIFThumb = com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumb of com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
  JFIFThumbJPEG = com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG of com.sun.imageio.plugins.jpeg.JFIFMarkerSegment
  private ThumbnailReadListener = com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG$ThumbnailReadListener of com.sun.imageio.plugins.jpeg.JFIFMarkerSegment$JFIFThumbJPEG