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<java.lang.Object, java.lang.Object> fRequestedAttributes;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;

  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<sun.font.FontLineMetrics> flmref;
    descriptor: Ljava/lang/ref/SoftReference;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Ljava/lang/ref/SoftReference<Lsun/font/FontLineMetrics;>;

  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 246
            invokestatic java.awt.Toolkit.loadLibraries:()V
         1: .line 247
            invokestatic java.awt.Font.initIDs:()V
         2: .line 248
            new java.awt.Font$FontAccessImpl
            dup
            invokespecial java.awt.Font$FontAccessImpl.<init>:()V
            invokestatic sun.font.FontAccess.setFontAccess:(Lsun/font/FontAccess;)V
         3: .line 429
            new java.awt.geom.AffineTransform
            dup
            invokespecial java.awt.geom.AffineTransform.<init>:()V
            putstatic java.awt.Font.identityTx:Ljava/awt/geom/AffineTransform;
         4: .line 721
            getstatic sun.font.AttributeValues.MASK_ALL:I
         5: .line 722
            getstatic sun.font.EAttribute.EFONT:Lsun/font/EAttribute;
            invokestatic sun.font.AttributeValues.getMask:(Lsun/font/EAttribute;)I
            iconst_m1
            ixor
         6: .line 721
            iand
            putstatic java.awt.Font.RECOGNIZED_MASK:I
         7: .line 727
            bipush 8
            anewarray sun.font.EAttribute
            dup
            iconst_0
         8: .line 728
            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
         9: .line 729
            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
        10: .line 728
            invokestatic sun.font.AttributeValues.getMask:([Lsun/font/EAttribute;)I
            putstatic java.awt.Font.PRIMARY_MASK:I
        11: .line 735
            getstatic java.awt.Font.RECOGNIZED_MASK:I
            getstatic java.awt.Font.PRIMARY_MASK:I
            iconst_m1
            ixor
            iand
        12: .line 734
            putstatic java.awt.Font.SECONDARY_MASK:I
        13: .line 740
            bipush 16
            anewarray sun.font.EAttribute
            dup
            iconst_0
        14: .line 741
            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
        15: .line 742
            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
        16: .line 743
            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
        17: .line 744
            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
        18: .line 745
            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
        19: .line 746
            getstatic sun.font.EAttribute.ELIGATURES:Lsun/font/EAttribute;
            aastore
            dup
            bipush 14
            getstatic sun.font.EAttribute.ETRACKING:Lsun/font/EAttribute;
            aastore
            dup
            bipush 15
            getstatic sun.font.EAttribute.ESUPERSCRIPT:Lsun/font/EAttribute;
            aastore
        20: .line 741
            invokestatic sun.font.AttributeValues.getMask:([Lsun/font/EAttribute;)I
            putstatic java.awt.Font.LAYOUT_MASK:I
        21: .line 748
            iconst_3
            anewarray sun.font.EAttribute
            dup
            iconst_0
        22: .line 749
            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
        23: .line 1155
            bipush 8
            newarray 6
            dup
            iconst_0
        24: .line 1156
            fconst_0
            fastore
            dup
            iconst_1
        25: .line 1157
            ldc 0.375
            fastore
            dup
            iconst_2
        26: .line 1158
            ldc 0.625
            fastore
            dup
            iconst_3
        27: .line 1159
            ldc 0.7916667
            fastore
            dup
            iconst_4
        28: .line 1160
            ldc 0.9027778
            fastore
            dup
            iconst_5
        29: .line 1161
            ldc 0.9768519
            fastore
            dup
            bipush 6
        30: .line 1162
            ldc 1.0262346
            fastore
            dup
            bipush 7
        31: .line 1163
            ldc 1.0591564
            fastore
        32: .line 1155
            putstatic java.awt.Font.ssinfo:[F
        33: .line 2669
            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 444
            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()

  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 452
            aload 0 /* this */
            getfield java.awt.Font.peer:Ljava/awt/peer/FontPeer;
            ifnonnull 3
         1: .line 453
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            astore 1 /* tk */
        start local 1 // java.awt.Toolkit tk
         2: .line 454
            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 456
      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=2, locals=2, args_size=1
        start local 0 // java.awt.Font this
         0: .line 471
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 10
         1: .line 472
            new sun.font.AttributeValues
            dup
            invokespecial sun.font.AttributeValues.<init>:()V
            astore 1 /* valuesTmp */
        start local 1 // sun.font.AttributeValues valuesTmp
         2: .line 473
            aload 1 /* valuesTmp */
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            invokevirtual sun.font.AttributeValues.setFamily:(Ljava/lang/String;)V
         3: .line 474
            aload 1 /* valuesTmp */
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            invokevirtual sun.font.AttributeValues.setSize:(F)V
         4: .line 476
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iconst_1
            iand
            ifeq 6
         5: .line 477
            aload 1 /* valuesTmp */
            fconst_2
            invokevirtual sun.font.AttributeValues.setWeight:(F)V
         6: .line 480
      StackMap locals: sun.font.AttributeValues
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.style:I
            iconst_2
            iand
            ifeq 8
         7: .line 481
            aload 1 /* valuesTmp */
            ldc 0.2
            invokevirtual sun.font.AttributeValues.setPosture:(F)V
         8: .line 483
      StackMap locals:
      StackMap stack:
            aload 1 /* valuesTmp */
            getstatic java.awt.Font.PRIMARY_MASK:I
            invokevirtual sun.font.AttributeValues.defineAll:(I)V
         9: .line 484
            aload 0 /* this */
            aload 1 /* valuesTmp */
            putfield java.awt.Font.values:Lsun/font/AttributeValues;
        end local 1 // sun.font.AttributeValues valuesTmp
        10: .line 487
      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   11     0       this  Ljava/awt/Font;
            2   10     1  valuesTmp  Lsun/font/AttributeValues;

  private sun.font.Font2D getFont2D();
    descriptor: ()Lsun/font/Font2D;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.awt.Font this
         0: .line 491
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 1 /* fm */
        start local 1 // sun.font.FontManager fm
         1: .line 492
            aload 1 /* fm */
            invokeinterface sun.font.FontManager.usingPerAppContextComposites:()Z
            ifeq 8
         2: .line 493
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            ifnull 8
         3: .line 494
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifeq 8
         4: .line 495
            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 8
         5: .line 496
            aload 1 /* fm */
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.awt.Font.style:I
         6: .line 497
            iconst_2
         7: .line 496
            invokeinterface sun.font.FontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            areturn
         8: .line 498
      StackMap locals: sun.font.FontManager
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
            ifnonnull 15
         9: .line 499
            aload 0 /* this */
        10: .line 500
            aload 1 /* fm */
            aload 0 /* this */
            getfield java.awt.Font.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.awt.Font.style:I
        11: .line 501
            iconst_2
        12: .line 500
            invokeinterface sun.font.FontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
        13: .line 501
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
        14: .line 499
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        15: .line 507
      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 1 // sun.font.FontManager fm
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Ljava/awt/Font;
            1   16     1    fm  Lsun/font/FontManager;

  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 567
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 416
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1702
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 568
            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 569
            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 570
            aload 0 /* this */
            iload 3 /* size */
            putfield java.awt.Font.size:I
        10: .line 571
            aload 0 /* this */
            iload 3 /* size */
            i2f
            putfield java.awt.Font.pointSize:F
        11: .line 572
            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 574
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 416
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1702
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 575
            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 576
            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 577
            aload 0 /* this */
            fload 3 /* sizePts */
            f2d
            ldc 0.5
            dadd
            d2i
            putfield java.awt.Font.size:I
        10: .line 578
            aload 0 /* this */
            fload 3 /* sizePts */
            putfield java.awt.Font.pointSize:F
        11: .line 579
            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=5, locals=7, 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 584
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            fload 3 /* sizePts */
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;IF)V
         1: .line 585
            aload 0 /* this */
            iload 4 /* created */
            putfield java.awt.Font.createdFont:Z
         2: .line 595
            iload 4 /* created */
            ifeq 9
         3: .line 596
            aload 5 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifeq 8
         4: .line 597
            aload 5 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            invokevirtual sun.font.Font2D.getStyle:()I
            iload 2 /* style */
            if_icmpeq 8
         5: .line 598
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 6 /* fm */
        start local 6 // sun.font.FontManager fm
         6: .line 599
            aload 0 /* this */
            aload 6 /* fm */
            aconst_null
            iload 2 /* style */
            aload 5 /* handle */
            invokeinterface sun.font.FontManager.getNewComposite:(Ljava/lang/String;ILsun/font/Font2DHandle;)Lsun/font/Font2DHandle;
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        end local 6 // sun.font.FontManager fm
         7: .line 600
            goto 9
         8: .line 601
      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;
         9: .line 604
      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   10     0     this  Ljava/awt/Font;
            0   10     1     name  Ljava/lang/String;
            0   10     2    style  I
            0   10     3  sizePts  F
            0   10     4  created  Z
            0   10     5   handle  Lsun/font/Font2DHandle;
            6    7     6       fm  Lsun/font/FontManager;
    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=6, locals=6, 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 607
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 416
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1702
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 610
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.createdFont:Z
         4: .line 614
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 5 /* fm */
        start local 5 // sun.font.FontManager fm
         5: .line 615
            aload 0 /* this */
            aload 5 /* fm */
            aload 1 /* fontFile */
            iload 2 /* fontFormat */
            iload 3 /* isCopy */
         6: .line 616
            aload 4 /* tracker */
         7: .line 615
            invokeinterface sun.font.FontManager.createFont2D:(Ljava/io/File;IZLsun/font/CreatedFontTracker;)Lsun/font/Font2D;
         8: .line 616
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
         9: .line 615
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        10: .line 617
            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 618
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.style:I
        12: .line 619
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.size:I
        13: .line 620
            aload 0 /* this */
            fconst_1
            putfield java.awt.Font.pointSize:F
        14: .line 621
            return
        end local 5 // sun.font.FontManager fm
        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;
            5   15     5          fm  Lsun/font/FontManager;
    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=5, locals=9, 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 646
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 416
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1702
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 649
            aload 0 /* this */
            iload 4 /* created */
            putfield java.awt.Font.createdFont:Z
         4: .line 650
            iload 4 /* created */
            ifeq 27
         5: .line 651
            aload 0 /* this */
            aload 5 /* handle */
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
         6: .line 653
            aconst_null
            astore 6 /* newName */
        start local 6 // java.lang.String newName
         7: .line 654
            aload 2 /* oldName */
            ifnull 10
         8: .line 655
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getFamily:()Ljava/lang/String;
            astore 6 /* newName */
         9: .line 656
            aload 2 /* oldName */
            aload 6 /* newName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
            aconst_null
            astore 6 /* newName */
        10: .line 658
      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 659
            iload 3 /* oldStyle */
            iconst_m1
            if_icmpne 14
        12: .line 660
            iconst_m1
            istore 7 /* newStyle */
        13: .line 661
            goto 17
        14: .line 662
      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 663
      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 664
      StackMap locals:
      StackMap stack:
            iload 3 /* oldStyle */
            iload 7 /* newStyle */
            if_icmpne 17
            iconst_m1
            istore 7 /* newStyle */
        17: .line 666
      StackMap locals:
      StackMap stack:
            aload 5 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifeq 24
        18: .line 667
            iload 7 /* newStyle */
            iconst_m1
            if_icmpne 19
            aload 6 /* newName */
            ifnull 27
        19: .line 668
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 8 /* fm */
        start local 8 // sun.font.FontManager fm
        20: .line 669
            aload 0 /* this */
        21: .line 670
            aload 8 /* fm */
            aload 6 /* newName */
            iload 7 /* newStyle */
            aload 5 /* handle */
            invokeinterface sun.font.FontManager.getNewComposite:(Ljava/lang/String;ILsun/font/Font2DHandle;)Lsun/font/Font2DHandle;
        22: .line 669
            putfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        end local 8 // sun.font.FontManager fm
        23: .line 672
            goto 27
      StackMap locals:
      StackMap stack:
        24: aload 6 /* newName */
            ifnull 27
        25: .line 673
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
        26: .line 674
            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
        27: .line 677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual java.awt.Font.initFromValues:(Lsun/font/AttributeValues;)V
        28: .line 678
            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   29     0      this  Ljava/awt/Font;
            0   29     1    values  Lsun/font/AttributeValues;
            0   29     2   oldName  Ljava/lang/String;
            0   29     3  oldStyle  I
            0   29     4   created  Z
            0   29     5    handle  Lsun/font/Font2DHandle;
            7   27     6   newName  Ljava/lang/String;
           11   27     7  newStyle  I
           20   23     8        fm  Lsun/font/FontManager;
    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 694
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 416
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1702
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 695
            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 696
            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 705
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 416
            aload 0 /* this */
            iconst_0
            putfield java.awt.Font.createdFont:Z
         2: .line 1702
            aload 0 /* this */
            iconst_1
            putfield java.awt.Font.fontSerializedDataVersion:I
         3: .line 706
            aload 1 /* font */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 6
         4: .line 707
            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 708
            goto 10
         6: .line 709
      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 710
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.style:I
            putfield java.awt.Font.style:I
         8: .line 711
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.size:I
            putfield java.awt.Font.size:I
         9: .line 712
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.pointSize:F
            putfield java.awt.Font.pointSize:F
        10: .line 714
      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 715
            aload 0 /* this */
            aload 1 /* font */
            getfield java.awt.Font.createdFont:Z
            putfield java.awt.Font.createdFont:Z
        12: .line 716
            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 755
            aload 0 /* this */
            aload 1 /* values */
            putfield java.awt.Font.values:Lsun/font/AttributeValues;
         1: .line 756
            aload 1 /* values */
            getstatic java.awt.Font.PRIMARY_MASK:I
            invokevirtual sun.font.AttributeValues.defineAll:(I)V
         2: .line 758
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getFamily:()Ljava/lang/String;
            putfield java.awt.Font.name:Ljava/lang/String;
         3: .line 759
            aload 0 /* this */
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getSize:()F
            putfield java.awt.Font.pointSize:F
         4: .line 760
            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 761
            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 762
      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 764
      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 765
            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 766
            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 790
            aload 0 /* attributes */
            instanceof sun.font.AttributeMap
            ifeq 13
         1: .line 791
            aload 0 /* attributes */
            checkcast sun.font.AttributeMap
            invokevirtual sun.font.AttributeMap.getValues:()Lsun/font/AttributeValues;
            ifnull 13
         2: .line 792
            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 793
            aload 1 /* values */
            getstatic sun.font.EAttribute.EFONT:Lsun/font/EAttribute;
            invokevirtual sun.font.AttributeValues.isNonDefault:(Lsun/font/EAttribute;)Z
            ifeq 12
         4: .line 794
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getFont:()Ljava/awt/Font;
            astore 2 /* font */
        start local 2 // java.awt.Font font
         5: .line 795
            aload 1 /* values */
            getstatic java.awt.Font.SECONDARY_MASK:I
            invokevirtual sun.font.AttributeValues.anyDefined:(I)Z
            ifne 7
         6: .line 796
            aload 2 /* font */
            areturn
         7: .line 799
      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 800
            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 801
            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 802
            aload 2 /* font */
            getfield java.awt.Font.createdFont:Z
            aload 2 /* font */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        11: .line 801
            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 804
      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 807
      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 808
            aload 1 /* font */
            ifnull 22
        15: .line 809
            aload 0 /* attributes */
            invokeinterface java.util.Map.size:()I
            iconst_1
            if_icmple 21
        16: .line 810
            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 811
            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 812
            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 813
            aload 1 /* font */
            getfield java.awt.Font.createdFont:Z
            aload 1 /* font */
            getfield java.awt.Font.font2DHandle:Lsun/font/Font2DHandle;
        20: .line 812
            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 816
      StackMap locals: java.awt.Font
      StackMap stack:
            aload 1 /* font */
            areturn
        22: .line 819
      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 829
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            ifnonnull 2
         1: .line 830
            iconst_1
            ireturn
         2: .line 832
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 0 /* f */
        start local 0 // java.io.File f
         3: .line 833
            iconst_0
            istore 1 /* hasPerm */
        start local 1 // boolean hasPerm
         4: .line 835
            ldc "+~JT"
            ldc ".tmp"
            iconst_0
            anewarray java.nio.file.attribute.FileAttribute
            invokestatic java.nio.file.Files.createTempFile:(Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
            astore 0 /* f */
         5: .line 836
            aload 0 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
         6: .line 837
            aconst_null
            astore 0 /* f */
         7: .line 838
            iconst_1
            istore 1 /* hasPerm */
         8: .line 839
            goto 10
      StackMap locals: java.io.File int
      StackMap stack: java.lang.Throwable
         9: pop
        10: .line 842
      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 876
            invokestatic java.awt.Font.hasTempPermission:()Z
            ifeq 2
         1: .line 877
            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 882
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.CreatedFontTracker.getTracker:()Lsun/font/CreatedFontTracker;
            astore 2 /* tracker */
        start local 2 // sun.font.CreatedFontTracker tracker
         3: .line 883
            iconst_0
            istore 3 /* acquired */
        start local 3 // boolean acquired
         4: .line 885
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.acquirePermit:()Z
            istore 3 /* acquired */
         5: .line 886
            iload 3 /* acquired */
            ifne 7
         6: .line 887
            new java.io.IOException
            dup
            ldc "Timed out waiting for resources."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 889
      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 893
            iload 3 /* acquired */
            ifeq 10
         9: .line 894
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.releasePermit:()V
        10: .line 889
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int top java.awt.Font
      StackMap stack:
            aload 5
            areturn
        11: .line 890
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int
      StackMap stack: java.lang.InterruptedException
            pop
        12: .line 891
            new java.io.IOException
            dup
            ldc "Problem reading font data."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 892
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        14: .line 893
            iload 3 /* acquired */
            ifeq 16
        15: .line 894
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.releasePermit:()V
        16: .line 896
      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 903
            iload 0 /* fontFormat */
            ifeq 3
         1: .line 904
            iload 0 /* fontFormat */
            iconst_1
            if_icmpeq 3
         2: .line 905
            new java.lang.IllegalArgumentException
            dup
            ldc "font format not recognized"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 907
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* copiedFontData */
        start local 3 // boolean copiedFontData
         4: .line 910
            new java.awt.Font$1
            dup
            invokespecial java.awt.Font$1.<init>:()V
         5: .line 909
            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 916
            aload 2 /* tracker */
            ifnull 8
         7: .line 917
            aload 2 /* tracker */
            aload 4 /* tFile */
            invokevirtual sun.font.CreatedFontTracker.add:(Ljava/io/File;)V
         8: .line 920
      StackMap locals: int java.io.File
      StackMap stack:
            iconst_0
            istore 5 /* totalSize */
        start local 5 // int totalSize
         9: .line 924
            new java.awt.Font$3
            dup
            aload 4 /* tFile */
            invokespecial java.awt.Font$3.<init>:(Ljava/io/File;)V
        10: .line 923
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            checkcast java.io.OutputStream
        11: .line 922
            astore 6 /* outStream */
        start local 6 // java.io.OutputStream outStream
        12: .line 930
            aload 2 /* tracker */
            ifnull 14
        13: .line 931
            aload 2 /* tracker */
            aload 4 /* tFile */
            aload 6 /* outStream */
            invokevirtual sun.font.CreatedFontTracker.set:(Ljava/io/File;Ljava/io/OutputStream;)V
        14: .line 934
      StackMap locals: int java.io.OutputStream
      StackMap stack:
            sipush 8192
            newarray 8
            astore 7 /* buf */
        start local 7 // byte[] buf
        15: .line 936
      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 937
            iload 8 /* bytesRead */
            ifge 18
        17: .line 938
            goto 31
        18: .line 940
      StackMap locals: int
      StackMap stack:
            aload 2 /* tracker */
            ifnull 26
        19: .line 941
            iload 5 /* totalSize */
            iload 8 /* bytesRead */
            iadd
            ldc 33554432
            if_icmple 21
        20: .line 942
            new java.io.IOException
            dup
            ldc "File too big."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 944
      StackMap locals:
      StackMap stack:
            iload 5 /* totalSize */
            aload 2 /* tracker */
            invokevirtual sun.font.CreatedFontTracker.getNumBytes:()I
            iadd
        22: .line 945
            ldc 335544320
            if_icmple 24
        23: .line 947
            new java.io.IOException
            dup
            ldc "Total files too big."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        24: .line 949
      StackMap locals:
      StackMap stack:
            iload 5 /* totalSize */
            iload 8 /* bytesRead */
            iadd
            istore 5 /* totalSize */
        25: .line 950
            aload 2 /* tracker */
            iload 8 /* bytesRead */
            invokevirtual sun.font.CreatedFontTracker.addBytes:(I)V
        26: .line 952
      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 935
            goto 15
        end local 7 // byte[] buf
        28: .line 955
      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 956
            aload 6 /* outStream */
            invokevirtual java.io.OutputStream.close:()V
        30: .line 957
            aload 9
            athrow
        31: .line 956
      StackMap locals:
      StackMap stack:
            aload 6 /* outStream */
            invokevirtual java.io.OutputStream.close:()V
        32: .line 968
            iconst_1
            istore 3 /* copiedFontData */
        33: .line 969
            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 970
            aload 7 /* font */
            astore 11
        35: .line 972
            aload 2 /* tracker */
            ifnull 37
        36: .line 973
            aload 2 /* tracker */
            aload 4 /* tFile */
            invokevirtual sun.font.CreatedFontTracker.remove:(Ljava/io/File;)V
        37: .line 975
      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 976
            aload 2 /* tracker */
            ifnull 40
        39: .line 977
            aload 2 /* tracker */
            iload 5 /* totalSize */
            invokevirtual sun.font.CreatedFontTracker.subBytes:(I)V
        40: .line 980
      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 979
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            pop
        42: .line 970
      StackMap locals:
      StackMap stack:
            aload 11
            areturn
        end local 7 // java.awt.Font font
        end local 6 // java.io.OutputStream outStream
        43: .line 971
      StackMap locals: int java.io.InputStream sun.font.CreatedFontTracker int java.io.File int
      StackMap stack: java.lang.Throwable
            astore 10
        44: .line 972
            aload 2 /* tracker */
            ifnull 46
        45: .line 973
            aload 2 /* tracker */
            aload 4 /* tFile */
            invokevirtual sun.font.CreatedFontTracker.remove:(Ljava/io/File;)V
        46: .line 975
      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 976
            aload 2 /* tracker */
            ifnull 49
        48: .line 977
            aload 2 /* tracker */
            iload 5 /* totalSize */
            invokevirtual sun.font.CreatedFontTracker.subBytes:(I)V
        49: .line 980
      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 979
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            pop
        51: .line 988
      StackMap locals:
      StackMap stack:
            aload 10
            athrow
        end local 5 // int totalSize
        end local 4 // java.io.File tFile
        52: .line 989
      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 990
            aload 4 /* t */
            instanceof java.awt.FontFormatException
            ifeq 55
        54: .line 991
            aload 4 /* t */
            checkcast java.awt.FontFormatException
            athrow
        55: .line 993
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 4 /* t */
            instanceof java.io.IOException
            ifeq 57
        56: .line 994
            aload 4 /* t */
            checkcast java.io.IOException
            athrow
        57: .line 996
      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 997
            aload 5 /* cause */
            instanceof java.awt.FontFormatException
            ifeq 60
        59: .line 998
            aload 5 /* cause */
            checkcast java.awt.FontFormatException
            athrow
        60: .line 1000
      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 1041
            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 1043
            iload 0 /* fontFormat */
            ifeq 4
         2: .line 1044
            iload 0 /* fontFormat */
            iconst_1
            if_icmpeq 4
         3: .line 1045
            new java.lang.IllegalArgumentException
            dup
            ldc "font format not recognized"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1047
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 2 /* sm */
        start local 2 // java.lang.SecurityManager sm
         5: .line 1048
            aload 2 /* sm */
            ifnull 9
         6: .line 1050
            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 1049
            astore 3 /* filePermission */
        start local 3 // java.io.FilePermission filePermission
         8: .line 1051
            aload 2 /* sm */
            aload 3 /* filePermission */
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
        end local 3 // java.io.FilePermission filePermission
         9: .line 1053
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 1 /* fontFile */
            invokevirtual java.io.File.canRead:()Z
            ifne 11
        10: .line 1054
            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 1056
      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 1087
            aload 0 /* this */
            getfield java.awt.Font.nonIdentityTx:Z
            ifeq 33
         1: .line 1088
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            astore 1 /* values */
        start local 1 // sun.font.AttributeValues values
         2: .line 1090
            aload 1 /* values */
            getstatic sun.font.EAttribute.ETRANSFORM:Lsun/font/EAttribute;
            invokevirtual sun.font.AttributeValues.isNonDefault:(Lsun/font/EAttribute;)Z
            ifeq 4
         3: .line 1091
            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 1092
      StackMap locals: sun.font.AttributeValues
      StackMap stack:
            new java.awt.geom.AffineTransform
            dup
            invokespecial java.awt.geom.AffineTransform.<init>:()V
         5: .line 1090
      StackMap locals:
      StackMap stack: java.awt.geom.AffineTransform
            astore 2 /* at */
        start local 2 // java.awt.geom.AffineTransform at
         6: .line 1094
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getSuperscript:()I
            ifeq 30
         7: .line 1099
            aload 1 /* values */
            invokevirtual sun.font.AttributeValues.getSuperscript:()I
            istore 3 /* superscript */
        start local 3 // int superscript
         8: .line 1101
            dconst_0
            dstore 4 /* trans */
        start local 4 // double trans
         9: .line 1102
            iconst_0
            istore 6 /* n */
        start local 6 // int n
        10: .line 1103
            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 1104
            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 1105
            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 1107
            goto 25
        20: .line 1108
      StackMap locals: int
      StackMap stack:
            iload 9 /* ss */
            bipush 7
            iand
            istore 10 /* newn */
        start local 10 // int newn
        21: .line 1109
            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 1110
            iload 9 /* ss */
            iconst_3
            ishr
            istore 9 /* ss */
        23: .line 1111
            iload 8 /* sign */
            ineg
            istore 8 /* sign */
        24: .line 1112
            iload 10 /* newn */
            istore 6 /* n */
        end local 10 // int newn
        25: .line 1107
      StackMap locals:
      StackMap stack:
            iload 9 /* ss */
            bipush 7
            iand
            iload 6 /* n */
            if_icmpgt 20
        26: .line 1114
            dload 4 /* trans */
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            f2d
            dmul
            dstore 4 /* trans */
        27: .line 1115
            ldc 0.6666666666666666
            iload 6 /* n */
            i2d
            invokestatic java.lang.Math.pow:(DD)D
            dstore 10 /* scale */
        start local 10 // double scale
        28: .line 1117
            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 1118
            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 1134
      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 1135
            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 1138
      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 1141
      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 1186
            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 1194
            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 1217
            aload 1 /* l */
            ifnonnull 2
         1: .line 1218
            new java.lang.NullPointerException
            dup
            ldc "null locale doesn't mean default"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1220
      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 1232
            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 1246
            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 1261
            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 1276
            aload 1 /* l */
            ifnonnull 2
         1: .line 1277
            new java.lang.NullPointerException
            dup
            ldc "null locale doesn't mean default"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1279
      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 1292
            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 1318
            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 1330
            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 1343
            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 1356
            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 1369
            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 1383
            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 1393
            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 1413
            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 1490
            aload 0 /* str */
            astore 1 /* fontName */
        start local 1 // java.lang.String fontName
         1: .line 1491
            ldc ""
            astore 2 /* styleName */
        start local 2 // java.lang.String styleName
         2: .line 1492
            bipush 12
            istore 3 /* fontSize */
        start local 3 // int fontSize
         3: .line 1493
            iconst_0
            istore 4 /* fontStyle */
        start local 4 // int fontStyle
         4: .line 1495
            aload 0 /* str */
            ifnonnull 6
         5: .line 1496
            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 1499
      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 1500
            aload 0 /* str */
            bipush 32
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 6 /* lastSpace */
        start local 6 // int lastSpace
         8: .line 1501
            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 1502
            aload 0 /* str */
            iload 7 /* sepChar */
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 8 /* sizeIndex */
        start local 8 // int sizeIndex
        12: .line 1503
            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 1504
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            istore 10 /* strlen */
        start local 10 // int strlen
        14: .line 1506
            iload 8 /* sizeIndex */
            ifle 25
            iload 8 /* sizeIndex */
            iconst_1
            iadd
            iload 10 /* strlen */
            if_icmpge 25
        15: .line 1509
            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 1508
            istore 3 /* fontSize */
        17: .line 1510
            iload 3 /* fontSize */
            ifgt 25
        18: .line 1511
            bipush 12
            istore 3 /* fontSize */
        19: .line 1513
            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 1516
            iload 8 /* sizeIndex */
            istore 9 /* styleIndex */
        22: .line 1517
            iload 10 /* strlen */
            istore 8 /* sizeIndex */
        23: .line 1518
            aload 0 /* str */
            iload 8 /* sizeIndex */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            iload 7 /* sepChar */
            if_icmpne 25
        24: .line 1519
            iinc 8 /* sizeIndex */ -1
        25: .line 1524
      StackMap locals:
      StackMap stack:
            iload 9 /* styleIndex */
            iflt 45
            iload 9 /* styleIndex */
            iconst_1
            iadd
            iload 10 /* strlen */
            if_icmpge 45
        26: .line 1525
            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 1526
            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 1527
            aload 2 /* styleName */
            ldc "bolditalic"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 31
        29: .line 1528
            iconst_3
            istore 4 /* fontStyle */
        30: .line 1529
            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 1530
            iconst_2
            istore 4 /* fontStyle */
        33: .line 1531
            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 1532
            iconst_1
            istore 4 /* fontStyle */
        36: .line 1533
            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 1534
            iconst_0
            istore 4 /* fontStyle */
        39: .line 1535
            goto 43
        40: .line 1539
      StackMap locals:
      StackMap stack:
            iload 8 /* sizeIndex */
            istore 9 /* styleIndex */
        41: .line 1540
            aload 0 /* str */
            iload 9 /* styleIndex */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            iload 7 /* sepChar */
            if_icmpne 43
        42: .line 1541
            iinc 9 /* styleIndex */ -1
        43: .line 1544
      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 1546
            goto 54
        45: .line 1547
      StackMap locals:
      StackMap stack:
            iload 10 /* strlen */
            istore 11 /* fontEnd */
        start local 11 // int fontEnd
        46: .line 1548
            iload 9 /* styleIndex */
            ifle 49
        47: .line 1549
            iload 9 /* styleIndex */
            istore 11 /* fontEnd */
        48: .line 1550
            goto 51
      StackMap locals: int
      StackMap stack:
        49: iload 8 /* sizeIndex */
            ifle 51
        50: .line 1551
            iload 8 /* sizeIndex */
            istore 11 /* fontEnd */
        51: .line 1553
      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 1554
            iinc 11 /* fontEnd */ -1
        53: .line 1556
      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 1559
      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 1583
            aconst_null
            astore 2 /* str */
        start local 2 // java.lang.String str
         1: .line 1585
            aload 0 /* nm */
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* str */
         2: .line 1586
            goto 4
      StackMap locals: java.lang.String java.awt.Font java.lang.String
      StackMap stack: java.lang.SecurityException
         3: pop
         4: .line 1588
      StackMap locals:
      StackMap stack:
            aload 2 /* str */
            ifnonnull 6
         5: .line 1589
            aload 1 /* font */
            areturn
         6: .line 1591
      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 1601
            aload 0 /* this */
            getfield java.awt.Font.hash:I
            ifne 5
         1: .line 1602
            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 1609
            aload 0 /* this */
            getfield java.awt.Font.nonIdentityTx:Z
            ifeq 5
         3: .line 1610
            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 1611
            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 1614
      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 1628
            aload 1 /* obj */
            aload 0 /* this */
            if_acmpne 2
         1: .line 1629
            iconst_1
            ireturn
         2: .line 1632
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            ifnull 18
         3: .line 1634
            aload 1 /* obj */
            checkcast java.awt.Font
            astore 2 /* font */
        start local 2 // java.awt.Font font
         4: .line 1635
            aload 0 /* this */
            getfield java.awt.Font.size:I
            aload 2 /* font */
            getfield java.awt.Font.size:I
            if_icmpne 18
         5: .line 1636
            aload 0 /* this */
            getfield java.awt.Font.style:I
            aload 2 /* font */
            getfield java.awt.Font.style:I
            if_icmpne 18
         6: .line 1637
            aload 0 /* this */
            getfield java.awt.Font.nonIdentityTx:Z
            aload 2 /* font */
            getfield java.awt.Font.nonIdentityTx:Z
            if_icmpne 18
         7: .line 1638
            aload 0 /* this */
            getfield java.awt.Font.hasLayoutAttributes:Z
            aload 2 /* font */
            getfield java.awt.Font.hasLayoutAttributes:Z
            if_icmpne 18
         8: .line 1639
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            aload 2 /* font */
            getfield java.awt.Font.pointSize:F
            fcmpl
            ifne 18
         9: .line 1640
            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 1648
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 15
        11: .line 1649
            aload 2 /* font */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 13
        12: .line 1650
            iconst_1
            ireturn
        13: .line 1652
      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 1655
      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 1659
      StackMap locals: java.awt.Font java.lang.Object
      StackMap stack: java.lang.ClassCastException
            pop
        18: .line 1662
      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 1677
            aload 0 /* this */
            invokevirtual java.awt.Font.isBold:()Z
            ifeq 5
         1: .line 1678
            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 1679
            goto 8
        end local 1 // java.lang.String strStyle
         5: .line 1680
      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 1683
      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 1684
            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 1683
            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 1715
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 9
         1: .line 1716
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            dup
            astore 2
            monitorenter
         2: .line 1718
            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 1719
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         4: .line 1720
            aload 0 /* this */
            aconst_null
            putfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
         5: .line 1716
            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 1723
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
        10: .line 1725
      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=4, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.io.ObjectInputStream s
         0: .line 1739
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 1740
            aload 0 /* this */
            getfield java.awt.Font.pointSize:F
            fconst_0
            fcmpl
            ifne 3
         2: .line 1741
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.Font.size:I
            i2f
            putfield java.awt.Font.pointSize:F
         3: .line 1752
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
            ifnull 19
         4: .line 1754
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.awt.Font.getAttributeValues:()Lsun/font/AttributeValues;
            putfield java.awt.Font.values:Lsun/font/AttributeValues;
         5: .line 1756
            aload 0 /* this */
            getfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
            invokestatic sun.font.AttributeValues.fromSerializableHashtable:(Ljava/util/Hashtable;)Lsun/font/AttributeValues;
         6: .line 1755
            astore 2 /* extras */
        start local 2 // sun.font.AttributeValues extras
         7: .line 1757
            aload 0 /* this */
            getfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
            invokestatic sun.font.AttributeValues.is16Hashtable:(Ljava/util/Hashtable;)Z
            ifne 9
         8: .line 1758
            aload 2 /* extras */
            invokevirtual sun.font.AttributeValues.unsetDefault:()V
         9: .line 1760
      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 1761
            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 1762
            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
        end local 2 // sun.font.AttributeValues extras
        12: .line 1763
            goto 18
      StackMap locals: java.awt.Font java.io.ObjectInputStream
      StackMap stack: java.lang.Throwable
        13: astore 2 /* t */
        start local 2 // java.lang.Throwable t
        14: .line 1764
            new java.io.IOException
            dup
            aload 2 /* t */
            invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Throwable t
        15: .line 1765
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
        16: .line 1766
            aload 0 /* this */
            aconst_null
            putfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
        17: .line 1767
            aload 3
            athrow
        18: .line 1766
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield java.awt.Font.fRequestedAttributes:Ljava/util/Hashtable;
        19: .line 1769
      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   20     0    this  Ljava/awt/Font;
            0   20     1       s  Ljava/io/ObjectInputStream;
            7   12     2  extras  Lsun/font/AttributeValues;
           14   15     2       t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           4    12      13  Class java.lang.Throwable
           4    15      15  any
    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 1779
            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 1789
            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 1809
            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 1819
            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 1833
            bipush 22
            anewarray java.text.AttributedCharacterIterator$Attribute
            dup
            iconst_0
         1: .line 1834
            getstatic java.awt.font.TextAttribute.FAMILY:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_1
         2: .line 1835
            getstatic java.awt.font.TextAttribute.WEIGHT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_2
         3: .line 1836
            getstatic java.awt.font.TextAttribute.WIDTH:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_3
         4: .line 1837
            getstatic java.awt.font.TextAttribute.POSTURE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_4
         5: .line 1838
            getstatic java.awt.font.TextAttribute.SIZE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            iconst_5
         6: .line 1839
            getstatic java.awt.font.TextAttribute.TRANSFORM:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 6
         7: .line 1840
            getstatic java.awt.font.TextAttribute.SUPERSCRIPT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 7
         8: .line 1841
            getstatic java.awt.font.TextAttribute.CHAR_REPLACEMENT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 8
         9: .line 1842
            getstatic java.awt.font.TextAttribute.FOREGROUND:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 9
        10: .line 1843
            getstatic java.awt.font.TextAttribute.BACKGROUND:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 10
        11: .line 1844
            getstatic java.awt.font.TextAttribute.UNDERLINE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 11
        12: .line 1845
            getstatic java.awt.font.TextAttribute.STRIKETHROUGH:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 12
        13: .line 1846
            getstatic java.awt.font.TextAttribute.RUN_DIRECTION:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 13
        14: .line 1847
            getstatic java.awt.font.TextAttribute.BIDI_EMBEDDING:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 14
        15: .line 1848
            getstatic java.awt.font.TextAttribute.JUSTIFICATION:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 15
        16: .line 1849
            getstatic java.awt.font.TextAttribute.INPUT_METHOD_HIGHLIGHT:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 16
        17: .line 1850
            getstatic java.awt.font.TextAttribute.INPUT_METHOD_UNDERLINE:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 17
        18: .line 1851
            getstatic java.awt.font.TextAttribute.SWAP_COLORS:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 18
        19: .line 1852
            getstatic java.awt.font.TextAttribute.NUMERIC_SHAPING:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 19
        20: .line 1853
            getstatic java.awt.font.TextAttribute.KERNING:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 20
        21: .line 1854
            getstatic java.awt.font.TextAttribute.LIGATURES:Ljava/awt/font/TextAttribute;
            aastore
            dup
            bipush 21
        22: .line 1855
            getstatic java.awt.font.TextAttribute.TRACKING:Ljava/awt/font/TextAttribute;
            aastore
        23: .line 1833
            astore 1 /* attributes */
        start local 1 // java.text.AttributedCharacterIterator$Attribute[] attributes
        24: .line 1858
            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 1870
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 2
         1: .line 1871
            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 1873
      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 1874
            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 1875
            iload 1 /* style */
            aload 3 /* newValues */
            invokestatic java.awt.Font.applyStyle:(ILsun/font/AttributeValues;)V
         7: .line 1876
            aload 3 /* newValues */
            fload 2 /* size */
            invokevirtual sun.font.AttributeValues.setSize:(F)V
         8: .line 1877
            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 1892
            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 1893
            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 1894
            iload 1 /* style */
            aload 3 /* newValues */
            invokestatic java.awt.Font.applyStyle:(ILsun/font/AttributeValues;)V
         5: .line 1895
            aload 2 /* trans */
            aload 3 /* newValues */
            invokestatic java.awt.Font.applyTransform:(Ljava/awt/geom/AffineTransform;Lsun/font/AttributeValues;)V
         6: .line 1896
            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 1907
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 2
         1: .line 1908
            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 1910
      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 1911
            aload 2 /* newValues */
            fload 1 /* size */
            invokevirtual sun.font.AttributeValues.setSize:(F)V
         4: .line 1912
            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 1926
            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 1927
            aload 1 /* trans */
            aload 2 /* newValues */
            invokestatic java.awt.Font.applyTransform:(Ljava/awt/geom/AffineTransform;Lsun/font/AttributeValues;)V
         2: .line 1928
            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 1939
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnonnull 2
         1: .line 1940
            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 1942
      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 1943
            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 1944
            iload 1 /* style */
            aload 2 /* newValues */
            invokestatic java.awt.Font.applyStyle:(ILsun/font/AttributeValues;)V
         7: .line 1945
            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 1959
            aload 1 /* attributes */
            ifnonnull 2
         1: .line 1960
            aload 0 /* this */
            areturn
         2: .line 1962
      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 1963
            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 1965
            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 1984
            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 2001
            iload 1 /* codePoint */
            invokestatic java.lang.Character.isValidCodePoint:(I)Z
            ifne 4
         1: .line 2002
            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 2003
            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 2002
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 2005
      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=3, locals=6, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.lang.String str
         0: .line 2026
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            astore 2 /* font2d */
        start local 2 // sun.font.Font2D font2d
         1: .line 2027
            aload 1 /* str */
            invokevirtual java.lang.String.length:()I
            istore 3 /* len */
        start local 3 // int len
         2: .line 2028
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 13
         4: .line 2029
      StackMap locals: sun.font.Font2D int int
      StackMap stack:
            aload 1 /* str */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         5: .line 2030
            aload 2 /* font2d */
            iload 5 /* c */
            invokevirtual sun.font.Font2D.canDisplay:(C)Z
            ifeq 7
         6: .line 2031
            goto 12
         7: .line 2033
      StackMap locals: int
      StackMap stack:
            iload 5 /* c */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifne 9
         8: .line 2034
            iload 4 /* i */
            ireturn
         9: .line 2036
      StackMap locals:
      StackMap stack:
            aload 2 /* font2d */
            aload 1 /* str */
            iload 4 /* i */
            invokevirtual java.lang.String.codePointAt:(I)I
            invokevirtual sun.font.Font2D.canDisplay:(I)Z
            ifne 11
        10: .line 2037
            iload 4 /* i */
            ireturn
        11: .line 2039
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
        end local 5 // char c
        12: .line 2028
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            iload 3 /* len */
            if_icmplt 4
        end local 4 // int i
        14: .line 2041
            iconst_m1
            ireturn
        end local 3 // int len
        end local 2 // sun.font.Font2D font2d
        end local 1 // java.lang.String str
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Ljava/awt/Font;
            0   15     1     str  Ljava/lang/String;
            1   15     2  font2d  Lsun/font/Font2D;
            2   15     3     len  I
            3   14     4       i  I
            5   12     5       c  C
    MethodParameters:
      Name  Flags
      str   

  public int canDisplayUpTo(char[], int, int);
    descriptor: ([CII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, 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 2064
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            astore 4 /* font2d */
        start local 4 // sun.font.Font2D font2d
         1: .line 2065
            iload 2 /* start */
            istore 5 /* i */
        start local 5 // int i
         2: goto 12
         3: .line 2066
      StackMap locals: sun.font.Font2D int
      StackMap stack:
            aload 1 /* text */
            iload 5 /* i */
            caload
            istore 6 /* c */
        start local 6 // char c
         4: .line 2067
            aload 4 /* font2d */
            iload 6 /* c */
            invokevirtual sun.font.Font2D.canDisplay:(C)Z
            ifeq 6
         5: .line 2068
            goto 11
         6: .line 2070
      StackMap locals: int
      StackMap stack:
            iload 6 /* c */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifne 8
         7: .line 2071
            iload 5 /* i */
            ireturn
         8: .line 2073
      StackMap locals:
      StackMap stack:
            aload 4 /* font2d */
            aload 1 /* text */
            iload 5 /* i */
            iload 3 /* limit */
            invokestatic java.lang.Character.codePointAt:([CII)I
            invokevirtual sun.font.Font2D.canDisplay:(I)Z
            ifne 10
         9: .line 2074
            iload 5 /* i */
            ireturn
        10: .line 2076
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
        end local 6 // char c
        11: .line 2065
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            iload 3 /* limit */
            if_icmplt 3
        end local 5 // int i
        13: .line 2078
            iconst_m1
            ireturn
        end local 4 // sun.font.Font2D font2d
        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   14     0    this  Ljava/awt/Font;
            0   14     1    text  [C
            0   14     2   start  I
            0   14     3   limit  I
            1   14     4  font2d  Lsun/font/Font2D;
            2   13     5       i  I
            4   11     6       c  C
    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=3, locals=8, 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 2099
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            astore 4 /* font2d */
        start local 4 // sun.font.Font2D font2d
         1: .line 2100
            aload 1 /* iter */
            iload 2 /* start */
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            istore 5 /* c */
        start local 5 // char c
         2: .line 2101
            iload 2 /* start */
            istore 6 /* i */
        start local 6 // int i
         3: goto 15
         4: .line 2102
      StackMap locals: sun.font.Font2D int int
      StackMap stack:
            aload 4 /* font2d */
            iload 5 /* c */
            invokevirtual sun.font.Font2D.canDisplay:(C)Z
            ifeq 6
         5: .line 2103
            goto 14
         6: .line 2105
      StackMap locals:
      StackMap stack:
            iload 5 /* c */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifne 8
         7: .line 2106
            iload 6 /* i */
            ireturn
         8: .line 2108
      StackMap locals:
      StackMap stack:
            aload 1 /* iter */
            invokeinterface java.text.CharacterIterator.next:()C
            istore 7 /* c2 */
        start local 7 // char c2
         9: .line 2110
            iload 7 /* c2 */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifne 11
        10: .line 2111
            iload 6 /* i */
            ireturn
        11: .line 2113
      StackMap locals: int
      StackMap stack:
            aload 4 /* font2d */
            iload 5 /* c */
            iload 7 /* c2 */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            invokevirtual sun.font.Font2D.canDisplay:(I)Z
            ifne 13
        12: .line 2114
            iload 6 /* i */
            ireturn
        13: .line 2116
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
        end local 7 // char c2
        14: .line 2101
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
            aload 1 /* iter */
            invokeinterface java.text.CharacterIterator.next:()C
            istore 5 /* c */
      StackMap locals:
      StackMap stack:
        15: iload 6 /* i */
            iload 3 /* limit */
            if_icmplt 4
        end local 6 // int i
        16: .line 2118
            iconst_m1
            ireturn
        end local 5 // char c
        end local 4 // sun.font.Font2D font2d
        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   17     0    this  Ljava/awt/Font;
            0   17     1    iter  Ljava/text/CharacterIterator;
            0   17     2   start  I
            0   17     3   limit  I
            1   17     4  font2d  Lsun/font/Font2D;
            2   17     5       c  C
            3   16     6       i  I
            9   14     7      c2  C
    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 2129
            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=4, args_size=2
        start local 0 // java.awt.Font this
        start local 1 // java.awt.font.FontRenderContext frc
         0: .line 2142
            aload 1 /* frc */
            ifnonnull 4
         1: .line 2143
            getstatic java.awt.RenderingHints.VALUE_TEXT_ANTIALIAS_OFF:Ljava/lang/Object;
            astore 2 /* aa */
        start local 2 // java.lang.Object aa
         2: .line 2144
            getstatic java.awt.RenderingHints.VALUE_FRACTIONALMETRICS_OFF:Ljava/lang/Object;
            astore 3 /* fm */
        start local 3 // java.lang.Object fm
         3: .line 2145
            goto 6
        end local 3 // java.lang.Object fm
        end local 2 // java.lang.Object aa
         4: .line 2146
      StackMap locals:
      StackMap stack:
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getAntiAliasingHint:()Ljava/lang/Object;
            astore 2 /* aa */
        start local 2 // java.lang.Object aa
         5: .line 2147
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getFractionalMetricsHint:()Ljava/lang/Object;
            astore 3 /* fm */
        start local 3 // java.lang.Object fm
         6: .line 2149
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.Font.getFont2D:()Lsun/font/Font2D;
            aload 0 /* this */
            getstatic java.awt.Font.identityTx:Ljava/awt/geom/AffineTransform;
            aload 2 /* aa */
            aload 3 /* fm */
            invokevirtual sun.font.Font2D.getItalicAngle:(Ljava/awt/Font;Ljava/awt/geom/AffineTransform;Ljava/lang/Object;Ljava/lang/Object;)F
            freturn
        end local 3 // java.lang.Object fm
        end local 2 // java.lang.Object aa
        end local 1 // java.awt.font.FontRenderContext frc
        end local 0 // java.awt.Font this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/awt/Font;
            0    7     1   frc  Ljava/awt/font/FontRenderContext;
            2    4     2    aa  Ljava/lang/Object;
            5    7     2    aa  Ljava/lang/Object;
            3    4     3    fm  Ljava/lang/Object;
            6    7     3    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 2164
            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 2169
            aconst_null
            astore 2 /* flm */
        start local 2 // sun.font.FontLineMetrics flm
         1: .line 2170
            aload 0 /* this */
            getfield java.awt.Font.flmref:Ljava/lang/ref/SoftReference;
            ifnull 4
         2: .line 2171
            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 2172
            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 2179
      StackMap locals: sun.font.FontLineMetrics
      StackMap stack:
            bipush 8
            newarray 6
            astore 3 /* metrics */
        start local 3 // float[] metrics
         5: .line 2180
            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 2181
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getAntiAliasingHint:()Ljava/lang/Object;
         7: .line 2182
            aload 1 /* frc */
            invokevirtual java.awt.font.FontRenderContext.getFractionalMetricsHint:()Ljava/lang/Object;
         8: .line 2183
            aload 3 /* metrics */
         9: .line 2180
            invokevirtual sun.font.Font2D.getFontMetrics:(Ljava/awt/Font;Ljava/awt/geom/AffineTransform;Ljava/lang/Object;Ljava/lang/Object;[F)V
        10: .line 2184
            aload 3 /* metrics */
            iconst_0
            faload
            fstore 4 /* ascent */
        start local 4 // float ascent
        11: .line 2185
            aload 3 /* metrics */
            iconst_1
            faload
            fstore 5 /* descent */
        start local 5 // float descent
        12: .line 2186
            aload 3 /* metrics */
            iconst_2
            faload
            fstore 6 /* leading */
        start local 6 // float leading
        13: .line 2187
            fconst_0
            fstore 7 /* ssOffset */
        start local 7 // float ssOffset
        14: .line 2188
            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 2189
            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 2190
            fload 4 /* ascent */
            fload 7 /* ssOffset */
            fsub
            fstore 4 /* ascent */
        17: .line 2191
            fload 5 /* descent */
            fload 7 /* ssOffset */
            fadd
            fstore 5 /* descent */
        18: .line 2193
      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 2195
            iconst_0
            istore 9 /* baselineIndex */
        start local 9 // int baselineIndex
        20: .line 2197
            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 2199
            aload 3 /* metrics */
            iconst_4
            faload
            fstore 11 /* strikethroughOffset */
        start local 11 // float strikethroughOffset
        22: .line 2200
            aload 3 /* metrics */
            iconst_5
            faload
            fstore 12 /* strikethroughThickness */
        start local 12 // float strikethroughThickness
        23: .line 2202
            aload 3 /* metrics */
            bipush 6
            faload
            fstore 13 /* underlineOffset */
        start local 13 // float underlineOffset
        24: .line 2203
            aload 3 /* metrics */
            bipush 7
            faload
            fstore 14 /* underlineThickness */
        start local 14 // float underlineThickness
        25: .line 2205
            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 2207
            aload 0 /* this */
            invokevirtual java.awt.Font.isTransformed:()Z
            ifeq 42
        27: .line 2208
            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 2209
            aload 16 /* ctx */
            ifnull 42
        29: .line 2210
            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 2211
            aload 17 /* pt */
            fconst_0
            fload 11 /* strikethroughOffset */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        31: .line 2212
            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 2213
            aload 17 /* pt */
            getfield java.awt.geom.Point2D$Float.y:F
            fstore 11 /* strikethroughOffset */
        33: .line 2214
            aload 17 /* pt */
            fconst_0
            fload 12 /* strikethroughThickness */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        34: .line 2215
            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 2216
            aload 17 /* pt */
            getfield java.awt.geom.Point2D$Float.y:F
            fstore 12 /* strikethroughThickness */
        36: .line 2217
            aload 17 /* pt */
            fconst_0
            fload 13 /* underlineOffset */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        37: .line 2218
            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 2219
            aload 17 /* pt */
            getfield java.awt.geom.Point2D$Float.y:F
            fstore 13 /* underlineOffset */
        39: .line 2220
            aload 17 /* pt */
            fconst_0
            fload 14 /* underlineThickness */
            invokevirtual java.awt.geom.Point2D$Float.setLocation:(FF)V
        40: .line 2221
            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 2222
            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 2225
      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 2226
            fload 13 /* underlineOffset */
            fload 7 /* ssOffset */
            fadd
            fstore 13 /* underlineOffset */
        44: .line 2228
            new sun.font.CoreMetrics
            dup
            fload 4 /* ascent */
            fload 5 /* descent */
            fload 6 /* leading */
            fload 8 /* height */
        45: .line 2229
            iload 9 /* baselineIndex */
            aload 10 /* baselineOffsets */
        46: .line 2230
            fload 11 /* strikethroughOffset */
            fload 12 /* strikethroughThickness */
        47: .line 2231
            fload 13 /* underlineOffset */
            fload 14 /* underlineThickness */
        48: .line 2232
            fload 7 /* ssOffset */
            fload 15 /* italicAngle */
        49: .line 2228
            invokespecial sun.font.CoreMetrics.<init>:(FFFFI[FFFFFFF)V
            astore 16 /* cm */
        start local 16 // sun.font.CoreMetrics cm
        50: .line 2234
            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 2235
            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 2238
      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 2250
            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 2251
            aload 3 /* flm */
            aload 1 /* str */
            invokevirtual java.lang.String.length:()I
            putfield sun.font.FontLineMetrics.numchars:I
         2: .line 2252
            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 2268
            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 2269
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            istore 6 /* numChars */
        start local 6 // int numChars
         2: .line 2270
            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 2271
            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 2287
            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 2288
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            istore 6 /* numChars */
        start local 6 // int numChars
         2: .line 2289
            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 2290
            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 2306
            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 2307
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            istore 6 /* numChars */
        start local 6 // int numChars
         2: .line 2308
            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 2309
            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 2334
            aload 1 /* str */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 3 /* array */
        start local 3 // char[] array
         1: .line 2335
            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 2368
            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 2369
            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 2403
            iload 2 /* beginIndex */
            ifge 2
         1: .line 2404
            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 2406
      StackMap locals:
      StackMap stack:
            iload 3 /* limit */
            aload 1 /* chars */
            arraylength
            if_icmple 4
         3: .line 2407
            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 2409
      StackMap locals:
      StackMap stack:
            iload 2 /* beginIndex */
            iload 3 /* limit */
            if_icmple 8
         5: .line 2410
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "range length: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 2411
            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 2410
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 2417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            ifnull 12
         9: .line 2418
            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 2419
            aload 0 /* this */
            getfield java.awt.Font.values:Lsun/font/AttributeValues;
            invokevirtual sun.font.AttributeValues.getBaselineTransform:()Ljava/awt/geom/AffineTransform;
            ifnull 12
        11: .line 2417
      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 2420
            iload 5 /* simple */
            ifeq 18
        15: .line 2421
            aload 1 /* chars */
            iload 2 /* beginIndex */
            iload 3 /* limit */
            invokestatic sun.font.FontUtilities.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 2424
      StackMap locals:
      StackMap stack:
            iload 5 /* simple */
            ifeq 23
        19: .line 2425
            new sun.font.StandardGlyphVector
            dup
            aload 0 /* this */
            aload 1 /* chars */
            iload 2 /* beginIndex */
        20: .line 2426
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            aload 4 /* frc */
        21: .line 2425
            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 2427
            aload 6 /* gv */
            invokevirtual java.awt.font.GlyphVector.getLogicalBounds:()Ljava/awt/geom/Rectangle2D;
            areturn
        end local 6 // java.awt.font.GlyphVector gv
        23: .line 2430
      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 2431
            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 2432
            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 2433
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getAscent:()F
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getDescent:()F
            fadd
        27: .line 2434
            aload 7 /* tl */
            invokevirtual java.awt.font.TextLayout.getLeading:()F
        28: .line 2433
            fadd
        29: .line 2432
            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 2470
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.getBeginIndex:()I
            istore 5 /* start */
        start local 5 // int start
         1: .line 2471
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.getEndIndex:()I
            istore 6 /* end */
        start local 6 // int end
         2: .line 2473
            iload 2 /* beginIndex */
            iload 5 /* start */
            if_icmpge 4
         3: .line 2474
            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 2476
      StackMap locals: int int
      StackMap stack:
            iload 3 /* limit */
            iload 6 /* end */
            if_icmple 6
         5: .line 2477
            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 2479
      StackMap locals:
      StackMap stack:
            iload 2 /* beginIndex */
            iload 3 /* limit */
            if_icmple 10
         7: .line 2480
            new java.lang.IndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "range length: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         8: .line 2481
            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 2480
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 2484
      StackMap locals:
      StackMap stack:
            iload 3 /* limit */
            iload 2 /* beginIndex */
            isub
            newarray 5
            astore 7 /* arr */
        start local 7 // char[] arr
        11: .line 2486
            aload 1 /* ci */
            iload 2 /* beginIndex */
            invokeinterface java.text.CharacterIterator.setIndex:(I)C
            pop
        12: .line 2487
            iconst_0
            istore 8 /* idx */
        start local 8 // int idx
        13: goto 17
        14: .line 2488
      StackMap locals: char[] int
      StackMap stack:
            aload 7 /* arr */
            iload 8 /* idx */
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.current:()C
            castore
        15: .line 2489
            aload 1 /* ci */
            invokeinterface java.text.CharacterIterator.next:()C
            pop
        16: .line 2487
            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 2492
            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 2505
            iconst_4
            newarray 6
            astore 2 /* metrics */
        start local 2 // float[] metrics
         1: .line 2507
            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 2509
            new java.awt.geom.Rectangle2D$Float
            dup
            fconst_0
            aload 2 /* metrics */
            iconst_0
            faload
            fneg
         3: .line 2510
            aload 2 /* metrics */
            iconst_3
            faload
         4: .line 2511
            aload 2 /* metrics */
            iconst_0
            faload
            aload 2 /* metrics */
            iconst_1
            faload
            fadd
            aload 2 /* metrics */
            iconst_2
            faload
            fadd
         5: .line 2509
            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 2530
            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 2549
            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 2569
            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 2589
            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 2640
            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 2641
            aload 6 /* gl */
            aload 0 /* this */
            aload 1 /* frc */
            aload 2 /* text */
         2: .line 2642
            iload 3 /* start */
            iload 4 /* limit */
            iload 3 /* start */
            isub
            iload 5 /* flags */
            aconst_null
         3: .line 2641
            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 2643
            aload 6 /* gl */
            invokestatic sun.font.GlyphLayout.done:(Lsun/font/GlyphLayout;)V
         5: .line 2644
            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 2673
            aload 0 /* trans */
            ifnonnull 2
         1: .line 2674
            new java.lang.IllegalArgumentException
            dup
            ldc "transform must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 2676
      StackMap locals:
      StackMap stack:
            aload 1 /* values */
            aload 0 /* trans */
            invokevirtual sun.font.AttributeValues.setTransform:(Ljava/awt/geom/AffineTransform;)V
         3: .line 2677
            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 2681
            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 2683
            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 2684
            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
}
SourceFile: "Font.java"
NestMembers:
  java.awt.Font$1  java.awt.Font$2  java.awt.Font$3  java.awt.Font$FontAccessImpl
InnerClasses:
  java.awt.Font$1
  java.awt.Font$2
  java.awt.Font$3
  private FontAccessImpl = java.awt.Font$FontAccessImpl of java.awt.Font
  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