public class com.sun.javafx.iio.common.ImageTools
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.javafx.iio.common.ImageTools
  super_class: java.lang.Object
{
  public static final int PROGRESS_INTERVAL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static volatile int[] $SWITCH_TABLE$com$sun$javafx$iio$ImageStorage$ImageType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.javafx.iio.common.ImageTools this
         0: .line 47
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.javafx.iio.common.ImageTools this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/javafx/iio/common/ImageTools;

  public static int readFully(java.io.InputStream, byte[], int, int);
    descriptor: (Ljava/io/InputStream;[BII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // java.io.InputStream stream
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
         0: .line 72
            iload 3 /* len */
            ifge 2
         1: .line 73
            new java.lang.IndexOutOfBoundsException
            dup
            invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
            athrow
         2: .line 75
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            istore 4 /* requestedLength */
        start local 4 // int requestedLength
         3: .line 77
            iload 2 /* off */
            iflt 4
            iload 3 /* len */
            iflt 4
            iload 2 /* off */
            iload 3 /* len */
            iadd
            aload 1 /* b */
            arraylength
            if_icmpgt 4
            iload 2 /* off */
            iload 3 /* len */
            iadd
            ifge 10
         4: .line 78
      StackMap locals: int
      StackMap stack:
            new java.lang.IndexOutOfBoundsException
            dup
            ldc "off < 0 || len < 0 || off + len > b.length!"
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 82
      StackMap locals:
      StackMap stack:
            aload 0 /* stream */
            aload 1 /* b */
            iload 2 /* off */
            iload 3 /* len */
            invokevirtual java.io.InputStream.read:([BII)I
            istore 5 /* nbytes */
        start local 5 // int nbytes
         6: .line 83
            iload 5 /* nbytes */
            iconst_m1
            if_icmpne 8
         7: .line 84
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
         8: .line 86
      StackMap locals: int
      StackMap stack:
            iload 2 /* off */
            iload 5 /* nbytes */
            iadd
            istore 2 /* off */
         9: .line 87
            iload 3 /* len */
            iload 5 /* nbytes */
            isub
            istore 3 /* len */
        end local 5 // int nbytes
        10: .line 81
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            ifgt 5
        11: .line 90
            iload 4 /* requestedLength */
            ireturn
        end local 4 // int requestedLength
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // java.io.InputStream stream
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   12     0           stream  Ljava/io/InputStream;
            0   12     1                b  [B
            0   12     2              off  I
            0   12     3              len  I
            3   12     4  requestedLength  I
            6   10     5           nbytes  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  
      b       
      off     
      len     

  public static int readFully(java.io.InputStream, byte[]);
    descriptor: (Ljava/io/InputStream;[B)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.io.InputStream stream
        start local 1 // byte[] b
         0: .line 108
            aload 0 /* stream */
            aload 1 /* b */
            iconst_0
            aload 1 /* b */
            arraylength
            invokestatic com.sun.javafx.iio.common.ImageTools.readFully:(Ljava/io/InputStream;[BII)I
            ireturn
        end local 1 // byte[] b
        end local 0 // java.io.InputStream stream
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  stream  Ljava/io/InputStream;
            0    1     1       b  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  
      b       

  public static void skipFully(java.io.InputStream, long);
    descriptor: (Ljava/io/InputStream;J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // java.io.InputStream stream
        start local 1 // long n
         0: .line 120
            goto 8
         1: .line 121
      StackMap locals:
      StackMap stack:
            aload 0 /* stream */
            lload 1 /* n */
            invokevirtual java.io.InputStream.skip:(J)J
            lstore 3 /* skipped */
        start local 3 // long skipped
         2: .line 122
            lload 3 /* skipped */
            lconst_0
            lcmp
            ifgt 7
         3: .line 124
            aload 0 /* stream */
            invokevirtual java.io.InputStream.read:()I
            iconst_m1
            if_icmpne 5
         4: .line 125
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
         5: .line 127
      StackMap locals: long
      StackMap stack:
            lload 1 /* n */
            lconst_1
            lsub
            lstore 1 /* n */
         6: .line 128
            goto 8
         7: .line 129
      StackMap locals:
      StackMap stack:
            lload 1 /* n */
            lload 3 /* skipped */
            lsub
            lstore 1 /* n */
        end local 3 // long skipped
         8: .line 120
      StackMap locals:
      StackMap stack:
            lload 1 /* n */
            lconst_0
            lcmp
            ifgt 1
         9: .line 132
            return
        end local 1 // long n
        end local 0 // java.io.InputStream stream
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0   stream  Ljava/io/InputStream;
            0   10     1        n  J
            2    8     3  skipped  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  
      n       

  public static com.sun.javafx.iio.ImageStorage$ImageType getConvertedType(com.sun.javafx.iio.ImageStorage$ImageType);
    descriptor: (Lcom/sun/javafx/iio/ImageStorage$ImageType;)Lcom/sun/javafx/iio/ImageStorage$ImageType;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.sun.javafx.iio.ImageStorage$ImageType type
         0: .line 170
            aload 0 /* type */
            astore 1 /* retType */
        start local 1 // com.sun.javafx.iio.ImageStorage$ImageType retType
         1: .line 171
            invokestatic com.sun.javafx.iio.common.ImageTools.$SWITCH_TABLE$com$sun$javafx$iio$ImageStorage$ImageType:()[I
            aload 0 /* type */
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            iaload
            tableswitch { // 1 - 10
                    1: 2
                    2: 4
                    3: 4
                    4: 6
                    5: 4
                    6: 4
                    7: 4
                    8: 6
                    9: 4
                   10: 8
              default: 10
          }
         2: .line 173
      StackMap locals: com.sun.javafx.iio.ImageStorage$ImageType
      StackMap stack:
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            astore 1 /* retType */
         3: .line 174
            goto 11
         4: .line 181
      StackMap locals:
      StackMap stack:
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGBA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            astore 1 /* retType */
         5: .line 182
            goto 11
         6: .line 185
      StackMap locals:
      StackMap stack:
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGB:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            astore 1 /* retType */
         7: .line 186
            goto 11
         8: .line 188
      StackMap locals:
      StackMap stack:
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGBA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            astore 1 /* retType */
         9: .line 189
            goto 11
        10: .line 191
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported ImageType "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 193
      StackMap locals:
      StackMap stack:
            aload 1 /* retType */
            areturn
        end local 1 // com.sun.javafx.iio.ImageStorage$ImageType retType
        end local 0 // com.sun.javafx.iio.ImageStorage$ImageType type
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     type  Lcom/sun/javafx/iio/ImageStorage$ImageType;
            1   12     1  retType  Lcom/sun/javafx/iio/ImageStorage$ImageType;
    MethodParameters:
      Name  Flags
      type  

  public static byte[] createImageArray(com.sun.javafx.iio.ImageStorage$ImageType, int, int);
    descriptor: (Lcom/sun/javafx/iio/ImageStorage$ImageType;II)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.sun.javafx.iio.ImageStorage$ImageType type
        start local 1 // int width
        start local 2 // int height
         0: .line 197
            iconst_0
            istore 3 /* numBands */
        start local 3 // int numBands
         1: .line 198
            invokestatic com.sun.javafx.iio.common.ImageTools.$SWITCH_TABLE$com$sun$javafx$iio$ImageStorage$ImageType:()[I
            aload 0 /* type */
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            iaload
            tableswitch { // 1 - 10
                    1: 2
                    2: 4
                    3: 4
                    4: 2
                    5: 2
                    6: 2
                    7: 10
                    8: 6
                    9: 8
                   10: 8
              default: 10
          }
         2: .line 203
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 3 /* numBands */
         3: .line 204
            goto 11
         4: .line 207
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 3 /* numBands */
         5: .line 208
            goto 11
         6: .line 210
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 3 /* numBands */
         7: .line 211
            goto 11
         8: .line 214
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 3 /* numBands */
         9: .line 215
            goto 11
        10: .line 217
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported ImageType "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 219
      StackMap locals:
      StackMap stack:
            iload 1 /* width */
            iload 2 /* height */
            imul
            iload 3 /* numBands */
            imul
            newarray 8
            areturn
        end local 3 // int numBands
        end local 2 // int height
        end local 1 // int width
        end local 0 // com.sun.javafx.iio.ImageStorage$ImageType type
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      type  Lcom/sun/javafx/iio/ImageStorage$ImageType;
            0   12     1     width  I
            0   12     2    height  I
            1   12     3  numBands  I
    MethodParameters:
        Name  Flags
      type    
      width   
      height  

  public static com.sun.javafx.iio.ImageFrame convertImageFrame(com.sun.javafx.iio.ImageFrame);
    descriptor: (Lcom/sun/javafx/iio/ImageFrame;)Lcom/sun/javafx/iio/ImageFrame;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=14, locals=17, args_size=1
        start local 0 // com.sun.javafx.iio.ImageFrame frame
         0: .line 224
            aload 0 /* frame */
            invokevirtual com.sun.javafx.iio.ImageFrame.getImageType:()Lcom/sun/javafx/iio/ImageStorage$ImageType;
            astore 2 /* type */
        start local 2 // com.sun.javafx.iio.ImageStorage$ImageType type
         1: .line 225
            aload 2 /* type */
            invokestatic com.sun.javafx.iio.common.ImageTools.getConvertedType:(Lcom/sun/javafx/iio/ImageStorage$ImageType;)Lcom/sun/javafx/iio/ImageStorage$ImageType;
            astore 3 /* convertedType */
        start local 3 // com.sun.javafx.iio.ImageStorage$ImageType convertedType
         2: .line 226
            aload 3 /* convertedType */
            aload 2 /* type */
            if_acmpne 5
         3: .line 227
            aload 0 /* frame */
            astore 1 /* retFrame */
        start local 1 // com.sun.javafx.iio.ImageFrame retFrame
         4: .line 228
            goto 41
        end local 1 // com.sun.javafx.iio.ImageFrame retFrame
         5: .line 229
      StackMap locals: com.sun.javafx.iio.ImageFrame top com.sun.javafx.iio.ImageStorage$ImageType com.sun.javafx.iio.ImageStorage$ImageType
      StackMap stack:
            aconst_null
            astore 4 /* inArray */
        start local 4 // byte[] inArray
         6: .line 230
            aload 0 /* frame */
            invokevirtual com.sun.javafx.iio.ImageFrame.getImageData:()Ljava/nio/Buffer;
            astore 5 /* buf */
        start local 5 // java.nio.Buffer buf
         7: .line 231
            aload 5 /* buf */
            instanceof java.nio.ByteBuffer
            ifne 9
         8: .line 232
            new java.lang.IllegalArgumentException
            dup
            ldc "!(frame.getImageData() instanceof ByteBuffer)"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 234
      StackMap locals: byte[] java.nio.Buffer
      StackMap stack:
            aload 5 /* buf */
            checkcast java.nio.ByteBuffer
            astore 6 /* bbuf */
        start local 6 // java.nio.ByteBuffer bbuf
        10: .line 235
            aload 6 /* bbuf */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 13
        11: .line 236
            aload 6 /* bbuf */
            invokevirtual java.nio.ByteBuffer.array:()[B
            astore 4 /* inArray */
        12: .line 237
            goto 15
        13: .line 238
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 6 /* bbuf */
            invokevirtual java.nio.ByteBuffer.capacity:()I
            newarray 8
            astore 4 /* inArray */
        14: .line 239
            aload 6 /* bbuf */
            aload 4 /* inArray */
            invokevirtual java.nio.ByteBuffer.get:([B)Ljava/nio/ByteBuffer;
            pop
        15: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* frame */
            invokevirtual com.sun.javafx.iio.ImageFrame.getWidth:()I
            istore 7 /* width */
        start local 7 // int width
        16: .line 242
            aload 0 /* frame */
            invokevirtual com.sun.javafx.iio.ImageFrame.getHeight:()I
            istore 8 /* height */
        start local 8 // int height
        17: .line 243
            aload 0 /* frame */
            invokevirtual com.sun.javafx.iio.ImageFrame.getStride:()I
            istore 9 /* inStride */
        start local 9 // int inStride
        18: .line 244
            aload 3 /* convertedType */
            iload 7 /* width */
            iload 8 /* height */
            invokestatic com.sun.javafx.iio.common.ImageTools.createImageArray:(Lcom/sun/javafx/iio/ImageStorage$ImageType;II)[B
            astore 10 /* outArray */
        start local 10 // byte[] outArray
        19: .line 245
            aload 10 /* outArray */
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            astore 11 /* newBuf */
        start local 11 // java.nio.ByteBuffer newBuf
        20: .line 246
            aload 10 /* outArray */
            arraylength
            iload 8 /* height */
            idiv
            istore 12 /* outStride */
        start local 12 // int outStride
        21: .line 247
            aload 0 /* frame */
            invokevirtual com.sun.javafx.iio.ImageFrame.getPalette:()[[B
            astore 13 /* palette */
        start local 13 // byte[][] palette
        22: .line 248
            aload 0 /* frame */
            invokevirtual com.sun.javafx.iio.ImageFrame.getMetadata:()Lcom/sun/javafx/iio/ImageMetadata;
            astore 14 /* metadata */
        start local 14 // com.sun.javafx.iio.ImageMetadata metadata
        23: .line 249
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.transparentIndex:Ljava/lang/Integer;
            ifnull 24
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.transparentIndex:Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            goto 25
      StackMap locals: com.sun.javafx.iio.ImageFrame top com.sun.javafx.iio.ImageStorage$ImageType com.sun.javafx.iio.ImageStorage$ImageType byte[] java.nio.Buffer java.nio.ByteBuffer int int int byte[] java.nio.ByteBuffer int byte[][] com.sun.javafx.iio.ImageMetadata
      StackMap stack:
        24: iconst_0
      StackMap locals:
      StackMap stack: int
        25: istore 15 /* transparentIndex */
        start local 15 // int transparentIndex
        26: .line 250
            iload 7 /* width */
            iload 8 /* height */
            aload 2 /* type */
        27: .line 251
            aload 4 /* inArray */
            iconst_0
            iload 9 /* inStride */
            aload 10 /* outArray */
            iconst_0
            iload 12 /* outStride */
        28: .line 252
            aload 13 /* palette */
            iload 15 /* transparentIndex */
            iconst_0
        29: .line 250
            invokestatic com.sun.javafx.iio.common.ImageTools.convert:(IILcom/sun/javafx/iio/ImageStorage$ImageType;[BII[BII[[BIZ)[B
            pop
        30: .line 253
            new com.sun.javafx.iio.ImageMetadata
            dup
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.gamma:Ljava/lang/Float;
        31: .line 254
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.blackIsZero:Ljava/lang/Boolean;
            aconst_null
        32: .line 255
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.backgroundColor:Ljava/lang/Integer;
            aconst_null
        33: .line 256
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.delayTime:Ljava/lang/Integer;
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.loopCount:Ljava/lang/Integer;
        34: .line 257
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.imageWidth:Ljava/lang/Integer;
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.imageHeight:Ljava/lang/Integer;
        35: .line 258
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.imageLeftPosition:Ljava/lang/Integer;
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.imageTopPosition:Ljava/lang/Integer;
        36: .line 259
            aload 14 /* metadata */
            getfield com.sun.javafx.iio.ImageMetadata.disposalMethod:Ljava/lang/Integer;
        37: .line 253
            invokespecial com.sun.javafx.iio.ImageMetadata.<init>:(Ljava/lang/Float;Ljava/lang/Boolean;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/Integer;)V
            astore 16 /* imd */
        start local 16 // com.sun.javafx.iio.ImageMetadata imd
        38: .line 260
            new com.sun.javafx.iio.ImageFrame
            dup
            aload 3 /* convertedType */
            aload 11 /* newBuf */
            iload 7 /* width */
            iload 8 /* height */
        39: .line 261
            iload 12 /* outStride */
            aconst_null
            aload 16 /* imd */
        40: .line 260
            invokespecial com.sun.javafx.iio.ImageFrame.<init>:(Lcom/sun/javafx/iio/ImageStorage$ImageType;Ljava/nio/ByteBuffer;III[[BLcom/sun/javafx/iio/ImageMetadata;)V
            astore 1 /* retFrame */
        end local 16 // com.sun.javafx.iio.ImageMetadata imd
        end local 15 // int transparentIndex
        end local 14 // com.sun.javafx.iio.ImageMetadata metadata
        end local 13 // byte[][] palette
        end local 12 // int outStride
        end local 11 // java.nio.ByteBuffer newBuf
        end local 10 // byte[] outArray
        end local 9 // int inStride
        end local 8 // int height
        end local 7 // int width
        end local 6 // java.nio.ByteBuffer bbuf
        end local 5 // java.nio.Buffer buf
        end local 4 // byte[] inArray
        start local 1 // com.sun.javafx.iio.ImageFrame retFrame
        41: .line 263
      StackMap locals: com.sun.javafx.iio.ImageFrame com.sun.javafx.iio.ImageFrame com.sun.javafx.iio.ImageStorage$ImageType com.sun.javafx.iio.ImageStorage$ImageType
      StackMap stack:
            aload 1 /* retFrame */
            areturn
        end local 3 // com.sun.javafx.iio.ImageStorage$ImageType convertedType
        end local 2 // com.sun.javafx.iio.ImageStorage$ImageType type
        end local 1 // com.sun.javafx.iio.ImageFrame retFrame
        end local 0 // com.sun.javafx.iio.ImageFrame frame
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   42     0             frame  Lcom/sun/javafx/iio/ImageFrame;
            4    5     1          retFrame  Lcom/sun/javafx/iio/ImageFrame;
           41   42     1          retFrame  Lcom/sun/javafx/iio/ImageFrame;
            1   42     2              type  Lcom/sun/javafx/iio/ImageStorage$ImageType;
            2   42     3     convertedType  Lcom/sun/javafx/iio/ImageStorage$ImageType;
            6   41     4           inArray  [B
            7   41     5               buf  Ljava/nio/Buffer;
           10   41     6              bbuf  Ljava/nio/ByteBuffer;
           16   41     7             width  I
           17   41     8            height  I
           18   41     9          inStride  I
           19   41    10          outArray  [B
           20   41    11            newBuf  Ljava/nio/ByteBuffer;
           21   41    12         outStride  I
           22   41    13           palette  [[B
           23   41    14          metadata  Lcom/sun/javafx/iio/ImageMetadata;
           26   41    15  transparentIndex  I
           38   41    16               imd  Lcom/sun/javafx/iio/ImageMetadata;
    MethodParameters:
       Name  Flags
      frame  

  public static byte[] convert(int, int, com.sun.javafx.iio.ImageStorage$ImageType, byte[], int, int, byte[], int, int, byte[][], int, boolean);
    descriptor: (IILcom/sun/javafx/iio/ImageStorage$ImageType;[BII[BII[[BIZ)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=27, args_size=12
        start local 0 // int width
        start local 1 // int height
        start local 2 // com.sun.javafx.iio.ImageStorage$ImageType inputType
        start local 3 // byte[] input
        start local 4 // int inputOffset
        start local 5 // int inRowStride
        start local 6 // byte[] output
        start local 7 // int outputOffset
        start local 8 // int outRowStride
        start local 9 // byte[][] palette
        start local 10 // int transparentIndex
        start local 11 // boolean skipTransparent
         0: .line 273
            aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpeq 3
         1: .line 274
            aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGB:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpeq 3
         2: .line 275
            aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGBA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 23
         3: .line 276
      StackMap locals:
      StackMap stack:
            aload 3 /* input */
            aload 6 /* output */
            if_acmpeq 196
         4: .line 277
            iload 0 /* width */
            istore 12 /* bytesPerRow */
        start local 12 // int bytesPerRow
         5: .line 278
            aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGB:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 8
         6: .line 279
            iload 12 /* bytesPerRow */
            iconst_3
            imul
            istore 12 /* bytesPerRow */
         7: .line 280
            goto 10
      StackMap locals: int
      StackMap stack:
         8: aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGBA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 10
         9: .line 281
            iload 12 /* bytesPerRow */
            iconst_4
            imul
            istore 12 /* bytesPerRow */
        10: .line 283
      StackMap locals:
      StackMap stack:
            iload 1 /* height */
            iconst_1
            if_icmpne 13
        11: .line 284
            aload 3 /* input */
            iload 4 /* inputOffset */
            aload 6 /* output */
            iload 7 /* outputOffset */
            iload 12 /* bytesPerRow */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        12: .line 285
            goto 196
        13: .line 286
      StackMap locals:
      StackMap stack:
            iload 4 /* inputOffset */
            istore 13 /* inRowOffset */
        start local 13 // int inRowOffset
        14: .line 287
            iload 7 /* outputOffset */
            istore 14 /* outRowOffset */
        start local 14 // int outRowOffset
        15: .line 288
            iconst_0
            istore 15 /* row */
        start local 15 // int row
        16: goto 21
        17: .line 289
      StackMap locals: int int int
      StackMap stack:
            aload 3 /* input */
            iload 13 /* inRowOffset */
            aload 6 /* output */
            iload 14 /* outRowOffset */
            iload 12 /* bytesPerRow */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 290
            iload 13 /* inRowOffset */
            iload 5 /* inRowStride */
            iadd
            istore 13 /* inRowOffset */
        19: .line 291
            iload 14 /* outRowOffset */
            iload 8 /* outRowStride */
            iadd
            istore 14 /* outRowOffset */
        20: .line 288
            iinc 15 /* row */ 1
      StackMap locals:
      StackMap stack:
        21: iload 15 /* row */
            iload 1 /* height */
            if_icmplt 17
        end local 15 // int row
        end local 14 // int outRowOffset
        end local 13 // int inRowOffset
        end local 12 // int bytesPerRow
        22: .line 295
            goto 196
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int
      StackMap stack:
        23: aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY_ALPHA:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpeq 24
            aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY_ALPHA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 66
        24: .line 296
      StackMap locals:
      StackMap stack:
            iload 4 /* inputOffset */
            istore 12 /* inOffset */
        start local 12 // int inOffset
        25: .line 297
            iload 7 /* outputOffset */
            istore 13 /* outOffset */
        start local 13 // int outOffset
        26: .line 298
            aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY_ALPHA:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 48
        27: .line 299
            iconst_0
            istore 14 /* y */
        start local 14 // int y
        28: goto 46
        29: .line 300
      StackMap locals: int int int
      StackMap stack:
            iload 12 /* inOffset */
            istore 15 /* inOff */
        start local 15 // int inOff
        30: .line 301
            iload 13 /* outOffset */
            istore 16 /* outOff */
        start local 16 // int outOff
        31: .line 302
            iconst_0
            istore 17 /* x */
        start local 17 // int x
        32: goto 42
        33: .line 304
      StackMap locals: int int int
      StackMap stack:
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            istore 18 /* gray */
        start local 18 // byte gray
        34: .line 305
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            sipush 255
            iand
            istore 19 /* alpha */
        start local 19 // int alpha
        35: .line 306
            iload 19 /* alpha */
            i2f
            ldc 255.0
            fdiv
            fstore 20 /* f */
        start local 20 // float f
        36: .line 307
            fload 20 /* f */
            iload 18 /* gray */
            sipush 255
            iand
            i2f
            fmul
            f2i
            i2b
            istore 18 /* gray */
        37: .line 308
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 18 /* gray */
            bastore
        38: .line 309
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 18 /* gray */
            bastore
        39: .line 310
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 18 /* gray */
            bastore
        40: .line 311
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 19 /* alpha */
            i2b
            bastore
        end local 20 // float f
        end local 19 // int alpha
        end local 18 // byte gray
        41: .line 302
            iinc 17 /* x */ 1
      StackMap locals:
      StackMap stack:
        42: iload 17 /* x */
            iload 0 /* width */
            if_icmplt 33
        end local 17 // int x
        43: .line 313
            iload 12 /* inOffset */
            iload 5 /* inRowStride */
            iadd
            istore 12 /* inOffset */
        44: .line 314
            iload 13 /* outOffset */
            iload 8 /* outRowStride */
            iadd
            istore 13 /* outOffset */
        end local 16 // int outOff
        end local 15 // int inOff
        45: .line 299
            iinc 14 /* y */ 1
      StackMap locals:
      StackMap stack:
        46: iload 14 /* y */
            iload 1 /* height */
            if_icmplt 29
        end local 14 // int y
        47: .line 316
            goto 196
        48: .line 317
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 14 /* y */
        start local 14 // int y
        49: goto 64
        50: .line 318
      StackMap locals: int
      StackMap stack:
            iload 12 /* inOffset */
            istore 15 /* inOff */
        start local 15 // int inOff
        51: .line 319
            iload 13 /* outOffset */
            istore 16 /* outOff */
        start local 16 // int outOff
        52: .line 320
            iconst_0
            istore 17 /* x */
        start local 17 // int x
        53: goto 60
        54: .line 322
      StackMap locals: int int int
      StackMap stack:
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            istore 18 /* gray */
        start local 18 // byte gray
        55: .line 323
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 18 /* gray */
            bastore
        56: .line 324
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 18 /* gray */
            bastore
        57: .line 325
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 18 /* gray */
            bastore
        58: .line 326
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            bastore
        end local 18 // byte gray
        59: .line 320
            iinc 17 /* x */ 1
      StackMap locals:
      StackMap stack:
        60: iload 17 /* x */
            iload 0 /* width */
            if_icmplt 54
        end local 17 // int x
        61: .line 328
            iload 12 /* inOffset */
            iload 5 /* inRowStride */
            iadd
            istore 12 /* inOffset */
        62: .line 329
            iload 13 /* outOffset */
            iload 8 /* outRowStride */
            iadd
            istore 13 /* outOffset */
        end local 16 // int outOff
        end local 15 // int inOff
        63: .line 317
            iinc 14 /* y */ 1
      StackMap locals:
      StackMap stack:
        64: iload 14 /* y */
            iload 1 /* height */
            if_icmplt 50
        end local 14 // int y
        end local 13 // int outOffset
        end local 12 // int inOffset
        65: .line 332
            goto 196
      StackMap locals:
      StackMap stack:
        66: aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 84
        67: .line 333
            iload 4 /* inputOffset */
            istore 12 /* inOffset */
        start local 12 // int inOffset
        68: .line 334
            iload 7 /* outputOffset */
            istore 13 /* outOffset */
        start local 13 // int outOffset
        69: .line 335
            aload 9 /* palette */
            iconst_0
            aaload
            astore 14 /* red */
        start local 14 // byte[] red
        70: .line 336
            aload 9 /* palette */
            iconst_1
            aaload
            astore 15 /* green */
        start local 15 // byte[] green
        71: .line 337
            aload 9 /* palette */
            iconst_2
            aaload
            astore 16 /* blue */
        start local 16 // byte[] blue
        72: .line 338
            iload 12 /* inOffset */
            istore 17 /* inOff */
        start local 17 // int inOff
        73: .line 339
            iload 13 /* outOffset */
            istore 18 /* outOff */
        start local 18 // int outOff
        74: .line 342
            iconst_0
            istore 19 /* x */
        start local 19 // int x
        75: goto 82
        76: .line 343
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int int int byte[] byte[] byte[] int int int
      StackMap stack:
            aload 3 /* input */
            iload 17 /* inOff */
            iinc 17 /* inOff */ 1
            baload
            sipush 255
            iand
            istore 20 /* index */
        start local 20 // int index
        77: .line 345
            aload 6 /* output */
            iload 18 /* outOff */
            iinc 18 /* outOff */ 1
            aload 14 /* red */
            iload 20 /* index */
            baload
            bastore
        78: .line 346
            aload 6 /* output */
            iload 18 /* outOff */
            iinc 18 /* outOff */ 1
            aload 15 /* green */
            iload 20 /* index */
            baload
            bastore
        79: .line 347
            aload 6 /* output */
            iload 18 /* outOff */
            iinc 18 /* outOff */ 1
            aload 16 /* blue */
            iload 20 /* index */
            baload
            bastore
        80: .line 349
            iload 13 /* outOffset */
            iload 8 /* outRowStride */
            iadd
            istore 13 /* outOffset */
        end local 20 // int index
        81: .line 342
            iinc 19 /* x */ 1
      StackMap locals:
      StackMap stack:
        82: iload 19 /* x */
            iload 0 /* width */
            if_icmplt 76
        end local 19 // int x
        end local 18 // int outOff
        end local 17 // int inOff
        end local 16 // byte[] blue
        end local 15 // byte[] green
        end local 14 // byte[] red
        end local 13 // int outOffset
        end local 12 // int inOffset
        83: .line 351
            goto 196
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int
      StackMap stack:
        84: aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE_ALPHA:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 110
        85: .line 352
            iload 4 /* inputOffset */
            istore 12 /* inOffset */
        start local 12 // int inOffset
        86: .line 353
            iload 7 /* outputOffset */
            istore 13 /* outOffset */
        start local 13 // int outOffset
        87: .line 354
            aload 9 /* palette */
            iconst_0
            aaload
            astore 14 /* red */
        start local 14 // byte[] red
        88: .line 355
            aload 9 /* palette */
            iconst_1
            aaload
            astore 15 /* green */
        start local 15 // byte[] green
        89: .line 356
            aload 9 /* palette */
            iconst_2
            aaload
            astore 16 /* blue */
        start local 16 // byte[] blue
        90: .line 357
            aload 9 /* palette */
            iconst_3
            aaload
            astore 17 /* alpha */
        start local 17 // byte[] alpha
        91: .line 358
            iload 12 /* inOffset */
            istore 18 /* inOff */
        start local 18 // int inOff
        92: .line 359
            iload 13 /* outOffset */
            istore 19 /* outOff */
        start local 19 // int outOff
        93: .line 360
            iconst_0
            istore 20 /* x */
        start local 20 // int x
        94: goto 106
        95: .line 361
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int int int byte[] byte[] byte[] byte[] int int int
      StackMap stack:
            aload 3 /* input */
            iload 18 /* inOff */
            iinc 18 /* inOff */ 1
            baload
            sipush 255
            iand
            istore 21 /* index */
        start local 21 // int index
        96: .line 362
            aload 14 /* red */
            iload 21 /* index */
            baload
            istore 22 /* r */
        start local 22 // byte r
        97: .line 363
            aload 15 /* green */
            iload 21 /* index */
            baload
            istore 23 /* g */
        start local 23 // byte g
        98: .line 364
            aload 16 /* blue */
            iload 21 /* index */
            baload
            istore 24 /* b */
        start local 24 // byte b
        99: .line 365
            aload 17 /* alpha */
            iload 21 /* index */
            baload
            sipush 255
            iand
            istore 25 /* a */
        start local 25 // int a
       100: .line 366
            iload 25 /* a */
            i2f
            ldc 255.0
            fdiv
            fstore 26 /* f */
        start local 26 // float f
       101: .line 367
            aload 6 /* output */
            iload 19 /* outOff */
            iinc 19 /* outOff */ 1
            fload 26 /* f */
            iload 22 /* r */
            sipush 255
            iand
            i2f
            fmul
            f2i
            i2b
            bastore
       102: .line 368
            aload 6 /* output */
            iload 19 /* outOff */
            iinc 19 /* outOff */ 1
            fload 26 /* f */
            iload 23 /* g */
            sipush 255
            iand
            i2f
            fmul
            f2i
            i2b
            bastore
       103: .line 369
            aload 6 /* output */
            iload 19 /* outOff */
            iinc 19 /* outOff */ 1
            fload 26 /* f */
            iload 24 /* b */
            sipush 255
            iand
            i2f
            fmul
            f2i
            i2b
            bastore
       104: .line 370
            aload 6 /* output */
            iload 19 /* outOff */
            iinc 19 /* outOff */ 1
            iload 25 /* a */
            i2b
            bastore
        end local 26 // float f
        end local 25 // int a
        end local 24 // byte b
        end local 23 // byte g
        end local 22 // byte r
        end local 21 // int index
       105: .line 360
            iinc 20 /* x */ 1
      StackMap locals:
      StackMap stack:
       106: iload 20 /* x */
            iload 0 /* width */
            if_icmplt 95
        end local 20 // int x
       107: .line 372
            iload 12 /* inOffset */
            iload 5 /* inRowStride */
            iadd
            istore 12 /* inOffset */
       108: .line 373
            iload 13 /* outOffset */
            iload 8 /* outRowStride */
            iadd
            istore 13
        end local 19 // int outOff
        end local 18 // int inOff
        end local 17 // byte[] alpha
        end local 16 // byte[] blue
        end local 15 // byte[] green
        end local 14 // byte[] red
        end local 13 // int outOffset
        end local 12 // int inOffset
       109: .line 374
            goto 196
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int
      StackMap stack:
       110: aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE_ALPHA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 135
       111: .line 375
            iload 4 /* inputOffset */
            istore 12 /* inOffset */
        start local 12 // int inOffset
       112: .line 376
            iload 7 /* outputOffset */
            istore 13 /* outOffset */
        start local 13 // int outOffset
       113: .line 377
            aload 9 /* palette */
            iconst_0
            aaload
            astore 14 /* red */
        start local 14 // byte[] red
       114: .line 378
            aload 9 /* palette */
            iconst_1
            aaload
            astore 15 /* green */
        start local 15 // byte[] green
       115: .line 379
            aload 9 /* palette */
            iconst_2
            aaload
            astore 16 /* blue */
        start local 16 // byte[] blue
       116: .line 380
            aload 9 /* palette */
            iconst_3
            aaload
            astore 17 /* alpha */
        start local 17 // byte[] alpha
       117: .line 381
            iconst_0
            istore 18 /* y */
        start local 18 // int y
       118: goto 133
       119: .line 382
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int int int byte[] byte[] byte[] byte[] int
      StackMap stack:
            iload 12 /* inOffset */
            istore 19 /* inOff */
        start local 19 // int inOff
       120: .line 383
            iload 13 /* outOffset */
            istore 20 /* outOff */
        start local 20 // int outOff
       121: .line 384
            iconst_0
            istore 21 /* x */
        start local 21 // int x
       122: goto 129
       123: .line 385
      StackMap locals: int int int
      StackMap stack:
            aload 3 /* input */
            iload 19 /* inOff */
            iinc 19 /* inOff */ 1
            baload
            sipush 255
            iand
            istore 22 /* index */
        start local 22 // int index
       124: .line 386
            aload 6 /* output */
            iload 20 /* outOff */
            iinc 20 /* outOff */ 1
            aload 14 /* red */
            iload 22 /* index */
            baload
            bastore
       125: .line 387
            aload 6 /* output */
            iload 20 /* outOff */
            iinc 20 /* outOff */ 1
            aload 15 /* green */
            iload 22 /* index */
            baload
            bastore
       126: .line 388
            aload 6 /* output */
            iload 20 /* outOff */
            iinc 20 /* outOff */ 1
            aload 16 /* blue */
            iload 22 /* index */
            baload
            bastore
       127: .line 389
            aload 6 /* output */
            iload 20 /* outOff */
            iinc 20 /* outOff */ 1
            aload 17 /* alpha */
            iload 22 /* index */
            baload
            bastore
        end local 22 // int index
       128: .line 384
            iinc 21 /* x */ 1
      StackMap locals:
      StackMap stack:
       129: iload 21 /* x */
            iload 0 /* width */
            if_icmplt 123
        end local 21 // int x
       130: .line 391
            iload 12 /* inOffset */
            iload 5 /* inRowStride */
            iadd
            istore 12 /* inOffset */
       131: .line 392
            iload 13 /* outOffset */
            iload 8 /* outRowStride */
            iadd
            istore 13 /* outOffset */
        end local 20 // int outOff
        end local 19 // int inOff
       132: .line 381
            iinc 18 /* y */ 1
      StackMap locals:
      StackMap stack:
       133: iload 18 /* y */
            iload 1 /* height */
            if_icmplt 119
        end local 18 // int y
        end local 17 // byte[] alpha
        end local 16 // byte[] blue
        end local 15 // byte[] green
        end local 14 // byte[] red
        end local 13 // int outOffset
        end local 12 // int inOffset
       134: .line 394
            goto 196
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int
      StackMap stack:
       135: aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE_TRANS:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 168
       136: .line 395
            iload 4 /* inputOffset */
            istore 12 /* inOffset */
        start local 12 // int inOffset
       137: .line 396
            iload 7 /* outputOffset */
            istore 13 /* outOffset */
        start local 13 // int outOffset
       138: .line 397
            iconst_0
            istore 14 /* y */
        start local 14 // int y
       139: goto 166
       140: .line 398
      StackMap locals: int int int
      StackMap stack:
            iload 12 /* inOffset */
            istore 15 /* inOff */
        start local 15 // int inOff
       141: .line 399
            iload 13 /* outOffset */
            istore 16 /* outOff */
        start local 16 // int outOff
       142: .line 400
            aload 9 /* palette */
            iconst_0
            aaload
            astore 17 /* red */
        start local 17 // byte[] red
       143: .line 401
            aload 9 /* palette */
            iconst_1
            aaload
            astore 18 /* green */
        start local 18 // byte[] green
       144: .line 402
            aload 9 /* palette */
            iconst_2
            aaload
            astore 19 /* blue */
        start local 19 // byte[] blue
       145: .line 403
            iconst_0
            istore 20 /* x */
        start local 20 // int x
       146: goto 162
       147: .line 404
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int int int int int int byte[] byte[] byte[] int
      StackMap stack:
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            sipush 255
            iand
            istore 21 /* index */
        start local 21 // int index
       148: .line 405
            iload 21 /* index */
            iload 10 /* transparentIndex */
            if_icmpne 157
       149: .line 406
            iload 11 /* skipTransparent */
            ifeq 152
       150: .line 407
            iinc 16 /* outOff */ 4
       151: .line 408
            goto 161
       152: .line 409
      StackMap locals: int
      StackMap stack:
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iconst_0
            bastore
       153: .line 410
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iconst_0
            bastore
       154: .line 411
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iconst_0
            bastore
       155: .line 412
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iconst_0
            bastore
       156: .line 414
            goto 161
       157: .line 415
      StackMap locals:
      StackMap stack:
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            aload 17 /* red */
            iload 21 /* index */
            baload
            bastore
       158: .line 416
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            aload 18 /* green */
            iload 21 /* index */
            baload
            bastore
       159: .line 417
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            aload 19 /* blue */
            iload 21 /* index */
            baload
            bastore
       160: .line 418
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iconst_m1
            bastore
        end local 21 // int index
       161: .line 403
      StackMap locals:
      StackMap stack:
            iinc 20 /* x */ 1
      StackMap locals:
      StackMap stack:
       162: iload 20 /* x */
            iload 0 /* width */
            if_icmplt 147
        end local 20 // int x
       163: .line 421
            iload 12 /* inOffset */
            iload 5 /* inRowStride */
            iadd
            istore 12 /* inOffset */
       164: .line 422
            iload 13 /* outOffset */
            iload 8 /* outRowStride */
            iadd
            istore 13 /* outOffset */
        end local 19 // byte[] blue
        end local 18 // byte[] green
        end local 17 // byte[] red
        end local 16 // int outOff
        end local 15 // int inOff
       165: .line 397
            iinc 14 /* y */ 1
      StackMap locals: int int com.sun.javafx.iio.ImageStorage$ImageType byte[] int int byte[] int int byte[][] int int int int int
      StackMap stack:
       166: iload 14 /* y */
            iload 1 /* height */
            if_icmplt 140
        end local 14 // int y
        end local 13 // int outOffset
        end local 12 // int inOffset
       167: .line 424
            goto 196
      StackMap locals:
      StackMap stack:
       168: aload 2 /* inputType */
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGBA:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            if_acmpne 193
       169: .line 425
            iload 4 /* inputOffset */
            istore 12 /* inOffset */
        start local 12 // int inOffset
       170: .line 426
            iload 7 /* outputOffset */
            istore 13 /* outOffset */
        start local 13 // int outOffset
       171: .line 427
            iconst_0
            istore 14 /* y */
        start local 14 // int y
       172: goto 191
       173: .line 428
      StackMap locals: int int int
      StackMap stack:
            iload 12 /* inOffset */
            istore 15 /* inOff */
        start local 15 // int inOff
       174: .line 429
            iload 13 /* outOffset */
            istore 16 /* outOff */
        start local 16 // int outOff
       175: .line 430
            iconst_0
            istore 17 /* x */
        start local 17 // int x
       176: goto 187
       177: .line 432
      StackMap locals: int int int
      StackMap stack:
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            istore 18 /* red */
        start local 18 // byte red
       178: .line 433
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            istore 19 /* green */
        start local 19 // byte green
       179: .line 434
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            istore 20 /* blue */
        start local 20 // byte blue
       180: .line 435
            aload 3 /* input */
            iload 15 /* inOff */
            iinc 15 /* inOff */ 1
            baload
            sipush 255
            iand
            istore 21 /* alpha */
        start local 21 // int alpha
       181: .line 436
            iload 21 /* alpha */
            i2f
            ldc 255.0
            fdiv
            fstore 22 /* f */
        start local 22 // float f
       182: .line 437
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            fload 22 /* f */
            iload 18 /* red */
            sipush 255
            iand
            i2f
            fmul
            f2i
            i2b
            bastore
       183: .line 438
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            fload 22 /* f */
            iload 19 /* green */
            sipush 255
            iand
            i2f
            fmul
            f2i
            i2b
            bastore
       184: .line 439
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            fload 22 /* f */
            iload 20 /* blue */
            sipush 255
            iand
            i2f
            fmul
            f2i
            i2b
            bastore
       185: .line 440
            aload 6 /* output */
            iload 16 /* outOff */
            iinc 16 /* outOff */ 1
            iload 21 /* alpha */
            i2b
            bastore
        end local 22 // float f
        end local 21 // int alpha
        end local 20 // byte blue
        end local 19 // byte green
        end local 18 // byte red
       186: .line 430
            iinc 17 /* x */ 1
      StackMap locals:
      StackMap stack:
       187: iload 17 /* x */
            iload 0 /* width */
            if_icmplt 177
        end local 17 // int x
       188: .line 443
            iload 12 /* inOffset */
            iload 5 /* inRowStride */
            iadd
            istore 12 /* inOffset */
       189: .line 444
            iload 13 /* outOffset */
            iload 8 /* outRowStride */
            iadd
            istore 13 /* outOffset */
        end local 16 // int outOff
        end local 15 // int inOff
       190: .line 427
            iinc 14 /* y */ 1
      StackMap locals:
      StackMap stack:
       191: iload 14 /* y */
            iload 1 /* height */
            if_icmplt 173
        end local 14 // int y
        end local 13 // int outOffset
        end local 12 // int inOffset
       192: .line 446
            goto 196
       193: .line 447
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported ImageType "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       194: .line 448
            aload 2 /* inputType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       195: .line 447
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
       196: .line 451
      StackMap locals:
      StackMap stack:
            aload 6 /* output */
            areturn
        end local 11 // boolean skipTransparent
        end local 10 // int transparentIndex
        end local 9 // byte[][] palette
        end local 8 // int outRowStride
        end local 7 // int outputOffset
        end local 6 // byte[] output
        end local 5 // int inRowStride
        end local 4 // int inputOffset
        end local 3 // byte[] input
        end local 2 // com.sun.javafx.iio.ImageStorage$ImageType inputType
        end local 1 // int height
        end local 0 // int width
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  197     0             width  I
            0  197     1            height  I
            0  197     2         inputType  Lcom/sun/javafx/iio/ImageStorage$ImageType;
            0  197     3             input  [B
            0  197     4       inputOffset  I
            0  197     5       inRowStride  I
            0  197     6            output  [B
            0  197     7      outputOffset  I
            0  197     8      outRowStride  I
            0  197     9           palette  [[B
            0  197    10  transparentIndex  I
            0  197    11   skipTransparent  Z
            5   22    12       bytesPerRow  I
           14   22    13       inRowOffset  I
           15   22    14      outRowOffset  I
           16   22    15               row  I
           25   65    12          inOffset  I
           26   65    13         outOffset  I
           28   47    14                 y  I
           30   45    15             inOff  I
           31   45    16            outOff  I
           32   43    17                 x  I
           34   41    18              gray  B
           35   41    19             alpha  I
           36   41    20                 f  F
           49   65    14                 y  I
           51   63    15             inOff  I
           52   63    16            outOff  I
           53   61    17                 x  I
           55   59    18              gray  B
           68   83    12          inOffset  I
           69   83    13         outOffset  I
           70   83    14               red  [B
           71   83    15             green  [B
           72   83    16              blue  [B
           73   83    17             inOff  I
           74   83    18            outOff  I
           75   83    19                 x  I
           77   81    20             index  I
           86  109    12          inOffset  I
           87  109    13         outOffset  I
           88  109    14               red  [B
           89  109    15             green  [B
           90  109    16              blue  [B
           91  109    17             alpha  [B
           92  109    18             inOff  I
           93  109    19            outOff  I
           94  107    20                 x  I
           96  105    21             index  I
           97  105    22                 r  B
           98  105    23                 g  B
           99  105    24                 b  B
          100  105    25                 a  I
          101  105    26                 f  F
          112  134    12          inOffset  I
          113  134    13         outOffset  I
          114  134    14               red  [B
          115  134    15             green  [B
          116  134    16              blue  [B
          117  134    17             alpha  [B
          118  134    18                 y  I
          120  132    19             inOff  I
          121  132    20            outOff  I
          122  130    21                 x  I
          124  128    22             index  I
          137  167    12          inOffset  I
          138  167    13         outOffset  I
          139  167    14                 y  I
          141  165    15             inOff  I
          142  165    16            outOff  I
          143  165    17               red  [B
          144  165    18             green  [B
          145  165    19              blue  [B
          146  163    20                 x  I
          148  161    21             index  I
          170  192    12          inOffset  I
          171  192    13         outOffset  I
          172  192    14                 y  I
          174  190    15             inOff  I
          175  190    16            outOff  I
          176  188    17                 x  I
          178  186    18               red  B
          179  186    19             green  B
          180  186    20              blue  B
          181  186    21             alpha  I
          182  186    22                 f  F
    MethodParameters:
                  Name  Flags
      width             
      height            
      inputType         
      input             
      inputOffset       
      inRowStride       
      output            
      outputOffset      
      outRowStride      
      palette           
      transparentIndex  
      skipTransparent   

  public static java.lang.String getScaledImageName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String path
         0: .line 455
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* result */
        start local 1 // java.lang.StringBuilder result
         1: .line 456
            aload 0 /* path */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 2 /* slash */
        start local 2 // int slash
         2: .line 457
            iload 2 /* slash */
            ifge 3
            aload 0 /* path */
            goto 4
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
         3: aload 0 /* path */
            iload 2 /* slash */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         4: astore 3 /* name */
        start local 3 // java.lang.String name
         5: .line 458
            aload 3 /* name */
            ldc "."
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 4 /* dot */
        start local 4 // int dot
         6: .line 459
            iload 4 /* dot */
            ifge 8
         7: .line 460
            aload 3 /* name */
            invokevirtual java.lang.String.length:()I
            istore 4 /* dot */
         8: .line 462
      StackMap locals: java.lang.String int
      StackMap stack:
            iload 2 /* slash */
            iflt 10
         9: .line 463
            aload 1 /* result */
            aload 0 /* path */
            iconst_0
            iload 2 /* slash */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 465
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            aload 3 /* name */
            iconst_0
            iload 4 /* dot */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 466
            aload 1 /* result */
            ldc "@2x"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 467
            aload 1 /* result */
            aload 3 /* name */
            iload 4 /* dot */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 468
            aload 1 /* result */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // int dot
        end local 3 // java.lang.String name
        end local 2 // int slash
        end local 1 // java.lang.StringBuilder result
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    path  Ljava/lang/String;
            1   14     1  result  Ljava/lang/StringBuilder;
            2   14     2   slash  I
            5   14     3    name  Ljava/lang/String;
            6   14     4     dot  I
    MethodParameters:
      Name  Flags
      path  

  public static java.io.InputStream createInputStream(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/io/InputStream;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String input
         0: .line 472
            aconst_null
            astore 1 /* stream */
        start local 1 // java.io.InputStream stream
         1: .line 477
            new java.io.File
            dup
            aload 0 /* input */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 2 /* file */
        start local 2 // java.io.File file
         2: .line 478
            aload 2 /* file */
            invokevirtual java.io.File.exists:()Z
            ifeq 6
         3: .line 479
            new java.io.FileInputStream
            dup
            aload 2 /* file */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 1 /* stream */
        end local 2 // java.io.File file
         4: .line 481
            goto 6
      StackMap locals: java.lang.String java.io.InputStream
      StackMap stack: java.lang.Exception
         5: pop
         6: .line 484
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            ifnonnull 9
         7: .line 485
            new java.net.URL
            dup
            aload 0 /* input */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 2 /* url */
        start local 2 // java.net.URL url
         8: .line 486
            aload 2 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            astore 1 /* stream */
        end local 2 // java.net.URL url
         9: .line 488
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            areturn
        end local 1 // java.io.InputStream stream
        end local 0 // java.lang.String input
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0   input  Ljava/lang/String;
            1   10     1  stream  Ljava/io/InputStream;
            2    4     2    file  Ljava/io/File;
            8    9     2     url  Ljava/net/URL;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      input  

  private static void computeUpdatedPixels(int, int, int, int, int, int, int, int, int, int[], int);
    descriptor: (IIIIIIIII[II)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=18, args_size=11
        start local 0 // int sourceOffset
        start local 1 // int sourceExtent
        start local 2 // int destinationOffset
        start local 3 // int dstMin
        start local 4 // int dstMax
        start local 5 // int sourceSubsampling
        start local 6 // int passStart
        start local 7 // int passExtent
        start local 8 // int passPeriod
        start local 9 // int[] vals
        start local 10 // int offset
         0: .line 532
            iconst_0
            istore 11 /* gotPixel */
        start local 11 // boolean gotPixel
         1: .line 533
            iconst_m1
            istore 12 /* firstDst */
        start local 12 // int firstDst
         2: .line 534
            iconst_m1
            istore 13 /* secondDst */
        start local 13 // int secondDst
         3: .line 535
            iconst_m1
            istore 14 /* lastDst */
        start local 14 // int lastDst
         4: .line 537
            iconst_0
            istore 15 /* i */
        start local 15 // int i
         5: goto 28
         6: .line 538
      StackMap locals: int int int int int int int int int int[] int int int int int int
      StackMap stack:
            iload 6 /* passStart */
            iload 15 /* i */
            iload 8 /* passPeriod */
            imul
            iadd
            istore 16 /* src */
        start local 16 // int src
         7: .line 539
            iload 16 /* src */
            iload 0 /* sourceOffset */
            if_icmpge 9
         8: .line 540
            goto 27
         9: .line 542
      StackMap locals: int
      StackMap stack:
            iload 16 /* src */
            iload 0 /* sourceOffset */
            isub
            iload 5 /* sourceSubsampling */
            irem
            ifeq 11
        10: .line 543
            goto 27
        11: .line 545
      StackMap locals:
      StackMap stack:
            iload 16 /* src */
            iload 0 /* sourceOffset */
            iload 1 /* sourceExtent */
            iadd
            if_icmplt 13
        12: .line 546
            goto 29
        13: .line 549
      StackMap locals:
      StackMap stack:
            iload 2 /* destinationOffset */
        14: .line 550
            iload 16 /* src */
            iload 0 /* sourceOffset */
            isub
            iload 5 /* sourceSubsampling */
            idiv
        15: .line 549
            iadd
            istore 17 /* dst */
        start local 17 // int dst
        16: .line 551
            iload 17 /* dst */
            iload 3 /* dstMin */
            if_icmpge 18
        17: .line 552
            goto 27
        18: .line 554
      StackMap locals: int
      StackMap stack:
            iload 17 /* dst */
            iload 4 /* dstMax */
            if_icmple 20
        19: .line 555
            goto 29
        20: .line 558
      StackMap locals:
      StackMap stack:
            iload 11 /* gotPixel */
            ifne 24
        21: .line 559
            iload 17 /* dst */
            istore 12 /* firstDst */
        22: .line 560
            iconst_1
            istore 11 /* gotPixel */
        23: .line 561
            goto 26
      StackMap locals:
      StackMap stack:
        24: iload 13 /* secondDst */
            iconst_m1
            if_icmpne 26
        25: .line 562
            iload 17 /* dst */
            istore 13 /* secondDst */
        26: .line 564
      StackMap locals:
      StackMap stack:
            iload 17 /* dst */
            istore 14 /* lastDst */
        end local 17 // int dst
        end local 16 // int src
        27: .line 537
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 15 /* i */
            iload 7 /* passExtent */
            if_icmplt 6
        end local 15 // int i
        29: .line 567
      StackMap locals:
      StackMap stack:
            aload 9 /* vals */
            iload 10 /* offset */
            iload 12 /* firstDst */
            iastore
        30: .line 570
            iload 11 /* gotPixel */
            ifne 33
        31: .line 571
            aload 9 /* vals */
            iload 10 /* offset */
            iconst_2
            iadd
            iconst_0
            iastore
        32: .line 572
            goto 34
        33: .line 573
      StackMap locals:
      StackMap stack:
            aload 9 /* vals */
            iload 10 /* offset */
            iconst_2
            iadd
            iload 14 /* lastDst */
            iload 12 /* firstDst */
            isub
            iconst_1
            iadd
            iastore
        34: .line 577
      StackMap locals:
      StackMap stack:
            aload 9 /* vals */
            iload 10 /* offset */
            iconst_4
            iadd
            iload 13 /* secondDst */
            iload 12 /* firstDst */
            isub
            iconst_1
            invokestatic java.lang.Math.max:(II)I
            iastore
        35: .line 578
            return
        end local 14 // int lastDst
        end local 13 // int secondDst
        end local 12 // int firstDst
        end local 11 // boolean gotPixel
        end local 10 // int offset
        end local 9 // int[] vals
        end local 8 // int passPeriod
        end local 7 // int passExtent
        end local 6 // int passStart
        end local 5 // int sourceSubsampling
        end local 4 // int dstMax
        end local 3 // int dstMin
        end local 2 // int destinationOffset
        end local 1 // int sourceExtent
        end local 0 // int sourceOffset
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   36     0       sourceOffset  I
            0   36     1       sourceExtent  I
            0   36     2  destinationOffset  I
            0   36     3             dstMin  I
            0   36     4             dstMax  I
            0   36     5  sourceSubsampling  I
            0   36     6          passStart  I
            0   36     7         passExtent  I
            0   36     8         passPeriod  I
            0   36     9               vals  [I
            0   36    10             offset  I
            1   36    11           gotPixel  Z
            2   36    12           firstDst  I
            3   36    13          secondDst  I
            4   36    14            lastDst  I
            5   29    15                  i  I
            7   27    16                src  I
           16   27    17                dst  I
    MethodParameters:
                   Name  Flags
      sourceOffset       
      sourceExtent       
      destinationOffset  
      dstMin             
      dstMax             
      sourceSubsampling  
      passStart          
      passExtent         
      passPeriod         
      vals               
      offset             

  public static int[] computeUpdatedPixels(com.sun.javafx.geom.Rectangle, com.sun.javafx.geom.Point2D, int, int, int, int, int, int, int, int, int, int, int, int);
    descriptor: (Lcom/sun/javafx/geom/Rectangle;Lcom/sun/javafx/geom/Point2D;IIIIIIIIIIII)[I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=15, args_size=14
        start local 0 // com.sun.javafx.geom.Rectangle sourceRegion
        start local 1 // com.sun.javafx.geom.Point2D destinationOffset
        start local 2 // int dstMinX
        start local 3 // int dstMinY
        start local 4 // int dstMaxX
        start local 5 // int dstMaxY
        start local 6 // int sourceXSubsampling
        start local 7 // int sourceYSubsampling
        start local 8 // int passXStart
        start local 9 // int passYStart
        start local 10 // int passWidth
        start local 11 // int passHeight
        start local 12 // int passPeriodX
        start local 13 // int passPeriodY
         0: .line 637
            bipush 6
            newarray 10
            astore 14 /* vals */
        start local 14 // int[] vals
         1: .line 638
            aload 0 /* sourceRegion */
            getfield com.sun.javafx.geom.Rectangle.x:I
            aload 0 /* sourceRegion */
            getfield com.sun.javafx.geom.Rectangle.width:I
         2: .line 639
            aload 1 /* destinationOffset */
            getfield com.sun.javafx.geom.Point2D.x:F
            ldc 0.5
            fadd
            f2i
         3: .line 640
            iload 2 /* dstMinX */
            iload 4 /* dstMaxX */
            iload 6 /* sourceXSubsampling */
         4: .line 641
            iload 8 /* passXStart */
            iload 10 /* passWidth */
            iload 12 /* passPeriodX */
         5: .line 642
            aload 14 /* vals */
            iconst_0
         6: .line 638
            invokestatic com.sun.javafx.iio.common.ImageTools.computeUpdatedPixels:(IIIIIIIII[II)V
         7: .line 643
            aload 0 /* sourceRegion */
            getfield com.sun.javafx.geom.Rectangle.y:I
            aload 0 /* sourceRegion */
            getfield com.sun.javafx.geom.Rectangle.height:I
         8: .line 644
            aload 1 /* destinationOffset */
            getfield com.sun.javafx.geom.Point2D.y:F
            ldc 0.5
            fadd
            f2i
         9: .line 645
            iload 3 /* dstMinY */
            iload 5 /* dstMaxY */
            iload 7 /* sourceYSubsampling */
        10: .line 646
            iload 9 /* passYStart */
            iload 11 /* passHeight */
            iload 13 /* passPeriodY */
        11: .line 647
            aload 14 /* vals */
            iconst_1
        12: .line 643
            invokestatic com.sun.javafx.iio.common.ImageTools.computeUpdatedPixels:(IIIIIIIII[II)V
        13: .line 648
            aload 14 /* vals */
            areturn
        end local 14 // int[] vals
        end local 13 // int passPeriodY
        end local 12 // int passPeriodX
        end local 11 // int passHeight
        end local 10 // int passWidth
        end local 9 // int passYStart
        end local 8 // int passXStart
        end local 7 // int sourceYSubsampling
        end local 6 // int sourceXSubsampling
        end local 5 // int dstMaxY
        end local 4 // int dstMaxX
        end local 3 // int dstMinY
        end local 2 // int dstMinX
        end local 1 // com.sun.javafx.geom.Point2D destinationOffset
        end local 0 // com.sun.javafx.geom.Rectangle sourceRegion
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   14     0        sourceRegion  Lcom/sun/javafx/geom/Rectangle;
            0   14     1   destinationOffset  Lcom/sun/javafx/geom/Point2D;
            0   14     2             dstMinX  I
            0   14     3             dstMinY  I
            0   14     4             dstMaxX  I
            0   14     5             dstMaxY  I
            0   14     6  sourceXSubsampling  I
            0   14     7  sourceYSubsampling  I
            0   14     8          passXStart  I
            0   14     9          passYStart  I
            0   14    10           passWidth  I
            0   14    11          passHeight  I
            0   14    12         passPeriodX  I
            0   14    13         passPeriodY  I
            1   14    14                vals  [I
    MethodParameters:
                    Name  Flags
      sourceRegion        
      destinationOffset   
      dstMinX             
      dstMinY             
      dstMaxX             
      dstMaxY             
      sourceXSubsampling  
      sourceYSubsampling  
      passXStart          
      passYStart          
      passWidth           
      passHeight          
      passPeriodX         
      passPeriodY         

  public static int[] computeDimensions(int, int, int, int, boolean);
    descriptor: (IIIIZ)[I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=5
        start local 0 // int sourceWidth
        start local 1 // int sourceHeight
        start local 2 // int maxWidth
        start local 3 // int maxHeight
        start local 4 // boolean preserveAspectRatio
         0: .line 654
            iload 2 /* maxWidth */
            ifge 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 2 /* maxWidth */
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* finalWidth */
        start local 5 // int finalWidth
         3: .line 655
            iload 3 /* maxHeight */
            ifge 4
            iconst_0
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iload 3 /* maxHeight */
      StackMap locals:
      StackMap stack: int
         5: istore 6 /* finalHeight */
        start local 6 // int finalHeight
         6: .line 657
            iload 5 /* finalWidth */
            ifne 10
            iload 6 /* finalHeight */
            ifne 10
         7: .line 659
            iload 0 /* sourceWidth */
            istore 5 /* finalWidth */
         8: .line 660
            iload 1 /* sourceHeight */
            istore 6 /* finalHeight */
         9: .line 661
            goto 30
      StackMap locals: int
      StackMap stack:
        10: iload 5 /* finalWidth */
            iload 0 /* sourceWidth */
            if_icmpne 11
            iload 6 /* finalHeight */
            iload 1 /* sourceHeight */
            if_icmpeq 30
        11: .line 662
      StackMap locals:
      StackMap stack:
            iload 4 /* preserveAspectRatio */
            ifeq 22
        12: .line 664
            iload 5 /* finalWidth */
            ifne 15
        13: .line 665
            iload 0 /* sourceWidth */
            i2f
            iload 6 /* finalHeight */
            i2f
            fmul
            iload 1 /* sourceHeight */
            i2f
            fdiv
            invokestatic java.lang.Math.round:(F)I
            istore 5 /* finalWidth */
        14: .line 666
            goto 26
      StackMap locals:
      StackMap stack:
        15: iload 6 /* finalHeight */
            ifne 18
        16: .line 667
            iload 1 /* sourceHeight */
            i2f
            iload 5 /* finalWidth */
            i2f
            fmul
            iload 0 /* sourceWidth */
            i2f
            fdiv
            invokestatic java.lang.Math.round:(F)I
            istore 6 /* finalHeight */
        17: .line 668
            goto 26
        18: .line 669
      StackMap locals:
      StackMap stack:
            iload 5 /* finalWidth */
            i2f
            iload 0 /* sourceWidth */
            i2f
            fdiv
            iload 6 /* finalHeight */
            i2f
            iload 1 /* sourceHeight */
            i2f
            fdiv
            invokestatic java.lang.Math.min:(FF)F
            fstore 7 /* scale */
        start local 7 // float scale
        19: .line 670
            iload 0 /* sourceWidth */
            i2f
            fload 7 /* scale */
            fmul
            invokestatic java.lang.Math.round:(F)I
            istore 5 /* finalWidth */
        20: .line 671
            iload 1 /* sourceHeight */
            i2f
            fload 7 /* scale */
            fmul
            invokestatic java.lang.Math.round:(F)I
            istore 6 /* finalHeight */
        end local 7 // float scale
        21: .line 673
            goto 26
        22: .line 675
      StackMap locals:
      StackMap stack:
            iload 6 /* finalHeight */
            ifne 24
        23: .line 676
            iload 1 /* sourceHeight */
            istore 6 /* finalHeight */
        24: .line 678
      StackMap locals:
      StackMap stack:
            iload 5 /* finalWidth */
            ifne 26
        25: .line 679
            iload 0 /* sourceWidth */
            istore 5 /* finalWidth */
        26: .line 685
      StackMap locals:
      StackMap stack:
            iload 5 /* finalWidth */
            ifne 28
        27: .line 686
            iconst_1
            istore 5 /* finalWidth */
        28: .line 688
      StackMap locals:
      StackMap stack:
            iload 6 /* finalHeight */
            ifne 30
        29: .line 689
            iconst_1
            istore 6 /* finalHeight */
        30: .line 694
      StackMap locals:
      StackMap stack:
            iconst_2
            newarray 10
            dup
            iconst_0
            iload 5 /* finalWidth */
            iastore
            dup
            iconst_1
            iload 6 /* finalHeight */
            iastore
            areturn
        end local 6 // int finalHeight
        end local 5 // int finalWidth
        end local 4 // boolean preserveAspectRatio
        end local 3 // int maxHeight
        end local 2 // int maxWidth
        end local 1 // int sourceHeight
        end local 0 // int sourceWidth
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   31     0          sourceWidth  I
            0   31     1         sourceHeight  I
            0   31     2             maxWidth  I
            0   31     3            maxHeight  I
            0   31     4  preserveAspectRatio  Z
            3   31     5           finalWidth  I
            6   31     6          finalHeight  I
           19   21     7                scale  F
    MethodParameters:
                     Name  Flags
      sourceWidth          
      sourceHeight         
      maxWidth             
      maxHeight            
      preserveAspectRatio  

  public static com.sun.javafx.iio.ImageFrame scaleImageFrame(com.sun.javafx.iio.ImageFrame, int, int, boolean);
    descriptor: (Lcom/sun/javafx/iio/ImageFrame;IIZ)Lcom/sun/javafx/iio/ImageFrame;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=4
        start local 0 // com.sun.javafx.iio.ImageFrame src
        start local 1 // int destWidth
        start local 2 // int destHeight
        start local 3 // boolean isSmooth
         0: .line 700
            aload 0 /* src */
            invokevirtual com.sun.javafx.iio.ImageFrame.getImageType:()Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokestatic com.sun.javafx.iio.ImageStorage.getNumBands:(Lcom/sun/javafx/iio/ImageStorage$ImageType;)I
            istore 4 /* numBands */
        start local 4 // int numBands
         1: .line 701
            aload 0 /* src */
            invokevirtual com.sun.javafx.iio.ImageFrame.getImageData:()Ljava/nio/Buffer;
            checkcast java.nio.ByteBuffer
         2: .line 702
            aload 0 /* src */
            invokevirtual com.sun.javafx.iio.ImageFrame.getWidth:()I
            aload 0 /* src */
            invokevirtual com.sun.javafx.iio.ImageFrame.getHeight:()I
            iload 4 /* numBands */
         3: .line 703
            iload 1 /* destWidth */
            iload 2 /* destHeight */
            iload 3 /* isSmooth */
         4: .line 701
            invokestatic com.sun.javafx.iio.common.ImageTools.scaleImage:(Ljava/nio/ByteBuffer;IIIIIZ)Ljava/nio/ByteBuffer;
            astore 5 /* dst */
        start local 5 // java.nio.ByteBuffer dst
         5: .line 704
            new com.sun.javafx.iio.ImageFrame
            dup
            aload 0 /* src */
            invokevirtual com.sun.javafx.iio.ImageFrame.getImageType:()Lcom/sun/javafx/iio/ImageStorage$ImageType;
            aload 5 /* dst */
         6: .line 705
            iload 1 /* destWidth */
            iload 2 /* destHeight */
            iload 1 /* destWidth */
            iload 4 /* numBands */
            imul
            aconst_null
            aload 0 /* src */
            invokevirtual com.sun.javafx.iio.ImageFrame.getMetadata:()Lcom/sun/javafx/iio/ImageMetadata;
         7: .line 704
            invokespecial com.sun.javafx.iio.ImageFrame.<init>:(Lcom/sun/javafx/iio/ImageStorage$ImageType;Ljava/nio/ByteBuffer;III[[BLcom/sun/javafx/iio/ImageMetadata;)V
            areturn
        end local 5 // java.nio.ByteBuffer dst
        end local 4 // int numBands
        end local 3 // boolean isSmooth
        end local 2 // int destHeight
        end local 1 // int destWidth
        end local 0 // com.sun.javafx.iio.ImageFrame src
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0         src  Lcom/sun/javafx/iio/ImageFrame;
            0    8     1   destWidth  I
            0    8     2  destHeight  I
            0    8     3    isSmooth  Z
            1    8     4    numBands  I
            5    8     5         dst  Ljava/nio/ByteBuffer;
    MethodParameters:
            Name  Flags
      src         
      destWidth   
      destHeight  
      isSmooth    

  public static java.nio.ByteBuffer scaleImage(java.nio.ByteBuffer, int, int, int, int, int, boolean);
    descriptor: (Ljava/nio/ByteBuffer;IIIIIZ)Ljava/nio/ByteBuffer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=11, args_size=7
        start local 0 // java.nio.ByteBuffer src
        start local 1 // int sourceWidth
        start local 2 // int sourceHeight
        start local 3 // int numBands
        start local 4 // int destWidth
        start local 5 // int destHeight
        start local 6 // boolean isSmooth
         0: .line 713
            iload 1 /* sourceWidth */
            iload 2 /* sourceHeight */
            iload 3 /* numBands */
         1: .line 714
            iload 4 /* destWidth */
            iload 5 /* destHeight */
            iload 6 /* isSmooth */
         2: .line 712
            invokestatic com.sun.javafx.iio.common.ScalerFactory.createScaler:(IIIIIZ)Lcom/sun/javafx/iio/common/PushbroomScaler;
            astore 7 /* scaler */
        start local 7 // com.sun.javafx.iio.common.PushbroomScaler scaler
         3: .line 716
            iload 1 /* sourceWidth */
            iload 3 /* numBands */
            imul
            istore 8 /* stride */
        start local 8 // int stride
         4: .line 717
            aload 0 /* src */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 12
         5: .line 718
            aload 0 /* src */
            invokevirtual java.nio.ByteBuffer.array:()[B
            astore 9 /* image */
        start local 9 // byte[] image
         6: .line 719
            iconst_0
            istore 10 /* y */
        start local 10 // int y
         7: goto 10
         8: .line 720
      StackMap locals: java.nio.ByteBuffer int int int int int int com.sun.javafx.iio.common.PushbroomScaler int byte[] int
      StackMap stack:
            aload 7 /* scaler */
            aload 9 /* image */
            iload 10 /* y */
            iload 8 /* stride */
            imul
            invokeinterface com.sun.javafx.iio.common.PushbroomScaler.putSourceScanline:([BI)Z
            pop
         9: .line 719
            iinc 10 /* y */ 1
      StackMap locals:
      StackMap stack:
        10: iload 10 /* y */
            iload 2 /* sourceHeight */
            if_icmpne 8
        end local 10 // int y
        end local 9 // byte[] image
        11: .line 722
            goto 19
        12: .line 723
      StackMap locals:
      StackMap stack:
            iload 8 /* stride */
            newarray 8
            astore 9 /* scanline */
        start local 9 // byte[] scanline
        13: .line 724
            iconst_0
            istore 10 /* y */
        start local 10 // int y
        14: goto 18
        15: .line 725
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* src */
            aload 9 /* scanline */
            invokevirtual java.nio.ByteBuffer.get:([B)Ljava/nio/ByteBuffer;
            pop
        16: .line 726
            aload 7 /* scaler */
            aload 9 /* scanline */
            iconst_0
            invokeinterface com.sun.javafx.iio.common.PushbroomScaler.putSourceScanline:([BI)Z
            pop
        17: .line 724
            iinc 10 /* y */ 1
      StackMap locals:
      StackMap stack:
        18: iload 10 /* y */
            iload 2 /* sourceHeight */
            if_icmpne 15
        end local 10 // int y
        end local 9 // byte[] scanline
        19: .line 730
      StackMap locals:
      StackMap stack:
            aload 7 /* scaler */
            invokeinterface com.sun.javafx.iio.common.PushbroomScaler.getDestination:()Ljava/nio/ByteBuffer;
            areturn
        end local 8 // int stride
        end local 7 // com.sun.javafx.iio.common.PushbroomScaler scaler
        end local 6 // boolean isSmooth
        end local 5 // int destHeight
        end local 4 // int destWidth
        end local 3 // int numBands
        end local 2 // int sourceHeight
        end local 1 // int sourceWidth
        end local 0 // java.nio.ByteBuffer src
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0           src  Ljava/nio/ByteBuffer;
            0   20     1   sourceWidth  I
            0   20     2  sourceHeight  I
            0   20     3      numBands  I
            0   20     4     destWidth  I
            0   20     5    destHeight  I
            0   20     6      isSmooth  Z
            3   20     7        scaler  Lcom/sun/javafx/iio/common/PushbroomScaler;
            4   20     8        stride  I
            6   11     9         image  [B
            7   11    10             y  I
           13   19     9      scanline  [B
           14   19    10             y  I
    MethodParameters:
              Name  Flags
      src           
      sourceWidth   
      sourceHeight  
      numBands      
      destWidth     
      destHeight    
      isSmooth      

  static int[] $SWITCH_TABLE$com$sun$javafx$iio$ImageStorage$ImageType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 47
            getstatic com.sun.javafx.iio.common.ImageTools.$SWITCH_TABLE$com$sun$javafx$iio$ImageStorage$ImageType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.sun.javafx.iio.ImageStorage$ImageType.values:()[Lcom/sun/javafx/iio/ImageStorage$ImageType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY_ALPHA:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.GRAY_ALPHA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE_ALPHA:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            iconst_5
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE_ALPHA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.PALETTE_TRANS:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            bipush 7
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGB:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            bipush 8
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGBA:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            bipush 9
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic com.sun.javafx.iio.ImageStorage$ImageType.RGBA_PRE:Lcom/sun/javafx/iio/ImageStorage$ImageType;
            invokevirtual com.sun.javafx.iio.ImageStorage$ImageType.ordinal:()I
            bipush 10
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            dup
            putstatic com.sun.javafx.iio.common.ImageTools.$SWITCH_TABLE$com$sun$javafx$iio$ImageStorage$ImageType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
}
SourceFile: "ImageTools.java"
InnerClasses:
  public final ImageType = com.sun.javafx.iio.ImageStorage$ImageType of com.sun.javafx.iio.ImageStorage