class sun.java2d.cmm.lcms.LCMSImageLayout
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.java2d.cmm.lcms.LCMSImageLayout
  super_class: java.lang.Object
{
  public static final int SWAPFIRST;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16384

  public static final int DOSWAP;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1024

  public static final int PT_RGB_8;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int PT_GRAY_8;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int PT_GRAY_16;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int PT_RGBA_8;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int PT_ARGB_8;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int PT_BGR_8;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int PT_ABGR_8;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int PT_BGRA_8;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int DT_BYTE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int DT_SHORT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int DT_INT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int DT_DOUBLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  boolean isIntPacked;
    descriptor: Z
    flags: (0x0000) 

  int pixelType;
    descriptor: I
    flags: (0x0000) 

  int dataType;
    descriptor: I
    flags: (0x0000) 

  int width;
    descriptor: I
    flags: (0x0000) 

  int height;
    descriptor: I
    flags: (0x0000) 

  int nextRowOffset;
    descriptor: I
    flags: (0x0000) 

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

  int offset;
    descriptor: I
    flags: (0x0000) 

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

  java.lang.Object dataArray;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 

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

  private static volatile int[] $SWITCH_TABLE$sun$java2d$cmm$lcms$LCMSImageLayout$BandOrder;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 54
            iconst_3
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
         1: .line 53
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_RGB_8:I
         2: .line 56
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
         3: .line 55
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_GRAY_8:I
         4: .line 58
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            iconst_2
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
         5: .line 57
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_GRAY_16:I
         6: .line 60
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.EXTRA_SH:(I)I
            iconst_3
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            ior
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
         7: .line 59
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_RGBA_8:I
         8: .line 62
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.EXTRA_SH:(I)I
            iconst_3
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            ior
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
            sipush 16384
            ior
         9: .line 61
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_ARGB_8:I
        10: .line 64
            sipush 1024
            iconst_3
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            ior
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
        11: .line 63
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_BGR_8:I
        12: .line 66
            sipush 1024
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.EXTRA_SH:(I)I
            ior
            iconst_3
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            ior
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
        13: .line 65
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_ABGR_8:I
        14: .line 67
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.EXTRA_SH:(I)I
            iconst_3
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            ior
        15: .line 68
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
        16: .line 67
            ior
        17: .line 68
            sipush 1024
        18: .line 67
            ior
        19: .line 68
            sipush 16384
        20: .line 67
            ior
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_BGRA_8:I
        21: .line 72
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static int BYTES_SH(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int x
         0: .line 41
            iload 0 /* x */
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  public static int EXTRA_SH(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int x
         0: .line 45
            iload 0 /* x */
            bipush 7
            ishl
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  public static int CHANNELS_SH(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int x
         0: .line 49
            iload 0 /* x */
            iconst_3
            ishl
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  private void <init>(int, int, int);
    descriptor: (III)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
        start local 1 // int np
        start local 2 // int pixelType
        start local 3 // int pixelSize
         0: .line 91
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 73
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.isIntPacked:Z
         2: .line 86
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
         3: .line 94
            aload 0 /* this */
            iload 2 /* pixelType */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
         4: .line 95
            aload 0 /* this */
            iload 1 /* np */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
         5: .line 96
            aload 0 /* this */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.height:I
         6: .line 97
            aload 0 /* this */
            iload 3 /* pixelSize */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
         7: .line 98
            aload 0 /* this */
            iload 3 /* pixelSize */
            iload 1 /* np */
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
         8: .line 99
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
         9: .line 100
            return
        end local 3 // int pixelSize
        end local 2 // int pixelType
        end local 1 // int np
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            0   10     1         np  I
            0   10     2  pixelType  I
            0   10     3  pixelSize  I
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
           Name  Flags
      np         
      pixelType  
      pixelSize  

  private void <init>(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
        start local 1 // int width
        start local 2 // int height
        start local 3 // int pixelType
        start local 4 // int pixelSize
         0: .line 102
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 73
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.isIntPacked:Z
         2: .line 86
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
         3: .line 106
            aload 0 /* this */
            iload 3 /* pixelType */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
         4: .line 107
            aload 0 /* this */
            iload 1 /* width */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
         5: .line 108
            aload 0 /* this */
            iload 2 /* height */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.height:I
         6: .line 109
            aload 0 /* this */
            iload 4 /* pixelSize */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
         7: .line 110
            aload 0 /* this */
            iload 4 /* pixelSize */
            iload 1 /* width */
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
         8: .line 111
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
         9: .line 112
            return
        end local 4 // int pixelSize
        end local 3 // int pixelType
        end local 2 // int height
        end local 1 // int width
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            0   10     1      width  I
            0   10     2     height  I
            0   10     3  pixelType  I
            0   10     4  pixelSize  I
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
           Name  Flags
      width      
      height     
      pixelType  
      pixelSize  

  public void <init>(byte[], int, int, int);
    descriptor: ([BIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
        start local 1 // byte[] data
        start local 2 // int np
        start local 3 // int pixelType
        start local 4 // int pixelSize
         0: .line 118
            aload 0 /* this */
            iload 2 /* np */
            iload 3 /* pixelType */
            iload 4 /* pixelSize */
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout.<init>:(III)V
         1: .line 119
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
         2: .line 120
            aload 0 /* this */
            aload 1 /* data */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
         3: .line 121
            aload 0 /* this */
            aload 1 /* data */
            arraylength
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
         4: .line 123
            aload 0 /* this */
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout.verify:()V
         5: .line 124
            return
        end local 4 // int pixelSize
        end local 3 // int pixelType
        end local 2 // int np
        end local 1 // byte[] data
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            0    6     1       data  [B
            0    6     2         np  I
            0    6     3  pixelType  I
            0    6     4  pixelSize  I
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
           Name  Flags
      data       
      np         
      pixelType  
      pixelSize  

  public void <init>(short[], int, int, int);
    descriptor: ([SIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
        start local 1 // short[] data
        start local 2 // int np
        start local 3 // int pixelType
        start local 4 // int pixelSize
         0: .line 129
            aload 0 /* this */
            iload 2 /* np */
            iload 3 /* pixelType */
            iload 4 /* pixelSize */
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout.<init>:(III)V
         1: .line 130
            aload 0 /* this */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
         2: .line 131
            aload 0 /* this */
            aload 1 /* data */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
         3: .line 132
            aload 0 /* this */
            iconst_2
            aload 1 /* data */
            arraylength
            imul
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
         4: .line 134
            aload 0 /* this */
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout.verify:()V
         5: .line 135
            return
        end local 4 // int pixelSize
        end local 3 // int pixelType
        end local 2 // int np
        end local 1 // short[] data
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            0    6     1       data  [S
            0    6     2         np  I
            0    6     3  pixelType  I
            0    6     4  pixelSize  I
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
           Name  Flags
      data       
      np         
      pixelType  
      pixelSize  

  public void <init>(int[], int, int, int);
    descriptor: ([IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
        start local 1 // int[] data
        start local 2 // int np
        start local 3 // int pixelType
        start local 4 // int pixelSize
         0: .line 140
            aload 0 /* this */
            iload 2 /* np */
            iload 3 /* pixelType */
            iload 4 /* pixelSize */
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout.<init>:(III)V
         1: .line 141
            aload 0 /* this */
            iconst_2
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
         2: .line 142
            aload 0 /* this */
            aload 1 /* data */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
         3: .line 143
            aload 0 /* this */
            iconst_4
            aload 1 /* data */
            arraylength
            imul
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
         4: .line 145
            aload 0 /* this */
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout.verify:()V
         5: .line 146
            return
        end local 4 // int pixelSize
        end local 3 // int pixelType
        end local 2 // int np
        end local 1 // int[] data
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            0    6     1       data  [I
            0    6     2         np  I
            0    6     3  pixelType  I
            0    6     4  pixelSize  I
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
           Name  Flags
      data       
      np         
      pixelType  
      pixelSize  

  public void <init>(double[], int, int, int);
    descriptor: ([DIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
        start local 1 // double[] data
        start local 2 // int np
        start local 3 // int pixelType
        start local 4 // int pixelSize
         0: .line 151
            aload 0 /* this */
            iload 2 /* np */
            iload 3 /* pixelType */
            iload 4 /* pixelSize */
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout.<init>:(III)V
         1: .line 152
            aload 0 /* this */
            iconst_3
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
         2: .line 153
            aload 0 /* this */
            aload 1 /* data */
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
         3: .line 154
            aload 0 /* this */
            bipush 8
            aload 1 /* data */
            arraylength
            imul
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
         4: .line 156
            aload 0 /* this */
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout.verify:()V
         5: .line 157
            return
        end local 4 // int pixelSize
        end local 3 // int pixelType
        end local 2 // int np
        end local 1 // double[] data
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            0    6     1       data  [D
            0    6     2         np  I
            0    6     3  pixelType  I
            0    6     4  pixelSize  I
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
           Name  Flags
      data       
      np         
      pixelType  
      pixelSize  

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
         0: .line 159
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 73
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.isIntPacked:Z
         2: .line 86
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
         3: .line 160
            return
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/java2d/cmm/lcms/LCMSImageLayout;

  public static sun.java2d.cmm.lcms.LCMSImageLayout createImageLayout(java.awt.image.BufferedImage);
    descriptor: (Ljava/awt/image/BufferedImage;)Lsun/java2d/cmm/lcms/LCMSImageLayout;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=1
        start local 0 // java.awt.image.BufferedImage image
         0: .line 166
            new sun.java2d.cmm.lcms.LCMSImageLayout
            dup
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout.<init>:()V
            astore 1 /* l */
        start local 1 // sun.java2d.cmm.lcms.LCMSImageLayout l
         1: .line 168
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getType:()I
            tableswitch { // 1 - 11
                    1: 2
                    2: 5
                    3: 19
                    4: 8
                    5: 11
                    6: 13
                    7: 19
                    8: 19
                    9: 19
                   10: 15
                   11: 17
              default: 19
          }
         2: .line 170
      StackMap locals: sun.java2d.cmm.lcms.LCMSImageLayout
      StackMap stack:
            aload 1 /* l */
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_ARGB_8:I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
         3: .line 171
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.isIntPacked:Z
         4: .line 172
            goto 31
         5: .line 174
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_ARGB_8:I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
         6: .line 175
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.isIntPacked:Z
         7: .line 176
            goto 31
         8: .line 178
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_ABGR_8:I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
         9: .line 179
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.isIntPacked:Z
        10: .line 180
            goto 31
        11: .line 182
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_BGR_8:I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
        12: .line 183
            goto 31
        13: .line 185
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_ABGR_8:I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
        14: .line 186
            goto 31
        15: .line 188
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_GRAY_8:I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
        16: .line 189
            goto 31
        17: .line 191
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.PT_GRAY_16:I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
        18: .line 192
            goto 31
        19: .line 198
      StackMap locals:
      StackMap stack:
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
            astore 2 /* cm */
        start local 2 // java.awt.image.ColorModel cm
        20: .line 199
            aload 2 /* cm */
            instanceof java.awt.image.ComponentColorModel
            ifeq 30
        21: .line 200
            aload 2 /* cm */
            checkcast java.awt.image.ComponentColorModel
            astore 3 /* ccm */
        start local 3 // java.awt.image.ComponentColorModel ccm
        22: .line 203
            aload 3 /* ccm */
            invokevirtual java.awt.image.ComponentColorModel.getComponentSize:()[I
            astore 4 /* cs */
        start local 4 // int[] cs
        23: .line 204
            aload 4 /* cs */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 28
      StackMap locals: java.awt.image.BufferedImage sun.java2d.cmm.lcms.LCMSImageLayout java.awt.image.ColorModel java.awt.image.ComponentColorModel int[] top int int int[]
      StackMap stack:
        24: aload 8
            iload 6
            iaload
            istore 5 /* s */
        start local 5 // int s
        25: .line 205
            iload 5 /* s */
            bipush 8
            if_icmpeq 27
        26: .line 206
            aconst_null
            areturn
        end local 5 // int s
        27: .line 204
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        28: iload 6
            iload 7
            if_icmplt 24
        29: .line 210
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.createImageLayout:(Ljava/awt/image/Raster;)Lsun/java2d/cmm/lcms/LCMSImageLayout;
            areturn
        end local 4 // int[] cs
        end local 3 // java.awt.image.ComponentColorModel ccm
        30: .line 213
      StackMap locals: java.awt.image.BufferedImage sun.java2d.cmm.lcms.LCMSImageLayout java.awt.image.ColorModel
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.awt.image.ColorModel cm
        31: .line 216
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getWidth:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
        32: .line 217
            aload 1 /* l */
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getHeight:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.height:I
        33: .line 219
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getType:()I
            tableswitch { // 1 - 11
                    1: 34
                    2: 34
                    3: 79
                    4: 34
                    5: 45
                    6: 45
                    7: 79
                    8: 79
                    9: 79
                   10: 57
                   11: 68
              default: 79
          }
        34: .line 225
      StackMap locals:
      StackMap stack:
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
        35: .line 224
            checkcast sun.awt.image.IntegerComponentRaster
            astore 2 /* intRaster */
        start local 2 // sun.awt.image.IntegerComponentRaster intRaster
        36: .line 226
            aload 1 /* l */
            iconst_4
            aload 2 /* intRaster */
            invokevirtual sun.awt.image.IntegerComponentRaster.getScanlineStride:()I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
        37: .line 227
            aload 1 /* l */
            iconst_4
            aload 2 /* intRaster */
            invokevirtual sun.awt.image.IntegerComponentRaster.getPixelStride:()I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
        38: .line 228
            aload 1 /* l */
            iconst_4
            aload 2 /* intRaster */
            iconst_0
            invokevirtual sun.awt.image.IntegerComponentRaster.getDataOffset:(I)I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
        39: .line 229
            aload 1 /* l */
            aload 2 /* intRaster */
            invokevirtual sun.awt.image.IntegerComponentRaster.getDataStorage:()[I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
        40: .line 230
            aload 1 /* l */
            iconst_4
            aload 2 /* intRaster */
            invokevirtual sun.awt.image.IntegerComponentRaster.getDataStorage:()[I
            arraylength
            imul
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
        41: .line 231
            aload 1 /* l */
            iconst_2
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
        42: .line 233
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
            iconst_4
            imul
            aload 2 /* intRaster */
            invokevirtual sun.awt.image.IntegerComponentRaster.getPixelStride:()I
            imul
            if_icmpne 80
        43: .line 234
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
        end local 2 // sun.awt.image.IntegerComponentRaster intRaster
        44: .line 237
            goto 80
        45: .line 243
      StackMap locals:
      StackMap stack:
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
        46: .line 242
            checkcast sun.awt.image.ByteComponentRaster
            astore 2 /* byteRaster */
        start local 2 // sun.awt.image.ByteComponentRaster byteRaster
        47: .line 244
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getScanlineStride:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
        48: .line 245
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getPixelStride:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
        49: .line 247
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getSampleModel:()Ljava/awt/image/SampleModel;
            invokevirtual java.awt.image.SampleModel.getNumBands:()I
            iconst_1
            isub
            istore 3 /* firstBand */
        start local 3 // int firstBand
        50: .line 248
            aload 1 /* l */
            aload 2 /* byteRaster */
            iload 3 /* firstBand */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataOffset:(I)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
        51: .line 249
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataStorage:()[B
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
        52: .line 250
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataStorage:()[B
            arraylength
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
        53: .line 251
            aload 1 /* l */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
        54: .line 252
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getPixelStride:()I
            imul
            if_icmpne 80
        55: .line 253
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
        end local 3 // int firstBand
        end local 2 // sun.awt.image.ByteComponentRaster byteRaster
        56: .line 256
            goto 80
        57: .line 261
      StackMap locals:
      StackMap stack:
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
        58: .line 260
            checkcast sun.awt.image.ByteComponentRaster
            astore 2 /* byteRaster */
        start local 2 // sun.awt.image.ByteComponentRaster byteRaster
        59: .line 262
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getScanlineStride:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
        60: .line 263
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getPixelStride:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
        61: .line 265
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataStorage:()[B
            arraylength
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
        62: .line 266
            aload 1 /* l */
            aload 2 /* byteRaster */
            iconst_0
            invokevirtual sun.awt.image.ByteComponentRaster.getDataOffset:(I)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
        63: .line 267
            aload 1 /* l */
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataStorage:()[B
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
        64: .line 268
            aload 1 /* l */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
        65: .line 270
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
            aload 2 /* byteRaster */
            invokevirtual sun.awt.image.ByteComponentRaster.getPixelStride:()I
            imul
            if_icmpne 80
        66: .line 271
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
        end local 2 // sun.awt.image.ByteComponentRaster byteRaster
        67: .line 274
            goto 80
        68: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* image */
            invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
        69: .line 278
            checkcast sun.awt.image.ShortComponentRaster
            astore 2 /* shortRaster */
        start local 2 // sun.awt.image.ShortComponentRaster shortRaster
        70: .line 280
            aload 1 /* l */
            iconst_2
            aload 2 /* shortRaster */
            invokevirtual sun.awt.image.ShortComponentRaster.getScanlineStride:()I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
        71: .line 281
            aload 1 /* l */
            iconst_2
            aload 2 /* shortRaster */
            invokevirtual sun.awt.image.ShortComponentRaster.getPixelStride:()I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
        72: .line 283
            aload 1 /* l */
            iconst_2
            aload 2 /* shortRaster */
            iconst_0
            invokevirtual sun.awt.image.ShortComponentRaster.getDataOffset:(I)I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
        73: .line 284
            aload 1 /* l */
            aload 2 /* shortRaster */
            invokevirtual sun.awt.image.ShortComponentRaster.getDataStorage:()[S
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
        74: .line 285
            aload 1 /* l */
            iconst_2
            aload 2 /* shortRaster */
            invokevirtual sun.awt.image.ShortComponentRaster.getDataStorage:()[S
            arraylength
            imul
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
        75: .line 286
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
        76: .line 288
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
            iconst_2
            imul
            aload 2 /* shortRaster */
            invokevirtual sun.awt.image.ShortComponentRaster.getPixelStride:()I
            imul
            if_icmpne 80
        77: .line 289
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
        end local 2 // sun.awt.image.ShortComponentRaster shortRaster
        78: .line 292
            goto 80
        79: .line 294
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        80: .line 296
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout.verify:()V
        81: .line 297
            aload 1 /* l */
            areturn
        end local 1 // sun.java2d.cmm.lcms.LCMSImageLayout l
        end local 0 // java.awt.image.BufferedImage image
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   82     0        image  Ljava/awt/image/BufferedImage;
            1   82     1            l  Lsun/java2d/cmm/lcms/LCMSImageLayout;
           20   31     2           cm  Ljava/awt/image/ColorModel;
           22   30     3          ccm  Ljava/awt/image/ComponentColorModel;
           23   30     4           cs  [I
           25   27     5            s  I
           36   44     2    intRaster  Lsun/awt/image/IntegerComponentRaster;
           47   56     2   byteRaster  Lsun/awt/image/ByteComponentRaster;
           50   56     3    firstBand  I
           59   67     2   byteRaster  Lsun/awt/image/ByteComponentRaster;
           70   78     2  shortRaster  Lsun/awt/image/ShortComponentRaster;
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
       Name  Flags
      image  

  private void verify();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
         0: .line 340
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
            iflt 1
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
            if_icmplt 2
         1: .line 341
      StackMap locals:
      StackMap stack:
            new sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
            dup
            ldc "Invalid image layout"
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.getBytesPerPixel:(I)I
            if_icmpeq 4
         3: .line 345
            new sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
            dup
            ldc "Invalid image layout"
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 348
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.height:I
            iconst_1
            isub
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            istore 1 /* lastScanOffset */
        start local 1 // int lastScanOffset
         5: .line 350
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
            iconst_1
            isub
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeMult:(II)I
            istore 2 /* lastPixelOffset */
        start local 2 // int lastPixelOffset
         6: .line 352
            iload 2 /* lastPixelOffset */
            iload 1 /* lastScanOffset */
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeAdd:(II)I
            istore 2 /* lastPixelOffset */
         7: .line 354
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
            iload 2 /* lastPixelOffset */
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.safeAdd:(II)I
            istore 3 /* off */
        start local 3 // int off
         8: .line 356
            iload 3 /* off */
            iflt 9
            iload 3 /* off */
            aload 0 /* this */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArrayLength:I
            if_icmplt 10
         9: .line 357
      StackMap locals: int int int
      StackMap stack:
            new sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
            dup
            ldc "Invalid image layout"
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 359
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int off
        end local 2 // int lastPixelOffset
        end local 1 // int lastScanOffset
        end local 0 // sun.java2d.cmm.lcms.LCMSImageLayout this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            5   11     1   lastScanOffset  I
            6   11     2  lastPixelOffset  I
            8   11     3              off  I
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException

  static int safeAdd(int, int);
    descriptor: (II)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 362
            iload 0 /* a */
            i2l
            lstore 2 /* res */
        start local 2 // long res
         1: .line 363
            lload 2 /* res */
            iload 1 /* b */
            i2l
            ladd
            lstore 2 /* res */
         2: .line 364
            lload 2 /* res */
            ldc -2147483648
            lcmp
            iflt 3
            lload 2 /* res */
            ldc 2147483647
            lcmp
            ifle 4
         3: .line 365
      StackMap locals: long
      StackMap stack:
            new sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
            dup
            ldc "Invalid image layout"
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 367
      StackMap locals:
      StackMap stack:
            lload 2 /* res */
            l2i
            ireturn
        end local 2 // long res
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     a  I
            0    5     1     b  I
            1    5     2   res  J
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
      Name  Flags
      a     
      b     

  static int safeMult(int, int);
    descriptor: (II)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 371
            iload 0 /* a */
            i2l
            lstore 2 /* res */
        start local 2 // long res
         1: .line 372
            lload 2 /* res */
            iload 1 /* b */
            i2l
            lmul
            lstore 2 /* res */
         2: .line 373
            lload 2 /* res */
            ldc -2147483648
            lcmp
            iflt 3
            lload 2 /* res */
            ldc 2147483647
            lcmp
            ifle 4
         3: .line 374
      StackMap locals: long
      StackMap stack:
            new sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
            dup
            ldc "Invalid image layout"
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 376
      StackMap locals:
      StackMap stack:
            lload 2 /* res */
            l2i
            ireturn
        end local 2 // long res
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     a  I
            0    5     1     b  I
            1    5     2   res  J
    Exceptions:
      throws sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
    MethodParameters:
      Name  Flags
      a     
      b     

  public static sun.java2d.cmm.lcms.LCMSImageLayout createImageLayout(java.awt.image.Raster);
    descriptor: (Ljava/awt/image/Raster;)Lsun/java2d/cmm/lcms/LCMSImageLayout;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // java.awt.image.Raster r
         0: .line 385
            new sun.java2d.cmm.lcms.LCMSImageLayout
            dup
            invokespecial sun.java2d.cmm.lcms.LCMSImageLayout.<init>:()V
            astore 1 /* l */
        start local 1 // sun.java2d.cmm.lcms.LCMSImageLayout l
         1: .line 386
            aload 0 /* r */
            instanceof sun.awt.image.ByteComponentRaster
            ifeq 25
         2: .line 387
            aload 0 /* r */
            invokevirtual java.awt.image.Raster.getSampleModel:()Ljava/awt/image/SampleModel;
            instanceof java.awt.image.ComponentSampleModel
            ifeq 25
         3: .line 388
            aload 0 /* r */
            checkcast sun.awt.image.ByteComponentRaster
            astore 2 /* br */
        start local 2 // sun.awt.image.ByteComponentRaster br
         4: .line 390
            aload 0 /* r */
            invokevirtual java.awt.image.Raster.getSampleModel:()Ljava/awt/image/SampleModel;
            checkcast java.awt.image.ComponentSampleModel
            astore 3 /* csm */
        start local 3 // java.awt.image.ComponentSampleModel csm
         5: .line 392
            aload 1 /* l */
            aload 2 /* br */
            invokevirtual sun.awt.image.ByteComponentRaster.getNumBands:()I
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.CHANNELS_SH:(I)I
            iconst_1
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.BYTES_SH:(I)I
            ior
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
         6: .line 394
            aload 3 /* csm */
            invokevirtual java.awt.image.ComponentSampleModel.getBandOffsets:()[I
            astore 4 /* bandOffsets */
        start local 4 // int[] bandOffsets
         7: .line 395
            aload 4 /* bandOffsets */
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.getBandOrder:([I)Lsun/java2d/cmm/lcms/LCMSImageLayout$BandOrder;
            astore 5 /* order */
        start local 5 // sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder order
         8: .line 397
            iconst_0
            istore 6 /* firstBand */
        start local 6 // int firstBand
         9: .line 398
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout.$SWITCH_TABLE$sun$java2d$cmm$lcms$LCMSImageLayout$BandOrder:()[I
            aload 5 /* order */
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.ordinal:()I
            iaload
            tableswitch { // 1 - 2
                    1: 13
                    2: 10
              default: 14
          }
        10: .line 400
      StackMap locals: java.awt.image.Raster sun.java2d.cmm.lcms.LCMSImageLayout sun.awt.image.ByteComponentRaster java.awt.image.ComponentSampleModel int[] sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder int
      StackMap stack:
            aload 1 /* l */
            dup
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
            sipush 1024
            ior
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.pixelType:I
        11: .line 401
            aload 3 /* csm */
            invokevirtual java.awt.image.ComponentSampleModel.getNumBands:()I
            iconst_1
            isub
            istore 6 /* firstBand */
        12: .line 402
            goto 15
        13: .line 405
      StackMap locals:
      StackMap stack:
            goto 15
        14: .line 408
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        15: .line 411
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            aload 2 /* br */
            invokevirtual sun.awt.image.ByteComponentRaster.getScanlineStride:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
        16: .line 412
            aload 1 /* l */
            aload 2 /* br */
            invokevirtual sun.awt.image.ByteComponentRaster.getPixelStride:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.nextPixelOffset:I
        17: .line 414
            aload 1 /* l */
            aload 2 /* br */
            iload 6 /* firstBand */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataOffset:(I)I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.offset:I
        18: .line 415
            aload 1 /* l */
            aload 2 /* br */
            invokevirtual sun.awt.image.ByteComponentRaster.getDataStorage:()[B
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataArray:Ljava/lang/Object;
        19: .line 416
            aload 1 /* l */
            iconst_0
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.dataType:I
        20: .line 418
            aload 1 /* l */
            aload 2 /* br */
            invokevirtual sun.awt.image.ByteComponentRaster.getWidth:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
        21: .line 419
            aload 1 /* l */
            aload 2 /* br */
            invokevirtual sun.awt.image.ByteComponentRaster.getHeight:()I
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.height:I
        22: .line 421
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.nextRowOffset:I
            aload 1 /* l */
            getfield sun.java2d.cmm.lcms.LCMSImageLayout.width:I
            aload 2 /* br */
            invokevirtual sun.awt.image.ByteComponentRaster.getPixelStride:()I
            imul
            if_icmpne 24
        23: .line 422
            aload 1 /* l */
            iconst_1
            putfield sun.java2d.cmm.lcms.LCMSImageLayout.imageAtOnce:Z
        24: .line 424
      StackMap locals:
      StackMap stack:
            aload 1 /* l */
            areturn
        end local 6 // int firstBand
        end local 5 // sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder order
        end local 4 // int[] bandOffsets
        end local 3 // java.awt.image.ComponentSampleModel csm
        end local 2 // sun.awt.image.ByteComponentRaster br
        25: .line 426
      StackMap locals: java.awt.image.Raster sun.java2d.cmm.lcms.LCMSImageLayout
      StackMap stack:
            aconst_null
            areturn
        end local 1 // sun.java2d.cmm.lcms.LCMSImageLayout l
        end local 0 // java.awt.image.Raster r
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   26     0            r  Ljava/awt/image/Raster;
            1   26     1            l  Lsun/java2d/cmm/lcms/LCMSImageLayout;
            4   25     2           br  Lsun/awt/image/ByteComponentRaster;
            5   25     3          csm  Ljava/awt/image/ComponentSampleModel;
            7   25     4  bandOffsets  [I
            8   25     5        order  Lsun/java2d/cmm/lcms/LCMSImageLayout$BandOrder;
            9   25     6    firstBand  I
    MethodParameters:
      Name  Flags
      r     

  private static int getBytesPerPixel(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // int pixelType
         0: .line 443
            bipush 7
            iload 0 /* pixelType */
            iand
            istore 1 /* bytesPerSample */
        start local 1 // int bytesPerSample
         1: .line 444
            bipush 15
            iload 0 /* pixelType */
            iconst_3
            ishr
            iand
            istore 2 /* colorSamplesPerPixel */
        start local 2 // int colorSamplesPerPixel
         2: .line 445
            bipush 7
            iload 0 /* pixelType */
            bipush 7
            ishr
            iand
            istore 3 /* extraSamplesPerPixel */
        start local 3 // int extraSamplesPerPixel
         3: .line 447
            iload 1 /* bytesPerSample */
            iload 2 /* colorSamplesPerPixel */
            iload 3 /* extraSamplesPerPixel */
            iadd
            imul
            ireturn
        end local 3 // int extraSamplesPerPixel
        end local 2 // int colorSamplesPerPixel
        end local 1 // int bytesPerSample
        end local 0 // int pixelType
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    4     0             pixelType  I
            1    4     1        bytesPerSample  I
            2    4     2  colorSamplesPerPixel  I
            3    4     3  extraSamplesPerPixel  I
    MethodParameters:
           Name  Flags
      pixelType  

  static int[] $SWITCH_TABLE$sun$java2d$cmm$lcms$LCMSImageLayout$BandOrder();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 38
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout.$SWITCH_TABLE$sun$java2d$cmm$lcms$LCMSImageLayout$BandOrder:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.values:()[Lsun/java2d/cmm/lcms/LCMSImageLayout$BandOrder;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.ARBITRARY:Lsun/java2d/cmm/lcms/LCMSImageLayout$BandOrder;
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.DIRECT:Lsun/java2d/cmm/lcms/LCMSImageLayout$BandOrder;
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.INVERTED:Lsun/java2d/cmm/lcms/LCMSImageLayout$BandOrder;
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.UNKNOWN:Lsun/java2d/cmm/lcms/LCMSImageLayout$BandOrder;
            invokevirtual sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic sun.java2d.cmm.lcms.LCMSImageLayout.$SWITCH_TABLE$sun$java2d$cmm$lcms$LCMSImageLayout$BandOrder:[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
}
SourceFile: "LCMSImageLayout.java"
NestMembers:
  sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder  sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException
InnerClasses:
  private final BandOrder = sun.java2d.cmm.lcms.LCMSImageLayout$BandOrder of sun.java2d.cmm.lcms.LCMSImageLayout
  public ImageLayoutException = sun.java2d.cmm.lcms.LCMSImageLayout$ImageLayoutException of sun.java2d.cmm.lcms.LCMSImageLayout