public class java.awt.Font implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.awt.Font
  super_class: java.lang.Object
{
  private java.util.Hashtable fRequestedAttributes;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0002) ACC_PRIVATE

  public static final java.lang.String DIALOG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Dialog"

  public static final java.lang.String DIALOG_INPUT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "DialogInput"

  public static final java.lang.String SANS_SERIF;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "SansSerif"

  public static final java.lang.String SERIF;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Serif"

  public static final java.lang.String MONOSPACED;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Monospaced"

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

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

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

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

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

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

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

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

  protected java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED

  protected int style;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int size;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected float pointSize;
    descriptor: F
    flags: (0x0004) ACC_PROTECTED

  private transient java.awt.peer.FontPeer peer;
    descriptor: Ljava/awt/peer/FontPeer;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient long pData;
    descriptor: J
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient sun.font.Font2DHandle font2DHandle;
    descriptor: Lsun/font/Font2DHandle;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient sun.font.AttributeValues values;
    descriptor: Lsun/font/AttributeValues;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient boolean hasLayoutAttributes;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient boolean createdFont;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient boolean nonIdentityTx;
    descriptor: Z
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private static final java.awt.geom.AffineTransform identityTx;
    descriptor: Ljava/awt/geom/AffineTransform;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -4206021311591459213

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

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

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

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

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

  private static final float[] ssinfo;
    descriptor: [F
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  transient int hash;
    descriptor: I
    flags: (0x0080) ACC_TRANSIENT

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

  private transient java.lang.ref.SoftReference flmref;
    descriptor: Ljava/lang/ref/SoftReference;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

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

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 228
            invokestatic java.awt.Toolkit.loadLibraries:()V
         1: .line 229
            invokestatic java.awt.Font.initIDs:()V
         2: .line 410
            new java.awt.geom.AffineTransform
            dup
            invokespecial java.awt.geom.AffineTransform.<init>:()V
            putstatic java.awt.Font.identityTx:Ljava/awt/geom/AffineTransform;
         3: .line 698
            getstatic sun.font.AttributeValues.MASK_ALL:I
         4: .line 699
            getstatic sun.font.EAttribute.EFONT:Lsun/font/EAttribute;
            invokestatic sun.font.AttributeValues.getMask:(Lsun/font/EAttribute;)I
            iconst_m1
            ixor
         5: .line 698
            iand
            putstatic java.awt.Font.RECOGNIZED_MASK:I
         6: .line 704
            bipush 8
            anewarray sun.font.EAttribute
            dup
            iconst_0
         7: .line 705
            getstatic sun.font.EAttribute.EFAMILY:Lsun/font/EAttribute;
            aastore
            dup
            iconst_1
            getstatic sun.font.EAttribute.EWEIGHT:Lsun/font/EAttribute;
            aastore
            dup
            iconst_2
            getstatic sun.font.EAttribute.EWIDTH:Lsun/font/EAttribute;
            aastore
            dup
            iconst_3
            getstatic sun.font.EAttribute.EPOSTURE:Lsun/font/EAttribute;
            aastore
            dup
            iconst_4
            getstatic sun.font.EAttribute.ESIZE:Lsun/font/EAttribute;
            aastore
            dup
            iconst_5
         8: .line 706
            getstatic sun.font.EAttribute.ETRANSFORM:Lsun/font/EAttribute;
            aastore
            dup
            bipush 6
            getstatic sun.font.EAttribute.ESUPERSCRIPT:Lsun/font/EAttribute;
            aastore
            dup
            bipush 7
            getstatic sun.font.EAttribute.ETRACKING:Lsun/font/EAttribute;
            aastore
         9: .line 705
            invokestatic sun.font.AttributeValues.getMask:([Lsun/font/EAttribute;)I
            putstatic java.awt.Font.PRIMARY_MASK:I
        10: .line 712
            getstatic java.awt.Font.RECOGNIZED_MASK:I
            getstatic java.awt.Font.PRIMARY_MASK:I
            iconst_m1
            ixor
            iand
        11: .line 711
            putstatic java.awt.Font.SECONDARY_MASK:I
        12: .line 717
            bipush 15
            anewarray sun.font.EAttribute
            dup
            iconst_0
        13: .line 718
            getstatic sun.font.EAttribute.ECHAR_REPLACEMENT:Lsun/font/EAttribute;
            aastore
            dup
            iconst_1
            getstatic sun.font.EAttribute.EFOREGROUND:Lsun/font/EAttribute;
            aastore
            dup
            iconst_2
            getstatic sun.font.EAttribute.EBACKGROUND:Lsun/font/EAttribute;
            aastore
            dup
            iconst_3
        14: .line 719
            getstatic sun.font.EAttribute.EUNDERLINE:Lsun/font/EAttribute;
            aastore
            dup
            iconst_4
            getstatic sun.font.EAttribute.ESTRIKETHROUGH:Lsun/font/EAttribute;
            aastore
            dup
            iconst_5
            getstatic sun.font.EAttribute.ERUN_DIRECTION:Lsun/font/EAttribute;
            aastore
            dup
            bipush 6
        15: .line 720
            getstatic sun.font.EAttribute.EBIDI_EMBEDDING:Lsun/font/EAttribute;
            aastore
            dup
            bipush 7
            getstatic sun.font.EAttribute.EJUSTIFICATION:Lsun/font/EAttribute;
            aastore
            dup
            bipush 8
        16: .line 721
            getstatic sun.font.EAttribute.EINPUT_METHOD_HIGHLIGHT:Lsun/font/EAttribute;
            aastore
            dup
            bipush 9
            getstatic sun.font.EAttribute.EINPUT_METHOD_UNDERLINE:Lsun/font/EAttribute;
            aastore
            dup
            bipush 10
        17: .line 722
            getstatic sun.font.EAttribute.ESWAP_COLORS:Lsun/font/EAttribute;
            aastore
            dup
            bipush 11
            getstatic sun.font.EAttribute.ENUMERIC_SHAPING:Lsun/font/EAttribute;
            aastore
            dup
            bipush 12
            getstatic sun.font.EAttribute.EKERNING:Lsun/font/EAttribute;
            aastore
            dup
            bipush 13
        18: .line 723
            getstatic sun.font.EAttribute.ELIGATURES:Lsun/font/EAttribute;
            aastore
            dup
            bipush 14
            getstatic sun.font.EAttribute.ETRACKING:Lsun/font/EAttribute;
            aastore
        19: .line 718
            invokestatic sun.font.AttributeValues.getMask:([Lsun/font/EAttribute;)I
            putstatic java.awt.Font.LAYOUT_MASK:I
        20: .line 725
            iconst_3
            anewarray sun.font.EAttribute
            dup
            iconst_0
        21: .line 726
            getstatic sun.font.EAttribute.ETRANSFORM:Lsun/font/EAttribute;
            aastore
            dup
            iconst_1
            getstatic sun.font.EAttribute.ESUPERSCRIPT:Lsun/font/EAttribute;
            aastore
            dup
            iconst_2
            getstatic sun.font.EAttribute.EWIDTH:Lsun/font/EAttribute;
            aastore
            invokestatic sun.font.AttributeValues.getMask:([Lsun/font/EAttribute;)I
            putstatic java.awt.Font.EXTRA_MASK:I
        22: .line 1133
            bipush 8
            newarray 6
            dup
            iconst_0
        23: .line 1134
            fconst_0
            fastore
            dup
            iconst_1
        24: .line 1135
            ldc 0.375
            fastore
            dup
            iconst_2
        25: .line 1136
            ldc 0.625
            fastore
            dup
            iconst_3
        26: .line 1137
            ldc 0.7916667
            fastore
            dup
            iconst_4
        27: .line 1138
            ldc 0.9027778
            fastore
            dup
            iconst_5
        28: .line 1139
            ldc 0.9768519
            fastore
            dup
            bipush 6
        29: .line 1140
            ldc 1.0262346
            fastore
            dup
            bipush 7
        30: .line 1141
            ldc 1.0591564
            fastore
        31: .line 1133
            putstatic java.awt.Font.ssinfo:[F
        32: .line 2607
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.awt.peer.FontPeer getPeer();
    descriptor: ()Ljava/awt/peer/FontPeer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 425
            aload 0 /* this */
            invokevirtual java.awt.Font.getPeer_NoClientCode:()Ljava/awt/peer/FontPeer;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        java.lang.Deprecated()

  final java.awt.peer.FontPeer getPeer_NoClientCode();
    descriptor: ()Ljava/awt/peer/FontPeer;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.awt.Font this
         0: .line 432
            aload 0 /* this */
            getfield java.awt.Font.peer:Ljava/awt/peer/FontPeer;
            ifnonnull 3
         1: .line 433
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            astore 1 /* tk */
        start local 1 // java.awt.Toolkit tk
         2: .line 434
            aload 0 /* this */
            aload 1 /* tk */
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.awt.Font.style:I
            invokevirtual java.awt.Toolkit.getFontPeer:(Ljava/lang/String;I)Ljava/awt/peer/FontPeer;
            putfield java.awt.Font.peer:Ljava/awt/peer/FontPeer;
        end local 1 // java.awt.Toolkit tk
         3: .line 436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.peer:Ljava/awt/peer/FontPeer;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/Font;
            2    3     1    tk  Ljava/awt/Toolkit;

  private sun.font.AttributeValues getAttributeValues();
    descriptor: ()Lsun/font/AttributeValues;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 451
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 9
         1: .line 452
            aload 0 /* this */
            new sun.font.AttributeValues
            dup
            invokespecial sun.font.AttributeValues.<init>:()V
            putfield java.awt.Font.values:Lsun/font/AttributeValues;
         2: .line 453
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            invokevirtual sun.font.AttributeValues.setFamily:(Ljava/lang/String;)V
         3: .line 454
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            invokevirtual sun.font.AttributeValues.setSize:(F)V
         4: .line 456
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iconst_1
            iand
            ifeq 6
         5: .line 457
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            fconst_2
            invokevirtual sun.font.AttributeValues.setWeight:(F)V
         6: .line 460
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iconst_2
            iand
            ifeq 8
         7: .line 461
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ldc 0.2
            invokevirtual sun.font.AttributeValues.setPosture:(F)V
         8: .line 463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            getstatic java.awt.Font.PRIMARY_MASK:I
            invokevirtual sun.font.AttributeValues.defineAll:(I)V
         9: .line 466
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljava/awt/Font;

  private sun.font.Font2D getFont2D();
    descriptor: ()Lsun/font/Font2D;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 470
            getstatic sun.font.FontManager.usingPerAppContextComposites:Z
            ifeq 7
         1: .line 471
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            ifnull 7
         2: .line 472
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifeq 7
         3: .line 473
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            checkcast sun.font.CompositeFont
            invokevirtual sun.font.CompositeFont.isStdComposite:()Z
            ifeq 7
         4: .line 474
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.awt.Font.style:I
         5: .line 475
            iconst_2
         6: .line 474
            invokestatic sun.font.FontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            areturn
         7: .line 476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            ifnonnull 14
         8: .line 477
            aload 0 /* this */
         9: .line 478
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.awt.Font.style:I
        10: .line 479
            iconst_2
        11: .line 478
            invokestatic sun.font.FontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
        12: .line 479
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
        13: .line 477
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        14: .line 485
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Ljava/awt/Font;

  public void <init>(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String name
        start local 2 // int style
        start local 3 // int size
         0: .line 545
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 397
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1680
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 546
            aload 0 /* this */
            aload 1 /* name */
            ifnull 4
            aload 1 /* name */
            goto 5
      StackMap locals: java.awt.Font java.lang.String int int
      StackMap stack: java.awt.Font
         4: ldc "Default"
      StackMap locals: java.awt.Font java.lang.String int int
      StackMap stack: java.awt.Font java.lang.String
         5: putfield java.awt.Font.name:Ljava/lang/String;
         6: .line 547
            aload 0 /* this */
            iload 2 /* style */
            bipush -4
            iand
            ifne 7
            iload 2 /* style */
            goto 8
      StackMap locals:
      StackMap stack: java.awt.Font
         7: iconst_0
      StackMap locals: java.awt.Font java.lang.String int int
      StackMap stack: java.awt.Font int
         8: putfield java.awt.Font.style:I
         9: .line 548
            aload 0 /* this */
            iload 3 /* size */
            putfield java.awt.Font.size:I
        10: .line 549
            aload 0 /* this */
            iload 3 /* size */
            i2f
            putfield java.awt.Font.pointSize:F
        11: .line 550
            return
        end local 3 // int size
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Ljava/awt/Font;
            0   12     1   name  Ljava/lang/String;
            0   12     2  style  I
            0   12     3   size  I
    MethodParameters:
       Name  Flags
      name   
      style  
      size   

  private void <init>(java.lang.String, int, float);
    descriptor: (Ljava/lang/String;IF)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String name
        start local 2 // int style
        start local 3 // float sizePts
         0: .line 552
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 397
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1680
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 553
            aload 0 /* this */
            aload 1 /* name */
            ifnull 4
            aload 1 /* name */
            goto 5
      StackMap locals: java.awt.Font java.lang.String int float
      StackMap stack: java.awt.Font
         4: ldc "Default"
      StackMap locals: java.awt.Font java.lang.String int float
      StackMap stack: java.awt.Font java.lang.String
         5: putfield java.awt.Font.name:Ljava/lang/String;
         6: .line 554
            aload 0 /* this */
            iload 2 /* style */
            bipush -4
            iand
            ifne 7
            iload 2 /* style */
            goto 8
      StackMap locals:
      StackMap stack: java.awt.Font
         7: iconst_0
      StackMap locals: java.awt.Font java.lang.String int float
      StackMap stack: java.awt.Font int
         8: putfield java.awt.Font.style:I
         9: .line 555
            aload 0 /* this */
            fload 3 /* sizePts */
            f2d
            ldc 0.5
            dadd
            d2i
            putfield java.awt.Font.size:I
        10: .line 556
            aload 0 /* this */
            fload 3 /* sizePts */
            putfield java.awt.Font.pointSize:F
        11: .line 557
            return
        end local 3 // float sizePts
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Ljava/awt/Font;
            0   12     1     name  Ljava/lang/String;
            0   12     2    style  I
            0   12     3  sizePts  F
    MethodParameters:
         Name  Flags
      name     
      style    
      sizePts  

  private void <init>(java.lang.String, int, float, boolean, sun.font.Font2DHandle);
    descriptor: (Ljava/lang/String;IFZLsun/font/Font2DHandle;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String name
        start local 2 // int style
        start local 3 // float sizePts
        start local 4 // boolean created
        start local 5 // sun.font.Font2DHandle handle
         0: .line 562
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            fload 3 /* sizePts */
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;IF)V
         1: .line 563
            aload 0 /* this */
            iload 4 /* created */
            putfield java.awt.Font.createdFont:Z
         2: .line 573
            iload 4 /* created */
            ifeq 10
         3: .line 574
            aload 5 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifeq 9
         4: .line 575
            aload 5 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            invokevirtual sun.font.Font2D.getStyle:()I
            iload 2 /* style */
            if_icmpeq 9
         5: .line 576
            aload 0 /* this */
         6: .line 577
            aconst_null
            iload 2 /* style */
            aload 5 /* handle */
            invokestatic sun.font.FontManager.getNewComposite:(Ljava/lang/String;ILsun/font/Font2DHandle;)Lsun/font/Font2DHandle;
         7: .line 576
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
         8: .line 578
            goto 10
         9: .line 579
      StackMap locals: java.awt.Font java.lang.String int float int sun.font.Font2DHandle
      StackMap stack:
            aload 0 /* this */
            aload 5 /* handle */
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        10: .line 582
      StackMap locals:
      StackMap stack:
            return
        end local 5 // sun.font.Font2DHandle handle
        end local 4 // boolean created
        end local 3 // float sizePts
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Ljava/awt/Font;
            0   11     1     name  Ljava/lang/String;
            0   11     2    style  I
            0   11     3  sizePts  F
            0   11     4  created  Z
            0   11     5   handle  Lsun/font/Font2DHandle;
    MethodParameters:
         Name  Flags
      name     
      style    
      sizePts  
      created  
      handle   

  private void <init>(java.io.File, int, boolean, sun.font.CreatedFontTracker);
    descriptor: (Ljava/io/File;IZLsun/font/CreatedFontTracker;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // java.awt.Font this
        start local 1 // java.io.File fontFile
        start local 2 // int fontFormat
        start local 3 // boolean isCopy
        start local 4 // sun.font.CreatedFontTracker tracker
         0: .line 585
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 397
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1680
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 588
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.createdFont:Z
         4: .line 592
            aload 0 /* this */
         5: .line 593
            aload 1 /* fontFile */
            iload 2 /* fontFormat */
         6: .line 594
            iload 3 /* isCopy */
            aload 4 /* tracker */
         7: .line 593
            invokestatic sun.font.FontManager.createFont2D:(Ljava/io/File;IZLsun/font/CreatedFontTracker;)Lsun/font/Font2D;
         8: .line 594
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
         9: .line 592
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        10: .line 595
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual sun.font.Font2D.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            putfield java.awt.Font.name:Ljava/lang/String;
        11: .line 596
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.style:I
        12: .line 597
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.size:I
        13: .line 598
            aload 0 /* this */
            fconst_1
            putfield java.awt.Font.pointSize:F
        14: .line 599
            return
        end local 4 // sun.font.CreatedFontTracker tracker
        end local 3 // boolean isCopy
        end local 2 // int fontFormat
        end local 1 // java.io.File fontFile
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Ljava/awt/Font;
            0   15     1    fontFile  Ljava/io/File;
            0   15     2  fontFormat  I
            0   15     3      isCopy  Z
            0   15     4     tracker  Lsun/font/CreatedFontTracker;
    Exceptions:
      throws java.awt.FontFormatException
    MethodParameters:
            Name  Flags
      fontFile    
      fontFormat  
      isCopy      
      tracker     

  private void <init>(sun.font.AttributeValues, java.lang.String, int, boolean, sun.font.Font2DHandle);
    descriptor: (Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=6
        start local 0 // java.awt.Font this
        start local 1 // sun.font.AttributeValues values
        start local 2 // java.lang.String oldName
        start local 3 // int oldStyle
        start local 4 // boolean created
        start local 5 // sun.font.Font2DHandle handle
         0: .line 624
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 397
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1680
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 627
            aload 0 /* this */
            iload 4 /* created */
            putfield java.awt.Font.createdFont:Z
         4: .line 628
            iload 4 /* created */
            ifeq 26
         5: .line 629
            aload 0 /* this */
            aload 5 /* handle */
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
         6: .line 631
            aconst_null
            astore 6 /* newName */
        start local 6 // java.lang.String newName
         7: .line 632
            aload 2 /* oldName */
            ifnull 10
         8: .line 633
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getFamily:()Ljava/lang/String;
            astore 6 /* newName */
         9: .line 634
            aload 2 /* oldName */
            aload 6 /* newName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
            aconst_null
            astore 6 /* newName */
        10: .line 636
      StackMap locals: java.awt.Font sun.font.AttributeValues java.lang.String int int sun.font.Font2DHandle java.lang.String
      StackMap stack:
            iconst_0
            istore 7 /* newStyle */
        start local 7 // int newStyle
        11: .line 637
            iload 3 /* oldStyle */
            iconst_m1
            if_icmpne 14
        12: .line 638
            iconst_m1
            istore 7 /* newStyle */
        13: .line 639
            goto 17
        14: .line 640
      StackMap locals: int
      StackMap stack:
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getWeight:()F
            fconst_2
            fcmpl
            iflt 15
            iconst_1
            istore 7 /* newStyle */
        15: .line 641
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getPosture:()F
            ldc 0.2
            fcmpl
            iflt 16
            iload 7 /* newStyle */
            iconst_2
            ior
            istore 7 /* newStyle */
        16: .line 642
      StackMap locals:
      StackMap stack:
            iload 3 /* oldStyle */
            iload 7 /* newStyle */
            if_icmpne 17
            iconst_m1
            istore 7 /* newStyle */
        17: .line 644
      StackMap locals:
      StackMap stack:
            aload 5 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifeq 23
        18: .line 645
            iload 7 /* newStyle */
            iconst_m1
            if_icmpne 19
            aload 6 /* newName */
            ifnull 26
        19: .line 646
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        20: .line 647
            aload 6 /* newName */
            iload 7 /* newStyle */
            aload 5 /* handle */
            invokestatic sun.font.FontManager.getNewComposite:(Ljava/lang/String;ILsun/font/Font2DHandle;)Lsun/font/Font2DHandle;
        21: .line 646
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        22: .line 649
            goto 26
      StackMap locals:
      StackMap stack:
        23: aload 6 /* newName */
            ifnull 26
        24: .line 650
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
        25: .line 651
            aload 0 /* this */
            aconst_null
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        end local 7 // int newStyle
        end local 6 // java.lang.String newName
        26: .line 654
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual java.awt.Font.initFromValues:(Lsun/font/AttributeValues;)V
        27: .line 655
            return
        end local 5 // sun.font.Font2DHandle handle
        end local 4 // boolean created
        end local 3 // int oldStyle
        end local 2 // java.lang.String oldName
        end local 1 // sun.font.AttributeValues values
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   28     0      this  Ljava/awt/Font;
            0   28     1    values  Lsun/font/AttributeValues;
            0   28     2   oldName  Ljava/lang/String;
            0   28     3  oldStyle  I
            0   28     4   created  Z
            0   28     5    handle  Lsun/font/Font2DHandle;
            7   26     6   newName  Ljava/lang/String;
           11   26     7  newStyle  I
    MethodParameters:
          Name  Flags
      values    
      oldName   
      oldStyle  
      created   
      handle    

  public void <init>(java.util.Map<? extends java.text.AttributedCharacterIterator$Attribute, ?>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.util.Map attributes
         0: .line 671
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 397
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1680
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 672
            aload 0 /* this */
            aload 1 /* attributes */
            getstatic java.awt.Font.RECOGNIZED_MASK:I
            invokestatic sun.font.AttributeValues.fromMap:(Ljava/util/Map;I)Lsun/font/AttributeValues;
            invokevirtual java.awt.Font.initFromValues:(Lsun/font/AttributeValues;)V
         4: .line 673
            return
        end local 1 // java.util.Map attributes
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljava/awt/Font;
            0    5     1  attributes  Ljava/util/Map<+Ljava/text/AttributedCharacterIterator$Attribute;*>;
    Signature: (Ljava/util/Map<+Ljava/text/AttributedCharacterIterator$Attribute;*>;)V
    MethodParameters:
            Name  Flags
      attributes  

  protected void <init>(java.awt.Font);
    descriptor: (Ljava/awt/Font;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.awt.Font font
         0: .line 682
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 397
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1680
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 683
            aload 1 /* font */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 6
         4: .line 684
            aload 0 /* this */
            aload 1 /* font */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            invokevirtual java.awt.Font.initFromValues:(Lsun/font/AttributeValues;)V
         5: .line 685
            goto 10
         6: .line 686
      StackMap locals: java.awt.Font java.awt.Font
      StackMap stack:
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.name:Ljava/lang/String;
            putfield java.awt.Font.name:Ljava/lang/String;
         7: .line 687
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.style:I
            putfield java.awt.Font.style:I
         8: .line 688
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.size:I
            putfield java.awt.Font.size:I
         9: .line 689
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.pointSize:F
            putfield java.awt.Font.pointSize:F
        10: .line 691
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        11: .line 692
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.createdFont:Z
            putfield java.awt.Font.createdFont:Z
        12: .line 693
            return
        end local 1 // java.awt.Font font
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Ljava/awt/Font;
            0   13     1  font  Ljava/awt/Font;
    MethodParameters:
      Name  Flags
      font  

  private void initFromValues(sun.font.AttributeValues);
    descriptor: (Lsun/font/AttributeValues;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // sun.font.AttributeValues values
         0: .line 732
            aload 0 /* this */
            aload 1 /* values */
            putfield java.awt.Font.values:Lsun/font/AttributeValues;
         1: .line 733
            aload 1 /* values */
            getstatic java.awt.Font.PRIMARY_MASK:I
            invokevirtual sun.font.AttributeValues.defineAll:(I)V
         2: .line 735
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getFamily:()Ljava/lang/String;
            putfield java.awt.Font.name:Ljava/lang/String;
         3: .line 736
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getSize:()F
            putfield java.awt.Font.pointSize:F
         4: .line 737
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getSize:()F
            f2d
            ldc 0.5
            dadd
            d2i
            putfield java.awt.Font.size:I
         5: .line 738
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getWeight:()F
            fconst_2
            fcmpl
            iflt 6
            aload 0 /* this */
            dup
            getfield java.awt.Font.style:I
            iconst_1
            ior
            putfield java.awt.Font.style:I
         6: .line 739
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getPosture:()F
            ldc 0.2
            fcmpl
            iflt 7
            aload 0 /* this */
            dup
            getfield java.awt.Font.style:I
            iconst_2
            ior
            putfield java.awt.Font.style:I
         7: .line 741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* values */
            getstatic java.awt.Font.EXTRA_MASK:I
            invokevirtual sun.font.AttributeValues.anyNonDefault:(I)Z
            putfield java.awt.Font.nonIdentityTx:Z
         8: .line 742
            aload 0 /* this */
            aload 1 /* values */
            getstatic java.awt.Font.LAYOUT_MASK:I
            invokevirtual sun.font.AttributeValues.anyNonDefault:(I)Z
            putfield java.awt.Font.hasLayoutAttributes:Z
         9: .line 743
            return
        end local 1 // sun.font.AttributeValues values
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/awt/Font;
            0   10     1  values  Lsun/font/AttributeValues;
    MethodParameters:
        Name  Flags
      values  

  public static java.awt.Font getFont(java.util.Map<? extends java.text.AttributedCharacterIterator$Attribute, ?>);
    descriptor: (Ljava/util/Map;)Ljava/awt/Font;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=1
        start local 0 // java.util.Map attributes
         0: .line 767
            aload 0 /* attributes */
            instanceof sun.font.AttributeMap
            ifeq 13
         1: .line 768
            aload 0 /* attributes */
            checkcast sun.font.AttributeMap
            invokevirtual sun.font.AttributeMap.getValues:()Lsun/font/AttributeValues;
            ifnull 13
         2: .line 769
            aload 0 /* attributes */
            checkcast sun.font.AttributeMap
            invokevirtual sun.font.AttributeMap.getValues:()Lsun/font/AttributeValues;
            astore 1 /* values */
        start local 1 // sun.font.AttributeValues values
         3: .line 770
            aload 1 /* values */
            getstatic sun.font.EAttribute.EFONT:Lsun/font/EAttribute;
            invokevirtual sun.font.AttributeValues.isNonDefault:(Lsun/font/EAttribute;)Z
            ifeq 12
         4: .line 771
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getFont:()Ljava/awt/Font;
            astore 2 /* font */
        start local 2 // java.awt.Font font
         5: .line 772
            aload 1 /* values */
            getstatic java.awt.Font.SECONDARY_MASK:I
            invokevirtual sun.font.AttributeValues.anyDefined:(I)Z
            ifne 7
         6: .line 773
            aload 2 /* font */
            areturn
         7: .line 776
      StackMap locals: sun.font.AttributeValues java.awt.Font
      StackMap stack:
            aload 2 /* font */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 1 /* values */
         8: .line 777
            aload 1 /* values */
            aload 0 /* attributes */
            getstatic java.awt.Font.SECONDARY_MASK:I
            invokevirtual sun.font.AttributeValues.merge:(Ljava/util/Map;I)Lsun/font/AttributeValues;
            pop
         9: .line 778
            new java.awt.Font
            dup
            aload 1 /* values */
            aload 2 /* font */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 2 /* font */
            getfield java.awt.Font.style:I
        10: .line 779
            aload 2 /* font */
            getfield java.awt.Font.createdFont:Z
            aload 2 /* font */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        11: .line 778
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 2 // java.awt.Font font
        12: .line 781
      StackMap locals:
      StackMap stack:
            new java.awt.Font
            dup
            aload 0 /* attributes */
            invokespecial java.awt.Font.<init>:(Ljava/util/Map;)V
            areturn
        end local 1 // sun.font.AttributeValues values
        13: .line 784
      StackMap locals:
      StackMap stack:
            aload 0 /* attributes */
            getstatic java.awt.font.TextAttribute.FONT:Ljava/awt/font/TextAttribute;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.awt.Font
            astore 1 /* font */
        start local 1 // java.awt.Font font
        14: .line 785
            aload 1 /* font */
            ifnull 22
        15: .line 786
            aload 0 /* attributes */
            invokeinterface java.util.Map.size:()I
            iconst_1
            if_icmple 21
        16: .line 787
            aload 1 /* font */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 2 /* values */
        start local 2 // sun.font.AttributeValues values
        17: .line 788
            aload 2 /* values */
            aload 0 /* attributes */
            getstatic java.awt.Font.SECONDARY_MASK:I
            invokevirtual sun.font.AttributeValues.merge:(Ljava/util/Map;I)Lsun/font/AttributeValues;
            pop
        18: .line 789
            new java.awt.Font
            dup
            aload 2 /* values */
            aload 1 /* font */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 1 /* font */
            getfield java.awt.Font.style:I
        19: .line 790
            aload 1 /* font */
            getfield java.awt.Font.createdFont:Z
            aload 1 /* font */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        20: .line 789
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 2 // sun.font.AttributeValues values
        21: .line 793
      StackMap locals: java.awt.Font
      StackMap stack:
            aload 1 /* font */
            areturn
        22: .line 796
      StackMap locals:
      StackMap stack:
            new java.awt.Font
            dup
            aload 0 /* attributes */
            invokespecial java.awt.Font.<init>:(Ljava/util/Map;)V
            areturn
        end local 1 // java.awt.Font font
        end local 0 // java.util.Map attributes
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   23     0  attributes  Ljava/util/Map<+Ljava/text/AttributedCharacterIterator$Attribute;*>;
            3   13     1      values  Lsun/font/AttributeValues;
            5   12     2        font  Ljava/awt/Font;
           14   23     1        font  Ljava/awt/Font;
           17   21     2      values  Lsun/font/AttributeValues;
    Signature: (Ljava/util/Map<+Ljava/text/AttributedCharacterIterator$Attribute;*>;)Ljava/awt/Font;
    MethodParameters:
            Name  Flags
      attributes  

  private static boolean hasTempPermission();
    descriptor: ()Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=0
         0: .line 806
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            ifnonnull 2
         1: .line 807
            iconst_1
            ireturn
         2: .line 809
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 0 /* f */
        start local 0 // java.io.File f
         3: .line 810
            iconst_0
            istore 1 /* hasPerm */
        start local 1 // boolean hasPerm
         4: .line 812
            ldc "+~JT"
            ldc ".tmp"
            aconst_null
            invokestatic sun.misc.IOUtils.createTempFile:(Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Ljava/io/File;
            astore 0 /* f */
         5: .line 813
            aload 0 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
         6: .line 814
            aconst_null
            astore 0 /* f */
         7: .line 815
            iconst_1
            istore 1 /* hasPerm */
         8: .line 816
            goto 10
      StackMap locals: java.io.File int
      StackMap stack: java.lang.Throwable
         9: pop
        10: .line 819
      StackMap locals:
      StackMap stack:
            iload 1 /* hasPerm */
            ireturn
        end local 1 // boolean hasPerm
        end local 0 // java.io.File f
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            3   11     0        f  Ljava/io/File;
            4   11     1  hasPerm  Z
      Exception table:
        from    to  target  type
           4     8       9  Class java.lang.Throwable

  public static java.awt.Font createFont(int, java.io.InputStream);
    descriptor: (ILjava/io/InputStream;)Ljava/awt/Font;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // int fontFormat
        start local 1 // java.io.InputStream fontStream
         0: .line 853
            invokestatic java.awt.Font.hasTempPermission:()Z
            ifeq 2
         1: .line 854
            iload 0 /* fontFormat */
            aload 1 /* fontStream */
            aconst_null
            invokestatic java.awt.Font.createFont0:(ILjava/io/InputStream;Lsun/font/CreatedFontTracker;)Ljava/awt/Font;
            areturn
         2: .line 859
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.CreatedFontTracker.getTracker:()Lsun/font/CreatedFontTracker;
            astore 2 /* tracker */
        start local 2 // sun.font.CreatedFontTracker tracker
         3: .line 860
            iconst_0
            istore 3 /* acquired */
        start local 3 // boolean acquired
         4: .line 862
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.acquirePermit:()Z
            istore 3 /* acquired */
         5: .line 863
            iload 3 /* acquired */
            ifne 7
         6: .line 864
            new java.io.IOException
            dup
            ldc "Timed out waiting for resources."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 866
      StackMap locals: sun.font.CreatedFontTracker int
      StackMap stack:
            iload 0 /* fontFormat */
            aload 1 /* fontStream */
            aload 2 /* tracker */
            invokestatic java.awt.Font.createFont0:(ILjava/io/InputStream;Lsun/font/CreatedFontTracker;)Ljava/awt/Font;
            astore 5
         8: .line 870
            iload 3 /* acquired */
            ifeq 10
         9: .line 871
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.releasePermit:()V
        10: .line 866
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int top java.awt.Font
      StackMap stack:
            aload 5
            areturn
        11: .line 867
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int
      StackMap stack: java.lang.InterruptedException
            pop
        12: .line 868
            new java.io.IOException
            dup
            ldc "Problem reading font data."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 869
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        14: .line 870
            iload 3 /* acquired */
            ifeq 16
        15: .line 871
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.releasePermit:()V
        16: .line 873
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 4
            athrow
        end local 3 // boolean acquired
        end local 2 // sun.font.CreatedFontTracker tracker
        end local 1 // java.io.InputStream fontStream
        end local 0 // int fontFormat
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0  fontFormat  I
            0   17     1  fontStream  Ljava/io/InputStream;
            3   17     2     tracker  Lsun/font/CreatedFontTracker;
            4   17     3    acquired  Z
      Exception table:
        from    to  target  type
           4     8      11  Class java.lang.InterruptedException
           4     8      13  any
          11    13      13  any
    Exceptions:
      throws java.awt.FontFormatException, java.io.IOException
    MethodParameters:
            Name  Flags
      fontFormat  
      fontStream  

  private static java.awt.Font createFont0(int, java.io.InputStream, sun.font.CreatedFontTracker);
    descriptor: (ILjava/io/InputStream;Lsun/font/CreatedFontTracker;)Ljava/awt/Font;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=12, args_size=3
        start local 0 // int fontFormat
        start local 1 // java.io.InputStream fontStream
        start local 2 // sun.font.CreatedFontTracker tracker
         0: .line 880
            iload 0 /* fontFormat */
            ifeq 3
         1: .line 881
            iload 0 /* fontFormat */
            iconst_1
            if_icmpeq 3
         2: .line 882
            new java.lang.IllegalArgumentException
            dup
            ldc "font format not recognized"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 884
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* copiedFontData */
        start local 3 // boolean copiedFontData
         4: .line 888
            new java.awt.Font$1
            dup
            invokespecial java.awt.Font$1.<init>:()V
         5: .line 887
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            checkcast java.io.File
            astore 4 /* tFile */
        start local 4 // java.io.File tFile
         6: .line 894
            aload 2 /* tracker */
            ifnull 8
         7: .line 895
            aload 2 /* tracker */
            aload 4 /* tFile */
            invokevirtual sun.font.CreatedFontTracker.add:(Ljava/io/File;)V
         8: .line 898
      StackMap locals: int java.io.File
      StackMap stack:
            iconst_0
            istore 5 /* totalSize */
        start local 5 // int totalSize
         9: .line 902
            new java.awt.Font$3
            dup
            aload 4 /* tFile */
            invokespecial java.awt.Font$3.<init>:(Ljava/io/File;)V
        10: .line 901
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            checkcast java.io.OutputStream
        11: .line 900
            astore 6 /* outStream */
        start local 6 // java.io.OutputStream outStream
        12: .line 908
            aload 2 /* tracker */
            ifnull 14
        13: .line 909
            aload 2 /* tracker */
            aload 4 /* tFile */
            aload 6 /* outStream */
            invokevirtual sun.font.CreatedFontTracker.set:(Ljava/io/File;Ljava/io/OutputStream;)V
        14: .line 912
      StackMap locals: int java.io.OutputStream
      StackMap stack:
            sipush 8192
            newarray 8
            astore 7 /* buf */
        start local 7 // byte[] buf
        15: .line 914
      StackMap locals: byte[]
      StackMap stack:
            aload 1 /* fontStream */
            aload 7 /* buf */
            invokevirtual java.io.InputStream.read:([B)I
            istore 8 /* bytesRead */
        start local 8 // int bytesRead
        16: .line 915
            iload 8 /* bytesRead */
            ifge 18
        17: .line 916
            goto 31
        18: .line 918
      StackMap locals: int
      StackMap stack:
            aload 2 /* tracker */
            ifnull 26
        19: .line 919
            iload 5 /* totalSize */
            iload 8 /* bytesRead */
            iadd
            ldc 33554432
            if_icmple 21
        20: .line 920
            new java.io.IOException
            dup
            ldc "File too big."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 922
      StackMap locals:
      StackMap stack:
            iload 5 /* totalSize */
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.getNumBytes:()I
            iadd
        22: .line 923
            ldc 335544320
            if_icmple 24
        23: .line 925
            new java.io.IOException
            dup
            ldc "Total files too big."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        24: .line 927
      StackMap locals:
      StackMap stack:
            iload 5 /* totalSize */
            iload 8 /* bytesRead */
            iadd
            istore 5 /* totalSize */
        25: .line 928
            aload 2 /* tracker */
            iload 8 /* bytesRead */
            invokevirtual sun.font.CreatedFontTracker.addBytes:(I)V
        26: .line 930
      StackMap locals:
      StackMap stack:
            aload 6 /* outStream */
            aload 7 /* buf */
            iconst_0
            iload 8 /* bytesRead */
            invokevirtual java.io.OutputStream.write:([BII)V
        end local 8 // int bytesRead
        27: .line 913
            goto 15
        end local 7 // byte[] buf
        28: .line 933
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int java.io.File int java.io.OutputStream
      StackMap stack: java.lang.Throwable
            astore 9
        29: .line 934
            aload 6 /* outStream */
            invokevirtual java.io.OutputStream.close:()V
        30: .line 935
            aload 9
            athrow
        31: .line 934
      StackMap locals:
      StackMap stack:
            aload 6 /* outStream */
            invokevirtual java.io.OutputStream.close:()V
        32: .line 946
            iconst_1
            istore 3 /* copiedFontData */
        33: .line 947
            new java.awt.Font
            dup
            aload 4 /* tFile */
            iload 0 /* fontFormat */
            iconst_1
            aload 2 /* tracker */
            invokespecial java.awt.Font.<init>:(Ljava/io/File;IZLsun/font/CreatedFontTracker;)V
            astore 7 /* font */
        start local 7 // java.awt.Font font
        34: .line 948
            aload 7 /* font */
            astore 11
        35: .line 950
            aload 2 /* tracker */
            ifnull 37
        36: .line 951
            aload 2 /* tracker */
            aload 4 /* tFile */
            invokevirtual sun.font.CreatedFontTracker.remove:(Ljava/io/File;)V
        37: .line 953
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int java.io.File int java.io.OutputStream java.awt.Font top top top java.awt.Font
      StackMap stack:
            iload 3 /* copiedFontData */
            ifne 42
        38: .line 954
            aload 2 /* tracker */
            ifnull 40
        39: .line 955
            aload 2 /* tracker */
            iload 5 /* totalSize */
            invokevirtual sun.font.CreatedFontTracker.subBytes:(I)V
        40: .line 958
      StackMap locals:
      StackMap stack:
            new java.awt.Font$2
            dup
            aload 4 /* tFile */
            invokespecial java.awt.Font$2.<init>:(Ljava/io/File;)V
        41: .line 957
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            pop
        42: .line 948
      StackMap locals:
      StackMap stack:
            aload 11
            areturn
        end local 7 // java.awt.Font font
        end local 6 // java.io.OutputStream outStream
        43: .line 949
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int java.io.File int
      StackMap stack: java.lang.Throwable
            astore 10
        44: .line 950
            aload 2 /* tracker */
            ifnull 46
        45: .line 951
            aload 2 /* tracker */
            aload 4 /* tFile */
            invokevirtual sun.font.CreatedFontTracker.remove:(Ljava/io/File;)V
        46: .line 953
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int java.io.File int top top top top java.lang.Throwable
      StackMap stack:
            iload 3 /* copiedFontData */
            ifne 51
        47: .line 954
            aload 2 /* tracker */
            ifnull 49
        48: .line 955
            aload 2 /* tracker */
            iload 5 /* totalSize */
            invokevirtual sun.font.CreatedFontTracker.subBytes:(I)V
        49: .line 958
      StackMap locals:
      StackMap stack:
            new java.awt.Font$2
            dup
            aload 4 /* tFile */
            invokespecial java.awt.Font$2.<init>:(Ljava/io/File;)V
        50: .line 957
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            pop
        51: .line 966
      StackMap locals:
      StackMap stack:
            aload 10
            athrow
        end local 5 // int totalSize
        end local 4 // java.io.File tFile
        52: .line 967
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int
      StackMap stack: java.lang.Throwable
            astore 4 /* t */
        start local 4 // java.lang.Throwable t
        53: .line 968
            aload 4 /* t */
            instanceof java.awt.FontFormatException
            ifeq 55
        54: .line 969
            aload 4 /* t */
            checkcast java.awt.FontFormatException
            athrow
        55: .line 971
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 4 /* t */
            instanceof java.io.IOException
            ifeq 57
        56: .line 972
            aload 4 /* t */
            checkcast java.io.IOException
            athrow
        57: .line 974
      StackMap locals:
      StackMap stack:
            aload 4 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 5 /* cause */
        start local 5 // java.lang.Throwable cause
        58: .line 975
            aload 5 /* cause */
            instanceof java.awt.FontFormatException
            ifeq 60
        59: .line 976
            aload 5 /* cause */
            checkcast java.awt.FontFormatException
            athrow
        60: .line 978
      StackMap locals: java.lang.Throwable
      StackMap stack:
            new java.io.IOException
            dup
            ldc "Problem reading font data."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.Throwable cause
        end local 4 // java.lang.Throwable t
        end local 3 // boolean copiedFontData
        end local 2 // sun.font.CreatedFontTracker tracker
        end local 1 // java.io.InputStream fontStream
        end local 0 // int fontFormat
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   61     0      fontFormat  I
            0   61     1      fontStream  Ljava/io/InputStream;
            0   61     2         tracker  Lsun/font/CreatedFontTracker;
            4   61     3  copiedFontData  Z
            6   52     4           tFile  Ljava/io/File;
            9   52     5       totalSize  I
           12   43     6       outStream  Ljava/io/OutputStream;
           15   28     7             buf  [B
           16   27     8       bytesRead  I
           34   43     7            font  Ljava/awt/Font;
           53   61     4               t  Ljava/lang/Throwable;
           58   61     5           cause  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          14    28      28  any
           9    35      43  any
           4    42      52  Class java.lang.Throwable
          43    52      52  Class java.lang.Throwable
    Exceptions:
      throws java.awt.FontFormatException, java.io.IOException
    MethodParameters:
            Name  Flags
      fontFormat  
      fontStream  
      tracker     

  public static java.awt.Font createFont(int, java.io.File);
    descriptor: (ILjava/io/File;)Ljava/awt/Font;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // int fontFormat
        start local 1 // java.io.File fontFile
         0: .line 1019
            new java.io.File
            dup
            aload 1 /* fontFile */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* fontFile */
         1: .line 1021
            iload 0 /* fontFormat */
            ifeq 4
         2: .line 1022
            iload 0 /* fontFormat */
            iconst_1
            if_icmpeq 4
         3: .line 1023
            new java.lang.IllegalArgumentException
            dup
            ldc "font format not recognized"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1025
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 2 /* sm */
        start local 2 // java.lang.SecurityManager sm
         5: .line 1026
            aload 2 /* sm */
            ifnull 9
         6: .line 1028
            new java.io.FilePermission
            dup
            aload 1 /* fontFile */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            ldc "read"
            invokespecial java.io.FilePermission.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         7: .line 1027
            astore 3 /* filePermission */
        start local 3 // java.io.FilePermission filePermission
         8: .line 1029
            aload 2 /* sm */
            aload 3 /* filePermission */
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
        end local 3 // java.io.FilePermission filePermission
         9: .line 1031
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 1 /* fontFile */
            invokevirtual java.io.File.canRead:()Z
            ifne 11
        10: .line 1032
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Can't read "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fontFile */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 1034
      StackMap locals:
      StackMap stack:
            new java.awt.Font
            dup
            aload 1 /* fontFile */
            iload 0 /* fontFormat */
            iconst_0
            aconst_null
            invokespecial java.awt.Font.<init>:(Ljava/io/File;IZLsun/font/CreatedFontTracker;)V
            areturn
        end local 2 // java.lang.SecurityManager sm
        end local 1 // java.io.File fontFile
        end local 0 // int fontFormat
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0      fontFormat  I
            0   12     1        fontFile  Ljava/io/File;
            5   12     2              sm  Ljava/lang/SecurityManager;
            8    9     3  filePermission  Ljava/io/FilePermission;
    Exceptions:
      throws java.awt.FontFormatException, java.io.IOException
    MethodParameters:
            Name  Flags
      fontFormat  
      fontFile    

  public java.awt.geom.AffineTransform getTransform();
    descriptor: ()Ljava/awt/geom/AffineTransform;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1065
            aload 0 /* this */
            getfield java.awt.Font.nonIdentityTx:Z
            ifeq 33
         1: .line 1066
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            astore 1 /* values */
        start local 1 // sun.font.AttributeValues values
         2: .line 1068
            aload 1 /* values */
            getstatic sun.font.EAttribute.ETRANSFORM:Lsun/font/EAttribute;
            invokevirtual sun.font.AttributeValues.isNonDefault:(Lsun/font/EAttribute;)Z
            ifeq 4
         3: .line 1069
            new java.awt.geom.AffineTransform
            dup
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getTransform:()Ljava/awt/geom/AffineTransform;
            invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
            goto 5
         4: .line 1070
      StackMap locals: sun.font.AttributeValues
      StackMap stack:
            new java.awt.geom.AffineTransform
            dup
            invokespecial java.awt.geom.AffineTransform.<init>:()V
         5: .line 1068
      StackMap locals:
      StackMap stack: java.awt.geom.AffineTransform
            astore 2 /* at */
        start local 2 // java.awt.geom.AffineTransform at
         6: .line 1072
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getSuperscript:()I
            ifeq 30
         7: .line 1077
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getSuperscript:()I
            istore 3 /* superscript */
        start local 3 // int superscript
         8: .line 1079
            dconst_0
            dstore 4 /* trans */
        start local 4 // double trans
         9: .line 1080
            iconst_0
            istore 6 /* n */
        start local 6 // int n
        10: .line 1081
            iload 3 /* superscript */
            ifle 11
            iconst_1
            goto 12
      StackMap locals: java.awt.Font sun.font.AttributeValues java.awt.geom.AffineTransform int double int
      StackMap stack:
        11: iconst_0
      StackMap locals:
      StackMap stack: int
        12: istore 7 /* up */
        start local 7 // boolean up
        13: .line 1082
            iload 7 /* up */
            ifeq 14
            iconst_m1
            goto 15
      StackMap locals: int
      StackMap stack:
        14: iconst_1
      StackMap locals:
      StackMap stack: int
        15: istore 8 /* sign */
        start local 8 // int sign
        16: .line 1083
            iload 7 /* up */
            ifeq 17
            iload 3 /* superscript */
            goto 18
      StackMap locals: int
      StackMap stack:
        17: iload 3 /* superscript */
            ineg
      StackMap locals:
      StackMap stack: int
        18: istore 9 /* ss */
        start local 9 // int ss
        19: .line 1085
            goto 25
        20: .line 1086
      StackMap locals: int
      StackMap stack:
            iload 9 /* ss */
            bipush 7
            iand
            istore 10 /* newn */
        start local 10 // int newn
        21: .line 1087
            dload 4 /* trans */
            iload 8 /* sign */
            i2f
            getstatic java.awt.Font.ssinfo:[F
            iload 10 /* newn */
            faload
            getstatic java.awt.Font.ssinfo:[F
            iload 6 /* n */
            faload
            fsub
            fmul
            f2d
            dadd
            dstore 4 /* trans */
        22: .line 1088
            iload 9 /* ss */
            iconst_3
            ishr
            istore 9 /* ss */
        23: .line 1089
            iload 8 /* sign */
            ineg
            istore 8 /* sign */
        24: .line 1090
            iload 10 /* newn */
            istore 6 /* n */
        end local 10 // int newn
        25: .line 1085
      StackMap locals:
      StackMap stack:
            iload 9 /* ss */
            bipush 7
            iand
            iload 6 /* n */
            if_icmpgt 20
        26: .line 1092
            dload 4 /* trans */
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            f2d
            dmul
            dstore 4 /* trans */
        27: .line 1093
            ldc 0.6666666666666666
            iload 6 /* n */
            i2d
            invokestatic java.lang.Math.pow:(DD)D
            dstore 10 /* scale */
        start local 10 // double scale
        28: .line 1095
            aload 2 /* at */
            dconst_0
            dload 4 /* trans */
            invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
            invokevirtual java.awt.geom.AffineTransform.preConcatenate:(Ljava/awt/geom/AffineTransform;)V
        29: .line 1096
            aload 2 /* at */
            dload 10 /* scale */
            dload 10 /* scale */
            invokevirtual java.awt.geom.AffineTransform.scale:(DD)V
        end local 10 // double scale
        end local 9 // int ss
        end local 8 // int sign
        end local 7 // boolean up
        end local 6 // int n
        end local 4 // double trans
        end local 3 // int superscript
        30: .line 1112
      StackMap locals: java.awt.Font sun.font.AttributeValues java.awt.geom.AffineTransform
      StackMap stack:
            aload 1 /* values */
            getstatic sun.font.EAttribute.EWIDTH:Lsun/font/EAttribute;
            invokevirtual sun.font.AttributeValues.isNonDefault:(Lsun/font/EAttribute;)Z
            ifeq 32
        31: .line 1113
            aload 2 /* at */
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getWidth:()F
            f2d
            dconst_1
            invokevirtual java.awt.geom.AffineTransform.scale:(DD)V
        32: .line 1116
      StackMap locals:
      StackMap stack:
            aload 2 /* at */
            areturn
        end local 2 // java.awt.geom.AffineTransform at
        end local 1 // sun.font.AttributeValues values
        33: .line 1119
      StackMap locals:
      StackMap stack:
            new java.awt.geom.AffineTransform
            dup
            invokespecial java.awt.geom.AffineTransform.<init>:()V
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   34     0         this  Ljava/awt/Font;
            2   33     1       values  Lsun/font/AttributeValues;
            6   33     2           at  Ljava/awt/geom/AffineTransform;
            8   30     3  superscript  I
            9   30     4        trans  D
           10   30     6            n  I
           13   30     7           up  Z
           16   30     8         sign  I
           19   30     9           ss  I
           21   25    10         newn  I
           28   30    10        scale  D

  public java.lang.String getFamily();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1164
            aload 0 /* this */
            invokevirtual java.awt.Font.getFamily_NoClientCode:()Ljava/lang/String;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  final java.lang.String getFamily_NoClientCode();
    descriptor: ()Ljava/lang/String;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1172
            aload 0 /* this */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual java.awt.Font.getFamily:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public java.lang.String getFamily(java.util.Locale);
    descriptor: (Ljava/util/Locale;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.util.Locale l
         0: .line 1195
            aload 1 /* l */
            ifnonnull 2
         1: .line 1196
            new java.lang.NullPointerException
            dup
            ldc "null locale doesn't mean default"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            aload 1 /* l */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
        end local 1 // java.util.Locale l
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/awt/Font;
            0    3     1     l  Ljava/util/Locale;
    MethodParameters:
      Name  Flags
      l     

  public java.lang.String getPSName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1210
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            invokevirtual sun.font.Font2D.getPostscriptName:()Ljava/lang/String;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1224
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public java.lang.String getFontName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1239
            aload 0 /* this */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual java.awt.Font.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public java.lang.String getFontName(java.util.Locale);
    descriptor: (Ljava/util/Locale;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.util.Locale l
         0: .line 1254
            aload 1 /* l */
            ifnonnull 2
         1: .line 1255
            new java.lang.NullPointerException
            dup
            ldc "null locale doesn't mean default"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            aload 1 /* l */
            invokevirtual sun.font.Font2D.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
        end local 1 // java.util.Locale l
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/awt/Font;
            0    3     1     l  Ljava/util/Locale;
    MethodParameters:
      Name  Flags
      l     

  public int getStyle();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1270
            aload 0 /* this */
            getfield java.awt.Font.style:I
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public int getSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1296
            aload 0 /* this */
            getfield java.awt.Font.size:I
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public float getSize2D();
    descriptor: ()F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1308
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            freturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public boolean isPlain();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1321
            aload 0 /* this */
            getfield java.awt.Font.style:I
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/awt/Font;

  public boolean isBold();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1334
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iconst_1
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/awt/Font;

  public boolean isItalic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1347
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iconst_2
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/awt/Font;

  public boolean isTransformed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1361
            aload 0 /* this */
            getfield java.awt.Font.nonIdentityTx:Z
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public boolean hasLayoutAttributes();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1371
            aload 0 /* this */
            getfield java.awt.Font.hasLayoutAttributes:Z
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public static java.awt.Font getFont(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/awt/Font;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String nm
         0: .line 1391
            aload 0 /* nm */
            aconst_null
            invokestatic java.awt.Font.getFont:(Ljava/lang/String;Ljava/awt/Font;)Ljava/awt/Font;
            areturn
        end local 0 // java.lang.String nm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    nm  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      nm    

  public static java.awt.Font decode(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/awt/Font;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=12, args_size=1
        start local 0 // java.lang.String str
         0: .line 1468
            aload 0 /* str */
            astore 1 /* fontName */
        start local 1 // java.lang.String fontName
         1: .line 1469
            ldc ""
            astore 2 /* styleName */
        start local 2 // java.lang.String styleName
         2: .line 1470
            bipush 12
            istore 3 /* fontSize */
        start local 3 // int fontSize
         3: .line 1471
            iconst_0
            istore 4 /* fontStyle */
        start local 4 // int fontStyle
         4: .line 1473
            aload 0 /* str */
            ifnonnull 6
         5: .line 1474
            new java.awt.Font
            dup
            ldc "Dialog"
            iload 4 /* fontStyle */
            iload 3 /* fontSize */
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;II)V
            areturn
         6: .line 1477
      StackMap locals: java.lang.String java.lang.String java.lang.String int int
      StackMap stack:
            aload 0 /* str */
            bipush 45
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 5 /* lastHyphen */
        start local 5 // int lastHyphen
         7: .line 1478
            aload 0 /* str */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 6 /* lastSpace */
        start local 6 // int lastSpace
         8: .line 1479
            iload 5 /* lastHyphen */
            iload 6 /* lastSpace */
            if_icmple 9
            bipush 45
            goto 10
      StackMap locals: int int
      StackMap stack:
         9: bipush 32
      StackMap locals:
      StackMap stack: int
        10: istore 7 /* sepChar */
        start local 7 // char sepChar
        11: .line 1480
            aload 0 /* str */
            iload 7 /* sepChar */
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 8 /* sizeIndex */
        start local 8 // int sizeIndex
        12: .line 1481
            aload 0 /* str */
            iload 7 /* sepChar */
            iload 8 /* sizeIndex */
            iconst_1
            isub
            invokevirtual java.lang.String.lastIndexOf:(II)I
            istore 9 /* styleIndex */
        start local 9 // int styleIndex
        13: .line 1482
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            istore 10 /* strlen */
        start local 10 // int strlen
        14: .line 1484
            iload 8 /* sizeIndex */
            ifle 25
            iload 8 /* sizeIndex */
            iconst_1
            iadd
            iload 10 /* strlen */
            if_icmpge 25
        15: .line 1487
            aload 0 /* str */
            iload 8 /* sizeIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic java.lang.Integer.valueOf:(Ljava/lang/String;)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
        16: .line 1486
            istore 3 /* fontSize */
        17: .line 1488
            iload 3 /* fontSize */
            ifgt 25
        18: .line 1489
            bipush 12
            istore 3 /* fontSize */
        19: .line 1491
            goto 25
      StackMap locals: java.lang.String java.lang.String java.lang.String int int int int int int int int
      StackMap stack: java.lang.NumberFormatException
        20: pop
        21: .line 1494
            iload 8 /* sizeIndex */
            istore 9 /* styleIndex */
        22: .line 1495
            iload 10 /* strlen */
            istore 8 /* sizeIndex */
        23: .line 1496
            aload 0 /* str */
            iload 8 /* sizeIndex */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            iload 7 /* sepChar */
            if_icmpne 25
        24: .line 1497
            iinc 8 /* sizeIndex */ -1
        25: .line 1502
      StackMap locals:
      StackMap stack:
            iload 9 /* styleIndex */
            iflt 45
            iload 9 /* styleIndex */
            iconst_1
            iadd
            iload 10 /* strlen */
            if_icmpge 45
        26: .line 1503
            aload 0 /* str */
            iload 9 /* styleIndex */
            iconst_1
            iadd
            iload 8 /* sizeIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* styleName */
        27: .line 1504
            aload 2 /* styleName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 2 /* styleName */
        28: .line 1505
            aload 2 /* styleName */
            ldc "bolditalic"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 31
        29: .line 1506
            iconst_3
            istore 4 /* fontStyle */
        30: .line 1507
            goto 43
      StackMap locals:
      StackMap stack:
        31: aload 2 /* styleName */
            ldc "italic"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 34
        32: .line 1508
            iconst_2
            istore 4 /* fontStyle */
        33: .line 1509
            goto 43
      StackMap locals:
      StackMap stack:
        34: aload 2 /* styleName */
            ldc "bold"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 37
        35: .line 1510
            iconst_1
            istore 4 /* fontStyle */
        36: .line 1511
            goto 43
      StackMap locals:
      StackMap stack:
        37: aload 2 /* styleName */
            ldc "plain"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 40
        38: .line 1512
            iconst_0
            istore 4 /* fontStyle */
        39: .line 1513
            goto 43
        40: .line 1517
      StackMap locals:
      StackMap stack:
            iload 8 /* sizeIndex */
            istore 9 /* styleIndex */
        41: .line 1518
            aload 0 /* str */
            iload 9 /* styleIndex */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            iload 7 /* sepChar */
            if_icmpne 43
        42: .line 1519
            iinc 9 /* styleIndex */ -1
        43: .line 1522
      StackMap locals:
      StackMap stack:
            aload 0 /* str */
            iconst_0
            iload 9 /* styleIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* fontName */
        44: .line 1524
            goto 54
        45: .line 1525
      StackMap locals:
      StackMap stack:
            iload 10 /* strlen */
            istore 11 /* fontEnd */
        start local 11 // int fontEnd
        46: .line 1526
            iload 9 /* styleIndex */
            ifle 49
        47: .line 1527
            iload 9 /* styleIndex */
            istore 11 /* fontEnd */
        48: .line 1528
            goto 51
      StackMap locals: int
      StackMap stack:
        49: iload 8 /* sizeIndex */
            ifle 51
        50: .line 1529
            iload 8 /* sizeIndex */
            istore 11 /* fontEnd */
        51: .line 1531
      StackMap locals:
      StackMap stack:
            iload 11 /* fontEnd */
            ifle 53
            aload 0 /* str */
            iload 11 /* fontEnd */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            iload 7 /* sepChar */
            if_icmpne 53
        52: .line 1532
            iinc 11 /* fontEnd */ -1
        53: .line 1534
      StackMap locals:
      StackMap stack:
            aload 0 /* str */
            iconst_0
            iload 11 /* fontEnd */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* fontName */
        end local 11 // int fontEnd
        54: .line 1537
      StackMap locals:
      StackMap stack:
            new java.awt.Font
            dup
            aload 1 /* fontName */
            iload 4 /* fontStyle */
            iload 3 /* fontSize */
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;II)V
            areturn
        end local 10 // int strlen
        end local 9 // int styleIndex
        end local 8 // int sizeIndex
        end local 7 // char sepChar
        end local 6 // int lastSpace
        end local 5 // int lastHyphen
        end local 4 // int fontStyle
        end local 3 // int fontSize
        end local 2 // java.lang.String styleName
        end local 1 // java.lang.String fontName
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   55     0         str  Ljava/lang/String;
            1   55     1    fontName  Ljava/lang/String;
            2   55     2   styleName  Ljava/lang/String;
            3   55     3    fontSize  I
            4   55     4   fontStyle  I
            7   55     5  lastHyphen  I
            8   55     6   lastSpace  I
           11   55     7     sepChar  C
           12   55     8   sizeIndex  I
           13   55     9  styleIndex  I
           14   55    10      strlen  I
           46   54    11     fontEnd  I
      Exception table:
        from    to  target  type
          15    19      20  Class java.lang.NumberFormatException
    MethodParameters:
      Name  Flags
      str   

  public static java.awt.Font getFont(java.lang.String, java.awt.Font);
    descriptor: (Ljava/lang/String;Ljava/awt/Font;)Ljava/awt/Font;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // java.lang.String nm
        start local 1 // java.awt.Font font
         0: .line 1561
            aconst_null
            astore 2 /* str */
        start local 2 // java.lang.String str
         1: .line 1563
            aload 0 /* nm */
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* str */
         2: .line 1564
            goto 4
      StackMap locals: java.lang.String java.awt.Font java.lang.String
      StackMap stack: java.lang.SecurityException
         3: pop
         4: .line 1566
      StackMap locals:
      StackMap stack:
            aload 2 /* str */
            ifnonnull 6
         5: .line 1567
            aload 1 /* font */
            areturn
         6: .line 1569
      StackMap locals:
      StackMap stack:
            aload 2 /* str */
            invokestatic java.awt.Font.decode:(Ljava/lang/String;)Ljava/awt/Font;
            areturn
        end local 2 // java.lang.String str
        end local 1 // java.awt.Font font
        end local 0 // java.lang.String nm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0    nm  Ljava/lang/String;
            0    7     1  font  Ljava/awt/Font;
            1    7     2   str  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.SecurityException
    MethodParameters:
      Name  Flags
      nm    
      font  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1579
            aload 0 /* this */
            getfield java.awt.Font.hash:I
            ifne 5
         1: .line 1580
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            aload 0 /* this */
            getfield java.awt.Font.style:I
            ixor
            aload 0 /* this */
            getfield java.awt.Font.size:I
            ixor
            putfield java.awt.Font.hash:I
         2: .line 1587
            aload 0 /* this */
            getfield java.awt.Font.nonIdentityTx:Z
            ifeq 5
         3: .line 1588
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 5
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getTransform:()Ljava/awt/geom/AffineTransform;
            ifnull 5
         4: .line 1589
            aload 0 /* this */
            dup
            getfield java.awt.Font.hash:I
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getTransform:()Ljava/awt/geom/AffineTransform;
            invokevirtual java.awt.geom.AffineTransform.hashCode:()I
            ixor
            putfield java.awt.Font.hash:I
         5: .line 1592
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.hash:I
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/awt/Font;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.lang.Object obj
         0: .line 1606
            aload 1 /* obj */
            aload 0 /* this */
            if_acmpne 2
         1: .line 1607
            iconst_1
            ireturn
         2: .line 1610
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            ifnull 18
         3: .line 1612
            aload 1 /* obj */
            checkcast java.awt.Font
            astore 2 /* font */
        start local 2 // java.awt.Font font
         4: .line 1613
            aload 0 /* this */
            getfield java.awt.Font.size:I
            aload 2 /* font */
            getfield java.awt.Font.size:I
            if_icmpne 18
         5: .line 1614
            aload 0 /* this */
            getfield java.awt.Font.style:I
            aload 2 /* font */
            getfield java.awt.Font.style:I
            if_icmpne 18
         6: .line 1615
            aload 0 /* this */
            getfield java.awt.Font.nonIdentityTx:Z
            aload 2 /* font */
            getfield java.awt.Font.nonIdentityTx:Z
            if_icmpne 18
         7: .line 1616
            aload 0 /* this */
            getfield java.awt.Font.hasLayoutAttributes:Z
            aload 2 /* font */
            getfield java.awt.Font.hasLayoutAttributes:Z
            if_icmpne 18
         8: .line 1617
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            aload 2 /* font */
            getfield java.awt.Font.pointSize:F
            fcmpl
            ifne 18
         9: .line 1618
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 2 /* font */
            getfield java.awt.Font.name:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        10: .line 1626
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 15
        11: .line 1627
            aload 2 /* font */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 13
        12: .line 1628
            iconst_1
            ireturn
        13: .line 1630
      StackMap locals: java.awt.Font
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            aload 2 /* font */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.equals:(Lsun/font/AttributeValues;)Z
        14: ireturn
        15: .line 1633
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            aload 2 /* font */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.equals:(Lsun/font/AttributeValues;)Z
        16: ireturn
        end local 2 // java.awt.Font font
        17: .line 1637
      StackMap locals: java.awt.Font java.lang.Object
      StackMap stack: java.lang.ClassCastException
            pop
        18: .line 1640
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Ljava/awt/Font;
            0   19     1   obj  Ljava/lang/Object;
            4   17     2  font  Ljava/awt/Font;
      Exception table:
        from    to  target  type
           3    12      17  Class java.lang.ClassCastException
          13    14      17  Class java.lang.ClassCastException
          15    16      17  Class java.lang.ClassCastException
    MethodParameters:
      Name  Flags
      obj   

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1655
            aload 0 /* this */
            invokevirtual java.awt.Font.isBold:()Z
            ifeq 5
         1: .line 1656
            aload 0 /* this */
            invokevirtual java.awt.Font.isItalic:()Z
            ifeq 2
            ldc "bolditalic"
            goto 3
      StackMap locals:
      StackMap stack:
         2: ldc "bold"
      StackMap locals:
      StackMap stack: java.lang.String
         3: astore 1 /* strStyle */
        start local 1 // java.lang.String strStyle
         4: .line 1657
            goto 8
        end local 1 // java.lang.String strStyle
         5: .line 1658
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.isItalic:()Z
            ifeq 6
            ldc "italic"
            goto 7
      StackMap locals:
      StackMap stack:
         6: ldc "plain"
      StackMap locals:
      StackMap stack: java.lang.String
         7: astore 1 /* strStyle */
        start local 1 // java.lang.String strStyle
         8: .line 1661
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "[family="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.awt.Font.getFamily:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ",name="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ",style="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 1662
            aload 1 /* strStyle */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ",size="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield java.awt.Font.size:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 1661
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.String strStyle
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Ljava/awt/Font;
            4    5     1  strStyle  Ljava/lang/String;
            8   11     1  strStyle  Ljava/lang/String;

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.io.ObjectOutputStream s
         0: .line 1693
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 9
         1: .line 1694
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            dup
            astore 2
            monitorenter
         2: .line 1696
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.toSerializableHashtable:()Ljava/util/Hashtable;
            putfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
         3: .line 1697
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         4: .line 1698
            aload 0 /* this */
            aconst_null
            putfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
         5: .line 1694
            aload 2
            monitorexit
         6: goto 10
      StackMap locals: java.awt.Font java.io.ObjectOutputStream sun.font.AttributeValues
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 1701
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
        10: .line 1703
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.ObjectOutputStream s
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/awt/Font;
            0   11     1     s  Ljava/io/ObjectOutputStream;
      Exception table:
        from    to  target  type
           2     6       7  any
           7     8       7  any
    Exceptions:
      throws java.lang.ClassNotFoundException, java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.io.ObjectInputStream s
         0: .line 1717
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 1718
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            fconst_0
            fcmpl
            ifne 3
         2: .line 1719
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.Font.size:I
            i2f
            putfield java.awt.Font.pointSize:F
         3: .line 1730
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
            ifnull 13
         4: .line 1731
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            putfield java.awt.Font.values:Lsun/font/AttributeValues;
         5: .line 1733
            aload 0 /* this */
            getfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
            invokestatic sun.font.AttributeValues.fromSerializableHashtable:(Ljava/util/Hashtable;)Lsun/font/AttributeValues;
         6: .line 1732
            astore 2 /* extras */
        start local 2 // sun.font.AttributeValues extras
         7: .line 1734
            aload 0 /* this */
            getfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
            invokestatic sun.font.AttributeValues.is16Hashtable:(Ljava/util/Hashtable;)Z
            ifne 9
         8: .line 1735
            aload 2 /* extras */
            invokevirtual sun.font.AttributeValues.unsetDefault:()V
         9: .line 1737
      StackMap locals: sun.font.AttributeValues
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            aload 2 /* extras */
            invokevirtual sun.font.AttributeValues.merge:(Lsun/font/AttributeValues;)Lsun/font/AttributeValues;
            putfield java.awt.Font.values:Lsun/font/AttributeValues;
        10: .line 1738
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            getstatic java.awt.Font.EXTRA_MASK:I
            invokevirtual sun.font.AttributeValues.anyNonDefault:(I)Z
            putfield java.awt.Font.nonIdentityTx:Z
        11: .line 1739
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            getstatic java.awt.Font.LAYOUT_MASK:I
            invokevirtual sun.font.AttributeValues.anyNonDefault:(I)Z
            putfield java.awt.Font.hasLayoutAttributes:Z
        12: .line 1741
            aload 0 /* this */
            aconst_null
            putfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
        end local 2 // sun.font.AttributeValues extras
        13: .line 1743
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.ObjectInputStream s
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljava/awt/Font;
            0   14     1       s  Ljava/io/ObjectInputStream;
            7   13     2  extras  Lsun/font/AttributeValues;
    Exceptions:
      throws java.lang.ClassNotFoundException, java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  public int getNumGlyphs();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1753
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            invokevirtual sun.font.Font2D.getNumGlyphs:()I
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public int getMissingGlyphCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1763
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            invokevirtual sun.font.Font2D.getMissingGlyphCode:()I
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  public byte getBaselineFor(char);
    descriptor: (C)B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // char c
         0: .line 1783
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            iload 1 /* c */
            invokevirtual sun.font.Font2D.getBaselineFor:(C)B
            ireturn
        end local 1 // char c
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;
            0    1     1     c  C
    MethodParameters:
      Name  Flags
      c     

  public java.util.Map<java.awt.font.TextAttribute, ?> getAttributes();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1793
            new sun.font.AttributeMap
            dup
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokespecial sun.font.AttributeMap.<init>:(Lsun/font/AttributeValues;)V
            areturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;
    Signature: ()Ljava/util/Map<Ljava/awt/font/TextAttribute;*>;

  public java.text.AttributedCharacterIterator$Attribute[] getAvailableAttributes();
    descriptor: ()[Ljava/text/AttributedCharacterIterator$Attribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.awt.Font this
         0: .line 1807
            bipush 22
            anewarray java.text.AttributedCharacterIterator$Attribute
            dup
            iconst_0
         1: .line 1808
            getstatic java.awt.font.TextAttribute.FAMILY:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_1
         2: .line 1809
            getstatic java.awt.font.TextAttribute.WEIGHT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_2
         3: .line 1810
            getstatic java.awt.font.TextAttribute.WIDTH:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_3
         4: .line 1811
            getstatic java.awt.font.TextAttribute.POSTURE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_4
         5: .line 1812
            getstatic java.awt.font.TextAttribute.SIZE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_5
         6: .line 1813
            getstatic java.awt.font.TextAttribute.TRANSFORM:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 6
         7: .line 1814
            getstatic java.awt.font.TextAttribute.SUPERSCRIPT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 7
         8: .line 1815
            getstatic java.awt.font.TextAttribute.CHAR_REPLACEMENT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 8
         9: .line 1816
            getstatic java.awt.font.TextAttribute.FOREGROUND:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 9
        10: .line 1817
            getstatic java.awt.font.TextAttribute.BACKGROUND:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 10
        11: .line 1818
            getstatic java.awt.font.TextAttribute.UNDERLINE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 11
        12: .line 1819
            getstatic java.awt.font.TextAttribute.STRIKETHROUGH:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 12
        13: .line 1820
            getstatic java.awt.font.TextAttribute.RUN_DIRECTION:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 13
        14: .line 1821
            getstatic java.awt.font.TextAttribute.BIDI_EMBEDDING:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 14
        15: .line 1822
            getstatic java.awt.font.TextAttribute.JUSTIFICATION:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 15
        16: .line 1823
            getstatic java.awt.font.TextAttribute.INPUT_METHOD_HIGHLIGHT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 16
        17: .line 1824
            getstatic java.awt.font.TextAttribute.INPUT_METHOD_UNDERLINE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 17
        18: .line 1825
            getstatic java.awt.font.TextAttribute.SWAP_COLORS:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 18
        19: .line 1826
            getstatic java.awt.font.TextAttribute.NUMERIC_SHAPING:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 19
        20: .line 1827
            getstatic java.awt.font.TextAttribute.KERNING:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 20
        21: .line 1828
            getstatic java.awt.font.TextAttribute.LIGATURES:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 21
        22: .line 1829
            getstatic java.awt.font.TextAttribute.TRACKING:Ljava/awt/font/TextAttribute;
            aastore
        23: .line 1807
            astore 1 /* attributes */
        start local 1 // java.text.AttributedCharacterIterator$Attribute[] attributes
        24: .line 1832
            aload 1 /* attributes */
            areturn
        end local 1 // java.text.AttributedCharacterIterator$Attribute[] attributes
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   25     0        this  Ljava/awt/Font;
           24   25     1  attributes  [Ljava/text/AttributedCharacterIterator$Attribute;

  public java.awt.Font deriveFont(int, float);
    descriptor: (IF)Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // int style
        start local 2 // float size
         0: .line 1844
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 2
         1: .line 1845
            new java.awt.Font
            dup
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            iload 1 /* style */
            fload 2 /* size */
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;IFZLsun/font/Font2DHandle;)V
            areturn
         2: .line 1847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 3 /* newValues */
        start local 3 // sun.font.AttributeValues newValues
         3: .line 1848
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iload 1 /* style */
            if_icmpeq 4
            aload 0 /* this */
            getfield java.awt.Font.style:I
            goto 5
      StackMap locals: sun.font.AttributeValues
      StackMap stack:
         4: iconst_m1
      StackMap locals:
      StackMap stack: int
         5: istore 4 /* oldStyle */
        start local 4 // int oldStyle
         6: .line 1849
            iload 1 /* style */
            aload 3 /* newValues */
            invokestatic java.awt.Font.applyStyle:(ILsun/font/AttributeValues;)V
         7: .line 1850
            aload 3 /* newValues */
            fload 2 /* size */
            invokevirtual sun.font.AttributeValues.setSize:(F)V
         8: .line 1851
            new java.awt.Font
            dup
            aload 3 /* newValues */
            aconst_null
            iload 4 /* oldStyle */
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 4 // int oldStyle
        end local 3 // sun.font.AttributeValues newValues
        end local 2 // float size
        end local 1 // int style
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Ljava/awt/Font;
            0    9     1      style  I
            0    9     2       size  F
            3    9     3  newValues  Lsun/font/AttributeValues;
            6    9     4   oldStyle  I
    MethodParameters:
       Name  Flags
      style  
      size   

  public java.awt.Font deriveFont(int, java.awt.geom.AffineTransform);
    descriptor: (ILjava/awt/geom/AffineTransform;)Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // int style
        start local 2 // java.awt.geom.AffineTransform trans
         0: .line 1866
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 3 /* newValues */
        start local 3 // sun.font.AttributeValues newValues
         1: .line 1867
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iload 1 /* style */
            if_icmpeq 2
            aload 0 /* this */
            getfield java.awt.Font.style:I
            goto 3
      StackMap locals: sun.font.AttributeValues
      StackMap stack:
         2: iconst_m1
      StackMap locals:
      StackMap stack: int
         3: istore 4 /* oldStyle */
        start local 4 // int oldStyle
         4: .line 1868
            iload 1 /* style */
            aload 3 /* newValues */
            invokestatic java.awt.Font.applyStyle:(ILsun/font/AttributeValues;)V
         5: .line 1869
            aload 2 /* trans */
            aload 3 /* newValues */
            invokestatic java.awt.Font.applyTransform:(Ljava/awt/geom/AffineTransform;Lsun/font/AttributeValues;)V
         6: .line 1870
            new java.awt.Font
            dup
            aload 3 /* newValues */
            aconst_null
            iload 4 /* oldStyle */
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 4 // int oldStyle
        end local 3 // sun.font.AttributeValues newValues
        end local 2 // java.awt.geom.AffineTransform trans
        end local 1 // int style
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljava/awt/Font;
            0    7     1      style  I
            0    7     2      trans  Ljava/awt/geom/AffineTransform;
            1    7     3  newValues  Lsun/font/AttributeValues;
            4    7     4   oldStyle  I
    MethodParameters:
       Name  Flags
      style  
      trans  

  public java.awt.Font deriveFont(float);
    descriptor: (F)Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // float size
         0: .line 1881
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 2
         1: .line 1882
            new java.awt.Font
            dup
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.awt.Font.style:I
            fload 1 /* size */
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;IFZLsun/font/Font2DHandle;)V
            areturn
         2: .line 1884
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 2 /* newValues */
        start local 2 // sun.font.AttributeValues newValues
         3: .line 1885
            aload 2 /* newValues */
            fload 1 /* size */
            invokevirtual sun.font.AttributeValues.setSize:(F)V
         4: .line 1886
            new java.awt.Font
            dup
            aload 2 /* newValues */
            aconst_null
            iconst_m1
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 2 // sun.font.AttributeValues newValues
        end local 1 // float size
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljava/awt/Font;
            0    5     1       size  F
            3    5     2  newValues  Lsun/font/AttributeValues;
    MethodParameters:
      Name  Flags
      size  

  public java.awt.Font deriveFont(java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/AffineTransform;)Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.awt.geom.AffineTransform trans
         0: .line 1900
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 2 /* newValues */
        start local 2 // sun.font.AttributeValues newValues
         1: .line 1901
            aload 1 /* trans */
            aload 2 /* newValues */
            invokestatic java.awt.Font.applyTransform:(Ljava/awt/geom/AffineTransform;Lsun/font/AttributeValues;)V
         2: .line 1902
            new java.awt.Font
            dup
            aload 2 /* newValues */
            aconst_null
            iconst_m1
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 2 // sun.font.AttributeValues newValues
        end local 1 // java.awt.geom.AffineTransform trans
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljava/awt/Font;
            0    3     1      trans  Ljava/awt/geom/AffineTransform;
            1    3     2  newValues  Lsun/font/AttributeValues;
    MethodParameters:
       Name  Flags
      trans  

  public java.awt.Font deriveFont(int);
    descriptor: (I)Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // int style
         0: .line 1913
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 2
         1: .line 1914
            new java.awt.Font
            dup
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            iload 1 /* style */
            aload 0 /* this */
            getfield java.awt.Font.size:I
            i2f
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;IFZLsun/font/Font2DHandle;)V
            areturn
         2: .line 1916
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 2 /* newValues */
        start local 2 // sun.font.AttributeValues newValues
         3: .line 1917
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iload 1 /* style */
            if_icmpeq 4
            aload 0 /* this */
            getfield java.awt.Font.style:I
            goto 5
      StackMap locals: sun.font.AttributeValues
      StackMap stack:
         4: iconst_m1
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* oldStyle */
        start local 3 // int oldStyle
         6: .line 1918
            iload 1 /* style */
            aload 2 /* newValues */
            invokestatic java.awt.Font.applyStyle:(ILsun/font/AttributeValues;)V
         7: .line 1919
            new java.awt.Font
            dup
            aload 2 /* newValues */
            aconst_null
            iload 3 /* oldStyle */
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 3 // int oldStyle
        end local 2 // sun.font.AttributeValues newValues
        end local 1 // int style
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljava/awt/Font;
            0    8     1      style  I
            3    8     2  newValues  Lsun/font/AttributeValues;
            6    8     3   oldStyle  I
    MethodParameters:
       Name  Flags
      style  

  public java.awt.Font deriveFont(java.util.Map<? extends java.text.AttributedCharacterIterator$Attribute, ?>);
    descriptor: (Ljava/util/Map;)Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.util.Map attributes
         0: .line 1933
            aload 1 /* attributes */
            ifnonnull 2
         1: .line 1934
            aload 0 /* this */
            areturn
         2: .line 1936
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.clone:()Lsun/font/AttributeValues;
            astore 2 /* newValues */
        start local 2 // sun.font.AttributeValues newValues
         3: .line 1937
            aload 2 /* newValues */
            aload 1 /* attributes */
            getstatic java.awt.Font.RECOGNIZED_MASK:I
            invokevirtual sun.font.AttributeValues.merge:(Ljava/util/Map;I)Lsun/font/AttributeValues;
            pop
         4: .line 1939
            new java.awt.Font
            dup
            aload 2 /* newValues */
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.awt.Font.style:I
            aload 0 /* this */
            getfield java.awt.Font.createdFont:Z
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            invokespecial java.awt.Font.<init>:(Lsun/font/AttributeValues;Ljava/lang/String;IZLsun/font/Font2DHandle;)V
            areturn
        end local 2 // sun.font.AttributeValues newValues
        end local 1 // java.util.Map attributes
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljava/awt/Font;
            0    5     1  attributes  Ljava/util/Map<+Ljava/text/AttributedCharacterIterator$Attribute;*>;
            3    5     2   newValues  Lsun/font/AttributeValues;
    Signature: (Ljava/util/Map<+Ljava/text/AttributedCharacterIterator$Attribute;*>;)Ljava/awt/Font;
    MethodParameters:
            Name  Flags
      attributes  

  public boolean canDisplay(char);
    descriptor: (C)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // char c
         0: .line 1958
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            iload 1 /* c */
            invokevirtual sun.font.Font2D.canDisplay:(C)Z
            ireturn
        end local 1 // char c
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;
            0    1     1     c  C
    MethodParameters:
      Name  Flags
      c     

  public boolean canDisplay(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // int codePoint
         0: .line 1975
            iload 1 /* codePoint */
            invokestatic java.lang.Character.isValidCodePoint:(I)Z
            ifne 4
         1: .line 1976
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "invalid code point: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 1977
            iload 1 /* codePoint */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 1976
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1979
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            iload 1 /* codePoint */
            invokevirtual sun.font.Font2D.canDisplay:(I)Z
            ireturn
        end local 1 // int codePoint
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljava/awt/Font;
            0    5     1  codePoint  I
    MethodParameters:
           Name  Flags
      codePoint  

  public int canDisplayUpTo(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String str
         0: .line 2000
            aload 0 /* this */
            new java.text.StringCharacterIterator
            dup
            aload 1 /* str */
            invokespecial java.text.StringCharacterIterator.<init>:(Ljava/lang/String;)V
            iconst_0
         1: .line 2001
            aload 1 /* str */
            invokevirtual java.lang.String.length:()I
         2: .line 2000
            invokevirtual java.awt.Font.canDisplayUpTo:(Ljava/text/CharacterIterator;II)I
            ireturn
        end local 1 // java.lang.String str
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/awt/Font;
            0    3     1   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public int canDisplayUpTo(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // java.awt.Font this
        start local 1 // char[] text
        start local 2 // int start
        start local 3 // int limit
         0: .line 2024
            goto 2
         1: .line 2025
      StackMap locals:
      StackMap stack:
            iinc 2 /* start */ 1
         2: .line 2024
      StackMap locals:
      StackMap stack:
            iload 2 /* start */
            iload 3 /* limit */
            if_icmpge 3
            aload 0 /* this */
            aload 1 /* text */
            iload 2 /* start */
            caload
            invokevirtual java.awt.Font.canDisplay:(C)Z
            ifne 1
         3: .line 2028
      StackMap locals:
      StackMap stack:
            iload 2 /* start */
            iload 3 /* limit */
            if_icmpne 4
            iconst_m1
            goto 5
      StackMap locals:
      StackMap stack:
         4: iload 2 /* start */
      StackMap locals:
      StackMap stack: int
         5: ireturn
        end local 3 // int limit
        end local 2 // int start
        end local 1 // char[] text
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljava/awt/Font;
            0    6     1   text  [C
            0    6     2  start  I
            0    6     3  limit  I
    MethodParameters:
       Name  Flags
      text   
      start  
      limit  

  public int canDisplayUpTo(java.text.CharacterIterator, int, int);
    descriptor: (Ljava/text/CharacterIterator;II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // java.awt.Font this
        start local 1 // java.text.CharacterIterator iter
        start local 2 // int start
        start local 3 // int limit
         0: .line 2049
            aload 1 /* iter */
            iload 2 /* start */
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            istore 4 /* c */
        start local 4 // char c
         1: .line 2050
            goto 3
         2: .line 2051
      StackMap locals: int
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.text.CharacterIterator.next:()C
            istore 4 /* c */
         3: .line 2050
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.text.CharacterIterator.getIndex:()I
            iload 3 /* limit */
            if_icmpge 4
            aload 0 /* this */
            iload 4 /* c */
            invokevirtual java.awt.Font.canDisplay:(C)Z
            ifne 2
        end local 4 // char c
         4: .line 2054
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.text.CharacterIterator.getIndex:()I
            istore 4 /* result */
        start local 4 // int result
         5: .line 2055
            iload 4 /* result */
            iload 3 /* limit */
            if_icmpne 6
            iconst_m1
            goto 7
      StackMap locals: int
      StackMap stack:
         6: iload 4 /* result */
      StackMap locals:
      StackMap stack: int
         7: ireturn
        end local 4 // int result
        end local 3 // int limit
        end local 2 // int start
        end local 1 // java.text.CharacterIterator iter
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljava/awt/Font;
            0    8     1    iter  Ljava/text/CharacterIterator;
            0    8     2   start  I
            0    8     3   limit  I
            1    4     4       c  C
            5    8     4  result  I
    MethodParameters:
       Name  Flags
      iter   
      start  
      limit  

  public float getItalicAngle();
    descriptor: ()F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 2066
            aload 0 /* this */
            aconst_null
            invokevirtual java.awt.Font.getItalicAngle:(Ljava/awt/font/FontRenderContext;)F
            freturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  private float getItalicAngle(java.awt.font.FontRenderContext);
    descriptor: (Ljava/awt/font/FontRenderContext;)F
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
         0: .line 2078
            aload 0 /* this */
            invokevirtual java.awt.Font.isTransformed:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual java.awt.Font.getTransform:()Ljava/awt/geom/AffineTransform;
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic java.awt.Font.identityTx:Ljava/awt/geom/AffineTransform;
      StackMap locals:
      StackMap stack: java.awt.geom.AffineTransform
         2: astore 2 /* at */
        start local 2 // java.awt.geom.AffineTransform at
         3: .line 2080
            aload 1 /* frc */
            ifnonnull 7
         4: .line 2081
            getstatic java.awt.RenderingHints.VALUE_TEXT_ANTIALIAS_OFF:Ljava/lang/Object;
            astore 3 /* aa */
        start local 3 // java.lang.Object aa
         5: .line 2082
            getstatic java.awt.RenderingHints.VALUE_FRACTIONALMETRICS_OFF:Ljava/lang/Object;
            astore 4 /* fm */
        start local 4 // java.lang.Object fm
         6: .line 2083
            goto 9
        end local 4 // java.lang.Object fm
        end local 3 // java.lang.Object aa
         7: .line 2084
      StackMap locals: java.awt.geom.AffineTransform
      StackMap stack:
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getAntiAliasingHint:()Ljava/lang/Object;
            astore 3 /* aa */
        start local 3 // java.lang.Object aa
         8: .line 2085
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getFractionalMetricsHint:()Ljava/lang/Object;
            astore 4 /* fm */
        start local 4 // java.lang.Object fm
         9: .line 2087
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            aload 0 /* this */
            aload 2 /* at */
            aload 3 /* aa */
            aload 4 /* fm */
            invokevirtual sun.font.Font2D.getItalicAngle:(Ljava/awt/Font;Ljava/awt/geom/AffineTransform;Ljava/lang/Object;Ljava/lang/Object;)F
            freturn
        end local 4 // java.lang.Object fm
        end local 3 // java.lang.Object aa
        end local 2 // java.awt.geom.AffineTransform at
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljava/awt/Font;
            0   10     1   frc  Ljava/awt/font/FontRenderContext;
            3   10     2    at  Ljava/awt/geom/AffineTransform;
            5    7     3    aa  Ljava/lang/Object;
            8   10     3    aa  Ljava/lang/Object;
            6    7     4    fm  Ljava/lang/Object;
            9   10     4    fm  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      frc   

  public boolean hasUniformLineMetrics();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 2102
            iconst_0
            ireturn
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;

  private sun.font.FontLineMetrics defaultLineMetrics(java.awt.font.FontRenderContext);
    descriptor: (Ljava/awt/font/FontRenderContext;)Lsun/font/FontLineMetrics;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=18, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
         0: .line 2107
            aconst_null
            astore 2 /* flm */
        start local 2 // sun.font.FontLineMetrics flm
         1: .line 2108
            aload 0 /* this */
            getfield java.awt.Font.flmref:Ljava/lang/ref/SoftReference;
            ifnull 4
         2: .line 2109
            aload 0 /* this */
            getfield java.awt.Font.flmref:Ljava/lang/ref/SoftReference;
            invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
            checkcast sun.font.FontLineMetrics
            dup
            astore 2 /* flm */
            ifnull 4
         3: .line 2110
            aload 2 /* flm */
            getfield sun.font.FontLineMetrics.frc:Ljava/awt/font/FontRenderContext;
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.equals:(Ljava/awt/font/FontRenderContext;)Z
            ifne 52
         4: .line 2117
      StackMap locals: sun.font.FontLineMetrics
      StackMap stack:
            bipush 8
            newarray 6
            astore 3 /* metrics */
        start local 3 // float[] metrics
         5: .line 2118
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            aload 0 /* this */
            getstatic java.awt.Font.identityTx:Ljava/awt/geom/AffineTransform;
         6: .line 2119
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getAntiAliasingHint:()Ljava/lang/Object;
         7: .line 2120
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getFractionalMetricsHint:()Ljava/lang/Object;
         8: .line 2121
            aload 3 /* metrics */
         9: .line 2118
            invokevirtual sun.font.Font2D.getFontMetrics:(Ljava/awt/Font;Ljava/awt/geom/AffineTransform;Ljava/lang/Object;Ljava/lang/Object;[F)V
        10: .line 2122
            aload 3 /* metrics */
            iconst_0
            faload
            fstore 4 /* ascent */
        start local 4 // float ascent
        11: .line 2123
            aload 3 /* metrics */
            iconst_1
            faload
            fstore 5 /* descent */
        start local 5 // float descent
        12: .line 2124
            aload 3 /* metrics */
            iconst_2
            faload
            fstore 6 /* leading */
        start local 6 // float leading
        13: .line 2125
            fconst_0
            fstore 7 /* ssOffset */
        start local 7 // float ssOffset
        14: .line 2126
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 18
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getSuperscript:()I
            ifeq 18
        15: .line 2127
            aload 0 /* this */
            invokevirtual java.awt.Font.getTransform:()Ljava/awt/geom/AffineTransform;
            invokevirtual java.awt.geom.AffineTransform.getTranslateY:()D
            d2f
            fstore 7 /* ssOffset */
        16: .line 2128
            fload 4 /* ascent */
            fload 7 /* ssOffset */
            fsub
            fstore 4 /* ascent */
        17: .line 2129
            fload 5 /* descent */
            fload 7 /* ssOffset */
            fadd
            fstore 5 /* descent */
        18: .line 2131
      StackMap locals: java.awt.Font java.awt.font.FontRenderContext sun.font.FontLineMetrics float[] float float float float
      StackMap stack:
            fload 4 /* ascent */
            fload 5 /* descent */
            fadd
            fload 6 /* leading */
            fadd
            fstore 8 /* height */
        start local 8 // float height
        19: .line 2133
            iconst_0
            istore 9 /* baselineIndex */
        start local 9 // int baselineIndex
        20: .line 2135
            iconst_3
            newarray 6
            dup
            iconst_0
            fconst_0
            fastore
            dup
            iconst_1
            fload 5 /* descent */
            fconst_2
            fdiv
            fload 4 /* ascent */
            fsub
            fconst_2
            fdiv
            fastore
            dup
            iconst_2
            fload 4 /* ascent */
            fneg
            fastore
            astore 10 /* baselineOffsets */
        start local 10 // float[] baselineOffsets
        21: .line 2137
            aload 3 /* metrics */
            iconst_4
            faload
            fstore 11 /* strikethroughOffset */
        start local 11 // float strikethroughOffset
        22: .line 2138
            aload 3 /* metrics */
            iconst_5
            faload
            fstore 12 /* strikethroughThickness */
        start local 12 // float strikethroughThickness
        23: .line 2140
            aload 3 /* metrics */
            bipush 6
            faload
            fstore 13 /* underlineOffset */
        start local 13 // float underlineOffset
        24: .line 2141
            aload 3 /* metrics */
            bipush 7
            faload
            fstore 14 /* underlineThickness */
        start local 14 // float underlineThickness
        25: .line 2143
            aload 0 /* this */
            aload 1 /* frc */
            invokevirtual java.awt.Font.getItalicAngle:(Ljava/awt/font/FontRenderContext;)F
            fstore 15 /* italicAngle */
        start local 15 // float italicAngle
        26: .line 2145
            aload 0 /* this */
            invokevirtual java.awt.Font.isTransformed:()Z
            ifeq 42
        27: .line 2146
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getCharTransform:()Ljava/awt/geom/AffineTransform;
            astore 16 /* ctx */
        start local 16 // java.awt.geom.AffineTransform ctx
        28: .line 2147
            aload 16 /* ctx */
            ifnull 42
        29: .line 2148
            new java.awt.geom.Point2D$Float
            dup
            invokespecial java.awt.geom.Point2D$Float.<init>:()V
            astore 17 /* pt */
        start local 17 // java.awt.geom.Point2D$Float pt
        30: .line 2149
            aload 17 /* pt */
            fconst_0
            fload 11 /* strikethroughOffset */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        31: .line 2150
            aload 16 /* ctx */
            aload 17 /* pt */
            aload 17 /* pt */
            invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        32: .line 2151
            aload 17 /* pt */
            getfield java.awt.geom.Point2D$Float.y:F
            fstore 11 /* strikethroughOffset */
        33: .line 2152
            aload 17 /* pt */
            fconst_0
            fload 12 /* strikethroughThickness */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        34: .line 2153
            aload 16 /* ctx */
            aload 17 /* pt */
            aload 17 /* pt */
            invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        35: .line 2154
            aload 17 /* pt */
            getfield java.awt.geom.Point2D$Float.y:F
            fstore 12 /* strikethroughThickness */
        36: .line 2155
            aload 17 /* pt */
            fconst_0
            fload 13 /* underlineOffset */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        37: .line 2156
            aload 16 /* ctx */
            aload 17 /* pt */
            aload 17 /* pt */
            invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        38: .line 2157
            aload 17 /* pt */
            getfield java.awt.geom.Point2D$Float.y:F
            fstore 13 /* underlineOffset */
        39: .line 2158
            aload 17 /* pt */
            fconst_0
            fload 14 /* underlineThickness */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        40: .line 2159
            aload 16 /* ctx */
            aload 17 /* pt */
            aload 17 /* pt */
            invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
            pop
        41: .line 2160
            aload 17 /* pt */
            getfield java.awt.geom.Point2D$Float.y:F
            fstore 14 /* underlineThickness */
        end local 17 // java.awt.geom.Point2D$Float pt
        end local 16 // java.awt.geom.AffineTransform ctx
        42: .line 2163
      StackMap locals: java.awt.Font java.awt.font.FontRenderContext sun.font.FontLineMetrics float[] float float float float float int float[] float float float float float
      StackMap stack:
            fload 11 /* strikethroughOffset */
            fload 7 /* ssOffset */
            fadd
            fstore 11 /* strikethroughOffset */
        43: .line 2164
            fload 13 /* underlineOffset */
            fload 7 /* ssOffset */
            fadd
            fstore 13 /* underlineOffset */
        44: .line 2166
            new sun.font.CoreMetrics
            dup
            fload 4 /* ascent */
            fload 5 /* descent */
            fload 6 /* leading */
            fload 8 /* height */
        45: .line 2167
            iload 9 /* baselineIndex */
            aload 10 /* baselineOffsets */
        46: .line 2168
            fload 11 /* strikethroughOffset */
            fload 12 /* strikethroughThickness */
        47: .line 2169
            fload 13 /* underlineOffset */
            fload 14 /* underlineThickness */
        48: .line 2170
            fload 7 /* ssOffset */
            fload 15 /* italicAngle */
        49: .line 2166
            invokespecial sun.font.CoreMetrics.<init>:(FFFFI[FFFFFFF)V
            astore 16 /* cm */
        start local 16 // sun.font.CoreMetrics cm
        50: .line 2172
            new sun.font.FontLineMetrics
            dup
            iconst_0
            aload 16 /* cm */
            aload 1 /* frc */
            invokespecial sun.font.FontLineMetrics.<init>:(ILsun/font/CoreMetrics;Ljava/awt/font/FontRenderContext;)V
            astore 2 /* flm */
        51: .line 2173
            aload 0 /* this */
            new java.lang.ref.SoftReference
            dup
            aload 2 /* flm */
            invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
            putfield java.awt.Font.flmref:Ljava/lang/ref/SoftReference;
        end local 16 // sun.font.CoreMetrics cm
        end local 15 // float italicAngle
        end local 14 // float underlineThickness
        end local 13 // float underlineOffset
        end local 12 // float strikethroughThickness
        end local 11 // float strikethroughOffset
        end local 10 // float[] baselineOffsets
        end local 9 // int baselineIndex
        end local 8 // float height
        end local 7 // float ssOffset
        end local 6 // float leading
        end local 5 // float descent
        end local 4 // float ascent
        end local 3 // float[] metrics
        52: .line 2176
      StackMap locals: java.awt.Font java.awt.font.FontRenderContext sun.font.FontLineMetrics
      StackMap stack:
            aload 2 /* flm */
            invokevirtual sun.font.FontLineMetrics.clone:()Ljava/lang/Object;
            checkcast sun.font.FontLineMetrics
            areturn
        end local 2 // sun.font.FontLineMetrics flm
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   53     0                    this  Ljava/awt/Font;
            0   53     1                     frc  Ljava/awt/font/FontRenderContext;
            1   53     2                     flm  Lsun/font/FontLineMetrics;
            5   52     3                 metrics  [F
           11   52     4                  ascent  F
           12   52     5                 descent  F
           13   52     6                 leading  F
           14   52     7                ssOffset  F
           19   52     8                  height  F
           20   52     9           baselineIndex  I
           21   52    10         baselineOffsets  [F
           22   52    11     strikethroughOffset  F
           23   52    12  strikethroughThickness  F
           24   52    13         underlineOffset  F
           25   52    14      underlineThickness  F
           26   52    15             italicAngle  F
           28   42    16                     ctx  Ljava/awt/geom/AffineTransform;
           30   42    17                      pt  Ljava/awt/geom/Point2D$Float;
           50   52    16                      cm  Lsun/font/CoreMetrics;
    MethodParameters:
      Name  Flags
      frc   

  public java.awt.font.LineMetrics getLineMetrics(java.lang.String, java.awt.font.FontRenderContext);
    descriptor: (Ljava/lang/String;Ljava/awt/font/FontRenderContext;)Ljava/awt/font/LineMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String str
        start local 2 // java.awt.font.FontRenderContext frc
         0: .line 2188
            aload 0 /* this */
            aload 2 /* frc */
            invokevirtual java.awt.Font.defaultLineMetrics:(Ljava/awt/font/FontRenderContext;)Lsun/font/FontLineMetrics;
            astore 3 /* flm */
        start local 3 // sun.font.FontLineMetrics flm
         1: .line 2189
            aload 3 /* flm */
            aload 1 /* str */
            invokevirtual java.lang.String.length:()I
            putfield sun.font.FontLineMetrics.numchars:I
         2: .line 2190
            aload 3 /* flm */
            areturn
        end local 3 // sun.font.FontLineMetrics flm
        end local 2 // java.awt.font.FontRenderContext frc
        end local 1 // java.lang.String str
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/awt/Font;
            0    3     1   str  Ljava/lang/String;
            0    3     2   frc  Ljava/awt/font/FontRenderContext;
            1    3     3   flm  Lsun/font/FontLineMetrics;
    MethodParameters:
      Name  Flags
      str   
      frc   

  public java.awt.font.LineMetrics getLineMetrics(java.lang.String, int, int, java.awt.font.FontRenderContext);
    descriptor: (Ljava/lang/String;IILjava/awt/font/FontRenderContext;)Ljava/awt/font/LineMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=5
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String str
        start local 2 // int beginIndex
        start local 3 // int limit
        start local 4 // java.awt.font.FontRenderContext frc
         0: .line 2206
            aload 0 /* this */
            aload 4 /* frc */
            invokevirtual java.awt.Font.defaultLineMetrics:(Ljava/awt/font/FontRenderContext;)Lsun/font/FontLineMetrics;
            astore 5 /* flm */
        start local 5 // sun.font.FontLineMetrics flm
         1: .line 2207
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            istore 6 /* numChars */
        start local 6 // int numChars
         2: .line 2208
            aload 5 /* flm */
            iload 6 /* numChars */
            ifge 3
            iconst_0
            goto 4
      StackMap locals: java.awt.Font java.lang.String int int java.awt.font.FontRenderContext sun.font.FontLineMetrics int
      StackMap stack: sun.font.FontLineMetrics
         3: iload 6 /* numChars */
      StackMap locals: java.awt.Font java.lang.String int int java.awt.font.FontRenderContext sun.font.FontLineMetrics int
      StackMap stack: sun.font.FontLineMetrics int
         4: putfield sun.font.FontLineMetrics.numchars:I
         5: .line 2209
            aload 5 /* flm */
            areturn
        end local 6 // int numChars
        end local 5 // sun.font.FontLineMetrics flm
        end local 4 // java.awt.font.FontRenderContext frc
        end local 3 // int limit
        end local 2 // int beginIndex
        end local 1 // java.lang.String str
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Ljava/awt/Font;
            0    6     1         str  Ljava/lang/String;
            0    6     2  beginIndex  I
            0    6     3       limit  I
            0    6     4         frc  Ljava/awt/font/FontRenderContext;
            1    6     5         flm  Lsun/font/FontLineMetrics;
            2    6     6    numChars  I
    MethodParameters:
            Name  Flags
      str         
      beginIndex  
      limit       
      frc         

  public java.awt.font.LineMetrics getLineMetrics(char[], int, int, java.awt.font.FontRenderContext);
    descriptor: ([CIILjava/awt/font/FontRenderContext;)Ljava/awt/font/LineMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=5
        start local 0 // java.awt.Font this
        start local 1 // char[] chars
        start local 2 // int beginIndex
        start local 3 // int limit
        start local 4 // java.awt.font.FontRenderContext frc
         0: .line 2225
            aload 0 /* this */
            aload 4 /* frc */
            invokevirtual java.awt.Font.defaultLineMetrics:(Ljava/awt/font/FontRenderContext;)Lsun/font/FontLineMetrics;
            astore 5 /* flm */
        start local 5 // sun.font.FontLineMetrics flm
         1: .line 2226
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            istore 6 /* numChars */
        start local 6 // int numChars
         2: .line 2227
            aload 5 /* flm */
            iload 6 /* numChars */
            ifge 3
            iconst_0
            goto 4
      StackMap locals: java.awt.Font char[] int int java.awt.font.FontRenderContext sun.font.FontLineMetrics int
      StackMap stack: sun.font.FontLineMetrics
         3: iload 6 /* numChars */
      StackMap locals: java.awt.Font char[] int int java.awt.font.FontRenderContext sun.font.FontLineMetrics int
      StackMap stack: sun.font.FontLineMetrics int
         4: putfield sun.font.FontLineMetrics.numchars:I
         5: .line 2228
            aload 5 /* flm */
            areturn
        end local 6 // int numChars
        end local 5 // sun.font.FontLineMetrics flm
        end local 4 // java.awt.font.FontRenderContext frc
        end local 3 // int limit
        end local 2 // int beginIndex
        end local 1 // char[] chars
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Ljava/awt/Font;
            0    6     1       chars  [C
            0    6     2  beginIndex  I
            0    6     3       limit  I
            0    6     4         frc  Ljava/awt/font/FontRenderContext;
            1    6     5         flm  Lsun/font/FontLineMetrics;
            2    6     6    numChars  I
    MethodParameters:
            Name  Flags
      chars       
      beginIndex  
      limit       
      frc         

  public java.awt.font.LineMetrics getLineMetrics(java.text.CharacterIterator, int, int, java.awt.font.FontRenderContext);
    descriptor: (Ljava/text/CharacterIterator;IILjava/awt/font/FontRenderContext;)Ljava/awt/font/LineMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=5
        start local 0 // java.awt.Font this
        start local 1 // java.text.CharacterIterator ci
        start local 2 // int beginIndex
        start local 3 // int limit
        start local 4 // java.awt.font.FontRenderContext frc
         0: .line 2244
            aload 0 /* this */
            aload 4 /* frc */
            invokevirtual java.awt.Font.defaultLineMetrics:(Ljava/awt/font/FontRenderContext;)Lsun/font/FontLineMetrics;
            astore 5 /* flm */
        start local 5 // sun.font.FontLineMetrics flm
         1: .line 2245
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            istore 6 /* numChars */
        start local 6 // int numChars
         2: .line 2246
            aload 5 /* flm */
            iload 6 /* numChars */
            ifge 3
            iconst_0
            goto 4
      StackMap locals: java.awt.Font java.text.CharacterIterator int int java.awt.font.FontRenderContext sun.font.FontLineMetrics int
      StackMap stack: sun.font.FontLineMetrics
         3: iload 6 /* numChars */
      StackMap locals: java.awt.Font java.text.CharacterIterator int int java.awt.font.FontRenderContext sun.font.FontLineMetrics int
      StackMap stack: sun.font.FontLineMetrics int
         4: putfield sun.font.FontLineMetrics.numchars:I
         5: .line 2247
            aload 5 /* flm */
            areturn
        end local 6 // int numChars
        end local 5 // sun.font.FontLineMetrics flm
        end local 4 // java.awt.font.FontRenderContext frc
        end local 3 // int limit
        end local 2 // int beginIndex
        end local 1 // java.text.CharacterIterator ci
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Ljava/awt/Font;
            0    6     1          ci  Ljava/text/CharacterIterator;
            0    6     2  beginIndex  I
            0    6     3       limit  I
            0    6     4         frc  Ljava/awt/font/FontRenderContext;
            1    6     5         flm  Lsun/font/FontLineMetrics;
            2    6     6    numChars  I
    MethodParameters:
            Name  Flags
      ci          
      beginIndex  
      limit       
      frc         

  public java.awt.geom.Rectangle2D getStringBounds(java.lang.String, java.awt.font.FontRenderContext);
    descriptor: (Ljava/lang/String;Ljava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String str
        start local 2 // java.awt.font.FontRenderContext frc
         0: .line 2272
            aload 1 /* str */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* array */
        start local 3 // char[] array
         1: .line 2273
            aload 0 /* this */
            aload 3 /* array */
            iconst_0
            aload 3 /* array */
            arraylength
            aload 2 /* frc */
            invokevirtual java.awt.Font.getStringBounds:([CIILjava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
            areturn
        end local 3 // char[] array
        end local 2 // java.awt.font.FontRenderContext frc
        end local 1 // java.lang.String str
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/awt/Font;
            0    2     1    str  Ljava/lang/String;
            0    2     2    frc  Ljava/awt/font/FontRenderContext;
            1    2     3  array  [C
    MethodParameters:
      Name  Flags
      str   
      frc   

  public java.awt.geom.Rectangle2D getStringBounds(java.lang.String, int, int, java.awt.font.FontRenderContext);
    descriptor: (Ljava/lang/String;IILjava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String str
        start local 2 // int beginIndex
        start local 3 // int limit
        start local 4 // java.awt.font.FontRenderContext frc
         0: .line 2306
            aload 1 /* str */
            iload 2 /* beginIndex */
            iload 3 /* limit */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 5 /* substr */
        start local 5 // java.lang.String substr
         1: .line 2307
            aload 0 /* this */
            aload 5 /* substr */
            aload 4 /* frc */
            invokevirtual java.awt.Font.getStringBounds:(Ljava/lang/String;Ljava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
            areturn
        end local 5 // java.lang.String substr
        end local 4 // java.awt.font.FontRenderContext frc
        end local 3 // int limit
        end local 2 // int beginIndex
        end local 1 // java.lang.String str
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Ljava/awt/Font;
            0    2     1         str  Ljava/lang/String;
            0    2     2  beginIndex  I
            0    2     3       limit  I
            0    2     4         frc  Ljava/awt/font/FontRenderContext;
            1    2     5      substr  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      str         
      beginIndex  
      limit       
      frc         

  public java.awt.geom.Rectangle2D getStringBounds(char[], int, int, java.awt.font.FontRenderContext);
    descriptor: ([CIILjava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=5
        start local 0 // java.awt.Font this
        start local 1 // char[] chars
        start local 2 // int beginIndex
        start local 3 // int limit
        start local 4 // java.awt.font.FontRenderContext frc
         0: .line 2341
            iload 2 /* beginIndex */
            ifge 2
         1: .line 2342
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "beginIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* beginIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 2344
      StackMap locals:
      StackMap stack:
            iload 3 /* limit */
            aload 1 /* chars */
            arraylength
            if_icmple 4
         3: .line 2345
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "limit: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* limit */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 2347
      StackMap locals:
      StackMap stack:
            iload 2 /* beginIndex */
            iload 3 /* limit */
            if_icmple 8
         5: .line 2348
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "range length: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 2349
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 2348
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 2355
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 12
         9: .line 2356
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getKerning:()I
            ifne 11
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getLigatures:()I
            ifne 11
        10: .line 2357
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getBaselineTransform:()Ljava/awt/geom/AffineTransform;
            ifnull 12
        11: .line 2355
      StackMap locals:
      StackMap stack:
            iconst_0
            goto 13
      StackMap locals:
      StackMap stack:
        12: iconst_1
      StackMap locals:
      StackMap stack: int
        13: istore 5 /* simple */
        start local 5 // boolean simple
        14: .line 2358
            iload 5 /* simple */
            ifeq 18
        15: .line 2359
            aload 1 /* chars */
            iload 2 /* beginIndex */
            iload 3 /* limit */
            invokestatic sun.font.FontManager.isComplexText:([CII)Z
            ifeq 16
            iconst_0
            goto 17
      StackMap locals: int
      StackMap stack:
        16: iconst_1
      StackMap locals:
      StackMap stack: int
        17: istore 5 /* simple */
        18: .line 2362
      StackMap locals:
      StackMap stack:
            iload 5 /* simple */
            ifeq 23
        19: .line 2363
            new sun.font.StandardGlyphVector
            dup
            aload 0 /* this */
            aload 1 /* chars */
            iload 2 /* beginIndex */
        20: .line 2364
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            aload 4 /* frc */
        21: .line 2363
            invokespecial sun.font.StandardGlyphVector.<init>:(Ljava/awt/Font;[CIILjava/awt/font/FontRenderContext;)V
            astore 6 /* gv */
        start local 6 // java.awt.font.GlyphVector gv
        22: .line 2365
            aload 6 /* gv */
            invokevirtual java.awt.font.GlyphVector.getLogicalBounds:()Ljava/awt/geom/Rectangle2D;
            areturn
        end local 6 // java.awt.font.GlyphVector gv
        23: .line 2368
      StackMap locals:
      StackMap stack:
            new java.lang.String
            dup
            aload 1 /* chars */
            iload 2 /* beginIndex */
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            invokespecial java.lang.String.<init>:([CII)V
            astore 6 /* str */
        start local 6 // java.lang.String str
        24: .line 2369
            new java.awt.font.TextLayout
            dup
            aload 6 /* str */
            aload 0 /* this */
            aload 4 /* frc */
            invokespecial java.awt.font.TextLayout.<init>:(Ljava/lang/String;Ljava/awt/Font;Ljava/awt/font/FontRenderContext;)V
            astore 7 /* tl */
        start local 7 // java.awt.font.TextLayout tl
        25: .line 2370
            new java.awt.geom.Rectangle2D$Float
            dup
            fconst_0
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getAscent:()F
            fneg
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getAdvance:()F
        26: .line 2371
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getAscent:()F
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getDescent:()F
            fadd
        27: .line 2372
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getLeading:()F
        28: .line 2371
            fadd
        29: .line 2370
            invokespecial java.awt.geom.Rectangle2D$Float.<init>:(FFFF)V
            areturn
        end local 7 // java.awt.font.TextLayout tl
        end local 6 // java.lang.String str
        end local 5 // boolean simple
        end local 4 // java.awt.font.FontRenderContext frc
        end local 3 // int limit
        end local 2 // int beginIndex
        end local 1 // char[] chars
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   30     0        this  Ljava/awt/Font;
            0   30     1       chars  [C
            0   30     2  beginIndex  I
            0   30     3       limit  I
            0   30     4         frc  Ljava/awt/font/FontRenderContext;
           14   30     5      simple  Z
           22   23     6          gv  Ljava/awt/font/GlyphVector;
           24   30     6         str  Ljava/lang/String;
           25   30     7          tl  Ljava/awt/font/TextLayout;
    MethodParameters:
            Name  Flags
      chars       
      beginIndex  
      limit       
      frc         

  public java.awt.geom.Rectangle2D getStringBounds(java.text.CharacterIterator, int, int, java.awt.font.FontRenderContext);
    descriptor: (Ljava/text/CharacterIterator;IILjava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // java.awt.Font this
        start local 1 // java.text.CharacterIterator ci
        start local 2 // int beginIndex
        start local 3 // int limit
        start local 4 // java.awt.font.FontRenderContext frc
         0: .line 2408
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            istore 5 /* start */
        start local 5 // int start
         1: .line 2409
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.getEndIndex:()I
            istore 6 /* end */
        start local 6 // int end
         2: .line 2411
            iload 2 /* beginIndex */
            iload 5 /* start */
            if_icmpge 4
         3: .line 2412
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "beginIndex: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* beginIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 2414
      StackMap locals: int int
      StackMap stack:
            iload 3 /* limit */
            iload 6 /* end */
            if_icmple 6
         5: .line 2415
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "limit: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* limit */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 2417
      StackMap locals:
      StackMap stack:
            iload 2 /* beginIndex */
            iload 3 /* limit */
            if_icmple 10
         7: .line 2418
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "range length: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         8: .line 2419
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 2418
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 2422
      StackMap locals:
      StackMap stack:
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            newarray 5
            astore 7 /* arr */
        start local 7 // char[] arr
        11: .line 2424
            aload 1 /* ci */
            iload 2 /* beginIndex */
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            pop
        12: .line 2425
            iconst_0
            istore 8 /* idx */
        start local 8 // int idx
        13: goto 17
        14: .line 2426
      StackMap locals: char[] int
      StackMap stack:
            aload 7 /* arr */
            iload 8 /* idx */
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.current:()C
            castore
        15: .line 2427
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.next:()C
            pop
        16: .line 2425
            iinc 8 /* idx */ 1
      StackMap locals:
      StackMap stack:
        17: iload 8 /* idx */
            aload 7 /* arr */
            arraylength
            if_icmplt 14
        end local 8 // int idx
        18: .line 2430
            aload 0 /* this */
            aload 7 /* arr */
            iconst_0
            aload 7 /* arr */
            arraylength
            aload 4 /* frc */
            invokevirtual java.awt.Font.getStringBounds:([CIILjava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
            areturn
        end local 7 // char[] arr
        end local 6 // int end
        end local 5 // int start
        end local 4 // java.awt.font.FontRenderContext frc
        end local 3 // int limit
        end local 2 // int beginIndex
        end local 1 // java.text.CharacterIterator ci
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Ljava/awt/Font;
            0   19     1          ci  Ljava/text/CharacterIterator;
            0   19     2  beginIndex  I
            0   19     3       limit  I
            0   19     4         frc  Ljava/awt/font/FontRenderContext;
            1   19     5       start  I
            2   19     6         end  I
           11   19     7         arr  [C
           13   18     8         idx  I
    MethodParameters:
            Name  Flags
      ci          
      beginIndex  
      limit       
      frc         

  public java.awt.geom.Rectangle2D getMaxCharBounds(java.awt.font.FontRenderContext);
    descriptor: (Ljava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
         0: .line 2443
            iconst_4
            newarray 6
            astore 2 /* metrics */
        start local 2 // float[] metrics
         1: .line 2445
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            aload 0 /* this */
            aload 1 /* frc */
            aload 2 /* metrics */
            invokevirtual sun.font.Font2D.getFontMetrics:(Ljava/awt/Font;Ljava/awt/font/FontRenderContext;[F)V
         2: .line 2447
            new java.awt.geom.Rectangle2D$Float
            dup
            fconst_0
            aload 2 /* metrics */
            iconst_0
            faload
            fneg
         3: .line 2448
            aload 2 /* metrics */
            iconst_3
            faload
         4: .line 2449
            aload 2 /* metrics */
            iconst_0
            faload
            aload 2 /* metrics */
            iconst_1
            faload
            fadd
            aload 2 /* metrics */
            iconst_2
            faload
            fadd
         5: .line 2447
            invokespecial java.awt.geom.Rectangle2D$Float.<init>:(FFFF)V
            areturn
        end local 2 // float[] metrics
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Ljava/awt/Font;
            0    6     1      frc  Ljava/awt/font/FontRenderContext;
            1    6     2  metrics  [F
    MethodParameters:
      Name  Flags
      frc   

  public java.awt.font.GlyphVector createGlyphVector(java.awt.font.FontRenderContext, java.lang.String);
    descriptor: (Ljava/awt/font/FontRenderContext;Ljava/lang/String;)Ljava/awt/font/GlyphVector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
        start local 2 // java.lang.String str
         0: .line 2468
            new sun.font.StandardGlyphVector
            dup
            aload 0 /* this */
            aload 2 /* str */
            aload 1 /* frc */
            invokespecial sun.font.StandardGlyphVector.<init>:(Ljava/awt/Font;Ljava/lang/String;Ljava/awt/font/FontRenderContext;)V
            areturn
        end local 2 // java.lang.String str
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;
            0    1     1   frc  Ljava/awt/font/FontRenderContext;
            0    1     2   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      frc   
      str   

  public java.awt.font.GlyphVector createGlyphVector(java.awt.font.FontRenderContext, char[]);
    descriptor: (Ljava/awt/font/FontRenderContext;[C)Ljava/awt/font/GlyphVector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
        start local 2 // char[] chars
         0: .line 2487
            new sun.font.StandardGlyphVector
            dup
            aload 0 /* this */
            aload 2 /* chars */
            aload 1 /* frc */
            invokespecial sun.font.StandardGlyphVector.<init>:(Ljava/awt/Font;[CLjava/awt/font/FontRenderContext;)V
            areturn
        end local 2 // char[] chars
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljava/awt/Font;
            0    1     1    frc  Ljava/awt/font/FontRenderContext;
            0    1     2  chars  [C
    MethodParameters:
       Name  Flags
      frc    
      chars  

  public java.awt.font.GlyphVector createGlyphVector(java.awt.font.FontRenderContext, java.text.CharacterIterator);
    descriptor: (Ljava/awt/font/FontRenderContext;Ljava/text/CharacterIterator;)Ljava/awt/font/GlyphVector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
        start local 2 // java.text.CharacterIterator ci
         0: .line 2507
            new sun.font.StandardGlyphVector
            dup
            aload 0 /* this */
            aload 2 /* ci */
            aload 1 /* frc */
            invokespecial sun.font.StandardGlyphVector.<init>:(Ljava/awt/Font;Ljava/text/CharacterIterator;Ljava/awt/font/FontRenderContext;)V
            areturn
        end local 2 // java.text.CharacterIterator ci
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;
            0    1     1   frc  Ljava/awt/font/FontRenderContext;
            0    1     2    ci  Ljava/text/CharacterIterator;
    MethodParameters:
      Name  Flags
      frc   
      ci    

  public java.awt.font.GlyphVector createGlyphVector(java.awt.font.FontRenderContext, int[]);
    descriptor: (Ljava/awt/font/FontRenderContext;[I)Ljava/awt/font/GlyphVector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
        start local 2 // int[] glyphCodes
         0: .line 2527
            new sun.font.StandardGlyphVector
            dup
            aload 0 /* this */
            aload 2 /* glyphCodes */
            aload 1 /* frc */
            invokespecial sun.font.StandardGlyphVector.<init>:(Ljava/awt/Font;[ILjava/awt/font/FontRenderContext;)V
            areturn
        end local 2 // int[] glyphCodes
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljava/awt/Font;
            0    1     1         frc  Ljava/awt/font/FontRenderContext;
            0    1     2  glyphCodes  [I
    MethodParameters:
            Name  Flags
      frc         
      glyphCodes  

  public java.awt.font.GlyphVector layoutGlyphVector(java.awt.font.FontRenderContext, char[], int, int, int);
    descriptor: (Ljava/awt/font/FontRenderContext;[CIII)Ljava/awt/font/GlyphVector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=6
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
        start local 2 // char[] text
        start local 3 // int start
        start local 4 // int limit
        start local 5 // int flags
         0: .line 2578
            aconst_null
            invokestatic sun.font.GlyphLayout.get:(Lsun/font/GlyphLayout$LayoutEngineFactory;)Lsun/font/GlyphLayout;
            astore 6 /* gl */
        start local 6 // sun.font.GlyphLayout gl
         1: .line 2579
            aload 6 /* gl */
            aload 0 /* this */
            aload 1 /* frc */
            aload 2 /* text */
         2: .line 2580
            iload 3 /* start */
            iload 4 /* limit */
            iload 3 /* start */
            isub
            iload 5 /* flags */
            aconst_null
         3: .line 2579
            invokevirtual sun.font.GlyphLayout.layout:(Ljava/awt/Font;Ljava/awt/font/FontRenderContext;[CIIILsun/font/StandardGlyphVector;)Lsun/font/StandardGlyphVector;
            astore 7 /* gv */
        start local 7 // sun.font.StandardGlyphVector gv
         4: .line 2581
            aload 6 /* gl */
            invokestatic sun.font.GlyphLayout.done:(Lsun/font/GlyphLayout;)V
         5: .line 2582
            aload 7 /* gv */
            areturn
        end local 7 // sun.font.StandardGlyphVector gv
        end local 6 // sun.font.GlyphLayout gl
        end local 5 // int flags
        end local 4 // int limit
        end local 3 // int start
        end local 2 // char[] text
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljava/awt/Font;
            0    6     1    frc  Ljava/awt/font/FontRenderContext;
            0    6     2   text  [C
            0    6     3  start  I
            0    6     4  limit  I
            0    6     5  flags  I
            1    6     6     gl  Lsun/font/GlyphLayout;
            4    6     7     gv  Lsun/font/StandardGlyphVector;
    MethodParameters:
       Name  Flags
      frc    
      text   
      start  
      limit  
      flags  

  private static void applyTransform(java.awt.geom.AffineTransform, sun.font.AttributeValues);
    descriptor: (Ljava/awt/geom/AffineTransform;Lsun/font/AttributeValues;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.geom.AffineTransform trans
        start local 1 // sun.font.AttributeValues values
         0: .line 2611
            aload 0 /* trans */
            ifnonnull 2
         1: .line 2612
            new java.lang.IllegalArgumentException
            dup
            ldc "transform must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 2614
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            aload 0 /* trans */
            invokevirtual sun.font.AttributeValues.setTransform:(Ljava/awt/geom/AffineTransform;)V
         3: .line 2615
            return
        end local 1 // sun.font.AttributeValues values
        end local 0 // java.awt.geom.AffineTransform trans
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0   trans  Ljava/awt/geom/AffineTransform;
            0    4     1  values  Lsun/font/AttributeValues;
    MethodParameters:
        Name  Flags
      trans   
      values  

  private static void applyStyle(int, sun.font.AttributeValues);
    descriptor: (ILsun/font/AttributeValues;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int style
        start local 1 // sun.font.AttributeValues values
         0: .line 2619
            aload 1 /* values */
            iload 0 /* style */
            iconst_1
            iand
            ifeq 1
            fconst_2
            goto 2
      StackMap locals:
      StackMap stack: sun.font.AttributeValues
         1: fconst_1
      StackMap locals: int sun.font.AttributeValues
      StackMap stack: sun.font.AttributeValues float
         2: invokevirtual sun.font.AttributeValues.setWeight:(F)V
         3: .line 2621
            aload 1 /* values */
            iload 0 /* style */
            iconst_2
            iand
            ifeq 4
            ldc 0.2
            goto 5
      StackMap locals:
      StackMap stack: sun.font.AttributeValues
         4: fconst_0
      StackMap locals: int sun.font.AttributeValues
      StackMap stack: sun.font.AttributeValues float
         5: invokevirtual sun.font.AttributeValues.setPosture:(F)V
         6: .line 2622
            return
        end local 1 // sun.font.AttributeValues values
        end local 0 // int style
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0   style  I
            0    7     1  values  Lsun/font/AttributeValues;
    MethodParameters:
        Name  Flags
      style   
      values  

  private static native void initIDs();
    descriptor: ()V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  protected void finalize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // java.awt.Font this
         0: .line 2638
            return
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/Font;
    Exceptions:
      throws java.lang.Throwable
}
SourceFile: "Font.java"
NestMembers:
  java.awt.Font$1  java.awt.Font$2  java.awt.Font$3
InnerClasses:
  java.awt.Font$1
  java.awt.Font$2
  java.awt.Font$3
  public Float = java.awt.geom.Point2D$Float of java.awt.geom.Point2D
  public Float = java.awt.geom.Rectangle2D$Float of java.awt.geom.Rectangle2D
  public Attribute = java.text.AttributedCharacterIterator$Attribute of java.text.AttributedCharacterIterator
  public abstract LayoutEngineFactory = sun.font.GlyphLayout$LayoutEngineFactory of sun.font.GlyphLayout