public class com.sun.imageio.plugins.gif.GIFImageWriter extends javax.imageio.ImageWriter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.imageio.plugins.gif.GIFImageWriter
  super_class: javax.imageio.ImageWriter
{
  private static final boolean DEBUG;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  static final java.lang.String STANDARD_METADATA_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "javax_imageio_1.0"

  static final java.lang.String STREAM_METADATA_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "javax_imageio_gif_stream_1.0"

  static final java.lang.String IMAGE_METADATA_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "javax_imageio_gif_image_1.0"

  private javax.imageio.stream.ImageOutputStream stream;
    descriptor: Ljavax/imageio/stream/ImageOutputStream;
    flags: (0x0002) ACC_PRIVATE

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

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

  private com.sun.imageio.plugins.gif.GIFWritableStreamMetadata theStreamMetadata;
    descriptor: Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
    flags: (0x0002) ACC_PRIVATE

  private int imageIndex;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private static int getNumBits(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // int value
         0: .line 103
            iload 0 /* value */
            lookupswitch { // 8
                    2: 1
                    4: 3
                    8: 5
                   16: 7
                   32: 9
                   64: 11
                  128: 13
                  256: 15
              default: 17
          }
         1: .line 105
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* numBits */
        start local 1 // int numBits
         2: .line 106
            goto 18
        end local 1 // int numBits
         3: .line 108
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 1 /* numBits */
        start local 1 // int numBits
         4: .line 109
            goto 18
        end local 1 // int numBits
         5: .line 111
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 1 /* numBits */
        start local 1 // int numBits
         6: .line 112
            goto 18
        end local 1 // int numBits
         7: .line 114
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 1 /* numBits */
        start local 1 // int numBits
         8: .line 115
            goto 18
        end local 1 // int numBits
         9: .line 117
      StackMap locals:
      StackMap stack:
            iconst_5
            istore 1 /* numBits */
        start local 1 // int numBits
        10: .line 118
            goto 18
        end local 1 // int numBits
        11: .line 120
      StackMap locals:
      StackMap stack:
            bipush 6
            istore 1 /* numBits */
        start local 1 // int numBits
        12: .line 121
            goto 18
        end local 1 // int numBits
        13: .line 123
      StackMap locals:
      StackMap stack:
            bipush 7
            istore 1 /* numBits */
        start local 1 // int numBits
        14: .line 124
            goto 18
        end local 1 // int numBits
        15: .line 126
      StackMap locals:
      StackMap stack:
            bipush 8
            istore 1 /* numBits */
        start local 1 // int numBits
        16: .line 127
            goto 18
        end local 1 // int numBits
        17: .line 129
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad palette length: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* value */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        start local 1 // int numBits
        18: .line 132
      StackMap locals: int
      StackMap stack:
            iload 1 /* numBits */
            ireturn
        end local 1 // int numBits
        end local 0 // int value
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0    value  I
            2    3     1  numBits  I
            4    5     1  numBits  I
            6    7     1  numBits  I
            8    9     1  numBits  I
           10   11     1  numBits  I
           12   13     1  numBits  I
           14   15     1  numBits  I
           16   17     1  numBits  I
           18   19     1  numBits  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  private static void computeRegions(java.awt.Rectangle, java.awt.Dimension, javax.imageio.ImageWriteParam);
    descriptor: (Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljavax/imageio/ImageWriteParam;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // java.awt.Rectangle sourceBounds
        start local 1 // java.awt.Dimension destSize
        start local 2 // javax.imageio.ImageWriteParam p
         0: .line 143
            iconst_1
            istore 3 /* periodX */
        start local 3 // int periodX
         1: .line 144
            iconst_1
            istore 4 /* periodY */
        start local 4 // int periodY
         2: .line 145
            aload 2 /* p */
            ifnull 20
         3: .line 146
            aload 2 /* p */
            invokevirtual javax.imageio.ImageWriteParam.getSourceBands:()[I
            astore 5 /* sourceBands */
        start local 5 // int[] sourceBands
         4: .line 147
            aload 5 /* sourceBands */
            ifnull 8
         5: .line 148
            aload 5 /* sourceBands */
            arraylength
            iconst_1
            if_icmpne 7
         6: .line 149
            aload 5 /* sourceBands */
            iconst_0
            iaload
            ifeq 8
         7: .line 150
      StackMap locals: int int int[]
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Cannot sub-band image!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 154
      StackMap locals:
      StackMap stack:
            aload 2 /* p */
            invokevirtual javax.imageio.ImageWriteParam.getSourceRegion:()Ljava/awt/Rectangle;
            astore 6 /* sourceRegion */
        start local 6 // java.awt.Rectangle sourceRegion
         9: .line 155
            aload 6 /* sourceRegion */
            ifnull 12
        10: .line 157
            aload 6 /* sourceRegion */
            aload 0 /* sourceBounds */
            invokevirtual java.awt.Rectangle.intersection:(Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 6 /* sourceRegion */
        11: .line 158
            aload 0 /* sourceBounds */
            aload 6 /* sourceRegion */
            invokevirtual java.awt.Rectangle.setBounds:(Ljava/awt/Rectangle;)V
        12: .line 162
      StackMap locals: java.awt.Rectangle
      StackMap stack:
            aload 2 /* p */
            invokevirtual javax.imageio.ImageWriteParam.getSubsamplingXOffset:()I
            istore 7 /* gridX */
        start local 7 // int gridX
        13: .line 163
            aload 2 /* p */
            invokevirtual javax.imageio.ImageWriteParam.getSubsamplingYOffset:()I
            istore 8 /* gridY */
        start local 8 // int gridY
        14: .line 164
            aload 0 /* sourceBounds */
            dup
            getfield java.awt.Rectangle.x:I
            iload 7 /* gridX */
            iadd
            putfield java.awt.Rectangle.x:I
        15: .line 165
            aload 0 /* sourceBounds */
            dup
            getfield java.awt.Rectangle.y:I
            iload 8 /* gridY */
            iadd
            putfield java.awt.Rectangle.y:I
        16: .line 166
            aload 0 /* sourceBounds */
            dup
            getfield java.awt.Rectangle.width:I
            iload 7 /* gridX */
            isub
            putfield java.awt.Rectangle.width:I
        17: .line 167
            aload 0 /* sourceBounds */
            dup
            getfield java.awt.Rectangle.height:I
            iload 8 /* gridY */
            isub
            putfield java.awt.Rectangle.height:I
        18: .line 170
            aload 2 /* p */
            invokevirtual javax.imageio.ImageWriteParam.getSourceXSubsampling:()I
            istore 3 /* periodX */
        19: .line 171
            aload 2 /* p */
            invokevirtual javax.imageio.ImageWriteParam.getSourceYSubsampling:()I
            istore 4 /* periodY */
        end local 8 // int gridY
        end local 7 // int gridX
        end local 6 // java.awt.Rectangle sourceRegion
        end local 5 // int[] sourceBands
        20: .line 175
      StackMap locals:
      StackMap stack:
            aload 1 /* destSize */
            aload 0 /* sourceBounds */
            getfield java.awt.Rectangle.width:I
            iload 3 /* periodX */
            iadd
            iconst_1
            isub
            iload 3 /* periodX */
            idiv
        21: .line 176
            aload 0 /* sourceBounds */
            getfield java.awt.Rectangle.height:I
            iload 4 /* periodY */
            iadd
            iconst_1
            isub
            iload 4 /* periodY */
            idiv
        22: .line 175
            invokevirtual java.awt.Dimension.setSize:(II)V
        23: .line 177
            aload 1 /* destSize */
            getfield java.awt.Dimension.width:I
            ifle 24
            aload 1 /* destSize */
            getfield java.awt.Dimension.height:I
            ifgt 25
        24: .line 178
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Empty source region!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 180
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int periodY
        end local 3 // int periodX
        end local 2 // javax.imageio.ImageWriteParam p
        end local 1 // java.awt.Dimension destSize
        end local 0 // java.awt.Rectangle sourceBounds
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0  sourceBounds  Ljava/awt/Rectangle;
            0   26     1      destSize  Ljava/awt/Dimension;
            0   26     2             p  Ljavax/imageio/ImageWriteParam;
            1   26     3       periodX  I
            2   26     4       periodY  I
            4   20     5   sourceBands  [I
            9   20     6  sourceRegion  Ljava/awt/Rectangle;
           13   20     7         gridX  I
           14   20     8         gridY  I
    MethodParameters:
              Name  Flags
      sourceBounds  
      destSize      
      p             

  private static byte[] createColorTable(java.awt.image.ColorModel, java.awt.image.SampleModel);
    descriptor: (Ljava/awt/image/ColorModel;Ljava/awt/image/SampleModel;)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // java.awt.image.ColorModel colorModel
        start local 1 // java.awt.image.SampleModel sampleModel
         0: .line 189
            aload 0 /* colorModel */
            instanceof java.awt.image.IndexColorModel
            ifeq 27
         1: .line 190
            aload 0 /* colorModel */
            checkcast java.awt.image.IndexColorModel
            astore 3 /* icm */
        start local 3 // java.awt.image.IndexColorModel icm
         2: .line 191
            aload 3 /* icm */
            invokevirtual java.awt.image.IndexColorModel.getMapSize:()I
            istore 4 /* mapSize */
        start local 4 // int mapSize
         3: .line 198
            iload 4 /* mapSize */
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.getGifPaletteSize:(I)I
            istore 5 /* ctSize */
        start local 5 // int ctSize
         4: .line 200
            iload 5 /* ctSize */
            newarray 8
            astore 6 /* reds */
        start local 6 // byte[] reds
         5: .line 201
            iload 5 /* ctSize */
            newarray 8
            astore 7 /* greens */
        start local 7 // byte[] greens
         6: .line 202
            iload 5 /* ctSize */
            newarray 8
            astore 8 /* blues */
        start local 8 // byte[] blues
         7: .line 203
            aload 3 /* icm */
            aload 6 /* reds */
            invokevirtual java.awt.image.IndexColorModel.getReds:([B)V
         8: .line 204
            aload 3 /* icm */
            aload 7 /* greens */
            invokevirtual java.awt.image.IndexColorModel.getGreens:([B)V
         9: .line 205
            aload 3 /* icm */
            aload 8 /* blues */
            invokevirtual java.awt.image.IndexColorModel.getBlues:([B)V
        10: .line 211
            iload 4 /* mapSize */
            istore 9 /* i */
        start local 9 // int i
        11: goto 16
        12: .line 212
      StackMap locals: java.awt.image.ColorModel java.awt.image.SampleModel top java.awt.image.IndexColorModel int int byte[] byte[] byte[] int
      StackMap stack:
            aload 6 /* reds */
            iload 9 /* i */
            aload 6 /* reds */
            iconst_0
            baload
            bastore
        13: .line 213
            aload 7 /* greens */
            iload 9 /* i */
            aload 7 /* greens */
            iconst_0
            baload
            bastore
        14: .line 214
            aload 8 /* blues */
            iload 9 /* i */
            aload 8 /* blues */
            iconst_0
            baload
            bastore
        15: .line 211
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 9 /* i */
            iload 5 /* ctSize */
            if_icmplt 12
        end local 9 // int i
        17: .line 217
            iconst_3
            iload 5 /* ctSize */
            imul
            newarray 8
            astore 2 /* colorTable */
        start local 2 // byte[] colorTable
        18: .line 218
            iconst_0
            istore 9 /* idx */
        start local 9 // int idx
        19: .line 219
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        20: goto 25
        21: .line 220
      StackMap locals: java.awt.image.ColorModel java.awt.image.SampleModel byte[] java.awt.image.IndexColorModel int int byte[] byte[] byte[] int int
      StackMap stack:
            aload 2 /* colorTable */
            iload 9 /* idx */
            iinc 9 /* idx */ 1
            aload 6 /* reds */
            iload 10 /* i */
            baload
            bastore
        22: .line 221
            aload 2 /* colorTable */
            iload 9 /* idx */
            iinc 9 /* idx */ 1
            aload 7 /* greens */
            iload 10 /* i */
            baload
            bastore
        23: .line 222
            aload 2 /* colorTable */
            iload 9 /* idx */
            iinc 9 /* idx */ 1
            aload 8 /* blues */
            iload 10 /* i */
            baload
            bastore
        24: .line 219
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 10 /* i */
            iload 5 /* ctSize */
            if_icmplt 21
        end local 10 // int i
        end local 9 // int idx
        end local 8 // byte[] blues
        end local 7 // byte[] greens
        end local 6 // byte[] reds
        end local 5 // int ctSize
        end local 4 // int mapSize
        end local 3 // java.awt.image.IndexColorModel icm
        26: .line 224
            goto 40
        end local 2 // byte[] colorTable
      StackMap locals: java.awt.image.ColorModel java.awt.image.SampleModel
      StackMap stack:
        27: aload 1 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getNumBands:()I
            iconst_1
            if_icmpne 39
        28: .line 226
            aload 1 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getSampleSize:()[I
            iconst_0
            iaload
            istore 3 /* numBits */
        start local 3 // int numBits
        29: .line 227
            iload 3 /* numBits */
            bipush 8
            if_icmple 31
        30: .line 228
            bipush 8
            istore 3 /* numBits */
        31: .line 230
      StackMap locals: java.awt.image.ColorModel java.awt.image.SampleModel top int
      StackMap stack:
            iconst_3
            iconst_1
            iload 3 /* numBits */
            ishl
            imul
            istore 4 /* colorTableLength */
        start local 4 // int colorTableLength
        32: .line 231
            iload 4 /* colorTableLength */
            newarray 8
            astore 2 /* colorTable */
        start local 2 // byte[] colorTable
        33: .line 232
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        34: goto 37
        35: .line 233
      StackMap locals: java.awt.image.ColorModel java.awt.image.SampleModel byte[] int int int
      StackMap stack:
            aload 2 /* colorTable */
            iload 5 /* i */
            iload 5 /* i */
            iconst_3
            idiv
            i2b
            bastore
        36: .line 232
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 5 /* i */
            iload 4 /* colorTableLength */
            if_icmplt 35
        end local 5 // int i
        end local 4 // int colorTableLength
        end local 3 // int numBits
        38: .line 235
            goto 40
        end local 2 // byte[] colorTable
        39: .line 238
      StackMap locals: java.awt.image.ColorModel java.awt.image.SampleModel
      StackMap stack:
            aconst_null
            astore 2 /* colorTable */
        start local 2 // byte[] colorTable
        40: .line 241
      StackMap locals: byte[]
      StackMap stack:
            aload 2 /* colorTable */
            areturn
        end local 2 // byte[] colorTable
        end local 1 // java.awt.image.SampleModel sampleModel
        end local 0 // java.awt.image.ColorModel colorModel
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   41     0        colorModel  Ljava/awt/image/ColorModel;
            0   41     1       sampleModel  Ljava/awt/image/SampleModel;
           18   27     2        colorTable  [B
           33   39     2        colorTable  [B
           40   41     2        colorTable  [B
            2   26     3               icm  Ljava/awt/image/IndexColorModel;
            3   26     4           mapSize  I
            4   26     5            ctSize  I
            5   26     6              reds  [B
            6   26     7            greens  [B
            7   26     8             blues  [B
           11   17     9                 i  I
           19   26     9               idx  I
           20   26    10                 i  I
           29   38     3           numBits  I
           32   38     4  colorTableLength  I
           34   38     5                 i  I
    MethodParameters:
             Name  Flags
      colorModel   
      sampleModel  

  private static int getGifPaletteSize(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int x
         0: .line 249
            iload 0 /* x */
            iconst_2
            if_icmpgt 2
         1: .line 250
            iconst_2
            ireturn
         2: .line 252
      StackMap locals:
      StackMap stack:
            iinc 0 /* x */ -1
         3: .line 253
            iload 0 /* x */
            iload 0 /* x */
            iconst_1
            ishr
            ior
            istore 0 /* x */
         4: .line 254
            iload 0 /* x */
            iload 0 /* x */
            iconst_2
            ishr
            ior
            istore 0 /* x */
         5: .line 255
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            ishr
            ior
            istore 0 /* x */
         6: .line 256
            iload 0 /* x */
            iload 0 /* x */
            bipush 8
            ishr
            ior
            istore 0 /* x */
         7: .line 257
            iload 0 /* x */
            iload 0 /* x */
            bipush 16
            ishr
            ior
            istore 0 /* x */
         8: .line 258
            iload 0 /* x */
            iconst_1
            iadd
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     x  I
    MethodParameters:
      Name  Flags
      x     

  public void <init>(com.sun.imageio.plugins.gif.GIFImageWriterSpi);
    descriptor: (Lcom/sun/imageio/plugins/gif/GIFImageWriterSpi;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // com.sun.imageio.plugins.gif.GIFImageWriterSpi originatingProvider
         0: .line 264
            aload 0 /* this */
            aload 1 /* originatingProvider */
            invokespecial javax.imageio.ImageWriter.<init>:(Ljavax/imageio/spi/ImageWriterSpi;)V
         1: .line 75
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
         2: .line 80
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.isWritingSequence:Z
         3: .line 85
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.wroteSequenceHeader:Z
         4: .line 90
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.theStreamMetadata:Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
         5: .line 95
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.imageIndex:I
         6: .line 268
            return
        end local 1 // com.sun.imageio.plugins.gif.GIFImageWriterSpi originatingProvider
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    7     0                 this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0    7     1  originatingProvider  Lcom/sun/imageio/plugins/gif/GIFImageWriterSpi;
    MethodParameters:
                     Name  Flags
      originatingProvider  

  public boolean canWriteSequence();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
         0: .line 271
            iconst_1
            ireturn
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;

  private void convertMetadata(java.lang.String, javax.imageio.metadata.IIOMetadata, javax.imageio.metadata.IIOMetadata);
    descriptor: (Ljava/lang/String;Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/metadata/IIOMetadata;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=4
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // java.lang.String metadataFormatName
        start local 2 // javax.imageio.metadata.IIOMetadata inData
        start local 3 // javax.imageio.metadata.IIOMetadata outData
         0: .line 282
            aconst_null
            astore 4 /* formatName */
        start local 4 // java.lang.String formatName
         1: .line 284
            aload 2 /* inData */
            invokevirtual javax.imageio.metadata.IIOMetadata.getNativeMetadataFormatName:()Ljava/lang/String;
            astore 5 /* nativeFormatName */
        start local 5 // java.lang.String nativeFormatName
         2: .line 285
            aload 5 /* nativeFormatName */
            ifnull 6
         3: .line 286
            aload 5 /* nativeFormatName */
            aload 1 /* metadataFormatName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         4: .line 287
            aload 1 /* metadataFormatName */
            astore 4 /* formatName */
         5: .line 288
            goto 15
         6: .line 289
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 2 /* inData */
            invokevirtual javax.imageio.metadata.IIOMetadata.getExtraMetadataFormatNames:()[Ljava/lang/String;
            astore 6 /* extraFormatNames */
        start local 6 // java.lang.String[] extraFormatNames
         7: .line 291
            aload 6 /* extraFormatNames */
            ifnull 15
         8: .line 292
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         9: goto 14
        10: .line 293
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 6 /* extraFormatNames */
            iload 7 /* i */
            aaload
            aload 1 /* metadataFormatName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        11: .line 294
            aload 1 /* metadataFormatName */
            astore 4 /* formatName */
        12: .line 295
            goto 15
        13: .line 292
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 7 /* i */
            aload 6 /* extraFormatNames */
            arraylength
            if_icmplt 10
        end local 7 // int i
        end local 6 // java.lang.String[] extraFormatNames
        15: .line 301
      StackMap locals:
      StackMap stack:
            aload 4 /* formatName */
            ifnonnull 18
        16: .line 302
            aload 2 /* inData */
            invokevirtual javax.imageio.metadata.IIOMetadata.isStandardMetadataFormatSupported:()Z
            ifeq 18
        17: .line 303
            ldc "javax_imageio_1.0"
            astore 4 /* formatName */
        18: .line 306
      StackMap locals:
      StackMap stack:
            aload 4 /* formatName */
            ifnull 23
        19: .line 308
            aload 2 /* inData */
            aload 4 /* formatName */
            invokevirtual javax.imageio.metadata.IIOMetadata.getAsTree:(Ljava/lang/String;)Lorg/w3c/dom/Node;
            astore 6 /* root */
        start local 6 // org.w3c.dom.Node root
        20: .line 309
            aload 3 /* outData */
            aload 4 /* formatName */
            aload 6 /* root */
            invokevirtual javax.imageio.metadata.IIOMetadata.mergeTree:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
        end local 6 // org.w3c.dom.Node root
        21: .line 310
            goto 23
      StackMap locals:
      StackMap stack: javax.imageio.metadata.IIOInvalidTreeException
        22: pop
        23: .line 314
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.String nativeFormatName
        end local 4 // java.lang.String formatName
        end local 3 // javax.imageio.metadata.IIOMetadata outData
        end local 2 // javax.imageio.metadata.IIOMetadata inData
        end local 1 // java.lang.String metadataFormatName
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   24     0                this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   24     1  metadataFormatName  Ljava/lang/String;
            0   24     2              inData  Ljavax/imageio/metadata/IIOMetadata;
            0   24     3             outData  Ljavax/imageio/metadata/IIOMetadata;
            1   24     4          formatName  Ljava/lang/String;
            2   24     5    nativeFormatName  Ljava/lang/String;
            7   15     6    extraFormatNames  [Ljava/lang/String;
            9   15     7                   i  I
           20   21     6                root  Lorg/w3c/dom/Node;
      Exception table:
        from    to  target  type
          19    21      22  Class javax.imageio.metadata.IIOInvalidTreeException
    MethodParameters:
                    Name  Flags
      metadataFormatName  
      inData              
      outData             

  public javax.imageio.metadata.IIOMetadata convertStreamMetadata(javax.imageio.metadata.IIOMetadata, javax.imageio.ImageWriteParam);
    descriptor: (Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.metadata.IIOMetadata inData
        start local 2 // javax.imageio.ImageWriteParam param
         0: .line 322
            aload 1 /* inData */
            ifnonnull 2
         1: .line 323
            new java.lang.IllegalArgumentException
            dup
            ldc "inData == null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 326
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* param */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.getDefaultStreamMetadata:(Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
            astore 3 /* sm */
        start local 3 // javax.imageio.metadata.IIOMetadata sm
         3: .line 328
            aload 0 /* this */
            ldc "javax_imageio_gif_stream_1.0"
            aload 1 /* inData */
            aload 3 /* sm */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.convertMetadata:(Ljava/lang/String;Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/metadata/IIOMetadata;)V
         4: .line 330
            aload 3 /* sm */
            areturn
        end local 3 // javax.imageio.metadata.IIOMetadata sm
        end local 2 // javax.imageio.ImageWriteParam param
        end local 1 // javax.imageio.metadata.IIOMetadata inData
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0    5     1  inData  Ljavax/imageio/metadata/IIOMetadata;
            0    5     2   param  Ljavax/imageio/ImageWriteParam;
            3    5     3      sm  Ljavax/imageio/metadata/IIOMetadata;
    MethodParameters:
        Name  Flags
      inData  
      param   

  public javax.imageio.metadata.IIOMetadata convertImageMetadata(javax.imageio.metadata.IIOMetadata, javax.imageio.ImageTypeSpecifier, javax.imageio.ImageWriteParam);
    descriptor: (Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/ImageTypeSpecifier;Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.metadata.IIOMetadata inData
        start local 2 // javax.imageio.ImageTypeSpecifier imageType
        start local 3 // javax.imageio.ImageWriteParam param
         0: .line 340
            aload 1 /* inData */
            ifnonnull 2
         1: .line 341
            new java.lang.IllegalArgumentException
            dup
            ldc "inData == null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 343
      StackMap locals:
      StackMap stack:
            aload 2 /* imageType */
            ifnonnull 4
         3: .line 344
            new java.lang.IllegalArgumentException
            dup
            ldc "imageType == null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 348
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* imageType */
         5: .line 349
            aload 3 /* param */
         6: .line 348
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.getDefaultImageMetadata:(Ljavax/imageio/ImageTypeSpecifier;Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
            checkcast com.sun.imageio.plugins.gif.GIFWritableImageMetadata
         7: .line 347
            astore 4 /* im */
        start local 4 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
         8: .line 353
            aload 4 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
            istore 5 /* isProgressive */
        start local 5 // boolean isProgressive
         9: .line 355
            aload 0 /* this */
            ldc "javax_imageio_gif_image_1.0"
            aload 1 /* inData */
            aload 4 /* im */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.convertMetadata:(Ljava/lang/String;Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/metadata/IIOMetadata;)V
        10: .line 359
            aload 3 /* param */
            ifnull 13
            aload 3 /* param */
            invokevirtual javax.imageio.ImageWriteParam.canWriteProgressive:()Z
            ifeq 13
        11: .line 360
            aload 3 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getProgressiveMode:()I
            iconst_3
            if_icmpeq 13
        12: .line 361
            aload 4 /* im */
            iload 5 /* isProgressive */
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
        13: .line 364
      StackMap locals: com.sun.imageio.plugins.gif.GIFWritableImageMetadata int
      StackMap stack:
            aload 4 /* im */
            areturn
        end local 5 // boolean isProgressive
        end local 4 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
        end local 3 // javax.imageio.ImageWriteParam param
        end local 2 // javax.imageio.ImageTypeSpecifier imageType
        end local 1 // javax.imageio.metadata.IIOMetadata inData
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0           this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   14     1         inData  Ljavax/imageio/metadata/IIOMetadata;
            0   14     2      imageType  Ljavax/imageio/ImageTypeSpecifier;
            0   14     3          param  Ljavax/imageio/ImageWriteParam;
            8   14     4             im  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
            9   14     5  isProgressive  Z
    MethodParameters:
           Name  Flags
      inData     
      imageType  
      param      

  public void endWriteSequence();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
         0: .line 368
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            ifnonnull 2
         1: .line 369
            new java.lang.IllegalStateException
            dup
            ldc "output == null!"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 371
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.isWritingSequence:Z
            ifne 4
         3: .line 372
            new java.lang.IllegalStateException
            dup
            ldc "prepareWriteSequence() was not invoked!"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeTrailer:()V
         5: .line 375
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.resetLocal:()V
         6: .line 376
            return
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
    Exceptions:
      throws java.io.IOException

  public javax.imageio.metadata.IIOMetadata getDefaultImageMetadata(javax.imageio.ImageTypeSpecifier, javax.imageio.ImageWriteParam);
    descriptor: (Ljavax/imageio/ImageTypeSpecifier;Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.ImageTypeSpecifier imageType
        start local 2 // javax.imageio.ImageWriteParam param
         0: .line 381
            new com.sun.imageio.plugins.gif.GIFWritableImageMetadata
            dup
            invokespecial com.sun.imageio.plugins.gif.GIFWritableImageMetadata.<init>:()V
         1: .line 380
            astore 3 /* imageMetadata */
        start local 3 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
         2: .line 385
            aload 1 /* imageType */
            invokevirtual javax.imageio.ImageTypeSpecifier.getSampleModel:()Ljava/awt/image/SampleModel;
            astore 4 /* sampleModel */
        start local 4 // java.awt.image.SampleModel sampleModel
         3: .line 387
            new java.awt.Rectangle
            dup
            aload 4 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getWidth:()I
         4: .line 388
            aload 4 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getHeight:()I
         5: .line 387
            invokespecial java.awt.Rectangle.<init>:(II)V
            astore 5 /* sourceBounds */
        start local 5 // java.awt.Rectangle sourceBounds
         6: .line 389
            new java.awt.Dimension
            dup
            invokespecial java.awt.Dimension.<init>:()V
            astore 6 /* destSize */
        start local 6 // java.awt.Dimension destSize
         7: .line 390
            aload 5 /* sourceBounds */
            aload 6 /* destSize */
            aload 2 /* param */
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.computeRegions:(Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljavax/imageio/ImageWriteParam;)V
         8: .line 392
            aload 3 /* imageMetadata */
            aload 6 /* destSize */
            getfield java.awt.Dimension.width:I
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageWidth:I
         9: .line 393
            aload 3 /* imageMetadata */
            aload 6 /* destSize */
            getfield java.awt.Dimension.height:I
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageHeight:I
        10: .line 397
            aload 2 /* param */
            ifnull 14
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.canWriteProgressive:()Z
            ifeq 14
        11: .line 398
            aload 2 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getProgressiveMode:()I
            ifne 14
        12: .line 399
            aload 3 /* imageMetadata */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
        13: .line 400
            goto 15
        14: .line 401
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter javax.imageio.ImageTypeSpecifier javax.imageio.ImageWriteParam com.sun.imageio.plugins.gif.GIFWritableImageMetadata java.awt.image.SampleModel java.awt.Rectangle java.awt.Dimension
      StackMap stack:
            aload 3 /* imageMetadata */
            iconst_1
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
        15: .line 406
      StackMap locals:
      StackMap stack:
            aload 1 /* imageType */
            invokevirtual javax.imageio.ImageTypeSpecifier.getColorModel:()Ljava/awt/image/ColorModel;
            astore 7 /* colorModel */
        start local 7 // java.awt.image.ColorModel colorModel
        16: .line 408
            aload 3 /* imageMetadata */
        17: .line 409
            aload 7 /* colorModel */
            aload 4 /* sampleModel */
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.createColorTable:(Ljava/awt/image/ColorModel;Ljava/awt/image/SampleModel;)[B
        18: .line 408
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
        19: .line 413
            aload 7 /* colorModel */
            instanceof java.awt.image.IndexColorModel
            ifeq 25
        20: .line 415
            aload 7 /* colorModel */
            checkcast java.awt.image.IndexColorModel
            invokevirtual java.awt.image.IndexColorModel.getTransparentPixel:()I
        21: .line 414
            istore 8 /* transparentIndex */
        start local 8 // int transparentIndex
        22: .line 416
            iload 8 /* transparentIndex */
            iconst_m1
            if_icmpeq 25
        23: .line 417
            aload 3 /* imageMetadata */
            iconst_1
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorFlag:Z
        24: .line 418
            aload 3 /* imageMetadata */
            iload 8 /* transparentIndex */
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorIndex:I
        end local 8 // int transparentIndex
        25: .line 422
      StackMap locals: java.awt.image.ColorModel
      StackMap stack:
            aload 3 /* imageMetadata */
            areturn
        end local 7 // java.awt.image.ColorModel colorModel
        end local 6 // java.awt.Dimension destSize
        end local 5 // java.awt.Rectangle sourceBounds
        end local 4 // java.awt.image.SampleModel sampleModel
        end local 3 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
        end local 2 // javax.imageio.ImageWriteParam param
        end local 1 // javax.imageio.ImageTypeSpecifier imageType
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   26     0              this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   26     1         imageType  Ljavax/imageio/ImageTypeSpecifier;
            0   26     2             param  Ljavax/imageio/ImageWriteParam;
            2   26     3     imageMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
            3   26     4       sampleModel  Ljava/awt/image/SampleModel;
            6   26     5      sourceBounds  Ljava/awt/Rectangle;
            7   26     6          destSize  Ljava/awt/Dimension;
           16   26     7        colorModel  Ljava/awt/image/ColorModel;
           22   25     8  transparentIndex  I
    MethodParameters:
           Name  Flags
      imageType  
      param      

  public javax.imageio.metadata.IIOMetadata getDefaultStreamMetadata(javax.imageio.ImageWriteParam);
    descriptor: (Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.ImageWriteParam param
         0: .line 427
            new com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
            dup
            invokespecial com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.<init>:()V
         1: .line 426
            astore 2 /* streamMetadata */
        start local 2 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
         2: .line 428
            aload 2 /* streamMetadata */
            ldc "89a"
            putfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.version:Ljava/lang/String;
         3: .line 429
            aload 2 /* streamMetadata */
            areturn
        end local 2 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
        end local 1 // javax.imageio.ImageWriteParam param
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0    4     1           param  Ljavax/imageio/ImageWriteParam;
            2    4     2  streamMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
    MethodParameters:
       Name  Flags
      param  

  public javax.imageio.ImageWriteParam getDefaultWriteParam();
    descriptor: ()Ljavax/imageio/ImageWriteParam;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
         0: .line 433
            new com.sun.imageio.plugins.gif.GIFImageWriteParam
            dup
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.getLocale:()Ljava/util/Locale;
            invokespecial com.sun.imageio.plugins.gif.GIFImageWriteParam.<init>:(Ljava/util/Locale;)V
            areturn
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;

  public void prepareWriteSequence(javax.imageio.metadata.IIOMetadata);
    descriptor: (Ljavax/imageio/metadata/IIOMetadata;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.metadata.IIOMetadata streamMetadata
         0: .line 439
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            ifnonnull 2
         1: .line 440
            new java.lang.IllegalStateException
            dup
            ldc "Output is not set."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 443
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.resetLocal:()V
         3: .line 446
            aload 1 /* streamMetadata */
            ifnonnull 8
         4: .line 447
            aload 0 /* this */
         5: .line 448
            aload 0 /* this */
            aconst_null
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.getDefaultStreamMetadata:(Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
            checkcast com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
         6: .line 447
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.theStreamMetadata:Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
         7: .line 449
            goto 12
         8: .line 450
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
            dup
            invokespecial com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.<init>:()V
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.theStreamMetadata:Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
         9: .line 451
            aload 0 /* this */
            ldc "javax_imageio_gif_stream_1.0"
            aload 1 /* streamMetadata */
        10: .line 452
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.theStreamMetadata:Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
        11: .line 451
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.convertMetadata:(Ljava/lang/String;Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/metadata/IIOMetadata;)V
        12: .line 455
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.isWritingSequence:Z
        13: .line 456
            return
        end local 1 // javax.imageio.metadata.IIOMetadata streamMetadata
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0            this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   14     1  streamMetadata  Ljavax/imageio/metadata/IIOMetadata;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                Name  Flags
      streamMetadata  

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
         0: .line 459
            aload 0 /* this */
            invokespecial javax.imageio.ImageWriter.reset:()V
         1: .line 460
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.resetLocal:()V
         2: .line 461
            return
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;

  private void resetLocal();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
         0: .line 467
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.isWritingSequence:Z
         1: .line 468
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.wroteSequenceHeader:Z
         2: .line 469
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.theStreamMetadata:Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
         3: .line 470
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.imageIndex:I
         4: .line 471
            return
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;

  public void setOutput(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // java.lang.Object output
         0: .line 474
            aload 0 /* this */
            aload 1 /* output */
            invokespecial javax.imageio.ImageWriter.setOutput:(Ljava/lang/Object;)V
         1: .line 475
            aload 1 /* output */
            ifnull 8
         2: .line 476
            aload 1 /* output */
            instanceof javax.imageio.stream.ImageOutputStream
            ifne 5
         3: .line 478
            new java.lang.IllegalArgumentException
            dup
            ldc "output is not an ImageOutputStream"
         4: .line 477
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 480
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* output */
            checkcast javax.imageio.stream.ImageOutputStream
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
         6: .line 481
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            getstatic java.nio.ByteOrder.LITTLE_ENDIAN:Ljava/nio/ByteOrder;
            invokeinterface javax.imageio.stream.ImageOutputStream.setByteOrder:(Ljava/nio/ByteOrder;)V
         7: .line 482
            goto 9
         8: .line 483
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
         9: .line 485
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object output
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   10     1  output  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      output  

  public void write(javax.imageio.metadata.IIOMetadata, javax.imageio.IIOImage, javax.imageio.ImageWriteParam);
    descriptor: (Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/IIOImage;Ljavax/imageio/ImageWriteParam;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.metadata.IIOMetadata sm
        start local 2 // javax.imageio.IIOImage iioimage
        start local 3 // javax.imageio.ImageWriteParam p
         0: .line 490
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            ifnonnull 2
         1: .line 491
            new java.lang.IllegalStateException
            dup
            ldc "output == null!"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 493
      StackMap locals:
      StackMap stack:
            aload 2 /* iioimage */
            ifnonnull 4
         3: .line 494
            new java.lang.IllegalArgumentException
            dup
            ldc "iioimage == null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 496
      StackMap locals:
      StackMap stack:
            aload 2 /* iioimage */
            invokevirtual javax.imageio.IIOImage.hasRaster:()Z
            ifeq 6
         5: .line 497
            new java.lang.UnsupportedOperationException
            dup
            ldc "canWriteRasters() == false!"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 500
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.resetLocal:()V
         7: .line 503
            aload 1 /* sm */
            ifnonnull 11
         8: .line 505
            aload 0 /* this */
            aload 3 /* p */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.getDefaultStreamMetadata:(Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
            checkcast com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
         9: .line 504
            astore 4 /* streamMetadata */
        start local 4 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
        10: .line 506
            goto 13
        end local 4 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
        11: .line 508
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* sm */
            aload 3 /* p */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.convertStreamMetadata:(Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
            checkcast com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
        12: .line 507
            astore 4 /* streamMetadata */
        start local 4 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
        13: .line 511
      StackMap locals: com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
      StackMap stack:
            aload 0 /* this */
            iconst_1
            iconst_1
            aload 4 /* streamMetadata */
            aload 2 /* iioimage */
            aload 3 /* p */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.write:(ZZLjavax/imageio/metadata/IIOMetadata;Ljavax/imageio/IIOImage;Ljavax/imageio/ImageWriteParam;)V
        14: .line 512
            return
        end local 4 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
        end local 3 // javax.imageio.ImageWriteParam p
        end local 2 // javax.imageio.IIOImage iioimage
        end local 1 // javax.imageio.metadata.IIOMetadata sm
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   15     0            this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   15     1              sm  Ljavax/imageio/metadata/IIOMetadata;
            0   15     2        iioimage  Ljavax/imageio/IIOImage;
            0   15     3               p  Ljavax/imageio/ImageWriteParam;
           10   11     4  streamMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
           13   15     4  streamMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      sm        
      iioimage  
      p         

  public void writeToSequence(javax.imageio.IIOImage, javax.imageio.ImageWriteParam);
    descriptor: (Ljavax/imageio/IIOImage;Ljavax/imageio/ImageWriteParam;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.IIOImage image
        start local 2 // javax.imageio.ImageWriteParam param
         0: .line 516
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            ifnonnull 2
         1: .line 517
            new java.lang.IllegalStateException
            dup
            ldc "output == null!"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 519
      StackMap locals:
      StackMap stack:
            aload 1 /* image */
            ifnonnull 4
         3: .line 520
            new java.lang.IllegalArgumentException
            dup
            ldc "image == null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 522
      StackMap locals:
      StackMap stack:
            aload 1 /* image */
            invokevirtual javax.imageio.IIOImage.hasRaster:()Z
            ifeq 6
         5: .line 523
            new java.lang.UnsupportedOperationException
            dup
            ldc "canWriteRasters() == false!"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 525
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.isWritingSequence:Z
            ifne 8
         7: .line 526
            new java.lang.IllegalStateException
            dup
            ldc "prepareWriteSequence() was not invoked!"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.wroteSequenceHeader:Z
            ifeq 9
            iconst_0
            goto 10
      StackMap locals:
      StackMap stack: com.sun.imageio.plugins.gif.GIFImageWriter
         9: iconst_1
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter javax.imageio.IIOImage javax.imageio.ImageWriteParam
      StackMap stack: com.sun.imageio.plugins.gif.GIFImageWriter int
        10: iconst_0
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.theStreamMetadata:Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
        11: .line 530
            aload 1 /* image */
            aload 2 /* param */
        12: .line 529
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.write:(ZZLjavax/imageio/metadata/IIOMetadata;Ljavax/imageio/IIOImage;Ljavax/imageio/ImageWriteParam;)V
        13: .line 532
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.wroteSequenceHeader:Z
            ifne 15
        14: .line 533
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.wroteSequenceHeader:Z
        15: .line 536
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.imageIndex:I
            iconst_1
            iadd
            putfield com.sun.imageio.plugins.gif.GIFImageWriter.imageIndex:I
        16: .line 537
            return
        end local 2 // javax.imageio.ImageWriteParam param
        end local 1 // javax.imageio.IIOImage image
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   17     1  image  Ljavax/imageio/IIOImage;
            0   17     2  param  Ljavax/imageio/ImageWriteParam;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      image  
      param  

  private boolean needToCreateIndex(java.awt.image.RenderedImage);
    descriptor: (Ljava/awt/image/RenderedImage;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // java.awt.image.RenderedImage image
         0: .line 542
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getSampleModel:()Ljava/awt/image/SampleModel;
            astore 2 /* sampleModel */
        start local 2 // java.awt.image.SampleModel sampleModel
         1: .line 543
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getColorModel:()Ljava/awt/image/ColorModel;
            astore 3 /* colorModel */
        start local 3 // java.awt.image.ColorModel colorModel
         2: .line 545
            aload 2 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getNumBands:()I
            iconst_1
            if_icmpne 6
         3: .line 546
            aload 2 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getSampleSize:()[I
            iconst_0
            iaload
            bipush 8
            if_icmpgt 6
         4: .line 547
            aload 3 /* colorModel */
            invokevirtual java.awt.image.ColorModel.getComponentSize:()[I
            iconst_0
            iaload
            bipush 8
         5: .line 545
            if_icmpgt 6
            iconst_0
            ireturn
      StackMap locals: java.awt.image.SampleModel java.awt.image.ColorModel
      StackMap stack:
         6: iconst_1
            ireturn
        end local 3 // java.awt.image.ColorModel colorModel
        end local 2 // java.awt.image.SampleModel sampleModel
        end local 1 // java.awt.image.RenderedImage image
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0    7     1        image  Ljava/awt/image/RenderedImage;
            1    7     2  sampleModel  Ljava/awt/image/SampleModel;
            2    7     3   colorModel  Ljava/awt/image/ColorModel;
    MethodParameters:
       Name  Flags
      image  

  private void write(boolean, boolean, javax.imageio.metadata.IIOMetadata, javax.imageio.IIOImage, javax.imageio.ImageWriteParam);
    descriptor: (ZZLjavax/imageio/metadata/IIOMetadata;Ljavax/imageio/IIOImage;Ljavax/imageio/ImageWriteParam;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=15, args_size=6
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // boolean writeHeader
        start local 2 // boolean writeTrailer
        start local 3 // javax.imageio.metadata.IIOMetadata sm
        start local 4 // javax.imageio.IIOImage iioimage
        start local 5 // javax.imageio.ImageWriteParam p
         0: .line 578
            aload 4 /* iioimage */
            invokevirtual javax.imageio.IIOImage.getRenderedImage:()Ljava/awt/image/RenderedImage;
            astore 6 /* image */
        start local 6 // java.awt.image.RenderedImage image
         1: .line 581
            aload 0 /* this */
            aload 6 /* image */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.needToCreateIndex:(Ljava/awt/image/RenderedImage;)Z
            ifeq 4
         2: .line 582
            aload 6 /* image */
            invokestatic com.sun.imageio.plugins.common.PaletteBuilder.createIndexedImage:(Ljava/awt/image/RenderedImage;)Ljava/awt/image/RenderedImage;
            astore 6 /* image */
         3: .line 583
            aload 4 /* iioimage */
            aload 6 /* image */
            invokevirtual javax.imageio.IIOImage.setRenderedImage:(Ljava/awt/image/RenderedImage;)V
         4: .line 586
      StackMap locals: java.awt.image.RenderedImage
      StackMap stack:
            aload 6 /* image */
            invokeinterface java.awt.image.RenderedImage.getColorModel:()Ljava/awt/image/ColorModel;
            astore 7 /* colorModel */
        start local 7 // java.awt.image.ColorModel colorModel
         5: .line 587
            aload 6 /* image */
            invokeinterface java.awt.image.RenderedImage.getSampleModel:()Ljava/awt/image/SampleModel;
            astore 8 /* sampleModel */
        start local 8 // java.awt.image.SampleModel sampleModel
         6: .line 590
            new java.awt.Rectangle
            dup
            aload 6 /* image */
            invokeinterface java.awt.image.RenderedImage.getMinX:()I
         7: .line 591
            aload 6 /* image */
            invokeinterface java.awt.image.RenderedImage.getMinY:()I
         8: .line 592
            aload 6 /* image */
            invokeinterface java.awt.image.RenderedImage.getWidth:()I
         9: .line 593
            aload 6 /* image */
            invokeinterface java.awt.image.RenderedImage.getHeight:()I
        10: .line 590
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 9 /* sourceBounds */
        start local 9 // java.awt.Rectangle sourceBounds
        11: .line 594
            new java.awt.Dimension
            dup
            invokespecial java.awt.Dimension.<init>:()V
            astore 10 /* destSize */
        start local 10 // java.awt.Dimension destSize
        12: .line 595
            aload 9 /* sourceBounds */
            aload 10 /* destSize */
            aload 5 /* p */
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.computeRegions:(Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljavax/imageio/ImageWriteParam;)V
        13: .line 598
            aconst_null
            astore 11 /* imageMetadata */
        start local 11 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
        14: .line 599
            aload 4 /* iioimage */
            invokevirtual javax.imageio.IIOImage.getMetadata:()Ljavax/imageio/metadata/IIOMetadata;
            ifnull 32
        15: .line 600
            new com.sun.imageio.plugins.gif.GIFWritableImageMetadata
            dup
            invokespecial com.sun.imageio.plugins.gif.GIFWritableImageMetadata.<init>:()V
            astore 11 /* imageMetadata */
        16: .line 601
            aload 0 /* this */
            ldc "javax_imageio_gif_image_1.0"
            aload 4 /* iioimage */
            invokevirtual javax.imageio.IIOImage.getMetadata:()Ljavax/imageio/metadata/IIOMetadata;
        17: .line 602
            aload 11 /* imageMetadata */
        18: .line 601
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.convertMetadata:(Ljava/lang/String;Ljavax/imageio/metadata/IIOMetadata;Ljavax/imageio/metadata/IIOMetadata;)V
        19: .line 610
            aload 11 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            ifnonnull 32
        20: .line 611
            aload 11 /* imageMetadata */
        21: .line 612
            aload 7 /* colorModel */
            aload 8 /* sampleModel */
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.createColorTable:(Ljava/awt/image/ColorModel;Ljava/awt/image/SampleModel;)[B
        22: .line 611
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
        23: .line 616
            aload 7 /* colorModel */
            instanceof java.awt.image.IndexColorModel
            ifeq 32
        24: .line 618
            aload 7 /* colorModel */
            checkcast java.awt.image.IndexColorModel
        25: .line 617
            astore 12 /* icm */
        start local 12 // java.awt.image.IndexColorModel icm
        26: .line 619
            aload 12 /* icm */
            invokevirtual java.awt.image.IndexColorModel.getTransparentPixel:()I
            istore 13 /* index */
        start local 13 // int index
        27: .line 620
            aload 11 /* imageMetadata */
            iload 13 /* index */
            iconst_m1
            if_icmpeq 28
            iconst_1
            goto 29
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter int int javax.imageio.metadata.IIOMetadata javax.imageio.IIOImage javax.imageio.ImageWriteParam java.awt.image.RenderedImage java.awt.image.ColorModel java.awt.image.SampleModel java.awt.Rectangle java.awt.Dimension com.sun.imageio.plugins.gif.GIFWritableImageMetadata java.awt.image.IndexColorModel int
      StackMap stack: com.sun.imageio.plugins.gif.GIFWritableImageMetadata
        28: iconst_0
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter int int javax.imageio.metadata.IIOMetadata javax.imageio.IIOImage javax.imageio.ImageWriteParam java.awt.image.RenderedImage java.awt.image.ColorModel java.awt.image.SampleModel java.awt.Rectangle java.awt.Dimension com.sun.imageio.plugins.gif.GIFWritableImageMetadata java.awt.image.IndexColorModel int
      StackMap stack: com.sun.imageio.plugins.gif.GIFWritableImageMetadata int
        29: putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorFlag:Z
        30: .line 621
            aload 11 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorFlag:Z
            ifeq 32
        31: .line 622
            aload 11 /* imageMetadata */
            iload 13 /* index */
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorIndex:I
        end local 13 // int index
        end local 12 // java.awt.image.IndexColorModel icm
        32: .line 635
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 12 /* globalColorTable */
        start local 12 // byte[] globalColorTable
        33: .line 639
            iload 1 /* writeHeader */
            ifeq 79
        34: .line 640
            aload 3 /* sm */
            ifnonnull 36
        35: .line 641
            new java.lang.IllegalArgumentException
            dup
            ldc "Cannot write null header!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        36: .line 645
      StackMap locals: byte[]
      StackMap stack:
            aload 3 /* sm */
            checkcast com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
        37: .line 644
            astore 13 /* streamMetadata */
        start local 13 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
        38: .line 648
            aload 13 /* streamMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.version:Ljava/lang/String;
            ifnonnull 40
        39: .line 649
            aload 13 /* streamMetadata */
            ldc "89a"
            putfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.version:Ljava/lang/String;
        40: .line 653
      StackMap locals: com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
      StackMap stack:
            aload 13 /* streamMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.logicalScreenWidth:I
        41: .line 654
            iconst_m1
        42: .line 653
            if_icmpne 44
        43: .line 656
            aload 13 /* streamMetadata */
            aload 10 /* destSize */
            getfield java.awt.Dimension.width:I
            putfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.logicalScreenWidth:I
        44: .line 659
      StackMap locals:
      StackMap stack:
            aload 13 /* streamMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.logicalScreenHeight:I
        45: .line 660
            iconst_m1
        46: .line 659
            if_icmpne 48
        47: .line 662
            aload 13 /* streamMetadata */
            aload 10 /* destSize */
            getfield java.awt.Dimension.height:I
            putfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.logicalScreenHeight:I
        48: .line 665
      StackMap locals:
      StackMap stack:
            aload 13 /* streamMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.colorResolution:I
        49: .line 666
            iconst_m1
        50: .line 665
            if_icmpne 55
        51: .line 668
            aload 13 /* streamMetadata */
            aload 7 /* colorModel */
            ifnull 53
        52: .line 669
            aload 7 /* colorModel */
            invokevirtual java.awt.image.ColorModel.getComponentSize:()[I
            iconst_0
            iaload
            goto 54
        53: .line 670
      StackMap locals:
      StackMap stack: com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
            aload 8 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getSampleSize:()[I
            iconst_0
            iaload
        54: .line 668
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter int int javax.imageio.metadata.IIOMetadata javax.imageio.IIOImage javax.imageio.ImageWriteParam java.awt.image.RenderedImage java.awt.image.ColorModel java.awt.image.SampleModel java.awt.Rectangle java.awt.Dimension com.sun.imageio.plugins.gif.GIFWritableImageMetadata byte[] com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
      StackMap stack: com.sun.imageio.plugins.gif.GIFWritableStreamMetadata int
            putfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.colorResolution:I
        55: .line 675
      StackMap locals:
      StackMap stack:
            aload 13 /* streamMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.globalColorTable:[B
            ifnonnull 67
        56: .line 676
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.isWritingSequence:Z
            ifeq 62
            aload 11 /* imageMetadata */
            ifnull 62
        57: .line 677
            aload 11 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            ifnull 62
        58: .line 680
            aload 13 /* streamMetadata */
        59: .line 681
            aload 11 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
        60: .line 680
            putfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.globalColorTable:[B
        61: .line 682
            goto 67
      StackMap locals:
      StackMap stack:
        62: aload 11 /* imageMetadata */
            ifnull 64
        63: .line 683
            aload 11 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            ifnonnull 67
        64: .line 685
      StackMap locals:
      StackMap stack:
            aload 13 /* streamMetadata */
        65: .line 686
            aload 7 /* colorModel */
            aload 8 /* sampleModel */
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.createColorTable:(Ljava/awt/image/ColorModel;Ljava/awt/image/SampleModel;)[B
        66: .line 685
            putfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.globalColorTable:[B
        67: .line 699
      StackMap locals:
      StackMap stack:
            aload 13 /* streamMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.globalColorTable:[B
            astore 12 /* globalColorTable */
        68: .line 703
            aload 12 /* globalColorTable */
            ifnull 71
        69: .line 704
            aload 12 /* globalColorTable */
            arraylength
            iconst_3
            idiv
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.getNumBits:(I)I
            istore 14 /* bitsPerPixel */
        start local 14 // int bitsPerPixel
        70: .line 705
            goto 77
        end local 14 // int bitsPerPixel
      StackMap locals:
      StackMap stack:
        71: aload 11 /* imageMetadata */
            ifnull 76
        72: .line 706
            aload 11 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            ifnull 76
        73: .line 708
            aload 11 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            arraylength
            iconst_3
            idiv
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.getNumBits:(I)I
        74: .line 707
            istore 14 /* bitsPerPixel */
        start local 14 // int bitsPerPixel
        75: .line 709
            goto 77
        end local 14 // int bitsPerPixel
        76: .line 710
      StackMap locals:
      StackMap stack:
            aload 8 /* sampleModel */
            iconst_0
            invokevirtual java.awt.image.SampleModel.getSampleSize:(I)I
            istore 14 /* bitsPerPixel */
        start local 14 // int bitsPerPixel
        77: .line 712
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 13 /* streamMetadata */
            iload 14 /* bitsPerPixel */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeHeader:(Ljavax/imageio/metadata/IIOMetadata;I)V
        end local 14 // int bitsPerPixel
        end local 13 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata streamMetadata
        78: .line 713
            goto 83
      StackMap locals:
      StackMap stack:
        79: aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.isWritingSequence:Z
            ifeq 82
        80: .line 714
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.theStreamMetadata:Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.globalColorTable:[B
            astore 12 /* globalColorTable */
        81: .line 715
            goto 83
        82: .line 716
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Must write header for single image!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        83: .line 720
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* iioimage */
            invokevirtual javax.imageio.IIOImage.getRenderedImage:()Ljava/awt/image/RenderedImage;
            aload 11 /* imageMetadata */
            aload 5 /* p */
        84: .line 721
            aload 12 /* globalColorTable */
            aload 9 /* sourceBounds */
            aload 10 /* destSize */
        85: .line 720
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeImage:(Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;Ljavax/imageio/ImageWriteParam;[BLjava/awt/Rectangle;Ljava/awt/Dimension;)V
        86: .line 724
            iload 2 /* writeTrailer */
            ifeq 88
        87: .line 725
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeTrailer:()V
        88: .line 727
      StackMap locals:
      StackMap stack:
            return
        end local 12 // byte[] globalColorTable
        end local 11 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
        end local 10 // java.awt.Dimension destSize
        end local 9 // java.awt.Rectangle sourceBounds
        end local 8 // java.awt.image.SampleModel sampleModel
        end local 7 // java.awt.image.ColorModel colorModel
        end local 6 // java.awt.image.RenderedImage image
        end local 5 // javax.imageio.ImageWriteParam p
        end local 4 // javax.imageio.IIOImage iioimage
        end local 3 // javax.imageio.metadata.IIOMetadata sm
        end local 2 // boolean writeTrailer
        end local 1 // boolean writeHeader
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   89     0              this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   89     1       writeHeader  Z
            0   89     2      writeTrailer  Z
            0   89     3                sm  Ljavax/imageio/metadata/IIOMetadata;
            0   89     4          iioimage  Ljavax/imageio/IIOImage;
            0   89     5                 p  Ljavax/imageio/ImageWriteParam;
            1   89     6             image  Ljava/awt/image/RenderedImage;
            5   89     7        colorModel  Ljava/awt/image/ColorModel;
            6   89     8       sampleModel  Ljava/awt/image/SampleModel;
           11   89     9      sourceBounds  Ljava/awt/Rectangle;
           12   89    10          destSize  Ljava/awt/Dimension;
           14   89    11     imageMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
           26   32    12               icm  Ljava/awt/image/IndexColorModel;
           27   32    13             index  I
           33   89    12  globalColorTable  [B
           38   78    13    streamMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
           70   71    14      bitsPerPixel  I
           75   76    14      bitsPerPixel  I
           77   78    14      bitsPerPixel  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      writeHeader   
      writeTrailer  
      sm            
      iioimage      
      p             

  private void writeImage(java.awt.image.RenderedImage, com.sun.imageio.plugins.gif.GIFWritableImageMetadata, javax.imageio.ImageWriteParam, byte[], java.awt.Rectangle, java.awt.Dimension);
    descriptor: (Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;Ljavax/imageio/ImageWriteParam;[BLjava/awt/Rectangle;Ljava/awt/Dimension;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=11, args_size=7
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // java.awt.image.RenderedImage image
        start local 2 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
        start local 3 // javax.imageio.ImageWriteParam param
        start local 4 // byte[] globalColorTable
        start local 5 // java.awt.Rectangle sourceBounds
        start local 6 // java.awt.Dimension destSize
         0: .line 744
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getColorModel:()Ljava/awt/image/ColorModel;
            pop
         1: .line 745
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getSampleModel:()Ljava/awt/image/SampleModel;
            astore 7 /* sampleModel */
        start local 7 // java.awt.image.SampleModel sampleModel
         2: .line 748
            aload 2 /* imageMetadata */
            ifnonnull 8
         3: .line 750
            aload 0 /* this */
         4: .line 751
            new javax.imageio.ImageTypeSpecifier
            dup
            aload 1 /* image */
            invokespecial javax.imageio.ImageTypeSpecifier.<init>:(Ljava/awt/image/RenderedImage;)V
            aload 3 /* param */
         5: .line 750
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.getDefaultImageMetadata:(Ljavax/imageio/ImageTypeSpecifier;Ljavax/imageio/ImageWriteParam;)Ljavax/imageio/metadata/IIOMetadata;
            checkcast com.sun.imageio.plugins.gif.GIFWritableImageMetadata
            astore 2 /* imageMetadata */
         6: .line 755
            aload 2 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorFlag:Z
            istore 8 /* writeGraphicsControlExtension */
        start local 8 // boolean writeGraphicsControlExtension
         7: .line 756
            goto 25
        end local 8 // boolean writeGraphicsControlExtension
         8: .line 758
      StackMap locals: java.awt.image.SampleModel
      StackMap stack:
            aconst_null
            astore 9 /* list */
        start local 9 // org.w3c.dom.NodeList list
         9: .line 761
            aload 2 /* imageMetadata */
            ldc "javax_imageio_gif_image_1.0"
            invokevirtual com.sun.imageio.plugins.gif.GIFWritableImageMetadata.getAsTree:(Ljava/lang/String;)Lorg/w3c/dom/Node;
        10: .line 760
            checkcast javax.imageio.metadata.IIOMetadataNode
            astore 10 /* root */
        start local 10 // javax.imageio.metadata.IIOMetadataNode root
        11: .line 762
            aload 10 /* root */
            ldc "GraphicControlExtension"
            invokevirtual javax.imageio.metadata.IIOMetadataNode.getElementsByTagName:(Ljava/lang/String;)Lorg/w3c/dom/NodeList;
            astore 9 /* list */
        end local 10 // javax.imageio.metadata.IIOMetadataNode root
        12: .line 763
            goto 14
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter java.awt.image.RenderedImage com.sun.imageio.plugins.gif.GIFWritableImageMetadata javax.imageio.ImageWriteParam byte[] java.awt.Rectangle java.awt.Dimension java.awt.image.SampleModel top org.w3c.dom.NodeList
      StackMap stack: java.lang.IllegalArgumentException
        13: pop
        14: .line 769
      StackMap locals:
      StackMap stack:
            aload 9 /* list */
            ifnull 16
            aload 9 /* list */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
        15: .line 768
            ifle 16
            iconst_1
            goto 17
      StackMap locals:
      StackMap stack:
        16: iconst_0
      StackMap locals:
      StackMap stack: int
        17: istore 8 /* writeGraphicsControlExtension */
        start local 8 // boolean writeGraphicsControlExtension
        18: .line 773
            aload 3 /* param */
            ifnull 25
            aload 3 /* param */
            invokevirtual javax.imageio.ImageWriteParam.canWriteProgressive:()Z
            ifeq 25
        19: .line 774
            aload 3 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getProgressiveMode:()I
            ifne 22
        20: .line 776
            aload 2 /* imageMetadata */
            iconst_0
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
        21: .line 777
            goto 25
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter java.awt.image.RenderedImage com.sun.imageio.plugins.gif.GIFWritableImageMetadata javax.imageio.ImageWriteParam byte[] java.awt.Rectangle java.awt.Dimension java.awt.image.SampleModel int org.w3c.dom.NodeList
      StackMap stack:
        22: aload 3 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getProgressiveMode:()I
        23: .line 778
            iconst_1
            if_icmpne 25
        24: .line 779
            aload 2 /* imageMetadata */
            iconst_1
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
        end local 9 // org.w3c.dom.NodeList list
        25: .line 785
      StackMap locals:
      StackMap stack:
            aload 4 /* globalColorTable */
            aload 2 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            invokestatic java.util.Arrays.equals:([B[B)Z
            ifeq 27
        26: .line 786
            aload 2 /* imageMetadata */
            aconst_null
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
        27: .line 790
      StackMap locals:
      StackMap stack:
            aload 2 /* imageMetadata */
            aload 6 /* destSize */
            getfield java.awt.Dimension.width:I
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageWidth:I
        28: .line 791
            aload 2 /* imageMetadata */
            aload 6 /* destSize */
            getfield java.awt.Dimension.height:I
            putfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageHeight:I
        29: .line 794
            iload 8 /* writeGraphicsControlExtension */
            ifeq 31
        30: .line 795
            aload 0 /* this */
            aload 2 /* imageMetadata */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeGraphicControlExtension:(Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
        31: .line 799
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* imageMetadata */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writePlainTextExtension:(Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
        32: .line 800
            aload 0 /* this */
            aload 2 /* imageMetadata */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeApplicationExtension:(Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
        33: .line 801
            aload 0 /* this */
            aload 2 /* imageMetadata */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeCommentExtension:(Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
        34: .line 805
            aload 2 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            ifnonnull 38
        35: .line 806
            aload 4 /* globalColorTable */
            ifnonnull 37
        36: .line 807
            aload 7 /* sampleModel */
            iconst_0
            invokevirtual java.awt.image.SampleModel.getSampleSize:(I)I
            goto 39
        37: .line 808
      StackMap locals:
      StackMap stack:
            aload 4 /* globalColorTable */
            arraylength
            iconst_3
            idiv
            goto 39
        38: .line 809
      StackMap locals:
      StackMap stack:
            aload 2 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
            arraylength
            iconst_3
            idiv
        39: .line 805
      StackMap locals:
      StackMap stack: int
            invokestatic com.sun.imageio.plugins.gif.GIFImageWriter.getNumBits:(I)I
        40: .line 804
            istore 9 /* bitsPerPixel */
        start local 9 // int bitsPerPixel
        41: .line 810
            aload 0 /* this */
            aload 2 /* imageMetadata */
            iload 9 /* bitsPerPixel */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeImageDescriptor:(Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;I)V
        42: .line 813
            aload 0 /* this */
            aload 1 /* image */
            aload 5 /* sourceBounds */
            aload 6 /* destSize */
        43: .line 814
            aload 3 /* param */
            aload 2 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
        44: .line 813
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRasterData:(Ljava/awt/image/RenderedImage;Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljavax/imageio/ImageWriteParam;Z)V
        45: .line 815
            return
        end local 9 // int bitsPerPixel
        end local 8 // boolean writeGraphicsControlExtension
        end local 7 // java.awt.image.SampleModel sampleModel
        end local 6 // java.awt.Dimension destSize
        end local 5 // java.awt.Rectangle sourceBounds
        end local 4 // byte[] globalColorTable
        end local 3 // javax.imageio.ImageWriteParam param
        end local 2 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
        end local 1 // java.awt.image.RenderedImage image
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0   46     0                           this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   46     1                          image  Ljava/awt/image/RenderedImage;
            0   46     2                  imageMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
            0   46     3                          param  Ljavax/imageio/ImageWriteParam;
            0   46     4               globalColorTable  [B
            0   46     5                   sourceBounds  Ljava/awt/Rectangle;
            0   46     6                       destSize  Ljava/awt/Dimension;
            2   46     7                    sampleModel  Ljava/awt/image/SampleModel;
            7    8     8  writeGraphicsControlExtension  Z
           18   46     8  writeGraphicsControlExtension  Z
            9   25     9                           list  Lorg/w3c/dom/NodeList;
           11   12    10                           root  Ljavax/imageio/metadata/IIOMetadataNode;
           41   46     9                   bitsPerPixel  I
      Exception table:
        from    to  target  type
           9    12      13  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                  Name  Flags
      image             
      imageMetadata     
      param             
      globalColorTable  
      sourceBounds      
      destSize          

  private void writeRows(java.awt.image.RenderedImage, com.sun.imageio.plugins.common.LZWCompressor, int, int, int, int, int, int, int, int, int, int, int);
    descriptor: (Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/common/LZWCompressor;IIIIIIIIIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=20, args_size=14
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // java.awt.image.RenderedImage image
        start local 2 // com.sun.imageio.plugins.common.LZWCompressor compressor
        start local 3 // int sx
        start local 4 // int sdx
        start local 5 // int sy
        start local 6 // int sdy
        start local 7 // int sw
        start local 8 // int dy
        start local 9 // int ddy
        start local 10 // int dw
        start local 11 // int dh
        start local 12 // int numRowsWritten
        start local 13 // int progressReportRowPeriod
         0: .line 824
            iload 7 /* sw */
            newarray 10
            astore 14 /* sbuf */
        start local 14 // int[] sbuf
         1: .line 825
            iload 10 /* dw */
            newarray 8
            astore 15 /* dbuf */
        start local 15 // byte[] dbuf
         2: .line 828
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getNumXTiles:()I
            iconst_1
            if_icmpne 4
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getNumYTiles:()I
            iconst_1
            if_icmpne 4
         3: .line 829
            aload 1 /* image */
            iconst_0
            iconst_0
            invokeinterface java.awt.image.RenderedImage.getTile:(II)Ljava/awt/image/Raster;
            goto 5
      StackMap locals: int[] byte[]
      StackMap stack:
         4: aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getData:()Ljava/awt/image/Raster;
         5: .line 827
      StackMap locals:
      StackMap stack: java.awt.image.Raster
            astore 16 /* raster */
        start local 16 // java.awt.image.Raster raster
         6: .line 830
            iload 8 /* dy */
            istore 17 /* y */
        start local 17 // int y
         7: goto 24
         8: .line 831
      StackMap locals: java.awt.image.Raster int
      StackMap stack:
            iload 12 /* numRowsWritten */
            iload 13 /* progressReportRowPeriod */
            irem
            ifne 13
         9: .line 832
            aload 0 /* this */
            iload 12 /* numRowsWritten */
            i2f
            ldc 100.0
            fmul
            iload 11 /* dh */
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.processImageProgress:(F)V
        10: .line 833
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 13
        11: .line 834
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.processWriteAborted:()V
        12: .line 835
            return
        13: .line 839
      StackMap locals:
      StackMap stack:
            aload 16 /* raster */
            iload 3 /* sx */
            iload 5 /* sy */
            iload 7 /* sw */
            iconst_1
            iconst_0
            aload 14 /* sbuf */
            invokevirtual java.awt.image.Raster.getSamples:(IIIII[I)[I
            pop
        14: .line 840
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        15: iconst_0
            istore 19 /* j */
        start local 19 // int j
        16: goto 19
        17: .line 841
      StackMap locals: int int
      StackMap stack:
            aload 15 /* dbuf */
            iload 18 /* i */
            aload 14 /* sbuf */
            iload 19 /* j */
            iaload
            i2b
            bastore
        18: .line 840
            iinc 18 /* i */ 1
            iload 19 /* j */
            iload 4 /* sdx */
            iadd
            istore 19 /* j */
      StackMap locals:
      StackMap stack:
        19: iload 18 /* i */
            iload 10 /* dw */
            if_icmplt 17
        end local 19 // int j
        end local 18 // int i
        20: .line 843
            aload 2 /* compressor */
            aload 15 /* dbuf */
            iconst_0
            iload 10 /* dw */
            invokevirtual com.sun.imageio.plugins.common.LZWCompressor.compress:([BII)V
        21: .line 844
            iinc 12 /* numRowsWritten */ 1
        22: .line 845
            iload 5 /* sy */
            iload 6 /* sdy */
            iadd
            istore 5 /* sy */
        23: .line 830
            iload 17 /* y */
            iload 9 /* ddy */
            iadd
            istore 17 /* y */
      StackMap locals:
      StackMap stack:
        24: iload 17 /* y */
            iload 11 /* dh */
            if_icmplt 8
        end local 17 // int y
        25: .line 847
            return
        end local 16 // java.awt.image.Raster raster
        end local 15 // byte[] dbuf
        end local 14 // int[] sbuf
        end local 13 // int progressReportRowPeriod
        end local 12 // int numRowsWritten
        end local 11 // int dh
        end local 10 // int dw
        end local 9 // int ddy
        end local 8 // int dy
        end local 7 // int sw
        end local 6 // int sdy
        end local 5 // int sy
        end local 4 // int sdx
        end local 3 // int sx
        end local 2 // com.sun.imageio.plugins.common.LZWCompressor compressor
        end local 1 // java.awt.image.RenderedImage image
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   26     0                     this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   26     1                    image  Ljava/awt/image/RenderedImage;
            0   26     2               compressor  Lcom/sun/imageio/plugins/common/LZWCompressor;
            0   26     3                       sx  I
            0   26     4                      sdx  I
            0   26     5                       sy  I
            0   26     6                      sdy  I
            0   26     7                       sw  I
            0   26     8                       dy  I
            0   26     9                      ddy  I
            0   26    10                       dw  I
            0   26    11                       dh  I
            0   26    12           numRowsWritten  I
            0   26    13  progressReportRowPeriod  I
            1   26    14                     sbuf  [I
            2   26    15                     dbuf  [B
            6   26    16                   raster  Ljava/awt/image/Raster;
            7   25    17                        y  I
           15   20    18                        i  I
           16   20    19                        j  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                         Name  Flags
      image                    
      compressor               
      sx                       
      sdx                      
      sy                       
      sdy                      
      sw                       
      dy                       
      ddy                      
      dw                       
      dh                       
      numRowsWritten           
      progressReportRowPeriod  

  private void writeRowsOpt(byte[], int, int, com.sun.imageio.plugins.common.LZWCompressor, int, int, int, int, int, int);
    descriptor: ([BIILcom/sun/imageio/plugins/common/LZWCompressor;IIIIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=12, args_size=11
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // byte[] data
        start local 2 // int offset
        start local 3 // int lineStride
        start local 4 // com.sun.imageio.plugins.common.LZWCompressor compressor
        start local 5 // int dy
        start local 6 // int ddy
        start local 7 // int dw
        start local 8 // int dh
        start local 9 // int numRowsWritten
        start local 10 // int progressReportRowPeriod
         0: .line 856
            iload 2 /* offset */
            iload 5 /* dy */
            iload 3 /* lineStride */
            imul
            iadd
            istore 2 /* offset */
         1: .line 857
            iload 3 /* lineStride */
            iload 6 /* ddy */
            imul
            istore 3 /* lineStride */
         2: .line 858
            iload 5 /* dy */
            istore 11 /* y */
        start local 11 // int y
         3: goto 13
         4: .line 859
      StackMap locals: int
      StackMap stack:
            iload 9 /* numRowsWritten */
            iload 10 /* progressReportRowPeriod */
            irem
            ifne 9
         5: .line 860
            aload 0 /* this */
            iload 9 /* numRowsWritten */
            i2f
            ldc 100.0
            fmul
            iload 8 /* dh */
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.processImageProgress:(F)V
         6: .line 861
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 9
         7: .line 862
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.processWriteAborted:()V
         8: .line 863
            return
         9: .line 867
      StackMap locals:
      StackMap stack:
            aload 4 /* compressor */
            aload 1 /* data */
            iload 2 /* offset */
            iload 7 /* dw */
            invokevirtual com.sun.imageio.plugins.common.LZWCompressor.compress:([BII)V
        10: .line 868
            iinc 9 /* numRowsWritten */ 1
        11: .line 869
            iload 2 /* offset */
            iload 3 /* lineStride */
            iadd
            istore 2 /* offset */
        12: .line 858
            iload 11 /* y */
            iload 6 /* ddy */
            iadd
            istore 11 /* y */
      StackMap locals:
      StackMap stack:
        13: iload 11 /* y */
            iload 8 /* dh */
            if_icmplt 4
        end local 11 // int y
        14: .line 871
            return
        end local 10 // int progressReportRowPeriod
        end local 9 // int numRowsWritten
        end local 8 // int dh
        end local 7 // int dw
        end local 6 // int ddy
        end local 5 // int dy
        end local 4 // com.sun.imageio.plugins.common.LZWCompressor compressor
        end local 3 // int lineStride
        end local 2 // int offset
        end local 1 // byte[] data
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   15     0                     this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   15     1                     data  [B
            0   15     2                   offset  I
            0   15     3               lineStride  I
            0   15     4               compressor  Lcom/sun/imageio/plugins/common/LZWCompressor;
            0   15     5                       dy  I
            0   15     6                      ddy  I
            0   15     7                       dw  I
            0   15     8                       dh  I
            0   15     9           numRowsWritten  I
            0   15    10  progressReportRowPeriod  I
            3   14    11                        y  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                         Name  Flags
      data                     
      offset                   
      lineStride               
      compressor               
      dy                       
      ddy                      
      dw                       
      dh                       
      numRowsWritten           
      progressReportRowPeriod  

  private void writeRasterData(java.awt.image.RenderedImage, java.awt.Rectangle, java.awt.Dimension, javax.imageio.ImageWriteParam, boolean);
    descriptor: (Ljava/awt/image/RenderedImage;Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljavax/imageio/ImageWriteParam;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=25, args_size=6
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // java.awt.image.RenderedImage image
        start local 2 // java.awt.Rectangle sourceBounds
        start local 3 // java.awt.Dimension destSize
        start local 4 // javax.imageio.ImageWriteParam param
        start local 5 // boolean interlaceFlag
         0: .line 879
            aload 2 /* sourceBounds */
            getfield java.awt.Rectangle.x:I
            istore 6 /* sourceXOffset */
        start local 6 // int sourceXOffset
         1: .line 880
            aload 2 /* sourceBounds */
            getfield java.awt.Rectangle.y:I
            istore 7 /* sourceYOffset */
        start local 7 // int sourceYOffset
         2: .line 881
            aload 2 /* sourceBounds */
            getfield java.awt.Rectangle.width:I
            istore 8 /* sourceWidth */
        start local 8 // int sourceWidth
         3: .line 882
            aload 2 /* sourceBounds */
            getfield java.awt.Rectangle.height:I
            pop
         4: .line 884
            aload 3 /* destSize */
            getfield java.awt.Dimension.width:I
            istore 9 /* destWidth */
        start local 9 // int destWidth
         5: .line 885
            aload 3 /* destSize */
            getfield java.awt.Dimension.height:I
            istore 10 /* destHeight */
        start local 10 // int destHeight
         6: .line 889
            aload 4 /* param */
            ifnonnull 10
         7: .line 890
            iconst_1
            istore 11 /* periodX */
        start local 11 // int periodX
         8: .line 891
            iconst_1
            istore 12 /* periodY */
        start local 12 // int periodY
         9: .line 892
            goto 12
        end local 12 // int periodY
        end local 11 // int periodX
        10: .line 893
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter java.awt.image.RenderedImage java.awt.Rectangle java.awt.Dimension javax.imageio.ImageWriteParam int int int int int int
      StackMap stack:
            aload 4 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getSourceXSubsampling:()I
            istore 11 /* periodX */
        start local 11 // int periodX
        11: .line 894
            aload 4 /* param */
            invokevirtual javax.imageio.ImageWriteParam.getSourceYSubsampling:()I
            istore 12 /* periodY */
        start local 12 // int periodY
        12: .line 897
      StackMap locals: int int
      StackMap stack:
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getSampleModel:()Ljava/awt/image/SampleModel;
            astore 13 /* sampleModel */
        start local 13 // java.awt.image.SampleModel sampleModel
        13: .line 898
            aload 13 /* sampleModel */
            invokevirtual java.awt.image.SampleModel.getSampleSize:()[I
            iconst_0
            iaload
            istore 14 /* bitsPerPixel */
        start local 14 // int bitsPerPixel
        14: .line 900
            iload 14 /* bitsPerPixel */
            istore 15 /* initCodeSize */
        start local 15 // int initCodeSize
        15: .line 901
            iload 15 /* initCodeSize */
            iconst_1
            if_icmpne 17
        16: .line 902
            iinc 15 /* initCodeSize */ 1
        17: .line 904
      StackMap locals: java.awt.image.SampleModel int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 15 /* initCodeSize */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        18: .line 907
            new com.sun.imageio.plugins.common.LZWCompressor
            dup
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 15 /* initCodeSize */
            iconst_0
            invokespecial com.sun.imageio.plugins.common.LZWCompressor.<init>:(Ljavax/imageio/stream/ImageOutputStream;IZ)V
        19: .line 906
            astore 16 /* compressor */
        start local 16 // com.sun.imageio.plugins.common.LZWCompressor compressor
        20: .line 917
            iload 11 /* periodX */
            iconst_1
            if_icmpne 26
            iload 12 /* periodY */
            iconst_1
            if_icmpne 26
        21: .line 918
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getNumXTiles:()I
            iconst_1
            if_icmpne 26
            aload 1 /* image */
            invokeinterface java.awt.image.RenderedImage.getNumYTiles:()I
            iconst_1
            if_icmpne 26
        22: .line 919
            aload 13 /* sampleModel */
            instanceof java.awt.image.ComponentSampleModel
            ifeq 26
        23: .line 920
            aload 1 /* image */
            iconst_0
            iconst_0
            invokeinterface java.awt.image.RenderedImage.getTile:(II)Ljava/awt/image/Raster;
            instanceof sun.awt.image.ByteComponentRaster
            ifeq 26
        24: .line 921
            aload 1 /* image */
            iconst_0
            iconst_0
            invokeinterface java.awt.image.RenderedImage.getTile:(II)Ljava/awt/image/Raster;
            invokevirtual java.awt.image.Raster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            instanceof java.awt.image.DataBufferByte
            ifeq 26
        25: .line 916
            iconst_1
            goto 27
      StackMap locals: com.sun.imageio.plugins.common.LZWCompressor
      StackMap stack:
        26: iconst_0
      StackMap locals:
      StackMap stack: int
        27: istore 17 /* isOptimizedCase */
        start local 17 // boolean isOptimizedCase
        28: .line 923
            iconst_0
            istore 18 /* numRowsWritten */
        start local 18 // int numRowsWritten
        29: .line 925
            iload 10 /* destHeight */
            bipush 20
            idiv
            iconst_1
            invokestatic java.lang.Math.max:(II)I
            istore 19 /* progressReportRowPeriod */
        start local 19 // int progressReportRowPeriod
        30: .line 927
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.clearAbortRequest:()V
        31: .line 928
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.imageIndex:I
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.processImageStarted:(I)V
        32: .line 929
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 35
        33: .line 930
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.processWriteAborted:()V
        34: .line 931
            return
        35: .line 934
      StackMap locals: int int int
      StackMap stack:
            iload 5 /* interlaceFlag */
            ifeq 108
        36: .line 937
            iload 17 /* isOptimizedCase */
            ifeq 72
        37: .line 939
            aload 1 /* image */
            iconst_0
            iconst_0
            invokeinterface java.awt.image.RenderedImage.getTile:(II)Ljava/awt/image/Raster;
            checkcast sun.awt.image.ByteComponentRaster
        38: .line 938
            astore 20 /* tile */
        start local 20 // sun.awt.image.ByteComponentRaster tile
        39: .line 940
            aload 20 /* tile */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferByte
            invokevirtual java.awt.image.DataBufferByte.getData:()[B
            astore 21 /* data */
        start local 21 // byte[] data
        40: .line 942
            aload 20 /* tile */
            invokevirtual sun.awt.image.ByteComponentRaster.getSampleModel:()Ljava/awt/image/SampleModel;
            checkcast java.awt.image.ComponentSampleModel
        41: .line 941
            astore 22 /* csm */
        start local 22 // java.awt.image.ComponentSampleModel csm
        42: .line 943
            aload 22 /* csm */
            iload 6 /* sourceXOffset */
            iload 7 /* sourceYOffset */
            iconst_0
            invokevirtual java.awt.image.ComponentSampleModel.getOffset:(III)I
            istore 23 /* offset */
        start local 23 // int offset
        43: .line 945
            iload 23 /* offset */
            aload 20 /* tile */
            iconst_0
            invokevirtual sun.awt.image.ByteComponentRaster.getDataOffset:(I)I
            iadd
            istore 23 /* offset */
        44: .line 946
            aload 22 /* csm */
            invokevirtual java.awt.image.ComponentSampleModel.getScanlineStride:()I
            istore 24 /* lineStride */
        start local 24 // int lineStride
        45: .line 948
            aload 0 /* this */
            aload 21 /* data */
            iload 23 /* offset */
            iload 24 /* lineStride */
            aload 16 /* compressor */
        46: .line 949
            iconst_0
            bipush 8
            iload 9 /* destWidth */
            iload 10 /* destHeight */
        47: .line 950
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
        48: .line 948
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRowsOpt:([BIILcom/sun/imageio/plugins/common/LZWCompressor;IIIIII)V
        49: .line 952
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 51
        50: .line 953
            return
        51: .line 956
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter java.awt.image.RenderedImage java.awt.Rectangle java.awt.Dimension javax.imageio.ImageWriteParam int int int int int int int int java.awt.image.SampleModel int int com.sun.imageio.plugins.common.LZWCompressor int int int sun.awt.image.ByteComponentRaster byte[] java.awt.image.ComponentSampleModel int int
      StackMap stack:
            iload 18 /* numRowsWritten */
            iload 10 /* destHeight */
            bipush 8
            idiv
            iadd
            istore 18 /* numRowsWritten */
        52: .line 958
            aload 0 /* this */
            aload 21 /* data */
            iload 23 /* offset */
            iload 24 /* lineStride */
            aload 16 /* compressor */
        53: .line 959
            iconst_4
            bipush 8
            iload 9 /* destWidth */
            iload 10 /* destHeight */
        54: .line 960
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
        55: .line 958
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRowsOpt:([BIILcom/sun/imageio/plugins/common/LZWCompressor;IIIIII)V
        56: .line 962
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 58
        57: .line 963
            return
        58: .line 966
      StackMap locals:
      StackMap stack:
            iload 18 /* numRowsWritten */
            iload 10 /* destHeight */
            iconst_4
            isub
            bipush 8
            idiv
            iadd
            istore 18 /* numRowsWritten */
        59: .line 968
            aload 0 /* this */
            aload 21 /* data */
            iload 23 /* offset */
            iload 24 /* lineStride */
            aload 16 /* compressor */
        60: .line 969
            iconst_2
            iconst_4
            iload 9 /* destWidth */
            iload 10 /* destHeight */
        61: .line 970
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
        62: .line 968
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRowsOpt:([BIILcom/sun/imageio/plugins/common/LZWCompressor;IIIIII)V
        63: .line 972
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 65
        64: .line 973
            return
        65: .line 976
      StackMap locals:
      StackMap stack:
            iload 18 /* numRowsWritten */
            iload 10 /* destHeight */
            iconst_2
            isub
            iconst_4
            idiv
            iadd
            istore 18 /* numRowsWritten */
        66: .line 978
            aload 0 /* this */
            aload 21 /* data */
            iload 23 /* offset */
            iload 24 /* lineStride */
            aload 16 /* compressor */
        67: .line 979
            iconst_1
            iconst_2
            iload 9 /* destWidth */
            iload 10 /* destHeight */
        68: .line 980
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
        69: .line 978
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRowsOpt:([BIILcom/sun/imageio/plugins/common/LZWCompressor;IIIIII)V
        70: .line 981
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 130
        71: .line 982
            return
        end local 24 // int lineStride
        end local 23 // int offset
        end local 22 // java.awt.image.ComponentSampleModel csm
        end local 21 // byte[] data
        end local 20 // sun.awt.image.ByteComponentRaster tile
        72: .line 985
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter java.awt.image.RenderedImage java.awt.Rectangle java.awt.Dimension javax.imageio.ImageWriteParam int int int int int int int int java.awt.image.SampleModel int int com.sun.imageio.plugins.common.LZWCompressor int int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* image */
            aload 16 /* compressor */
        73: .line 986
            iload 6 /* sourceXOffset */
            iload 11 /* periodX */
        74: .line 987
            iload 7 /* sourceYOffset */
            bipush 8
            iload 12 /* periodY */
            imul
        75: .line 988
            iload 8 /* sourceWidth */
        76: .line 989
            iconst_0
            bipush 8
            iload 9 /* destWidth */
            iload 10 /* destHeight */
        77: .line 990
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
        78: .line 985
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRows:(Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/common/LZWCompressor;IIIIIIIIIII)V
        79: .line 992
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 81
        80: .line 993
            return
        81: .line 996
      StackMap locals:
      StackMap stack:
            iload 18 /* numRowsWritten */
            iload 10 /* destHeight */
            bipush 8
            idiv
            iadd
            istore 18 /* numRowsWritten */
        82: .line 998
            aload 0 /* this */
            aload 1 /* image */
            aload 16 /* compressor */
            iload 6 /* sourceXOffset */
            iload 11 /* periodX */
        83: .line 999
            iload 7 /* sourceYOffset */
            iconst_4
            iload 12 /* periodY */
            imul
            iadd
            bipush 8
            iload 12 /* periodY */
            imul
        84: .line 1000
            iload 8 /* sourceWidth */
        85: .line 1001
            iconst_4
            bipush 8
            iload 9 /* destWidth */
            iload 10 /* destHeight */
        86: .line 1002
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
        87: .line 998
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRows:(Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/common/LZWCompressor;IIIIIIIIIII)V
        88: .line 1004
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 90
        89: .line 1005
            return
        90: .line 1008
      StackMap locals:
      StackMap stack:
            iload 18 /* numRowsWritten */
            iload 10 /* destHeight */
            iconst_4
            isub
            bipush 8
            idiv
            iadd
            istore 18 /* numRowsWritten */
        91: .line 1010
            aload 0 /* this */
            aload 1 /* image */
            aload 16 /* compressor */
            iload 6 /* sourceXOffset */
            iload 11 /* periodX */
        92: .line 1011
            iload 7 /* sourceYOffset */
            iconst_2
            iload 12 /* periodY */
            imul
            iadd
            iconst_4
            iload 12 /* periodY */
            imul
        93: .line 1012
            iload 8 /* sourceWidth */
        94: .line 1013
            iconst_2
            iconst_4
            iload 9 /* destWidth */
            iload 10 /* destHeight */
        95: .line 1014
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
        96: .line 1010
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRows:(Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/common/LZWCompressor;IIIIIIIIIII)V
        97: .line 1016
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 99
        98: .line 1017
            return
        99: .line 1020
      StackMap locals:
      StackMap stack:
            iload 18 /* numRowsWritten */
            iload 10 /* destHeight */
            iconst_2
            isub
            iconst_4
            idiv
            iadd
            istore 18 /* numRowsWritten */
       100: .line 1022
            aload 0 /* this */
            aload 1 /* image */
            aload 16 /* compressor */
            iload 6 /* sourceXOffset */
            iload 11 /* periodX */
       101: .line 1023
            iload 7 /* sourceYOffset */
            iload 12 /* periodY */
            iadd
            iconst_2
            iload 12 /* periodY */
            imul
       102: .line 1024
            iload 8 /* sourceWidth */
       103: .line 1025
            iconst_1
            iconst_2
            iload 9 /* destWidth */
            iload 10 /* destHeight */
       104: .line 1026
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
       105: .line 1022
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRows:(Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/common/LZWCompressor;IIIIIIIIIII)V
       106: .line 1027
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 130
       107: .line 1028
            return
       108: .line 1034
      StackMap locals:
      StackMap stack:
            iload 17 /* isOptimizedCase */
            ifeq 121
       109: .line 1035
            aload 1 /* image */
            iconst_0
            iconst_0
            invokeinterface java.awt.image.RenderedImage.getTile:(II)Ljava/awt/image/Raster;
            astore 20 /* tile */
        start local 20 // java.awt.image.Raster tile
       110: .line 1036
            aload 20 /* tile */
            invokevirtual java.awt.image.Raster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferByte
            invokevirtual java.awt.image.DataBufferByte.getData:()[B
            astore 21 /* data */
        start local 21 // byte[] data
       111: .line 1038
            aload 20 /* tile */
            invokevirtual java.awt.image.Raster.getSampleModel:()Ljava/awt/image/SampleModel;
            checkcast java.awt.image.ComponentSampleModel
       112: .line 1037
            astore 22 /* csm */
        start local 22 // java.awt.image.ComponentSampleModel csm
       113: .line 1039
            aload 22 /* csm */
            iload 6 /* sourceXOffset */
            iload 7 /* sourceYOffset */
            iconst_0
            invokevirtual java.awt.image.ComponentSampleModel.getOffset:(III)I
            istore 23 /* offset */
        start local 23 // int offset
       114: .line 1040
            aload 22 /* csm */
            invokevirtual java.awt.image.ComponentSampleModel.getScanlineStride:()I
            istore 24 /* lineStride */
        start local 24 // int lineStride
       115: .line 1042
            aload 0 /* this */
            aload 21 /* data */
            iload 23 /* offset */
            iload 24 /* lineStride */
            aload 16 /* compressor */
       116: .line 1043
            iconst_0
            iconst_1
            iload 9 /* destWidth */
            iload 10 /* destHeight */
       117: .line 1044
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
       118: .line 1042
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRowsOpt:([BIILcom/sun/imageio/plugins/common/LZWCompressor;IIIIII)V
       119: .line 1045
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 130
       120: .line 1046
            return
        end local 24 // int lineStride
        end local 23 // int offset
        end local 22 // java.awt.image.ComponentSampleModel csm
        end local 21 // byte[] data
        end local 20 // java.awt.image.Raster tile
       121: .line 1049
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* image */
            aload 16 /* compressor */
       122: .line 1050
            iload 6 /* sourceXOffset */
            iload 11 /* periodX */
       123: .line 1051
            iload 7 /* sourceYOffset */
            iload 12 /* periodY */
       124: .line 1052
            iload 8 /* sourceWidth */
       125: .line 1053
            iconst_0
            iconst_1
            iload 9 /* destWidth */
            iload 10 /* destHeight */
       126: .line 1054
            iload 18 /* numRowsWritten */
            iload 19 /* progressReportRowPeriod */
       127: .line 1049
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeRows:(Ljava/awt/image/RenderedImage;Lcom/sun/imageio/plugins/common/LZWCompressor;IIIIIIIIIII)V
       128: .line 1055
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.abortRequested:()Z
            ifeq 130
       129: .line 1056
            return
       130: .line 1061
      StackMap locals:
      StackMap stack:
            aload 16 /* compressor */
            invokevirtual com.sun.imageio.plugins.common.LZWCompressor.flush:()V
       131: .line 1063
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
       132: .line 1065
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.processImageComplete:()V
       133: .line 1066
            return
        end local 19 // int progressReportRowPeriod
        end local 18 // int numRowsWritten
        end local 17 // boolean isOptimizedCase
        end local 16 // com.sun.imageio.plugins.common.LZWCompressor compressor
        end local 15 // int initCodeSize
        end local 14 // int bitsPerPixel
        end local 13 // java.awt.image.SampleModel sampleModel
        end local 12 // int periodY
        end local 11 // int periodX
        end local 10 // int destHeight
        end local 9 // int destWidth
        end local 8 // int sourceWidth
        end local 7 // int sourceYOffset
        end local 6 // int sourceXOffset
        end local 5 // boolean interlaceFlag
        end local 4 // javax.imageio.ImageWriteParam param
        end local 3 // java.awt.Dimension destSize
        end local 2 // java.awt.Rectangle sourceBounds
        end local 1 // java.awt.image.RenderedImage image
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0  134     0                     this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0  134     1                    image  Ljava/awt/image/RenderedImage;
            0  134     2             sourceBounds  Ljava/awt/Rectangle;
            0  134     3                 destSize  Ljava/awt/Dimension;
            0  134     4                    param  Ljavax/imageio/ImageWriteParam;
            0  134     5            interlaceFlag  Z
            1  134     6            sourceXOffset  I
            2  134     7            sourceYOffset  I
            3  134     8              sourceWidth  I
            5  134     9                destWidth  I
            6  134    10               destHeight  I
            8   10    11                  periodX  I
           11  134    11                  periodX  I
            9   10    12                  periodY  I
           12  134    12                  periodY  I
           13  134    13              sampleModel  Ljava/awt/image/SampleModel;
           14  134    14             bitsPerPixel  I
           15  134    15             initCodeSize  I
           20  134    16               compressor  Lcom/sun/imageio/plugins/common/LZWCompressor;
           28  134    17          isOptimizedCase  Z
           29  134    18           numRowsWritten  I
           30  134    19  progressReportRowPeriod  I
           39   72    20                     tile  Lsun/awt/image/ByteComponentRaster;
           40   72    21                     data  [B
           42   72    22                      csm  Ljava/awt/image/ComponentSampleModel;
           43   72    23                   offset  I
           45   72    24               lineStride  I
          110  121    20                     tile  Ljava/awt/image/Raster;
          111  121    21                     data  [B
          113  121    22                      csm  Ljava/awt/image/ComponentSampleModel;
          114  121    23                   offset  I
          115  121    24               lineStride  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      image          
      sourceBounds   
      destSize       
      param          
      interlaceFlag  

  private void writeHeader(java.lang.String, int, int, int, int, int, boolean, int, byte[]);
    descriptor: (Ljava/lang/String;IIIIIZI[B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=10
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // java.lang.String version
        start local 2 // int logicalScreenWidth
        start local 3 // int logicalScreenHeight
        start local 4 // int colorResolution
        start local 5 // int pixelAspectRatio
        start local 6 // int backgroundColorIndex
        start local 7 // boolean sortFlag
        start local 8 // int bitsPerPixel
        start local 9 // byte[] globalColorTable
         0: .line 1079
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            new java.lang.StringBuilder
            dup
            ldc "GIF"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* version */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface javax.imageio.stream.ImageOutputStream.writeBytes:(Ljava/lang/String;)V
         1: .line 1083
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 2 /* logicalScreenWidth */
            i2s
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         2: .line 1086
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 3 /* logicalScreenHeight */
            i2s
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         3: .line 1090
            aload 9 /* globalColorTable */
            ifnull 4
            sipush 128
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 10 /* packedFields */
        start local 10 // int packedFields
         6: .line 1091
            iload 10 /* packedFields */
            iload 4 /* colorResolution */
            iconst_1
            isub
            bipush 7
            iand
            iconst_4
            ishl
            ior
            istore 10 /* packedFields */
         7: .line 1092
            iload 7 /* sortFlag */
            ifeq 9
         8: .line 1093
            iload 10 /* packedFields */
            bipush 8
            ior
            istore 10 /* packedFields */
         9: .line 1095
      StackMap locals: int
      StackMap stack:
            iload 10 /* packedFields */
            iload 8 /* bitsPerPixel */
            iconst_1
            isub
            ior
            istore 10 /* packedFields */
        10: .line 1096
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 10 /* packedFields */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        11: .line 1099
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 6 /* backgroundColorIndex */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        12: .line 1102
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 5 /* pixelAspectRatio */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        13: .line 1105
            aload 9 /* globalColorTable */
            ifnull 18
        14: .line 1106
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 9 /* globalColorTable */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:([B)V
        end local 10 // int packedFields
        15: .line 1108
            goto 18
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter java.lang.String int int int int int int int byte[]
      StackMap stack: java.io.IOException
        16: astore 10 /* e */
        start local 10 // java.io.IOException e
        17: .line 1109
            new javax.imageio.IIOException
            dup
            ldc "I/O error writing header!"
            aload 10 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 10 // java.io.IOException e
        18: .line 1111
      StackMap locals:
      StackMap stack:
            return
        end local 9 // byte[] globalColorTable
        end local 8 // int bitsPerPixel
        end local 7 // boolean sortFlag
        end local 6 // int backgroundColorIndex
        end local 5 // int pixelAspectRatio
        end local 4 // int colorResolution
        end local 3 // int logicalScreenHeight
        end local 2 // int logicalScreenWidth
        end local 1 // java.lang.String version
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   19     0                  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   19     1               version  Ljava/lang/String;
            0   19     2    logicalScreenWidth  I
            0   19     3   logicalScreenHeight  I
            0   19     4       colorResolution  I
            0   19     5      pixelAspectRatio  I
            0   19     6  backgroundColorIndex  I
            0   19     7              sortFlag  Z
            0   19     8          bitsPerPixel  I
            0   19     9      globalColorTable  [B
            6   15    10          packedFields  I
           17   18    10                     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    15      16  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                      Name  Flags
      version               
      logicalScreenWidth    
      logicalScreenHeight   
      colorResolution       
      pixelAspectRatio      
      backgroundColorIndex  
      sortFlag              
      bitsPerPixel          
      globalColorTable      

  private void writeHeader(javax.imageio.metadata.IIOMetadata, int);
    descriptor: (Ljavax/imageio/metadata/IIOMetadata;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=5, args_size=3
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // javax.imageio.metadata.IIOMetadata streamMetadata
        start local 2 // int bitsPerPixel
         0: .line 1117
            aload 1 /* streamMetadata */
            instanceof com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
            ifeq 3
         1: .line 1118
            aload 1 /* streamMetadata */
            checkcast com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
            astore 3 /* sm */
        start local 3 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata sm
         2: .line 1119
            goto 7
        end local 3 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata sm
         3: .line 1120
      StackMap locals:
      StackMap stack:
            new com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
            dup
            invokespecial com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.<init>:()V
            astore 3 /* sm */
        start local 3 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata sm
         4: .line 1122
            aload 1 /* streamMetadata */
            ldc "javax_imageio_gif_stream_1.0"
            invokevirtual javax.imageio.metadata.IIOMetadata.getAsTree:(Ljava/lang/String;)Lorg/w3c/dom/Node;
         5: .line 1121
            astore 4 /* root */
        start local 4 // org.w3c.dom.Node root
         6: .line 1123
            aload 3 /* sm */
            ldc "javax_imageio_gif_stream_1.0"
            aload 4 /* root */
            invokevirtual com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.setFromTree:(Ljava/lang/String;Lorg/w3c/dom/Node;)V
        end local 4 // org.w3c.dom.Node root
         7: .line 1126
      StackMap locals: com.sun.imageio.plugins.gif.GIFWritableStreamMetadata
      StackMap stack:
            aload 0 /* this */
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.version:Ljava/lang/String;
         8: .line 1127
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.logicalScreenWidth:I
         9: .line 1128
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.logicalScreenHeight:I
        10: .line 1129
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.colorResolution:I
        11: .line 1130
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.pixelAspectRatio:I
        12: .line 1131
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.backgroundColorIndex:I
        13: .line 1132
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.sortFlag:Z
        14: .line 1133
            iload 2 /* bitsPerPixel */
        15: .line 1134
            aload 3 /* sm */
            getfield com.sun.imageio.plugins.gif.GIFWritableStreamMetadata.globalColorTable:[B
        16: .line 1126
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeHeader:(Ljava/lang/String;IIIIIZI[B)V
        17: .line 1135
            return
        end local 3 // com.sun.imageio.plugins.gif.GIFWritableStreamMetadata sm
        end local 2 // int bitsPerPixel
        end local 1 // javax.imageio.metadata.IIOMetadata streamMetadata
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   18     0            this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   18     1  streamMetadata  Ljavax/imageio/metadata/IIOMetadata;
            0   18     2    bitsPerPixel  I
            2    3     3              sm  Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
            4   18     3              sm  Lcom/sun/imageio/plugins/gif/GIFWritableStreamMetadata;
            6    7     4            root  Lorg/w3c/dom/Node;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                Name  Flags
      streamMetadata  
      bitsPerPixel    

  private void writeGraphicControlExtension(int, boolean, boolean, int, int);
    descriptor: (IZZII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=6
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // int disposalMethod
        start local 2 // boolean userInputFlag
        start local 3 // boolean transparentColorFlag
        start local 4 // int delayTime
        start local 5 // int transparentColorIndex
         0: .line 1144
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 33
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         1: .line 1145
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            sipush 249
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         2: .line 1147
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iconst_4
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         3: .line 1149
            iload 1 /* disposalMethod */
            iconst_3
            iand
            iconst_2
            ishl
            istore 6 /* packedFields */
        start local 6 // int packedFields
         4: .line 1150
            iload 2 /* userInputFlag */
            ifeq 6
         5: .line 1151
            iload 6 /* packedFields */
            iconst_2
            ior
            istore 6 /* packedFields */
         6: .line 1153
      StackMap locals: int
      StackMap stack:
            iload 3 /* transparentColorFlag */
            ifeq 8
         7: .line 1154
            iload 6 /* packedFields */
            iconst_1
            ior
            istore 6 /* packedFields */
         8: .line 1156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 6 /* packedFields */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         9: .line 1158
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 4 /* delayTime */
            i2s
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
        10: .line 1160
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 5 /* transparentColorIndex */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        11: .line 1161
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        end local 6 // int packedFields
        12: .line 1162
            goto 15
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter int int int int int
      StackMap stack: java.io.IOException
        13: astore 6 /* e */
        start local 6 // java.io.IOException e
        14: .line 1163
            new javax.imageio.IIOException
            dup
            ldc "I/O error writing Graphic Control Extension!"
            aload 6 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.io.IOException e
        15: .line 1165
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int transparentColorIndex
        end local 4 // int delayTime
        end local 3 // boolean transparentColorFlag
        end local 2 // boolean userInputFlag
        end local 1 // int disposalMethod
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   16     0                   this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   16     1         disposalMethod  I
            0   16     2          userInputFlag  Z
            0   16     3   transparentColorFlag  Z
            0   16     4              delayTime  I
            0   16     5  transparentColorIndex  I
            4   12     6           packedFields  I
           14   15     6                      e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    12      13  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                       Name  Flags
      disposalMethod         
      userInputFlag          
      transparentColorFlag   
      delayTime              
      transparentColorIndex  

  private void writeGraphicControlExtension(com.sun.imageio.plugins.gif.GIFWritableImageMetadata);
    descriptor: (Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
         0: .line 1169
            aload 0 /* this */
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.disposalMethod:I
         1: .line 1170
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.userInputFlag:Z
         2: .line 1171
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorFlag:Z
         3: .line 1172
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.delayTime:I
         4: .line 1173
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.transparentColorIndex:I
         5: .line 1169
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeGraphicControlExtension:(IZZII)V
         6: .line 1174
            return
        end local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0    7     1    im  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      im    

  private void writeBlocks(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // byte[] data
         0: .line 1177
            aload 1 /* data */
            ifnull 8
            aload 1 /* data */
            arraylength
            ifle 8
         1: .line 1178
            iconst_0
            istore 2 /* offset */
        start local 2 // int offset
         2: .line 1179
            goto 7
         3: .line 1180
      StackMap locals: int
      StackMap stack:
            aload 1 /* data */
            arraylength
            iload 2 /* offset */
            isub
            sipush 255
            invokestatic java.lang.Math.min:(II)I
            istore 3 /* len */
        start local 3 // int len
         4: .line 1181
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 3 /* len */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         5: .line 1182
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* data */
            iload 2 /* offset */
            iload 3 /* len */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:([BII)V
         6: .line 1183
            iload 2 /* offset */
            iload 3 /* len */
            iadd
            istore 2 /* offset */
        end local 3 // int len
         7: .line 1179
      StackMap locals:
      StackMap stack:
            iload 2 /* offset */
            aload 1 /* data */
            arraylength
            if_icmplt 3
        end local 2 // int offset
         8: .line 1186
      StackMap locals:
      StackMap stack:
            return
        end local 1 // byte[] data
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0    9     1    data  [B
            2    8     2  offset  I
            4    7     3     len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      data  

  private void writePlainTextExtension(com.sun.imageio.plugins.gif.GIFWritableImageMetadata);
    descriptor: (Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
         0: .line 1190
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.hasPlainTextExtension:Z
            ifeq 17
         1: .line 1192
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 33
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         2: .line 1193
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iconst_1
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         3: .line 1195
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 12
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         4: .line 1197
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.textGridLeft:I
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         5: .line 1198
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.textGridTop:I
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         6: .line 1199
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.textGridWidth:I
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         7: .line 1200
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.textGridHeight:I
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         8: .line 1201
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.characterCellWidth:I
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         9: .line 1202
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.characterCellHeight:I
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        10: .line 1203
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.textForegroundColor:I
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        11: .line 1204
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.textBackgroundColor:I
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        12: .line 1206
            aload 0 /* this */
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.text:[B
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeBlocks:([B)V
        13: .line 1208
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        14: .line 1209
            goto 17
      StackMap locals:
      StackMap stack: java.io.IOException
        15: astore 2 /* e */
        start local 2 // java.io.IOException e
        16: .line 1210
            new javax.imageio.IIOException
            dup
            ldc "I/O error writing Plain Text Extension!"
            aload 2 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException e
        17: .line 1213
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   18     1    im  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
           16   17     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1    14      15  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      im    

  private void writeApplicationExtension(com.sun.imageio.plugins.gif.GIFWritableImageMetadata);
    descriptor: (Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
         0: .line 1217
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.applicationIDs:Ljava/util/List;
            ifnull 16
         1: .line 1218
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.applicationIDs:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iterIDs */
        start local 2 // java.util.Iterator iterIDs
         2: .line 1219
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.authenticationCodes:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* iterCodes */
        start local 3 // java.util.Iterator iterCodes
         3: .line 1220
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.applicationData:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4 /* iterData */
        start local 4 // java.util.Iterator iterData
         4: .line 1222
            goto 15
         5: .line 1224
      StackMap locals: java.util.Iterator java.util.Iterator java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 33
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         6: .line 1225
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            sipush 255
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         7: .line 1227
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 11
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         8: .line 1228
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 2 /* iterIDs */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            iconst_0
            bipush 8
            invokeinterface javax.imageio.stream.ImageOutputStream.write:([BII)V
         9: .line 1229
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 3 /* iterCodes */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            iconst_0
            iconst_3
            invokeinterface javax.imageio.stream.ImageOutputStream.write:([BII)V
        10: .line 1231
            aload 0 /* this */
            aload 4 /* iterData */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeBlocks:([B)V
        11: .line 1233
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        12: .line 1234
            goto 15
      StackMap locals:
      StackMap stack: java.io.IOException
        13: astore 5 /* e */
        start local 5 // java.io.IOException e
        14: .line 1235
            new javax.imageio.IIOException
            dup
            ldc "I/O error writing Application Extension!"
            aload 5 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.io.IOException e
        15: .line 1222
      StackMap locals:
      StackMap stack:
            aload 2 /* iterIDs */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // java.util.Iterator iterData
        end local 3 // java.util.Iterator iterCodes
        end local 2 // java.util.Iterator iterIDs
        16: .line 1239
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0       this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   17     1         im  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
            2   16     2    iterIDs  Ljava/util/Iterator<[B>;
            3   16     3  iterCodes  Ljava/util/Iterator<[B>;
            4   16     4   iterData  Ljava/util/Iterator<[B>;
           14   15     5          e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           5    12      13  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      im    

  private void writeCommentExtension(com.sun.imageio.plugins.gif.GIFWritableImageMetadata);
    descriptor: (Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
         0: .line 1243
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.comments:Ljava/util/List;
            ifnull 11
         1: .line 1245
            aload 1 /* im */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.comments:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2 /* iter */
        start local 2 // java.util.Iterator iter
         2: .line 1246
            goto 7
         3: .line 1247
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 33
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         4: .line 1248
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            sipush 254
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         5: .line 1249
            aload 0 /* this */
            aload 2 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeBlocks:([B)V
         6: .line 1250
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iconst_0
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         7: .line 1246
      StackMap locals:
      StackMap stack:
            aload 2 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 2 // java.util.Iterator iter
         8: .line 1252
            goto 11
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter com.sun.imageio.plugins.gif.GIFWritableImageMetadata
      StackMap stack: java.io.IOException
         9: astore 2 /* e */
        start local 2 // java.io.IOException e
        10: .line 1253
            new javax.imageio.IIOException
            dup
            ldc "I/O error writing Comment Extension!"
            aload 2 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException e
        11: .line 1256
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata im
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   12     1    im  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
            2    8     2  iter  Ljava/util/Iterator<[B>;
           10   11     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     8       9  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      im    

  private void writeImageDescriptor(int, int, int, int, boolean, boolean, int, byte[]);
    descriptor: (IIIIZZI[B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=9
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // int imageLeftPosition
        start local 2 // int imageTopPosition
        start local 3 // int imageWidth
        start local 4 // int imageHeight
        start local 5 // boolean interlaceFlag
        start local 6 // boolean sortFlag
        start local 7 // int bitsPerPixel
        start local 8 // byte[] localColorTable
         0: .line 1269
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 44
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         1: .line 1271
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 1 /* imageLeftPosition */
            i2s
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         2: .line 1272
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 2 /* imageTopPosition */
            i2s
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         3: .line 1273
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 3 /* imageWidth */
            i2s
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         4: .line 1274
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 4 /* imageHeight */
            i2s
            invokeinterface javax.imageio.stream.ImageOutputStream.writeShort:(I)V
         5: .line 1276
            aload 8 /* localColorTable */
            ifnull 6
            sipush 128
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 9 /* packedFields */
        start local 9 // int packedFields
         8: .line 1277
            iload 5 /* interlaceFlag */
            ifeq 10
         9: .line 1278
            iload 9 /* packedFields */
            bipush 64
            ior
            istore 9 /* packedFields */
        10: .line 1280
      StackMap locals: int
      StackMap stack:
            iload 6 /* sortFlag */
            ifeq 12
        11: .line 1281
            iload 9 /* packedFields */
            bipush 8
            ior
            istore 9 /* packedFields */
        12: .line 1283
      StackMap locals:
      StackMap stack:
            iload 9 /* packedFields */
            iload 7 /* bitsPerPixel */
            iconst_1
            isub
            ior
            istore 9 /* packedFields */
        13: .line 1284
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            iload 9 /* packedFields */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
        14: .line 1286
            aload 8 /* localColorTable */
            ifnull 19
        15: .line 1287
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            aload 8 /* localColorTable */
            invokeinterface javax.imageio.stream.ImageOutputStream.write:([B)V
        end local 9 // int packedFields
        16: .line 1289
            goto 19
      StackMap locals: com.sun.imageio.plugins.gif.GIFImageWriter int int int int int int int byte[]
      StackMap stack: java.io.IOException
        17: astore 9 /* e */
        start local 9 // java.io.IOException e
        18: .line 1290
            new javax.imageio.IIOException
            dup
            ldc "I/O error writing Image Descriptor!"
            aload 9 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 9 // java.io.IOException e
        19: .line 1292
      StackMap locals:
      StackMap stack:
            return
        end local 8 // byte[] localColorTable
        end local 7 // int bitsPerPixel
        end local 6 // boolean sortFlag
        end local 5 // boolean interlaceFlag
        end local 4 // int imageHeight
        end local 3 // int imageWidth
        end local 2 // int imageTopPosition
        end local 1 // int imageLeftPosition
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   20     0               this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   20     1  imageLeftPosition  I
            0   20     2   imageTopPosition  I
            0   20     3         imageWidth  I
            0   20     4        imageHeight  I
            0   20     5      interlaceFlag  Z
            0   20     6           sortFlag  Z
            0   20     7       bitsPerPixel  I
            0   20     8    localColorTable  [B
            8   16     9       packedFields  I
           18   19     9                  e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    16      17  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                   Name  Flags
      imageLeftPosition  
      imageTopPosition   
      imageWidth         
      imageHeight        
      interlaceFlag      
      sortFlag           
      bitsPerPixel       
      localColorTable    

  private void writeImageDescriptor(com.sun.imageio.plugins.gif.GIFWritableImageMetadata, int);
    descriptor: (Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=3, args_size=3
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
        start local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
        start local 2 // int bitsPerPixel
         0: .line 1298
            aload 0 /* this */
            aload 1 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageLeftPosition:I
         1: .line 1299
            aload 1 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageTopPosition:I
         2: .line 1300
            aload 1 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageWidth:I
         3: .line 1301
            aload 1 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.imageHeight:I
         4: .line 1302
            aload 1 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.interlaceFlag:Z
         5: .line 1303
            aload 1 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.sortFlag:Z
         6: .line 1304
            iload 2 /* bitsPerPixel */
         7: .line 1305
            aload 1 /* imageMetadata */
            getfield com.sun.imageio.plugins.gif.GIFWritableImageMetadata.localColorTable:[B
         8: .line 1298
            invokevirtual com.sun.imageio.plugins.gif.GIFImageWriter.writeImageDescriptor:(IIIIZZI[B)V
         9: .line 1306
            return
        end local 2 // int bitsPerPixel
        end local 1 // com.sun.imageio.plugins.gif.GIFWritableImageMetadata imageMetadata
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0           this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
            0   10     1  imageMetadata  Lcom/sun/imageio/plugins/gif/GIFWritableImageMetadata;
            0   10     2   bitsPerPixel  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      imageMetadata  
      bitsPerPixel   

  private void writeTrailer();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
         0: .line 1309
            aload 0 /* this */
            getfield com.sun.imageio.plugins.gif.GIFImageWriter.stream:Ljavax/imageio/stream/ImageOutputStream;
            bipush 59
            invokeinterface javax.imageio.stream.ImageOutputStream.write:(I)V
         1: .line 1310
            return
        end local 0 // com.sun.imageio.plugins.gif.GIFImageWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/imageio/plugins/gif/GIFImageWriter;
    Exceptions:
      throws java.io.IOException
}
SourceFile: "GIFImageWriter.java"