class sun.font.CStrike$GlyphAdvanceCache
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.font.CStrike$GlyphAdvanceCache
  super_class: java.lang.Object
{
  private static final int FIRST_LAYER_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 256

  private static final int SECOND_LAYER_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 16384

  private final float[] firstLayerCache;
    descriptor: [F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private sun.font.CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray secondLayerCache;
    descriptor: Lsun/font/CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray;
    flags: (0x0002) ACC_PRIVATE

  private java.util.HashMap<java.lang.Integer, java.lang.Float> generalCache;
    descriptor: Ljava/util/HashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/HashMap<Ljava/lang/Integer;Ljava/lang/Float;>;

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.CStrike$GlyphAdvanceCache this
         0: .line 501
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 505
            aload 0 /* this */
            sipush 256
            newarray 6
            putfield sun.font.CStrike$GlyphAdvanceCache.firstLayerCache:[F
         2: .line 501
            return
        end local 0 // sun.font.CStrike$GlyphAdvanceCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/font/CStrike$GlyphAdvanceCache;

  public synchronized float get(int);
    descriptor: (I)F
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.CStrike$GlyphAdvanceCache this
        start local 1 // int index
         0: .line 510
            iload 1 /* index */
            ifge 4
         1: .line 511
            iload 1 /* index */
            ineg
            sipush 16384
            if_icmpge 6
         2: .line 513
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.secondLayerCache:Lsun/font/CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray;
            ifnonnull 3
            fconst_0
            freturn
         3: .line 514
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.secondLayerCache:Lsun/font/CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray;
            iload 1 /* index */
            ineg
            invokevirtual sun.font.CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray.get:(I)F
            freturn
         4: .line 517
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            sipush 256
            if_icmpge 6
         5: .line 519
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.firstLayerCache:[F
            iload 1 /* index */
            faload
            freturn
         6: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.generalCache:Ljava/util/HashMap;
            ifnonnull 7
            fconst_0
            freturn
         7: .line 524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.generalCache:Ljava/util/HashMap;
            iload 1 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Float
            astore 2 /* value */
        start local 2 // java.lang.Float value
         8: .line 525
            aload 2 /* value */
            ifnonnull 9
            fconst_0
            freturn
         9: .line 526
      StackMap locals: java.lang.Float
      StackMap stack:
            aload 2 /* value */
            invokevirtual java.lang.Float.floatValue:()F
            freturn
        end local 2 // java.lang.Float value
        end local 1 // int index
        end local 0 // sun.font.CStrike$GlyphAdvanceCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lsun/font/CStrike$GlyphAdvanceCache;
            0   10     1  index  I
            8   10     2  value  Ljava/lang/Float;
    MethodParameters:
       Name  Flags
      index  final

  public synchronized void put(int, float);
    descriptor: (IF)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // sun.font.CStrike$GlyphAdvanceCache this
        start local 1 // int index
        start local 2 // float value
         0: .line 530
            iload 1 /* index */
            ifge 6
         1: .line 531
            iload 1 /* index */
            ineg
            sipush 16384
            if_icmpge 9
         2: .line 533
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.secondLayerCache:Lsun/font/CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray;
            ifnonnull 4
         3: .line 534
            aload 0 /* this */
            new sun.font.CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray
            dup
            sipush 16384
            bipush 7
            invokespecial sun.font.CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray.<init>:(II)V
            putfield sun.font.CStrike$GlyphAdvanceCache.secondLayerCache:Lsun/font/CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray;
         4: .line 536
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.secondLayerCache:Lsun/font/CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray;
            iload 1 /* index */
            ineg
            fload 2 /* value */
            invokevirtual sun.font.CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray.put:(IF)V
         5: .line 537
            return
         6: .line 540
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            sipush 256
            if_icmpge 9
         7: .line 542
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.firstLayerCache:[F
            iload 1 /* index */
            fload 2 /* value */
            fastore
         8: .line 543
            return
         9: .line 547
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.generalCache:Ljava/util/HashMap;
            ifnonnull 11
        10: .line 548
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield sun.font.CStrike$GlyphAdvanceCache.generalCache:Ljava/util/HashMap;
        11: .line 551
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.CStrike$GlyphAdvanceCache.generalCache:Ljava/util/HashMap;
            iload 1 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            fload 2 /* value */
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 552
            return
        end local 2 // float value
        end local 1 // int index
        end local 0 // sun.font.CStrike$GlyphAdvanceCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lsun/font/CStrike$GlyphAdvanceCache;
            0   13     1  index  I
            0   13     2  value  F
    MethodParameters:
       Name  Flags
      index  final
      value  final
}
SourceFile: "CStrike.java"
NestHost: sun.font.CStrike
InnerClasses:
  private GlyphAdvanceCache = sun.font.CStrike$GlyphAdvanceCache of sun.font.CStrike
  private SparseBitShiftingTwoLayerArray = sun.font.CStrike$GlyphAdvanceCache$SparseBitShiftingTwoLayerArray of sun.font.CStrike$GlyphAdvanceCache