public class javax.swing.SizeRequirements implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.SizeRequirements
  super_class: java.lang.Object
{
  public int minimum;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public int preferred;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public int maximum;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public float alignment;
    descriptor: F
    flags: (0x0001) ACC_PUBLIC

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.SizeRequirements this
         0: .line 134
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 135
            aload 0 /* this */
            iconst_0
            putfield javax.swing.SizeRequirements.minimum:I
         2: .line 136
            aload 0 /* this */
            iconst_0
            putfield javax.swing.SizeRequirements.preferred:I
         3: .line 137
            aload 0 /* this */
            iconst_0
            putfield javax.swing.SizeRequirements.maximum:I
         4: .line 138
            aload 0 /* this */
            ldc 0.5
            putfield javax.swing.SizeRequirements.alignment:F
         5: .line 139
            return
        end local 0 // javax.swing.SizeRequirements this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljavax/swing/SizeRequirements;

  public void <init>(int, int, int, float);
    descriptor: (IIIF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // javax.swing.SizeRequirements this
        start local 1 // int min
        start local 2 // int pref
        start local 3 // int max
        start local 4 // float a
         0: .line 150
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 151
            aload 0 /* this */
            iload 1 /* min */
            putfield javax.swing.SizeRequirements.minimum:I
         2: .line 152
            aload 0 /* this */
            iload 2 /* pref */
            putfield javax.swing.SizeRequirements.preferred:I
         3: .line 153
            aload 0 /* this */
            iload 3 /* max */
            putfield javax.swing.SizeRequirements.maximum:I
         4: .line 154
            aload 0 /* this */
            fload 4 /* a */
            fconst_1
            fcmpl
            ifle 5
            fconst_1
            goto 7
      StackMap locals: javax.swing.SizeRequirements int int int float
      StackMap stack: javax.swing.SizeRequirements
         5: fload 4 /* a */
            fconst_0
            fcmpg
            ifge 6
            fconst_0
            goto 7
      StackMap locals:
      StackMap stack: javax.swing.SizeRequirements
         6: fload 4 /* a */
      StackMap locals: javax.swing.SizeRequirements int int int float
      StackMap stack: javax.swing.SizeRequirements float
         7: putfield javax.swing.SizeRequirements.alignment:F
         8: .line 155
            return
        end local 4 // float a
        end local 3 // int max
        end local 2 // int pref
        end local 1 // int min
        end local 0 // javax.swing.SizeRequirements this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljavax/swing/SizeRequirements;
            0    9     1   min  I
            0    9     2  pref  I
            0    9     3   max  I
            0    9     4     a  F
    MethodParameters:
      Name  Flags
      min   
      pref  
      max   
      a     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.SizeRequirements this
         0: .line 164
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield javax.swing.SizeRequirements.minimum:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield javax.swing.SizeRequirements.preferred:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield javax.swing.SizeRequirements.maximum:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "]@"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield javax.swing.SizeRequirements.alignment:F
            invokevirtual java.lang.StringBuilder.append:(F)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // javax.swing.SizeRequirements this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/SizeRequirements;

  public static javax.swing.SizeRequirements getTiledSizeRequirements(javax.swing.SizeRequirements[]);
    descriptor: ([Ljavax/swing/SizeRequirements;)Ljavax/swing/SizeRequirements;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // javax.swing.SizeRequirements[] children
         0: .line 183
            new javax.swing.SizeRequirements
            dup
            invokespecial javax.swing.SizeRequirements.<init>:()V
            astore 1 /* total */
        start local 1 // javax.swing.SizeRequirements total
         1: .line 184
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 8
         3: .line 185
      StackMap locals: javax.swing.SizeRequirements int
      StackMap stack:
            aload 0 /* children */
            iload 2 /* i */
            aaload
            astore 3 /* req */
        start local 3 // javax.swing.SizeRequirements req
         4: .line 186
            aload 1 /* total */
            aload 1 /* total */
            getfield javax.swing.SizeRequirements.minimum:I
            i2l
            aload 3 /* req */
            getfield javax.swing.SizeRequirements.minimum:I
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            putfield javax.swing.SizeRequirements.minimum:I
         5: .line 187
            aload 1 /* total */
            aload 1 /* total */
            getfield javax.swing.SizeRequirements.preferred:I
            i2l
            aload 3 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            putfield javax.swing.SizeRequirements.preferred:I
         6: .line 188
            aload 1 /* total */
            aload 1 /* total */
            getfield javax.swing.SizeRequirements.maximum:I
            i2l
            aload 3 /* req */
            getfield javax.swing.SizeRequirements.maximum:I
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            putfield javax.swing.SizeRequirements.maximum:I
        end local 3 // javax.swing.SizeRequirements req
         7: .line 184
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* children */
            arraylength
            if_icmplt 3
        end local 2 // int i
         9: .line 190
            aload 1 /* total */
            areturn
        end local 1 // javax.swing.SizeRequirements total
        end local 0 // javax.swing.SizeRequirements[] children
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0  children  [Ljavax/swing/SizeRequirements;
            1   10     1     total  Ljavax/swing/SizeRequirements;
            2    9     2         i  I
            4    7     3       req  Ljavax/swing/SizeRequirements;
    MethodParameters:
          Name  Flags
      children  

  public static javax.swing.SizeRequirements getAlignedSizeRequirements(javax.swing.SizeRequirements[]);
    descriptor: ([Ljavax/swing/SizeRequirements;)Ljavax/swing/SizeRequirements;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=1
        start local 0 // javax.swing.SizeRequirements[] children
         0: .line 206
            new javax.swing.SizeRequirements
            dup
            invokespecial javax.swing.SizeRequirements.<init>:()V
            astore 1 /* totalAscent */
        start local 1 // javax.swing.SizeRequirements totalAscent
         1: .line 207
            new javax.swing.SizeRequirements
            dup
            invokespecial javax.swing.SizeRequirements.<init>:()V
            astore 2 /* totalDescent */
        start local 2 // javax.swing.SizeRequirements totalDescent
         2: .line 208
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 18
         4: .line 209
      StackMap locals: javax.swing.SizeRequirements javax.swing.SizeRequirements int
      StackMap stack:
            aload 0 /* children */
            iload 3 /* i */
            aaload
            astore 4 /* req */
        start local 4 // javax.swing.SizeRequirements req
         5: .line 211
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.alignment:F
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.minimum:I
            i2f
            fmul
            f2i
            istore 5 /* ascent */
        start local 5 // int ascent
         6: .line 212
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.minimum:I
            iload 5 /* ascent */
            isub
            istore 6 /* descent */
        start local 6 // int descent
         7: .line 213
            aload 1 /* totalAscent */
            iload 5 /* ascent */
            aload 1 /* totalAscent */
            getfield javax.swing.SizeRequirements.minimum:I
            invokestatic java.lang.Math.max:(II)I
            putfield javax.swing.SizeRequirements.minimum:I
         8: .line 214
            aload 2 /* totalDescent */
            iload 6 /* descent */
            aload 2 /* totalDescent */
            getfield javax.swing.SizeRequirements.minimum:I
            invokestatic java.lang.Math.max:(II)I
            putfield javax.swing.SizeRequirements.minimum:I
         9: .line 216
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.alignment:F
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            i2f
            fmul
            f2i
            istore 5 /* ascent */
        10: .line 217
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            iload 5 /* ascent */
            isub
            istore 6 /* descent */
        11: .line 218
            aload 1 /* totalAscent */
            iload 5 /* ascent */
            aload 1 /* totalAscent */
            getfield javax.swing.SizeRequirements.preferred:I
            invokestatic java.lang.Math.max:(II)I
            putfield javax.swing.SizeRequirements.preferred:I
        12: .line 219
            aload 2 /* totalDescent */
            iload 6 /* descent */
            aload 2 /* totalDescent */
            getfield javax.swing.SizeRequirements.preferred:I
            invokestatic java.lang.Math.max:(II)I
            putfield javax.swing.SizeRequirements.preferred:I
        13: .line 221
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.alignment:F
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.maximum:I
            i2f
            fmul
            f2i
            istore 5 /* ascent */
        14: .line 222
            aload 4 /* req */
            getfield javax.swing.SizeRequirements.maximum:I
            iload 5 /* ascent */
            isub
            istore 6 /* descent */
        15: .line 223
            aload 1 /* totalAscent */
            iload 5 /* ascent */
            aload 1 /* totalAscent */
            getfield javax.swing.SizeRequirements.maximum:I
            invokestatic java.lang.Math.max:(II)I
            putfield javax.swing.SizeRequirements.maximum:I
        16: .line 224
            aload 2 /* totalDescent */
            iload 6 /* descent */
            aload 2 /* totalDescent */
            getfield javax.swing.SizeRequirements.maximum:I
            invokestatic java.lang.Math.max:(II)I
            putfield javax.swing.SizeRequirements.maximum:I
        end local 6 // int descent
        end local 5 // int ascent
        end local 4 // javax.swing.SizeRequirements req
        17: .line 208
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 3 /* i */
            aload 0 /* children */
            arraylength
            if_icmplt 4
        end local 3 // int i
        19: .line 226
            aload 1 /* totalAscent */
            getfield javax.swing.SizeRequirements.minimum:I
            i2l
            aload 2 /* totalDescent */
            getfield javax.swing.SizeRequirements.minimum:I
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            istore 3 /* min */
        start local 3 // int min
        20: .line 227
            aload 1 /* totalAscent */
            getfield javax.swing.SizeRequirements.preferred:I
            i2l
            aload 2 /* totalDescent */
            getfield javax.swing.SizeRequirements.preferred:I
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            istore 4 /* pref */
        start local 4 // int pref
        21: .line 228
            aload 1 /* totalAscent */
            getfield javax.swing.SizeRequirements.maximum:I
            i2l
            aload 2 /* totalDescent */
            getfield javax.swing.SizeRequirements.maximum:I
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            istore 5 /* max */
        start local 5 // int max
        22: .line 229
            fconst_0
            fstore 6 /* alignment */
        start local 6 // float alignment
        23: .line 230
            iload 3 /* min */
            ifle 29
        24: .line 231
            aload 1 /* totalAscent */
            getfield javax.swing.SizeRequirements.minimum:I
            i2f
            iload 3 /* min */
            i2f
            fdiv
            fstore 6 /* alignment */
        25: .line 232
            fload 6 /* alignment */
            fconst_1
            fcmpl
            ifle 26
            fconst_1
            goto 28
      StackMap locals: int int float
      StackMap stack:
        26: fload 6 /* alignment */
            fconst_0
            fcmpg
            ifge 27
            fconst_0
            goto 28
      StackMap locals:
      StackMap stack:
        27: fload 6 /* alignment */
      StackMap locals:
      StackMap stack: float
        28: fstore 6 /* alignment */
        29: .line 234
      StackMap locals:
      StackMap stack:
            new javax.swing.SizeRequirements
            dup
            iload 3 /* min */
            iload 4 /* pref */
            iload 5 /* max */
            fload 6 /* alignment */
            invokespecial javax.swing.SizeRequirements.<init>:(IIIF)V
            areturn
        end local 6 // float alignment
        end local 5 // int max
        end local 4 // int pref
        end local 3 // int min
        end local 2 // javax.swing.SizeRequirements totalDescent
        end local 1 // javax.swing.SizeRequirements totalAscent
        end local 0 // javax.swing.SizeRequirements[] children
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   30     0      children  [Ljavax/swing/SizeRequirements;
            1   30     1   totalAscent  Ljavax/swing/SizeRequirements;
            2   30     2  totalDescent  Ljavax/swing/SizeRequirements;
            3   19     3             i  I
            5   17     4           req  Ljavax/swing/SizeRequirements;
            6   17     5        ascent  I
            7   17     6       descent  I
           20   30     3           min  I
           21   30     4          pref  I
           22   30     5           max  I
           23   30     6     alignment  F
    MethodParameters:
          Name  Flags
      children  

  public static void calculateTiledPositions(int, javax.swing.SizeRequirements, javax.swing.SizeRequirements[], int[], int[]);
    descriptor: (ILjavax/swing/SizeRequirements;[Ljavax/swing/SizeRequirements;[I[I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // int allocated
        start local 1 // javax.swing.SizeRequirements total
        start local 2 // javax.swing.SizeRequirements[] children
        start local 3 // int[] offsets
        start local 4 // int[] spans
         0: .line 263
            iload 0 /* allocated */
            aload 1 /* total */
            aload 2 /* children */
            aload 3 /* offsets */
            aload 4 /* spans */
            iconst_1
            invokestatic javax.swing.SizeRequirements.calculateTiledPositions:(ILjavax/swing/SizeRequirements;[Ljavax/swing/SizeRequirements;[I[IZ)V
         1: .line 264
            return
        end local 4 // int[] spans
        end local 3 // int[] offsets
        end local 2 // javax.swing.SizeRequirements[] children
        end local 1 // javax.swing.SizeRequirements total
        end local 0 // int allocated
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  allocated  I
            0    2     1      total  Ljavax/swing/SizeRequirements;
            0    2     2   children  [Ljavax/swing/SizeRequirements;
            0    2     3    offsets  [I
            0    2     4      spans  [I
    MethodParameters:
           Name  Flags
      allocated  
      total      
      children   
      offsets    
      spans      

  public static void calculateTiledPositions(int, javax.swing.SizeRequirements, javax.swing.SizeRequirements[], int[], int[], boolean);
    descriptor: (ILjavax/swing/SizeRequirements;[Ljavax/swing/SizeRequirements;[I[IZ)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=13, args_size=6
        start local 0 // int allocated
        start local 1 // javax.swing.SizeRequirements total
        start local 2 // javax.swing.SizeRequirements[] children
        start local 3 // int[] offsets
        start local 4 // int[] spans
        start local 5 // boolean forward
         0: .line 308
            lconst_0
            lstore 6 /* min */
        start local 6 // long min
         1: .line 309
            lconst_0
            lstore 8 /* pref */
        start local 8 // long pref
         2: .line 310
            lconst_0
            lstore 10 /* max */
        start local 10 // long max
         3: .line 311
            iconst_0
            istore 12 /* i */
        start local 12 // int i
         4: goto 9
         5: .line 312
      StackMap locals: int javax.swing.SizeRequirements javax.swing.SizeRequirements[] int[] int[] int long long long int
      StackMap stack:
            lload 6 /* min */
            aload 2 /* children */
            iload 12 /* i */
            aaload
            getfield javax.swing.SizeRequirements.minimum:I
            i2l
            ladd
            lstore 6 /* min */
         6: .line 313
            lload 8 /* pref */
            aload 2 /* children */
            iload 12 /* i */
            aaload
            getfield javax.swing.SizeRequirements.preferred:I
            i2l
            ladd
            lstore 8 /* pref */
         7: .line 314
            lload 10 /* max */
            aload 2 /* children */
            iload 12 /* i */
            aaload
            getfield javax.swing.SizeRequirements.maximum:I
            i2l
            ladd
            lstore 10 /* max */
         8: .line 311
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 12 /* i */
            aload 2 /* children */
            arraylength
            if_icmplt 5
        end local 12 // int i
        10: .line 316
            iload 0 /* allocated */
            i2l
            lload 8 /* pref */
            lcmp
            iflt 13
        11: .line 317
            iload 0 /* allocated */
            lload 6 /* min */
            lload 8 /* pref */
            lload 10 /* max */
            aload 2 /* children */
            aload 3 /* offsets */
            aload 4 /* spans */
            iload 5 /* forward */
            invokestatic javax.swing.SizeRequirements.expandedTile:(IJJJ[Ljavax/swing/SizeRequirements;[I[IZ)V
        12: .line 318
            goto 14
        13: .line 319
      StackMap locals:
      StackMap stack:
            iload 0 /* allocated */
            lload 6 /* min */
            lload 8 /* pref */
            lload 10 /* max */
            aload 2 /* children */
            aload 3 /* offsets */
            aload 4 /* spans */
            iload 5 /* forward */
            invokestatic javax.swing.SizeRequirements.compressedTile:(IJJJ[Ljavax/swing/SizeRequirements;[I[IZ)V
        14: .line 321
      StackMap locals:
      StackMap stack:
            return
        end local 10 // long max
        end local 8 // long pref
        end local 6 // long min
        end local 5 // boolean forward
        end local 4 // int[] spans
        end local 3 // int[] offsets
        end local 2 // javax.swing.SizeRequirements[] children
        end local 1 // javax.swing.SizeRequirements total
        end local 0 // int allocated
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0  allocated  I
            0   15     1      total  Ljavax/swing/SizeRequirements;
            0   15     2   children  [Ljavax/swing/SizeRequirements;
            0   15     3    offsets  [I
            0   15     4      spans  [I
            0   15     5    forward  Z
            1   15     6        min  J
            2   15     8       pref  J
            3   15    10        max  J
            4   10    12          i  I
    MethodParameters:
           Name  Flags
      allocated  
      total      
      children   
      offsets    
      spans      
      forward    

  private static void compressedTile(int, long, long, long, javax.swing.SizeRequirements[], int[], int[], boolean);
    descriptor: (IJJJ[Ljavax/swing/SizeRequirements;[I[IZ)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=17, args_size=8
        start local 0 // int allocated
        start local 1 // long min
        start local 3 // long pref
        start local 5 // long max
        start local 7 // javax.swing.SizeRequirements[] request
        start local 8 // int[] offsets
        start local 9 // int[] spans
        start local 10 // boolean forward
         0: .line 329
            lload 3 /* pref */
            iload 0 /* allocated */
            i2l
            lsub
            lload 3 /* pref */
            lload 1 /* min */
            lsub
            invokestatic java.lang.Math.min:(JJ)J
            l2f
            fstore 11 /* totalPlay */
        start local 11 // float totalPlay
         1: .line 330
            lload 3 /* pref */
            lload 1 /* min */
            lsub
            lconst_0
            lcmp
            ifne 2
            fconst_0
            goto 3
      StackMap locals: float
      StackMap stack:
         2: fload 11 /* totalPlay */
            lload 3 /* pref */
            lload 1 /* min */
            lsub
            l2f
            fdiv
      StackMap locals:
      StackMap stack: float
         3: fstore 12 /* factor */
        start local 12 // float factor
         4: .line 334
            iload 10 /* forward */
            ifeq 16
         5: .line 336
            iconst_0
            istore 13 /* totalOffset */
        start local 13 // int totalOffset
         6: .line 337
            iconst_0
            istore 14 /* i */
        start local 14 // int i
         7: goto 14
         8: .line 338
      StackMap locals: float int int
      StackMap stack:
            aload 8 /* offsets */
            iload 14 /* i */
            iload 13 /* totalOffset */
            iastore
         9: .line 339
            aload 7 /* request */
            iload 14 /* i */
            aaload
            astore 15 /* req */
        start local 15 // javax.swing.SizeRequirements req
        10: .line 340
            fload 12 /* factor */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.minimum:I
            isub
            i2f
            fmul
            fstore 16 /* play */
        start local 16 // float play
        11: .line 341
            aload 9 /* spans */
            iload 14 /* i */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            i2f
            fload 16 /* play */
            fsub
            f2i
            iastore
        12: .line 342
            iload 13 /* totalOffset */
            i2l
            aload 9 /* spans */
            iload 14 /* i */
            iaload
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            istore 13 /* totalOffset */
        end local 16 // float play
        end local 15 // javax.swing.SizeRequirements req
        13: .line 337
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 14 /* i */
            aload 9 /* spans */
            arraylength
            if_icmplt 8
        end local 14 // int i
        15: .line 344
            goto 26
        end local 13 // int totalOffset
        16: .line 346
      StackMap locals:
      StackMap stack:
            iload 0 /* allocated */
            istore 13 /* totalOffset */
        start local 13 // int totalOffset
        17: .line 347
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        18: goto 25
        19: .line 348
      StackMap locals: int int
      StackMap stack:
            aload 7 /* request */
            iload 14 /* i */
            aaload
            astore 15 /* req */
        start local 15 // javax.swing.SizeRequirements req
        20: .line 349
            fload 12 /* factor */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.minimum:I
            isub
            i2f
            fmul
            fstore 16 /* play */
        start local 16 // float play
        21: .line 350
            aload 9 /* spans */
            iload 14 /* i */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            i2f
            fload 16 /* play */
            fsub
            f2i
            iastore
        22: .line 351
            aload 8 /* offsets */
            iload 14 /* i */
            iload 13 /* totalOffset */
            aload 9 /* spans */
            iload 14 /* i */
            iaload
            isub
            iastore
        23: .line 352
            iload 13 /* totalOffset */
            i2l
            aload 9 /* spans */
            iload 14 /* i */
            iaload
            i2l
            lsub
            lconst_0
            invokestatic java.lang.Math.max:(JJ)J
            l2i
            istore 13 /* totalOffset */
        end local 16 // float play
        end local 15 // javax.swing.SizeRequirements req
        24: .line 347
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 14 /* i */
            aload 9 /* spans */
            arraylength
            if_icmplt 19
        end local 14 // int i
        26: .line 355
      StackMap locals:
      StackMap stack:
            return
        end local 13 // int totalOffset
        end local 12 // float factor
        end local 11 // float totalPlay
        end local 10 // boolean forward
        end local 9 // int[] spans
        end local 8 // int[] offsets
        end local 7 // javax.swing.SizeRequirements[] request
        end local 5 // long max
        end local 3 // long pref
        end local 1 // long min
        end local 0 // int allocated
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   27     0    allocated  I
            0   27     1          min  J
            0   27     3         pref  J
            0   27     5          max  J
            0   27     7      request  [Ljavax/swing/SizeRequirements;
            0   27     8      offsets  [I
            0   27     9        spans  [I
            0   27    10      forward  Z
            1   27    11    totalPlay  F
            4   27    12       factor  F
            6   16    13  totalOffset  I
           17   27    13  totalOffset  I
            7   15    14            i  I
           10   13    15          req  Ljavax/swing/SizeRequirements;
           11   13    16         play  F
           18   26    14            i  I
           20   24    15          req  Ljavax/swing/SizeRequirements;
           21   24    16         play  F
    MethodParameters:
           Name  Flags
      allocated  
      min        
      pref       
      max        
      request    
      offsets    
      spans      
      forward    

  private static void expandedTile(int, long, long, long, javax.swing.SizeRequirements[], int[], int[], boolean);
    descriptor: (IJJJ[Ljavax/swing/SizeRequirements;[I[IZ)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=17, args_size=8
        start local 0 // int allocated
        start local 1 // long min
        start local 3 // long pref
        start local 5 // long max
        start local 7 // javax.swing.SizeRequirements[] request
        start local 8 // int[] offsets
        start local 9 // int[] spans
        start local 10 // boolean forward
         0: .line 363
            iload 0 /* allocated */
            i2l
            lload 3 /* pref */
            lsub
            lload 5 /* max */
            lload 3 /* pref */
            lsub
            invokestatic java.lang.Math.min:(JJ)J
            l2f
            fstore 11 /* totalPlay */
        start local 11 // float totalPlay
         1: .line 364
            lload 5 /* max */
            lload 3 /* pref */
            lsub
            lconst_0
            lcmp
            ifne 2
            fconst_0
            goto 3
      StackMap locals: float
      StackMap stack:
         2: fload 11 /* totalPlay */
            lload 5 /* max */
            lload 3 /* pref */
            lsub
            l2f
            fdiv
      StackMap locals:
      StackMap stack: float
         3: fstore 12 /* factor */
        start local 12 // float factor
         4: .line 368
            iload 10 /* forward */
            ifeq 16
         5: .line 370
            iconst_0
            istore 13 /* totalOffset */
        start local 13 // int totalOffset
         6: .line 371
            iconst_0
            istore 14 /* i */
        start local 14 // int i
         7: goto 14
         8: .line 372
      StackMap locals: float int int
      StackMap stack:
            aload 8 /* offsets */
            iload 14 /* i */
            iload 13 /* totalOffset */
            iastore
         9: .line 373
            aload 7 /* request */
            iload 14 /* i */
            aaload
            astore 15 /* req */
        start local 15 // javax.swing.SizeRequirements req
        10: .line 374
            fload 12 /* factor */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.maximum:I
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            isub
            i2f
            fmul
            f2i
            istore 16 /* play */
        start local 16 // int play
        11: .line 375
            aload 9 /* spans */
            iload 14 /* i */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            i2l
            iload 16 /* play */
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            iastore
        12: .line 376
            iload 13 /* totalOffset */
            i2l
            aload 9 /* spans */
            iload 14 /* i */
            iaload
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            istore 13 /* totalOffset */
        end local 16 // int play
        end local 15 // javax.swing.SizeRequirements req
        13: .line 371
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 14 /* i */
            aload 9 /* spans */
            arraylength
            if_icmplt 8
        end local 14 // int i
        15: .line 378
            goto 26
        end local 13 // int totalOffset
        16: .line 380
      StackMap locals:
      StackMap stack:
            iload 0 /* allocated */
            istore 13 /* totalOffset */
        start local 13 // int totalOffset
        17: .line 381
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        18: goto 25
        19: .line 382
      StackMap locals: int int
      StackMap stack:
            aload 7 /* request */
            iload 14 /* i */
            aaload
            astore 15 /* req */
        start local 15 // javax.swing.SizeRequirements req
        20: .line 383
            fload 12 /* factor */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.maximum:I
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            isub
            i2f
            fmul
            f2i
            istore 16 /* play */
        start local 16 // int play
        21: .line 384
            aload 9 /* spans */
            iload 14 /* i */
            aload 15 /* req */
            getfield javax.swing.SizeRequirements.preferred:I
            i2l
            iload 16 /* play */
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            iastore
        22: .line 385
            aload 8 /* offsets */
            iload 14 /* i */
            iload 13 /* totalOffset */
            aload 9 /* spans */
            iload 14 /* i */
            iaload
            isub
            iastore
        23: .line 386
            iload 13 /* totalOffset */
            i2l
            aload 9 /* spans */
            iload 14 /* i */
            iaload
            i2l
            lsub
            lconst_0
            invokestatic java.lang.Math.max:(JJ)J
            l2i
            istore 13 /* totalOffset */
        end local 16 // int play
        end local 15 // javax.swing.SizeRequirements req
        24: .line 381
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 14 /* i */
            aload 9 /* spans */
            arraylength
            if_icmplt 19
        end local 14 // int i
        26: .line 389
      StackMap locals:
      StackMap stack:
            return
        end local 13 // int totalOffset
        end local 12 // float factor
        end local 11 // float totalPlay
        end local 10 // boolean forward
        end local 9 // int[] spans
        end local 8 // int[] offsets
        end local 7 // javax.swing.SizeRequirements[] request
        end local 5 // long max
        end local 3 // long pref
        end local 1 // long min
        end local 0 // int allocated
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   27     0    allocated  I
            0   27     1          min  J
            0   27     3         pref  J
            0   27     5          max  J
            0   27     7      request  [Ljavax/swing/SizeRequirements;
            0   27     8      offsets  [I
            0   27     9        spans  [I
            0   27    10      forward  Z
            1   27    11    totalPlay  F
            4   27    12       factor  F
            6   16    13  totalOffset  I
           17   27    13  totalOffset  I
            7   15    14            i  I
           10   13    15          req  Ljavax/swing/SizeRequirements;
           11   13    16         play  I
           18   26    14            i  I
           20   24    15          req  Ljavax/swing/SizeRequirements;
           21   24    16         play  I
    MethodParameters:
           Name  Flags
      allocated  
      min        
      pref       
      max        
      request    
      offsets    
      spans      
      forward    

  public static void calculateAlignedPositions(int, javax.swing.SizeRequirements, javax.swing.SizeRequirements[], int[], int[]);
    descriptor: (ILjavax/swing/SizeRequirements;[Ljavax/swing/SizeRequirements;[I[I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // int allocated
        start local 1 // javax.swing.SizeRequirements total
        start local 2 // javax.swing.SizeRequirements[] children
        start local 3 // int[] offsets
        start local 4 // int[] spans
         0: .line 421
            iload 0 /* allocated */
            aload 1 /* total */
            aload 2 /* children */
            aload 3 /* offsets */
            aload 4 /* spans */
            iconst_1
            invokestatic javax.swing.SizeRequirements.calculateAlignedPositions:(ILjavax/swing/SizeRequirements;[Ljavax/swing/SizeRequirements;[I[IZ)V
         1: .line 422
            return
        end local 4 // int[] spans
        end local 3 // int[] offsets
        end local 2 // javax.swing.SizeRequirements[] children
        end local 1 // javax.swing.SizeRequirements total
        end local 0 // int allocated
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  allocated  I
            0    2     1      total  Ljavax/swing/SizeRequirements;
            0    2     2   children  [Ljavax/swing/SizeRequirements;
            0    2     3    offsets  [I
            0    2     4      spans  [I
    MethodParameters:
           Name  Flags
      allocated  
      total      
      children   
      offsets    
      spans      

  public static void calculateAlignedPositions(int, javax.swing.SizeRequirements, javax.swing.SizeRequirements[], int[], int[], boolean);
    descriptor: (ILjavax/swing/SizeRequirements;[Ljavax/swing/SizeRequirements;[I[IZ)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=16, args_size=6
        start local 0 // int allocated
        start local 1 // javax.swing.SizeRequirements total
        start local 2 // javax.swing.SizeRequirements[] children
        start local 3 // int[] offsets
        start local 4 // int[] spans
        start local 5 // boolean normal
         0: .line 461
            iload 5 /* normal */
            ifeq 1
            aload 1 /* total */
            getfield javax.swing.SizeRequirements.alignment:F
            goto 2
      StackMap locals:
      StackMap stack:
         1: fconst_1
            aload 1 /* total */
            getfield javax.swing.SizeRequirements.alignment:F
            fsub
      StackMap locals:
      StackMap stack: float
         2: fstore 6 /* totalAlignment */
        start local 6 // float totalAlignment
         3: .line 462
            iload 0 /* allocated */
            i2f
            fload 6 /* totalAlignment */
            fmul
            f2i
            istore 7 /* totalAscent */
        start local 7 // int totalAscent
         4: .line 463
            iload 0 /* allocated */
            iload 7 /* totalAscent */
            isub
            istore 8 /* totalDescent */
        start local 8 // int totalDescent
         5: .line 464
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         6: goto 18
         7: .line 465
      StackMap locals: int javax.swing.SizeRequirements javax.swing.SizeRequirements[] int[] int[] int float int int int
      StackMap stack:
            aload 2 /* children */
            iload 9 /* i */
            aaload
            astore 10 /* req */
        start local 10 // javax.swing.SizeRequirements req
         8: .line 466
            iload 5 /* normal */
            ifeq 9
            aload 10 /* req */
            getfield javax.swing.SizeRequirements.alignment:F
            goto 10
      StackMap locals: javax.swing.SizeRequirements
      StackMap stack:
         9: fconst_1
            aload 10 /* req */
            getfield javax.swing.SizeRequirements.alignment:F
            fsub
      StackMap locals:
      StackMap stack: float
        10: fstore 11 /* alignment */
        start local 11 // float alignment
        11: .line 467
            aload 10 /* req */
            getfield javax.swing.SizeRequirements.maximum:I
            i2f
            fload 11 /* alignment */
            fmul
            f2i
            istore 12 /* maxAscent */
        start local 12 // int maxAscent
        12: .line 468
            aload 10 /* req */
            getfield javax.swing.SizeRequirements.maximum:I
            iload 12 /* maxAscent */
            isub
            istore 13 /* maxDescent */
        start local 13 // int maxDescent
        13: .line 469
            iload 7 /* totalAscent */
            iload 12 /* maxAscent */
            invokestatic java.lang.Math.min:(II)I
            istore 14 /* ascent */
        start local 14 // int ascent
        14: .line 470
            iload 8 /* totalDescent */
            iload 13 /* maxDescent */
            invokestatic java.lang.Math.min:(II)I
            istore 15 /* descent */
        start local 15 // int descent
        15: .line 472
            aload 3 /* offsets */
            iload 9 /* i */
            iload 7 /* totalAscent */
            iload 14 /* ascent */
            isub
            iastore
        16: .line 473
            aload 4 /* spans */
            iload 9 /* i */
            iload 14 /* ascent */
            i2l
            iload 15 /* descent */
            i2l
            ladd
            ldc 2147483647
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            iastore
        end local 15 // int descent
        end local 14 // int ascent
        end local 13 // int maxDescent
        end local 12 // int maxAscent
        end local 11 // float alignment
        end local 10 // javax.swing.SizeRequirements req
        17: .line 464
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 9 /* i */
            aload 2 /* children */
            arraylength
            if_icmplt 7
        end local 9 // int i
        19: .line 475
            return
        end local 8 // int totalDescent
        end local 7 // int totalAscent
        end local 6 // float totalAlignment
        end local 5 // boolean normal
        end local 4 // int[] spans
        end local 3 // int[] offsets
        end local 2 // javax.swing.SizeRequirements[] children
        end local 1 // javax.swing.SizeRequirements total
        end local 0 // int allocated
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   20     0       allocated  I
            0   20     1           total  Ljavax/swing/SizeRequirements;
            0   20     2        children  [Ljavax/swing/SizeRequirements;
            0   20     3         offsets  [I
            0   20     4           spans  [I
            0   20     5          normal  Z
            3   20     6  totalAlignment  F
            4   20     7     totalAscent  I
            5   20     8    totalDescent  I
            6   19     9               i  I
            8   17    10             req  Ljavax/swing/SizeRequirements;
           11   17    11       alignment  F
           12   17    12       maxAscent  I
           13   17    13      maxDescent  I
           14   17    14          ascent  I
           15   17    15         descent  I
    MethodParameters:
           Name  Flags
      allocated  
      total      
      children   
      offsets    
      spans      
      normal     

  public static int[] adjustSizes(int, javax.swing.SizeRequirements[]);
    descriptor: (I[Ljavax/swing/SizeRequirements;)[I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // int delta
        start local 1 // javax.swing.SizeRequirements[] children
         0: .line 486
            iconst_0
            newarray 10
            areturn
        end local 1 // javax.swing.SizeRequirements[] children
        end local 0 // int delta
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0     delta  I
            0    1     1  children  [Ljavax/swing/SizeRequirements;
    MethodParameters:
          Name  Flags
      delta     
      children  
}
SourceFile: "SizeRequirements.java"