public class org.apache.batik.ext.awt.image.rendered.IndexImage
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.batik.ext.awt.image.rendered.IndexImage
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.batik.ext.awt.image.rendered.IndexImage this
         0: .line 53
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.apache.batik.ext.awt.image.rendered.IndexImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/batik/ext/awt/image/rendered/IndexImage;

  static byte[][] computeRGB(int, org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[]);
    descriptor: (I[Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;)[[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // int nCubes
        start local 1 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[] cubes
         0: .line 565
            iload 0 /* nCubes */
            newarray 8
            astore 2 /* r */
        start local 2 // byte[] r
         1: .line 566
            iload 0 /* nCubes */
            newarray 8
            astore 3 /* g */
        start local 3 // byte[] g
         2: .line 567
            iload 0 /* nCubes */
            newarray 8
            astore 4 /* b */
        start local 4 // byte[] b
         3: .line 569
            iconst_3
            newarray 8
            astore 5 /* rgb */
        start local 5 // byte[] rgb
         4: .line 570
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         5: goto 11
         6: .line 571
      StackMap locals: int org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[] byte[] byte[] byte[] byte[] int
      StackMap stack:
            aload 1 /* cubes */
            iload 6 /* i */
            aaload
            aload 5 /* rgb */
            invokevirtual org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.averageColorRGB:([B)[B
            astore 5 /* rgb */
         7: .line 572
            aload 2 /* r */
            iload 6 /* i */
            aload 5 /* rgb */
            iconst_0
            baload
            bastore
         8: .line 573
            aload 3 /* g */
            iload 6 /* i */
            aload 5 /* rgb */
            iconst_1
            baload
            bastore
         9: .line 574
            aload 4 /* b */
            iload 6 /* i */
            aload 5 /* rgb */
            iconst_2
            baload
            bastore
        10: .line 570
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            iload 0 /* nCubes */
            if_icmplt 6
        end local 6 // int i
        12: .line 577
            iconst_3
            anewarray byte[]
            astore 6 /* result */
        start local 6 // byte[][] result
        13: .line 578
            aload 6 /* result */
            iconst_0
            aload 2 /* r */
            aastore
        14: .line 579
            aload 6 /* result */
            iconst_1
            aload 3 /* g */
            aastore
        15: .line 580
            aload 6 /* result */
            iconst_2
            aload 4 /* b */
            aastore
        16: .line 584
            aload 6 /* result */
            areturn
        end local 6 // byte[][] result
        end local 5 // byte[] rgb
        end local 4 // byte[] b
        end local 3 // byte[] g
        end local 2 // byte[] r
        end local 1 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[] cubes
        end local 0 // int nCubes
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   17     0  nCubes  I
            0   17     1   cubes  [Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;
            1   17     2       r  [B
            2   17     3       g  [B
            3   17     4       b  [B
            4   17     5     rgb  [B
            5   12     6       i  I
           13   17     6  result  [[B
    MethodParameters:
        Name  Flags
      nCubes  
      cubes   

  static void logRGB(byte[], byte[], byte[]);
    descriptor: ([B[B[B)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // byte[] r
        start local 1 // byte[] g
        start local 2 // byte[] b
         0: .line 595
            new java.lang.StringBuffer
            dup
            bipush 100
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 3 /* buff */
        start local 3 // java.lang.StringBuffer buff
         1: .line 596
            aload 0 /* r */
            arraylength
            istore 4 /* nColors */
        start local 4 // int nColors
         2: .line 597
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 7
         4: .line 598
      StackMap locals: java.lang.StringBuffer int int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* r */
            iload 5 /* i */
            baload
            sipush 128
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 1 /* g */
            iload 5 /* i */
            baload
            sipush 128
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 2 /* b */
            iload 5 /* i */
            baload
            sipush 128
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "),"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* rgbStr */
        start local 6 // java.lang.String rgbStr
         5: .line 599
            aload 3 /* buff */
            aload 6 /* rgbStr */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 6 // java.lang.String rgbStr
         6: .line 597
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 5 /* i */
            iload 4 /* nColors */
            if_icmplt 4
        end local 5 // int i
         8: .line 601
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "RGB:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* nColors */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            aload 3 /* buff */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 602
            return
        end local 4 // int nColors
        end local 3 // java.lang.StringBuffer buff
        end local 2 // byte[] b
        end local 1 // byte[] g
        end local 0 // byte[] r
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0        r  [B
            0   10     1        g  [B
            0   10     2        b  [B
            1   10     3     buff  Ljava/lang/StringBuffer;
            2   10     4  nColors  I
            3    8     5        i  I
            5    6     6   rgbStr  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      r     
      g     
      b     

  static java.util.List[] createColorList(java.awt.image.BufferedImage);
    descriptor: (Ljava/awt/image/BufferedImage;)[Ljava/util/List;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // java.awt.image.BufferedImage bi
         0: .line 612
            aload 0 /* bi */
            invokevirtual java.awt.image.BufferedImage.getWidth:()I
            istore 1 /* w */
        start local 1 // int w
         1: .line 613
            aload 0 /* bi */
            invokevirtual java.awt.image.BufferedImage.getHeight:()I
            istore 2 /* h */
        start local 2 // int h
         2: .line 616
            sipush 4096
            anewarray java.util.ArrayList
            astore 3 /* colors */
        start local 3 // java.util.List[] colors
         3: .line 618
            iconst_0
            istore 4 /* i_w */
        start local 4 // int i_w
         4: goto 26
         5: .line 619
      StackMap locals: java.awt.image.BufferedImage int int java.util.List[] int
      StackMap stack:
            iconst_0
            istore 5 /* i_h */
        start local 5 // int i_h
         6: goto 24
         7: .line 620
      StackMap locals: int
      StackMap stack:
            aload 0 /* bi */
            iload 4 /* i_w */
            iload 5 /* i_h */
            invokevirtual java.awt.image.BufferedImage.getRGB:(II)I
            ldc 16777215
            iand
            istore 6 /* rgb */
        start local 6 // int rgb
         8: .line 622
            iload 6 /* rgb */
            ldc 15728640
            iand
            bipush 12
            iushr
         9: .line 623
            iload 6 /* rgb */
            ldc 61440
            iand
            bipush 8
            iushr
        10: .line 622
            ior
        11: .line 624
            iload 6 /* rgb */
            sipush 240
            iand
            iconst_4
            iushr
        12: .line 622
            ior
            istore 7 /* idx */
        start local 7 // int idx
        13: .line 627
            aload 3 /* colors */
            iload 7 /* idx */
            aaload
            astore 8 /* v */
        start local 8 // java.util.List v
        14: .line 628
            aload 8 /* v */
            ifnonnull 19
        15: .line 631
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 8 /* v */
        16: .line 632
            aload 8 /* v */
            new org.apache.batik.ext.awt.image.rendered.IndexImage$Counter
            dup
            iload 6 /* rgb */
            invokespecial org.apache.batik.ext.awt.image.rendered.IndexImage$Counter.<init>:(I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        17: .line 633
            aload 3 /* colors */
            iload 7 /* idx */
            aload 8 /* v */
            aastore
        18: .line 634
            goto 23
        19: .line 636
      StackMap locals: int int java.util.List
      StackMap stack:
            aload 8 /* v */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9 /* i */
        start local 9 // java.util.Iterator i
        20: .line 638
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 9 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 22
        21: .line 640
            aload 9 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.batik.ext.awt.image.rendered.IndexImage$Counter
            iload 6 /* rgb */
            invokevirtual org.apache.batik.ext.awt.image.rendered.IndexImage$Counter.add:(I)Z
            ifeq 20
            goto 23
        22: .line 642
      StackMap locals:
      StackMap stack:
            aload 8 /* v */
            new org.apache.batik.ext.awt.image.rendered.IndexImage$Counter
            dup
            iload 6 /* rgb */
            invokespecial org.apache.batik.ext.awt.image.rendered.IndexImage$Counter.<init>:(I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.util.Iterator i
        end local 8 // java.util.List v
        end local 7 // int idx
        end local 6 // int rgb
        23: .line 619
      StackMap locals: java.awt.image.BufferedImage int int java.util.List[] int int
      StackMap stack:
            iinc 5 /* i_h */ 1
      StackMap locals:
      StackMap stack:
        24: iload 5 /* i_h */
            iload 2 /* h */
            if_icmplt 7
        end local 5 // int i_h
        25: .line 618
            iinc 4 /* i_w */ 1
      StackMap locals:
      StackMap stack:
        26: iload 4 /* i_w */
            iload 1 /* w */
            if_icmplt 5
        end local 4 // int i_w
        27: .line 650
            aload 3 /* colors */
            areturn
        end local 3 // java.util.List[] colors
        end local 2 // int h
        end local 1 // int w
        end local 0 // java.awt.image.BufferedImage bi
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   28     0      bi  Ljava/awt/image/BufferedImage;
            1   28     1       w  I
            2   28     2       h  I
            3   28     3  colors  [Ljava/util/List;
            4   27     4     i_w  I
            6   25     5     i_h  I
            8   23     6     rgb  I
           13   23     7     idx  I
           14   23     8       v  Ljava/util/List;
           20   23     9       i  Ljava/util/Iterator;
    MethodParameters:
      Name  Flags
      bi    

  static org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] convertColorList(java.util.List[]);
    descriptor: ([Ljava/util/List;)[[Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Counter;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // java.util.List[] colors
         0: .line 668
            iconst_0
            anewarray org.apache.batik.ext.awt.image.rendered.IndexImage$Counter
            astore 1 /* EMPTY_COUNTER */
        start local 1 // org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[] EMPTY_COUNTER
         1: .line 670
            sipush 4096
            anewarray org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[]
            astore 2 /* colorTbl */
        start local 2 // org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] colorTbl
         2: .line 671
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 12
         4: .line 672
      StackMap locals: org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[] org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] int
      StackMap stack:
            aload 0 /* colors */
            iload 3 /* i */
            aaload
            astore 4 /* cl */
        start local 4 // java.util.List cl
         5: .line 673
            aload 4 /* cl */
            ifnonnull 8
         6: .line 674
            aload 2 /* colorTbl */
            iload 3 /* i */
            aload 1 /* EMPTY_COUNTER */
            aastore
         7: .line 675
            goto 11
         8: .line 677
      StackMap locals: java.util.List
      StackMap stack:
            aload 4 /* cl */
            invokeinterface java.util.List.size:()I
            istore 5 /* nSlots */
        start local 5 // int nSlots
         9: .line 678
            aload 2 /* colorTbl */
            iload 3 /* i */
            aload 4 /* cl */
            iload 5 /* nSlots */
            anewarray org.apache.batik.ext.awt.image.rendered.IndexImage$Counter
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[]
            aastore
        10: .line 681
            aload 0 /* colors */
            iload 3 /* i */
            aconst_null
            aastore
        end local 5 // int nSlots
        end local 4 // java.util.List cl
        11: .line 671
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* i */
            aload 0 /* colors */
            arraylength
            if_icmplt 4
        end local 3 // int i
        13: .line 684
            aload 2 /* colorTbl */
            areturn
        end local 2 // org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] colorTbl
        end local 1 // org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[] EMPTY_COUNTER
        end local 0 // java.util.List[] colors
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0         colors  [Ljava/util/List;
            1   14     1  EMPTY_COUNTER  [Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Counter;
            2   14     2       colorTbl  [[Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Counter;
            3   13     3              i  I
            5   11     4             cl  Ljava/util/List;
            9   11     5         nSlots  I
    MethodParameters:
        Name  Flags
      colors  

  public static java.awt.image.BufferedImage getIndexedImage(java.awt.image.BufferedImage, int);
    descriptor: (Ljava/awt/image/BufferedImage;I)Ljava/awt/image/BufferedImage;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=17, args_size=2
        start local 0 // java.awt.image.BufferedImage bi
        start local 1 // int nColors
         0: .line 695
            aload 0 /* bi */
            invokevirtual java.awt.image.BufferedImage.getWidth:()I
            istore 2 /* w */
        start local 2 // int w
         1: .line 696
            aload 0 /* bi */
            invokevirtual java.awt.image.BufferedImage.getHeight:()I
            istore 3 /* h */
        start local 3 // int h
         2: .line 699
            aload 0 /* bi */
            invokestatic org.apache.batik.ext.awt.image.rendered.IndexImage.createColorList:(Ljava/awt/image/BufferedImage;)[Ljava/util/List;
            astore 4 /* colors */
        start local 4 // java.util.List[] colors
         3: .line 704
            aload 4 /* colors */
            invokestatic org.apache.batik.ext.awt.image.rendered.IndexImage.convertColorList:([Ljava/util/List;)[[Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Counter;
            astore 5 /* colorTbl */
        start local 5 // org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] colorTbl
         4: .line 707
            aconst_null
            astore 4 /* colors */
         5: .line 709
            iconst_1
            istore 6 /* nCubes */
        start local 6 // int nCubes
         6: .line 710
            iconst_0
            istore 7 /* fCube */
        start local 7 // int fCube
         7: .line 711
            iload 1 /* nColors */
            anewarray org.apache.batik.ext.awt.image.rendered.IndexImage$Cube
            astore 8 /* cubes */
        start local 8 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[] cubes
         8: .line 712
            aload 8 /* cubes */
            iconst_0
            new org.apache.batik.ext.awt.image.rendered.IndexImage$Cube
            dup
            aload 5 /* colorTbl */
            iload 2 /* w */
            iload 3 /* h */
            imul
            invokespecial org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.<init>:([[Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Counter;I)V
            aastore
         9: .line 714
            goto 44
        10: .line 716
      StackMap locals: java.awt.image.BufferedImage int int int java.util.List[] org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] int int org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[]
      StackMap stack:
            iinc 7 /* fCube */ 1
        11: .line 717
            iload 7 /* fCube */
            iload 6 /* nCubes */
            if_icmpne 12
            goto 13
        12: .line 715
      StackMap locals:
      StackMap stack:
            aload 8 /* cubes */
            iload 7 /* fCube */
            aaload
            invokevirtual org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.isDone:()Z
            ifne 10
        13: .line 719
      StackMap locals:
      StackMap stack:
            iload 7 /* fCube */
            iload 6 /* nCubes */
            if_icmpne 15
        14: .line 721
            goto 45
        15: .line 723
      StackMap locals:
      StackMap stack:
            aload 8 /* cubes */
            iload 7 /* fCube */
            aaload
            astore 9 /* c */
        start local 9 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube c
        16: .line 724
            aload 9 /* c */
            invokevirtual org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.split:()Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;
            astore 10 /* nc */
        start local 10 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube nc
        17: .line 725
            aload 10 /* nc */
            ifnull 44
        18: .line 728
            aload 10 /* nc */
            getfield org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.count:I
            aload 9 /* c */
            getfield org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.count:I
            if_icmple 21
        19: .line 730
            aload 9 /* c */
            astore 11 /* tmp */
        start local 11 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube tmp
        20: aload 10 /* nc */
            astore 9 /* c */
            aload 11 /* tmp */
            astore 10 /* nc */
        end local 11 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube tmp
        21: .line 732
      StackMap locals: org.apache.batik.ext.awt.image.rendered.IndexImage$Cube org.apache.batik.ext.awt.image.rendered.IndexImage$Cube
      StackMap stack:
            iload 7 /* fCube */
            istore 11 /* j */
        start local 11 // int j
        22: .line 733
            aload 9 /* c */
            getfield org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.count:I
            istore 12 /* cnt */
        start local 12 // int cnt
        23: .line 734
            iload 7 /* fCube */
            iconst_1
            iadd
            istore 13 /* i */
        start local 13 // int i
        24: goto 29
        25: .line 735
      StackMap locals: int int int
      StackMap stack:
            aload 8 /* cubes */
            iload 13 /* i */
            aaload
            getfield org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.count:I
            iload 12 /* cnt */
            if_icmpge 27
        26: .line 736
            goto 30
        27: .line 737
      StackMap locals:
      StackMap stack:
            aload 8 /* cubes */
            iload 11 /* j */
            iinc 11 /* j */ 1
            aload 8 /* cubes */
            iload 13 /* i */
            aaload
            aastore
        28: .line 734
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 13 /* i */
            iload 6 /* nCubes */
            if_icmplt 25
        end local 13 // int i
        30: .line 739
      StackMap locals:
      StackMap stack:
            aload 8 /* cubes */
            iload 11 /* j */
            iinc 11 /* j */ 1
            aload 9 /* c */
            aastore
        31: .line 741
            aload 10 /* nc */
            getfield org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.count:I
            istore 12 /* cnt */
        32: .line 742
            goto 36
        33: .line 743
      StackMap locals:
      StackMap stack:
            aload 8 /* cubes */
            iload 11 /* j */
            aaload
            getfield org.apache.batik.ext.awt.image.rendered.IndexImage$Cube.count:I
            iload 12 /* cnt */
            if_icmpge 35
        34: .line 744
            goto 37
        35: .line 745
      StackMap locals:
      StackMap stack:
            iinc 11 /* j */ 1
        36: .line 742
      StackMap locals:
      StackMap stack:
            iload 11 /* j */
            iload 6 /* nCubes */
            if_icmplt 33
        37: .line 747
      StackMap locals:
      StackMap stack:
            iload 6 /* nCubes */
            istore 13 /* i */
        start local 13 // int i
        38: goto 41
        39: .line 748
      StackMap locals: int
      StackMap stack:
            aload 8 /* cubes */
            iload 13 /* i */
            aload 8 /* cubes */
            iload 13 /* i */
            iconst_1
            isub
            aaload
            aastore
        40: .line 747
            iinc 13 /* i */ -1
      StackMap locals:
      StackMap stack:
        41: iload 13 /* i */
            iload 11 /* j */
            if_icmpgt 39
        end local 13 // int i
        42: .line 749
            aload 8 /* cubes */
            iload 11 /* j */
            iinc 11 /* j */ 1
            aload 10 /* nc */
            aastore
        43: .line 750
            iinc 6 /* nCubes */ 1
        end local 12 // int cnt
        end local 11 // int j
        end local 10 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube nc
        end local 9 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube c
        44: .line 714
      StackMap locals: java.awt.image.BufferedImage int int int java.util.List[] org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] int int org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[]
      StackMap stack:
            iload 6 /* nCubes */
            iload 1 /* nColors */
            if_icmplt 12
        45: .line 755
      StackMap locals:
      StackMap stack:
            iload 6 /* nCubes */
            aload 8 /* cubes */
            invokestatic org.apache.batik.ext.awt.image.rendered.IndexImage.computeRGB:(I[Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;)[[B
            astore 9 /* rgbTbl */
        start local 9 // byte[][] rgbTbl
        46: .line 761
            new java.awt.image.IndexColorModel
            dup
            bipush 8
            iload 6 /* nCubes */
            aload 9 /* rgbTbl */
            iconst_0
            aaload
            aload 9 /* rgbTbl */
            iconst_1
            aaload
            aload 9 /* rgbTbl */
            iconst_2
            aaload
            invokespecial java.awt.image.IndexColorModel.<init>:(II[B[B[B)V
            astore 10 /* icm */
        start local 10 // java.awt.image.IndexColorModel icm
        47: .line 763
            new java.awt.image.BufferedImage
            dup
        48: .line 764
            iload 2 /* w */
            iload 3 /* h */
            bipush 13
            aload 10 /* icm */
        49: .line 763
            invokespecial java.awt.image.BufferedImage.<init>:(IIILjava/awt/image/IndexColorModel;)V
            astore 11 /* indexed */
        start local 11 // java.awt.image.BufferedImage indexed
        50: .line 765
            aload 11 /* indexed */
            invokevirtual java.awt.image.BufferedImage.createGraphics:()Ljava/awt/Graphics2D;
            astore 12 /* g2d */
        start local 12 // java.awt.Graphics2D g2d
        51: .line 766
            aload 12 /* g2d */
        52: .line 767
            getstatic java.awt.RenderingHints.KEY_DITHERING:Ljava/awt/RenderingHints$Key;
        53: .line 768
            getstatic java.awt.RenderingHints.VALUE_DITHER_ENABLE:Ljava/lang/Object;
        54: .line 766
            invokevirtual java.awt.Graphics2D.setRenderingHint:(Ljava/awt/RenderingHints$Key;Ljava/lang/Object;)V
        55: .line 769
            aload 12 /* g2d */
            aload 0 /* bi */
            iconst_0
            iconst_0
            aconst_null
            invokevirtual java.awt.Graphics2D.drawImage:(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z
            pop
        56: .line 770
            aload 12 /* g2d */
            invokevirtual java.awt.Graphics2D.dispose:()V
        57: .line 774
            iconst_1
            istore 13 /* bits */
        start local 13 // int bits
        58: goto 61
        59: .line 775
      StackMap locals: java.awt.image.BufferedImage int int int java.util.List[] org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] int int org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[] byte[][] java.awt.image.IndexColorModel java.awt.image.BufferedImage java.awt.Graphics2D int
      StackMap stack:
            iconst_1
            iload 13 /* bits */
            ishl
            iload 6 /* nCubes */
            if_icmplt 60
            goto 62
        60: .line 774
      StackMap locals:
      StackMap stack:
            iinc 13 /* bits */ 1
      StackMap locals:
      StackMap stack:
        61: iload 13 /* bits */
            bipush 8
            if_icmple 59
        62: .line 779
      StackMap locals:
      StackMap stack:
            iload 13 /* bits */
            iconst_4
            if_icmple 64
        63: .line 781
            aload 11 /* indexed */
            areturn
        64: .line 785
      StackMap locals:
      StackMap stack:
            iload 13 /* bits */
            iconst_3
            if_icmpne 65
            iconst_4
            istore 13 /* bits */
        65: .line 786
      StackMap locals:
      StackMap stack:
            new java.awt.image.IndexColorModel
            dup
            iload 13 /* bits */
            iload 6 /* nCubes */
        66: .line 787
            aload 9 /* rgbTbl */
            iconst_0
            aaload
            aload 9 /* rgbTbl */
            iconst_1
            aaload
            aload 9 /* rgbTbl */
            iconst_2
            aaload
        67: .line 786
            invokespecial java.awt.image.IndexColorModel.<init>:(II[B[B[B)V
            astore 14 /* cm */
        start local 14 // java.awt.image.ColorModel cm
        68: .line 789
            new java.awt.image.MultiPixelPackedSampleModel
            dup
            iconst_0
            iload 2 /* w */
            iload 3 /* h */
            iload 13 /* bits */
            invokespecial java.awt.image.MultiPixelPackedSampleModel.<init>:(IIII)V
            astore 15 /* sm */
        start local 15 // java.awt.image.SampleModel sm
        69: .line 790
            aload 15 /* sm */
            new java.awt.Point
            dup
            iconst_0
            iconst_0
            invokespecial java.awt.Point.<init>:(II)V
            invokestatic java.awt.image.Raster.createWritableRaster:(Ljava/awt/image/SampleModel;Ljava/awt/Point;)Ljava/awt/image/WritableRaster;
            astore 16 /* ras */
        start local 16 // java.awt.image.WritableRaster ras
        70: .line 793
            aload 11 /* indexed */
            astore 0 /* bi */
        71: .line 794
            new java.awt.image.BufferedImage
            dup
            aload 14 /* cm */
            aload 16 /* ras */
            aload 0 /* bi */
            invokevirtual java.awt.image.BufferedImage.isAlphaPremultiplied:()Z
            aconst_null
            invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
            astore 11 /* indexed */
        72: .line 795
            aload 0 /* bi */
            aload 11 /* indexed */
            invokestatic org.apache.batik.ext.awt.image.GraphicsUtil.copyData:(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)V
        73: .line 796
            aload 11 /* indexed */
            areturn
        end local 16 // java.awt.image.WritableRaster ras
        end local 15 // java.awt.image.SampleModel sm
        end local 14 // java.awt.image.ColorModel cm
        end local 13 // int bits
        end local 12 // java.awt.Graphics2D g2d
        end local 11 // java.awt.image.BufferedImage indexed
        end local 10 // java.awt.image.IndexColorModel icm
        end local 9 // byte[][] rgbTbl
        end local 8 // org.apache.batik.ext.awt.image.rendered.IndexImage$Cube[] cubes
        end local 7 // int fCube
        end local 6 // int nCubes
        end local 5 // org.apache.batik.ext.awt.image.rendered.IndexImage$Counter[][] colorTbl
        end local 4 // java.util.List[] colors
        end local 3 // int h
        end local 2 // int w
        end local 1 // int nColors
        end local 0 // java.awt.image.BufferedImage bi
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   74     0        bi  Ljava/awt/image/BufferedImage;
            0   74     1   nColors  I
            1   74     2         w  I
            2   74     3         h  I
            3   74     4    colors  [Ljava/util/List;
            4   74     5  colorTbl  [[Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Counter;
            6   74     6    nCubes  I
            7   74     7     fCube  I
            8   74     8     cubes  [Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;
           16   44     9         c  Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;
           17   44    10        nc  Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;
           20   21    11       tmp  Lorg/apache/batik/ext/awt/image/rendered/IndexImage$Cube;
           22   44    11         j  I
           23   44    12       cnt  I
           24   30    13         i  I
           38   42    13         i  I
           46   74     9    rgbTbl  [[B
           47   74    10       icm  Ljava/awt/image/IndexColorModel;
           50   74    11   indexed  Ljava/awt/image/BufferedImage;
           51   74    12       g2d  Ljava/awt/Graphics2D;
           58   74    13      bits  I
           68   74    14        cm  Ljava/awt/image/ColorModel;
           69   74    15        sm  Ljava/awt/image/SampleModel;
           70   74    16       ras  Ljava/awt/image/WritableRaster;
    MethodParameters:
         Name  Flags
      bi       
      nColors  
}
SourceFile: "IndexImage.java"
NestMembers:
  org.apache.batik.ext.awt.image.rendered.IndexImage$Counter  org.apache.batik.ext.awt.image.rendered.IndexImage$Cube
InnerClasses:
  public abstract Key = java.awt.RenderingHints$Key of java.awt.RenderingHints
  private Counter = org.apache.batik.ext.awt.image.rendered.IndexImage$Counter of org.apache.batik.ext.awt.image.rendered.IndexImage
  private Cube = org.apache.batik.ext.awt.image.rendered.IndexImage$Cube of org.apache.batik.ext.awt.image.rendered.IndexImage