public abstract class com.sun.prism.image.CompoundImage
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.prism.image.CompoundImage
  super_class: java.lang.Object
{
  public static final int BORDER_SIZE_DEFAULT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  protected final int[] uSubdivision;
    descriptor: [I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int[] u0;
    descriptor: [I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int[] u1;
    descriptor: [I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int[] vSubdivision;
    descriptor: [I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int[] v0;
    descriptor: [I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int[] v1;
    descriptor: [I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int uSections;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int vSections;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int uBorderSize;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int vBorderSize;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected com.sun.prism.Image[] tiles;
    descriptor: [Lcom/sun/prism/Image;
    flags: (0x0004) ACC_PROTECTED

  public void <init>(com.sun.prism.Image, int);
    descriptor: (Lcom/sun/prism/Image;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.prism.image.CompoundImage this
        start local 1 // com.sun.prism.Image image
        start local 2 // int maxSize
         0: .line 55
            aload 0 /* this */
            aload 1 /* image */
            iload 2 /* maxSize */
            iconst_1
            invokespecial com.sun.prism.image.CompoundImage.<init>:(Lcom/sun/prism/Image;II)V
         1: .line 56
            return
        end local 2 // int maxSize
        end local 1 // com.sun.prism.Image image
        end local 0 // com.sun.prism.image.CompoundImage this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/prism/image/CompoundImage;
            0    2     1    image  Lcom/sun/prism/Image;
            0    2     2  maxSize  I
    MethodParameters:
         Name  Flags
      image    
      maxSize  

  public void <init>(com.sun.prism.Image, int, int);
    descriptor: (Lcom/sun/prism/Image;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=8, args_size=4
        start local 0 // com.sun.prism.image.CompoundImage this
        start local 1 // com.sun.prism.Image image
        start local 2 // int maxSize
        start local 3 // int borderSize
         0: .line 58
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 60
            iconst_4
            iload 3 /* borderSize */
            imul
            iload 2 /* maxSize */
            if_icmplt 2
            iload 2 /* maxSize */
            iconst_4
            idiv
            istore 3 /* borderSize */
         2: .line 62
      StackMap locals: com.sun.prism.image.CompoundImage com.sun.prism.Image int int
      StackMap stack:
            aload 1 /* image */
            invokevirtual com.sun.prism.Image.getWidth:()I
            istore 4 /* imgW */
        start local 4 // int imgW
         3: .line 63
            aload 1 /* image */
            invokevirtual com.sun.prism.Image.getHeight:()I
            istore 5 /* imgH */
        start local 5 // int imgH
         4: .line 65
            aload 0 /* this */
            iload 4 /* imgW */
            iload 2 /* maxSize */
            if_icmpgt 5
            iconst_0
            goto 6
      StackMap locals: com.sun.prism.image.CompoundImage com.sun.prism.Image int int int int
      StackMap stack: com.sun.prism.image.CompoundImage
         5: iload 3 /* borderSize */
      StackMap locals: com.sun.prism.image.CompoundImage com.sun.prism.Image int int int int
      StackMap stack: com.sun.prism.image.CompoundImage int
         6: putfield com.sun.prism.image.CompoundImage.uBorderSize:I
         7: .line 66
            aload 0 /* this */
            iload 5 /* imgH */
            iload 2 /* maxSize */
            if_icmpgt 8
            iconst_0
            goto 9
      StackMap locals:
      StackMap stack: com.sun.prism.image.CompoundImage
         8: iload 3 /* borderSize */
      StackMap locals: com.sun.prism.image.CompoundImage com.sun.prism.Image int int int int
      StackMap stack: com.sun.prism.image.CompoundImage int
         9: putfield com.sun.prism.image.CompoundImage.vBorderSize:I
        10: .line 68
            aload 0 /* this */
            iload 4 /* imgW */
            iload 2 /* maxSize */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uBorderSize:I
            invokestatic com.sun.prism.image.CompoundImage.subdivideUVs:(III)[I
            putfield com.sun.prism.image.CompoundImage.uSubdivision:[I
        11: .line 69
            aload 0 /* this */
            iload 5 /* imgH */
            iload 2 /* maxSize */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vBorderSize:I
            invokestatic com.sun.prism.image.CompoundImage.subdivideUVs:(III)[I
            putfield com.sun.prism.image.CompoundImage.vSubdivision:[I
        12: .line 71
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSubdivision:[I
            arraylength
            iconst_1
            isub
            putfield com.sun.prism.image.CompoundImage.uSections:I
        13: .line 72
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSubdivision:[I
            arraylength
            iconst_1
            isub
            putfield com.sun.prism.image.CompoundImage.vSections:I
        14: .line 74
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSections:I
            newarray 10
            putfield com.sun.prism.image.CompoundImage.u0:[I
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSections:I
            newarray 10
            putfield com.sun.prism.image.CompoundImage.u1:[I
        15: .line 75
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSections:I
            newarray 10
            putfield com.sun.prism.image.CompoundImage.v0:[I
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSections:I
            newarray 10
            putfield com.sun.prism.image.CompoundImage.v1:[I
        16: .line 78
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSections:I
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSections:I
            imul
            anewarray com.sun.prism.Image
            putfield com.sun.prism.image.CompoundImage.tiles:[Lcom/sun/prism/Image;
        17: .line 80
            iconst_0
            istore 6 /* y */
        start local 6 // int y
        18: goto 22
        19: .line 81
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.v0:[I
            iload 6 /* y */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSubdivision:[I
            iload 6 /* y */
            iaload
            aload 0 /* this */
            iload 6 /* y */
            invokevirtual com.sun.prism.image.CompoundImage.uBorder:(I)I
            isub
            iastore
        20: .line 82
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.v1:[I
            iload 6 /* y */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSubdivision:[I
            iload 6 /* y */
            iconst_1
            iadd
            iaload
            aload 0 /* this */
            iload 6 /* y */
            invokevirtual com.sun.prism.image.CompoundImage.dBorder:(I)I
            iadd
            iastore
        21: .line 80
            iinc 6 /* y */ 1
      StackMap locals:
      StackMap stack:
        22: iload 6 /* y */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSections:I
            if_icmpne 19
        end local 6 // int y
        23: .line 85
            iconst_0
            istore 6 /* x */
        start local 6 // int x
        24: goto 28
        25: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.u0:[I
            iload 6 /* x */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSubdivision:[I
            iload 6 /* x */
            iaload
            aload 0 /* this */
            iload 6 /* x */
            invokevirtual com.sun.prism.image.CompoundImage.lBorder:(I)I
            isub
            iastore
        26: .line 87
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.u1:[I
            iload 6 /* x */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSubdivision:[I
            iload 6 /* x */
            iconst_1
            iadd
            iaload
            aload 0 /* this */
            iload 6 /* x */
            invokevirtual com.sun.prism.image.CompoundImage.rBorder:(I)I
            iadd
            iastore
        27: .line 85
            iinc 6 /* x */ 1
      StackMap locals:
      StackMap stack:
        28: iload 6 /* x */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSections:I
            if_icmpne 25
        end local 6 // int x
        29: .line 90
            iconst_0
            istore 6 /* y */
        start local 6 // int y
        30: goto 39
        31: .line 91
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* x */
        start local 7 // int x
        32: goto 37
        33: .line 93
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.tiles:[Lcom/sun/prism/Image;
            iload 6 /* y */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSections:I
            imul
            iload 7 /* x */
            iadd
        34: .line 94
            aload 1 /* image */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.u0:[I
            iload 7 /* x */
            iaload
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.v0:[I
            iload 6 /* y */
            iaload
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.u1:[I
            iload 7 /* x */
            iaload
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.u0:[I
            iload 7 /* x */
            iaload
            isub
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.v1:[I
            iload 6 /* y */
            iaload
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.v0:[I
            iload 6 /* y */
            iaload
            isub
            invokevirtual com.sun.prism.Image.createSubImage:(IIII)Lcom/sun/prism/Image;
        35: .line 93
            aastore
        36: .line 91
            iinc 7 /* x */ 1
      StackMap locals:
      StackMap stack:
        37: iload 7 /* x */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSections:I
            if_icmpne 33
        end local 7 // int x
        38: .line 90
            iinc 6 /* y */ 1
      StackMap locals:
      StackMap stack:
        39: iload 6 /* y */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSections:I
            if_icmpne 31
        end local 6 // int y
        40: .line 97
            return
        end local 5 // int imgH
        end local 4 // int imgW
        end local 3 // int borderSize
        end local 2 // int maxSize
        end local 1 // com.sun.prism.Image image
        end local 0 // com.sun.prism.image.CompoundImage this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   41     0        this  Lcom/sun/prism/image/CompoundImage;
            0   41     1       image  Lcom/sun/prism/Image;
            0   41     2     maxSize  I
            0   41     3  borderSize  I
            3   41     4        imgW  I
            4   41     5        imgH  I
           18   23     6           y  I
           24   29     6           x  I
           30   40     6           y  I
           32   38     7           x  I
    MethodParameters:
            Name  Flags
      image       
      maxSize     
      borderSize  

  private int lBorder(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.prism.image.CompoundImage this
        start local 1 // int i
         0: .line 99
            iload 1 /* i */
            ifle 1
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uBorderSize:I
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int i
        end local 0 // com.sun.prism.image.CompoundImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/prism/image/CompoundImage;
            0    3     1     i  I
    MethodParameters:
      Name  Flags
      i     

  private int rBorder(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.prism.image.CompoundImage this
        start local 1 // int i
         0: .line 100
            iload 1 /* i */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uSections:I
            iconst_1
            isub
            if_icmpge 1
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.uBorderSize:I
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int i
        end local 0 // com.sun.prism.image.CompoundImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/prism/image/CompoundImage;
            0    3     1     i  I
    MethodParameters:
      Name  Flags
      i     

  private int uBorder(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.prism.image.CompoundImage this
        start local 1 // int i
         0: .line 101
            iload 1 /* i */
            ifle 1
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vBorderSize:I
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int i
        end local 0 // com.sun.prism.image.CompoundImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/prism/image/CompoundImage;
            0    3     1     i  I
    MethodParameters:
      Name  Flags
      i     

  private int dBorder(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.prism.image.CompoundImage this
        start local 1 // int i
         0: .line 102
            iload 1 /* i */
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vSections:I
            iconst_1
            isub
            if_icmpge 1
            aload 0 /* this */
            getfield com.sun.prism.image.CompoundImage.vBorderSize:I
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // int i
        end local 0 // com.sun.prism.image.CompoundImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/prism/image/CompoundImage;
            0    3     1     i  I
    MethodParameters:
      Name  Flags
      i     

  private static int[] subdivideUVs(int, int, int);
    descriptor: (III)[I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // int size
        start local 1 // int maxSize
        start local 2 // int borderSize
         0: .line 108
            iload 1 /* maxSize */
            iload 2 /* borderSize */
            iconst_2
            imul
            isub
            istore 3 /* contSize */
        start local 3 // int contSize
         1: .line 109
            iload 0 /* size */
            iload 2 /* borderSize */
            iconst_2
            imul
            isub
            iload 3 /* contSize */
            iadd
            iconst_1
            isub
            iload 3 /* contSize */
            idiv
            istore 4 /* nImages */
        start local 4 // int nImages
         2: .line 111
            iload 4 /* nImages */
            iconst_1
            iadd
            newarray 10
            astore 5 /* data */
        start local 5 // int[] data
         3: .line 113
            aload 5 /* data */
            iconst_0
            iconst_0
            iastore
         4: .line 114
            aload 5 /* data */
            iload 4 /* nImages */
            iload 0 /* size */
            iastore
         5: .line 116
            iconst_1
            istore 6 /* i */
        start local 6 // int i
         6: goto 9
         7: .line 117
      StackMap locals: int int int int int int[] int
      StackMap stack:
            aload 5 /* data */
            iload 6 /* i */
            iload 2 /* borderSize */
            iload 3 /* contSize */
            iload 6 /* i */
            imul
            iadd
            iastore
         8: .line 116
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 6 /* i */
            iload 4 /* nImages */
            if_icmplt 7
        end local 6 // int i
        10: .line 120
            aload 5 /* data */
            areturn
        end local 5 // int[] data
        end local 4 // int nImages
        end local 3 // int contSize
        end local 2 // int borderSize
        end local 1 // int maxSize
        end local 0 // int size
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        size  I
            0   11     1     maxSize  I
            0   11     2  borderSize  I
            1   11     3    contSize  I
            2   11     4     nImages  I
            3   11     5        data  [I
            6   10     6           i  I
    MethodParameters:
            Name  Flags
      size        
      maxSize     
      borderSize  

  protected abstract com.sun.prism.Texture getTile(int, int, com.sun.prism.ResourceFactory);
    descriptor: (IILcom/sun/prism/ResourceFactory;)Lcom/sun/prism/Texture;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      x        
      y        
      factory  

  public void drawLazy(com.sun.prism.Graphics, com.sun.prism.image.Coords, float, float);
    descriptor: (Lcom/sun/prism/Graphics;Lcom/sun/prism/image/Coords;FF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.prism.image.CompoundImage this
        start local 1 // com.sun.prism.Graphics g
        start local 2 // com.sun.prism.image.Coords crd
        start local 3 // float x
        start local 4 // float y
         0: .line 126
            new com.sun.prism.image.CompoundCoords
            dup
            aload 0 /* this */
            aload 2 /* crd */
            invokespecial com.sun.prism.image.CompoundCoords.<init>:(Lcom/sun/prism/image/CompoundImage;Lcom/sun/prism/image/Coords;)V
            aload 1 /* g */
            aload 0 /* this */
            fload 3 /* x */
            fload 4 /* y */
            invokevirtual com.sun.prism.image.CompoundCoords.draw:(Lcom/sun/prism/Graphics;Lcom/sun/prism/image/CompoundImage;FF)V
         1: .line 127
            return
        end local 4 // float y
        end local 3 // float x
        end local 2 // com.sun.prism.image.Coords crd
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.prism.image.CompoundImage this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/prism/image/CompoundImage;
            0    2     1     g  Lcom/sun/prism/Graphics;
            0    2     2   crd  Lcom/sun/prism/image/Coords;
            0    2     3     x  F
            0    2     4     y  F
    MethodParameters:
      Name  Flags
      g     
      crd   
      x     
      y     
}
SourceFile: "CompoundImage.java"