public abstract class sun.font.SunFontManager implements sun.java2d.FontSupport, sun.font.FontManagerForSGE
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: sun.font.SunFontManager
  super_class: java.lang.Object
{
  private static sun.font.Font2DHandle FONT_HANDLE_NULL;
    descriptor: Lsun/font/Font2DHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

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

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

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

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

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

  protected static final int CHANNELPOOLSIZE;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 20

  protected sun.font.FileFont[] fontFileCache;
    descriptor: [Lsun/font/FileFont;
    flags: (0x0004) ACC_PROTECTED

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

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

  private sun.font.CompositeFont[] compFonts;
    descriptor: [Lsun/font/CompositeFont;
    flags: (0x0002) ACC_PRIVATE

  private java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.CompositeFont> compositeFonts;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/CompositeFont;>;

  private java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.PhysicalFont> physicalFonts;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/PhysicalFont;>;

  private java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.PhysicalFont> registeredFonts;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/PhysicalFont;>;

  protected java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.Font2D> fullNameToFont;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;

  private java.util.HashMap<java.lang.String, sun.font.TrueTypeFont> localeFullNamesToFont;
    descriptor: Ljava/util/HashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/HashMap<Ljava/lang/String;Lsun/font/TrueTypeFont;>;

  private sun.font.PhysicalFont defaultPhysicalFont;
    descriptor: Lsun/font/PhysicalFont;
    flags: (0x0002) ACC_PRIVATE

  static boolean longAddresses;
    descriptor: Z
    flags: (0x0008) ACC_STATIC

  private boolean loaded1dot0Fonts;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  boolean loadedAllFonts;
    descriptor: Z
    flags: (0x0000) 

  boolean loadedAllFontFiles;
    descriptor: Z
    flags: (0x0000) 

  java.lang.String[] jreOtherFontFiles;
    descriptor: [Ljava/lang/String;
    flags: (0x0000) 

  boolean noOtherJREFontFiles;
    descriptor: Z
    flags: (0x0000) 

  public static java.lang.String jreLibDirName;
    descriptor: Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC

  public static java.lang.String jreFontDirName;
    descriptor: Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC

  private static java.util.HashSet<java.lang.String> missingFontFiles;
    descriptor: Ljava/util/HashSet;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: Ljava/util/HashSet<Ljava/lang/String;>;

  private java.lang.String defaultFontName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String defaultFontFileName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  protected java.util.HashSet<java.lang.String> registeredFontFiles;
    descriptor: Ljava/util/HashSet;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/HashSet<Ljava/lang/String;>;

  private java.util.ArrayList<java.lang.String> badFonts;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Ljava/lang/String;>;

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

  private sun.awt.FontConfiguration fontConfig;
    descriptor: Lsun/awt/FontConfiguration;
    flags: (0x0002) ACC_PRIVATE

  private boolean discoveredAllFonts;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private static final java.io.FilenameFilter ttFilter;
    descriptor: Ljava/io/FilenameFilter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.io.FilenameFilter t1Filter;
    descriptor: Ljava/io/FilenameFilter;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.awt.Font[] allFonts;
    descriptor: [Ljava/awt/Font;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String[] allFamilies;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Locale lastDefaultLocale;
    descriptor: Ljava/util/Locale;
    flags: (0x0002) ACC_PRIVATE

  public static boolean noType1Font;
    descriptor: Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC

  private static java.lang.String[] STR_ARRAY;
    descriptor: [Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private boolean usePlatformFontMetrics;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private static int maxSoftRefCnt;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.SunFontManager$FontRegistrationInfo> deferredFontFiles;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/SunFontManager$FontRegistrationInfo;>;

  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.Font2DHandle> initialisedFonts;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2DHandle;>;

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

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

  private java.util.HashMap<java.lang.String, java.util.ArrayList<java.lang.String>> familyToFontListMap;
    descriptor: Ljava/util/HashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/util/ArrayList<Ljava/lang/String;>;>;

  private java.lang.String[] pathDirs;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private boolean haveCheckedUnreferencedFontFiles;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  static java.util.HashMap<java.lang.String, sun.font.SunFontManager$FamilyDescription> platformFontMap;
    descriptor: Ljava/util/HashMap;
    flags: (0x0008) ACC_STATIC
    Signature: Ljava/util/HashMap<Ljava/lang/String;Lsun/font/SunFontManager$FamilyDescription;>;

  private java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.Font2D> fontNameCache;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;

  java.lang.Thread fileCloser;
    descriptor: Ljava/lang/Thread;
    flags: (0x0000) 

  java.util.Vector<java.io.File> tmpFontFiles;
    descriptor: Ljava/util/Vector;
    flags: (0x0000) 
    Signature: Ljava/util/Vector<Ljava/io/File;>;

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

  private boolean _usingAlternateComposites;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private static boolean gAltJAFont;
    descriptor: Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private boolean gLocalePref;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean gPropPref;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private static java.util.HashSet<java.lang.String> installedNames;
    descriptor: Ljava/util/HashSet;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: Ljava/util/HashSet<Ljava/lang/String;>;

  private static final java.lang.Object regFamilyLock;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.util.Hashtable<java.lang.String, sun.font.FontFamily> createdByFamilyName;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;

  private java.util.Hashtable<java.lang.String, sun.font.Font2D> createdByFullName;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;

  private boolean fontsAreRegistered;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private static java.util.Locale systemLocale;
    descriptor: Ljava/util/Locale;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 131
            new sun.font.Font2DHandle
            dup
            aconst_null
            invokespecial sun.font.Font2DHandle.<init>:(Lsun/font/Font2D;)V
            putstatic sun.font.SunFontManager.FONT_HANDLE_NULL:Lsun/font/Font2DHandle;
         1: .line 196
            aconst_null
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         2: .line 221
            new sun.font.SunFontManager$TTFilter
            dup
            invokespecial sun.font.SunFontManager$TTFilter.<init>:()V
            putstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         3: .line 222
            new sun.font.SunFontManager$T1Filter
            dup
            invokespecial sun.font.SunFontManager$T1Filter.<init>:()V
            putstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         4: .line 231
            iconst_0
            anewarray java.lang.String
            putstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
         5: .line 265
            bipush 10
            putstatic sun.font.SunFontManager.maxSoftRefCnt:I
         6: .line 268
            new sun.font.SunFontManager$1
            dup
            invokespecial sun.font.SunFontManager$1.<init>:()V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         7: .line 2612
            iconst_0
            putstatic sun.font.SunFontManager.gAltJAFont:Z
         8: .line 2686
            aconst_null
            putstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
         9: .line 2706
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.regFamilyLock:Ljava/lang/Object;
        10: .line 3496
            aconst_null
            putstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static sun.font.SunFontManager getInstance();
    descriptor: ()Lsun/font/SunFontManager;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 248
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 0 /* fm */
        start local 0 // sun.font.FontManager fm
         1: .line 249
            aload 0 /* fm */
            checkcast sun.font.SunFontManager
            areturn
        end local 0 // sun.font.FontManager fm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    2     0    fm  Lsun/font/FontManager;

  public java.io.FilenameFilter getTrueTypeFilter();
    descriptor: ()Ljava/io/FilenameFilter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 253
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  public java.io.FilenameFilter getType1Filter();
    descriptor: ()Ljava/io/FilenameFilter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 257
            getstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  public static final java.lang.String getJDKFontDir();
    descriptor: ()Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=0, args_size=0
         0: .line 297
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public sun.font.TrueTypeFont getEUDCFont();
    descriptor: ()Lsun/font/TrueTypeFont;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 302
            aconst_null
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

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

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 308
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 149
            aload 0 /* this */
            bipush 20
            anewarray sun.font.FileFont
            putfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
         2: .line 151
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.lastPoolIndex:I
         3: .line 162
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.maxCompFont:I
         4: .line 163
            aload 0 /* this */
            bipush 20
            anewarray sun.font.CompositeFont
            putfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
         5: .line 165
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.compositeFonts:Ljava/util/concurrent/ConcurrentHashMap;
         6: .line 167
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
         7: .line 169
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
         8: .line 177
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.fullNameToFont:Ljava/util/concurrent/ConcurrentHashMap;
         9: .line 188
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loaded1dot0Fonts:Z
        10: .line 189
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFonts:Z
        11: .line 190
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
        12: .line 192
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        13: .line 199
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
        14: .line 216
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.discoveredAllFonts:Z
        15: .line 237
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        16: .line 780
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
        17: .line 782
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.initialisedFonts:Ljava/util/concurrent/ConcurrentHashMap;
        18: .line 1100
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        19: .line 1106
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        20: .line 1113
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        21: .line 1116
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
        22: .line 1880
            aload 0 /* this */
        23: .line 1881
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
        24: .line 2215
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
        25: .line 2216
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        26: .line 2218
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.createdFontCount:I
        27: .line 2610
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        28: .line 2613
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gLocalePref:Z
        29: .line 2614
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gPropPref:Z
        30: .line 2709
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        31: .line 309
            new sun.font.SunFontManager$2
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$2.<init>:(Lsun/font/SunFontManager;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        32: .line 450
            new sun.font.SunFontManager$3
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$3.<init>:(Lsun/font/SunFontManager;)V
        33: .line 449
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 1 /* platformFont */
        start local 1 // boolean platformFont
        34: .line 458
            iload 1 /* platformFont */
            ifeq 40
        35: .line 459
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        36: .line 460
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Enabling platform font metrics for win32. This is an unsupported option."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        37: .line 461
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "This yields incorrect composite font metrics as reported by 1.1.x releases."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        38: .line 462
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "It is appropriate only for use by applications which do not use any Java 2"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        39: .line 463
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "functionality. This property will be removed in a later release."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        40: .line 465
      StackMap locals: sun.font.SunFontManager int
      StackMap stack:
            return
        end local 1 // boolean platformFont
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   41     0          this  Lsun/font/SunFontManager;
           34   41     1  platformFont  Z

  public sun.font.Font2DHandle getNewComposite(java.lang.String, int, sun.font.Font2DHandle);
    descriptor: (Ljava/lang/String;ILsun/font/Font2DHandle;)Lsun/font/Font2DHandle;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String family
        start local 2 // int style
        start local 3 // sun.font.Font2DHandle handle
         0: .line 470
            aload 3 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifne 2
         1: .line 471
            aload 3 /* handle */
            areturn
         2: .line 474
      StackMap locals:
      StackMap stack:
            aload 3 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            checkcast sun.font.CompositeFont
            astore 4 /* oldComp */
        start local 4 // sun.font.CompositeFont oldComp
         3: .line 475
            aload 4 /* oldComp */
            iconst_0
            invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
            astore 5 /* oldFont */
        start local 5 // sun.font.PhysicalFont oldFont
         4: .line 477
            aload 1 /* family */
            ifnonnull 6
         5: .line 478
            aload 5 /* oldFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            astore 1 /* family */
         6: .line 480
      StackMap locals: sun.font.CompositeFont sun.font.PhysicalFont
      StackMap stack:
            iload 2 /* style */
            iconst_m1
            if_icmpne 8
         7: .line 481
            aload 4 /* oldComp */
            invokevirtual sun.font.CompositeFont.getStyle:()I
            istore 2 /* style */
         8: .line 484
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* family */
            iload 2 /* style */
            iconst_0
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            astore 6 /* newFont */
        start local 6 // sun.font.Font2D newFont
         9: .line 485
            aload 6 /* newFont */
            instanceof sun.font.PhysicalFont
            ifne 11
        10: .line 486
            aload 5 /* oldFont */
            astore 6 /* newFont */
        11: .line 488
      StackMap locals: sun.font.Font2D
      StackMap stack:
            aload 6 /* newFont */
            checkcast sun.font.PhysicalFont
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
        12: .line 490
            aload 0 /* this */
            ldc "dialog"
            iload 2 /* style */
            iconst_0
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            checkcast sun.font.CompositeFont
        13: .line 489
            astore 8 /* dialog2D */
        start local 8 // sun.font.CompositeFont dialog2D
        14: .line 491
            aload 8 /* dialog2D */
            ifnonnull 16
        15: .line 492
            aload 3 /* handle */
            areturn
        16: .line 494
      StackMap locals: sun.font.PhysicalFont sun.font.CompositeFont
      StackMap stack:
            new sun.font.CompositeFont
            dup
            aload 7 /* physicalFont */
            aload 8 /* dialog2D */
            invokespecial sun.font.CompositeFont.<init>:(Lsun/font/PhysicalFont;Lsun/font/CompositeFont;)V
            astore 9 /* compFont */
        start local 9 // sun.font.CompositeFont compFont
        17: .line 495
            new sun.font.Font2DHandle
            dup
            aload 9 /* compFont */
            invokespecial sun.font.Font2DHandle.<init>:(Lsun/font/Font2D;)V
            astore 10 /* newHandle */
        start local 10 // sun.font.Font2DHandle newHandle
        18: .line 496
            aload 10 /* newHandle */
            areturn
        end local 10 // sun.font.Font2DHandle newHandle
        end local 9 // sun.font.CompositeFont compFont
        end local 8 // sun.font.CompositeFont dialog2D
        end local 7 // sun.font.PhysicalFont physicalFont
        end local 6 // sun.font.Font2D newFont
        end local 5 // sun.font.PhysicalFont oldFont
        end local 4 // sun.font.CompositeFont oldComp
        end local 3 // sun.font.Font2DHandle handle
        end local 2 // int style
        end local 1 // java.lang.String family
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lsun/font/SunFontManager;
            0   19     1        family  Ljava/lang/String;
            0   19     2         style  I
            0   19     3        handle  Lsun/font/Font2DHandle;
            3   19     4       oldComp  Lsun/font/CompositeFont;
            4   19     5       oldFont  Lsun/font/PhysicalFont;
            9   19     6       newFont  Lsun/font/Font2D;
           12   19     7  physicalFont  Lsun/font/PhysicalFont;
           14   19     8      dialog2D  Lsun/font/CompositeFont;
           17   19     9      compFont  Lsun/font/CompositeFont;
           18   19    10     newHandle  Lsun/font/Font2DHandle;
    MethodParameters:
        Name  Flags
      family  
      style   
      handle  

  protected void registerCompositeFont(java.lang.String, java.lang.String[], java.lang.String[], int, int[], int[], boolean);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=10, args_size=8
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String compositeName
        start local 2 // java.lang.String[] componentFileNames
        start local 3 // java.lang.String[] componentNames
        start local 4 // int numMetricsSlots
        start local 5 // int[] exclusionRanges
        start local 6 // int[] exclusionMaxIndex
        start local 7 // boolean defer
         0: .line 507
            new sun.font.CompositeFont
            dup
            aload 1 /* compositeName */
         1: .line 508
            aload 2 /* componentFileNames */
         2: .line 509
            aload 3 /* componentNames */
         3: .line 510
            iload 4 /* numMetricsSlots */
         4: .line 511
            aload 5 /* exclusionRanges */
         5: .line 512
            aload 6 /* exclusionMaxIndex */
            iload 7 /* defer */
            aload 0 /* this */
         6: .line 507
            invokespecial sun.font.CompositeFont.<init>:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLsun/font/SunFontManager;)V
            astore 8 /* cf */
        start local 8 // sun.font.CompositeFont cf
         7: .line 513
            aload 0 /* this */
            aload 8 /* cf */
            iconst_2
            invokevirtual sun.font.SunFontManager.addCompositeToFontList:(Lsun/font/CompositeFont;I)V
         8: .line 514
            aload 0 /* this */
            getfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
            dup
            astore 9
            monitorenter
         9: .line 515
            aload 0 /* this */
            getfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
            aload 0 /* this */
            dup
            getfield sun.font.SunFontManager.maxCompFont:I
            dup_x1
            iconst_1
            iadd
            putfield sun.font.SunFontManager.maxCompFont:I
            aload 8 /* cf */
            aastore
        10: .line 514
            aload 9
            monitorexit
        11: goto 14
      StackMap locals: sun.font.SunFontManager java.lang.String java.lang.String[] java.lang.String[] int int[] int[] int sun.font.CompositeFont sun.font.CompositeFont[]
      StackMap stack: java.lang.Throwable
        12: aload 9
            monitorexit
        13: athrow
        14: .line 517
      StackMap locals:
      StackMap stack:
            return
        end local 8 // sun.font.CompositeFont cf
        end local 7 // boolean defer
        end local 6 // int[] exclusionMaxIndex
        end local 5 // int[] exclusionRanges
        end local 4 // int numMetricsSlots
        end local 3 // java.lang.String[] componentNames
        end local 2 // java.lang.String[] componentFileNames
        end local 1 // java.lang.String compositeName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   15     0                this  Lsun/font/SunFontManager;
            0   15     1       compositeName  Ljava/lang/String;
            0   15     2  componentFileNames  [Ljava/lang/String;
            0   15     3      componentNames  [Ljava/lang/String;
            0   15     4     numMetricsSlots  I
            0   15     5     exclusionRanges  [I
            0   15     6   exclusionMaxIndex  [I
            0   15     7               defer  Z
            7   15     8                  cf  Lsun/font/CompositeFont;
      Exception table:
        from    to  target  type
           9    11      12  any
          12    13      12  any
    MethodParameters:
                    Name  Flags
      compositeName       
      componentFileNames  
      componentNames      
      numMetricsSlots     
      exclusionRanges     
      exclusionMaxIndex   
      defer               

  protected static void registerCompositeFont(java.lang.String, java.lang.String[], java.lang.String[], int, int[], int[], boolean, java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.Font2D>);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLjava/util/concurrent/ConcurrentHashMap;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=10, locals=10, args_size=8
        start local 0 // java.lang.String compositeName
        start local 1 // java.lang.String[] componentFileNames
        start local 2 // java.lang.String[] componentNames
        start local 3 // int numMetricsSlots
        start local 4 // int[] exclusionRanges
        start local 5 // int[] exclusionMaxIndex
        start local 6 // boolean defer
        start local 7 // java.util.concurrent.ConcurrentHashMap altNameCache
         0: .line 533
            new sun.font.CompositeFont
            dup
            aload 0 /* compositeName */
         1: .line 534
            aload 1 /* componentFileNames */
         2: .line 535
            aload 2 /* componentNames */
         3: .line 536
            iload 3 /* numMetricsSlots */
         4: .line 537
            aload 4 /* exclusionRanges */
         5: .line 538
            aload 5 /* exclusionMaxIndex */
            iload 6 /* defer */
         6: .line 539
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
         7: .line 533
            invokespecial sun.font.CompositeFont.<init>:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLsun/font/SunFontManager;)V
            astore 8 /* cf */
        start local 8 // sun.font.CompositeFont cf
         8: .line 554
            aload 7 /* altNameCache */
            aload 0 /* compositeName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 9 /* oldFont */
        start local 9 // sun.font.Font2D oldFont
         9: .line 555
            aload 9 /* oldFont */
            instanceof sun.font.CompositeFont
            ifeq 11
        10: .line 556
            aload 9 /* oldFont */
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
            aload 8 /* cf */
            putfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
        11: .line 558
      StackMap locals: sun.font.CompositeFont sun.font.Font2D
      StackMap stack:
            aload 7 /* altNameCache */
            aload 0 /* compositeName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            aload 8 /* cf */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 559
            return
        end local 9 // sun.font.Font2D oldFont
        end local 8 // sun.font.CompositeFont cf
        end local 7 // java.util.concurrent.ConcurrentHashMap altNameCache
        end local 6 // boolean defer
        end local 5 // int[] exclusionMaxIndex
        end local 4 // int[] exclusionRanges
        end local 3 // int numMetricsSlots
        end local 2 // java.lang.String[] componentNames
        end local 1 // java.lang.String[] componentFileNames
        end local 0 // java.lang.String compositeName
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   13     0       compositeName  Ljava/lang/String;
            0   13     1  componentFileNames  [Ljava/lang/String;
            0   13     2      componentNames  [Ljava/lang/String;
            0   13     3     numMetricsSlots  I
            0   13     4     exclusionRanges  [I
            0   13     5   exclusionMaxIndex  [I
            0   13     6               defer  Z
            0   13     7        altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;
            8   13     8                  cf  Lsun/font/CompositeFont;
            9   13     9             oldFont  Lsun/font/Font2D;
    Signature: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLjava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;)V
    MethodParameters:
                    Name  Flags
      compositeName       
      componentFileNames  
      componentNames      
      numMetricsSlots     
      exclusionRanges     
      exclusionMaxIndex   
      defer               
      altNameCache        

  private void addCompositeToFontList(sun.font.CompositeFont, int);
    descriptor: (Lsun/font/CompositeFont;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // sun.font.CompositeFont f
        start local 2 // int rank
         0: .line 563
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 4
         1: .line 564
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "Add to Family "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* f */
            getfield sun.font.CompositeFont.familyName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 565
            ldc ", Font "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* f */
            getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " rank="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* rank */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 564
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         4: .line 567
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.CompositeFont.setRank:(I)V
         5: .line 568
            aload 0 /* this */
            getfield sun.font.SunFontManager.compositeFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* f */
            getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
            aload 1 /* f */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 569
            aload 0 /* this */
            getfield sun.font.SunFontManager.fullNameToFont:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* f */
            getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            aload 1 /* f */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 571
            aload 1 /* f */
            getfield sun.font.CompositeFont.familyName:Ljava/lang/String;
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 3 /* family */
        start local 3 // sun.font.FontFamily family
         8: .line 572
            aload 3 /* family */
            ifnonnull 10
         9: .line 573
            new sun.font.FontFamily
            dup
            aload 1 /* f */
            getfield sun.font.CompositeFont.familyName:Ljava/lang/String;
            iconst_1
            iload 2 /* rank */
            invokespecial sun.font.FontFamily.<init>:(Ljava/lang/String;ZI)V
            astore 3 /* family */
        10: .line 575
      StackMap locals: sun.font.FontFamily
      StackMap stack:
            aload 3 /* family */
            aload 1 /* f */
            aload 1 /* f */
            getfield sun.font.CompositeFont.style:I
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        11: .line 576
            return
        end local 3 // sun.font.FontFamily family
        end local 2 // int rank
        end local 1 // sun.font.CompositeFont f
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lsun/font/SunFontManager;
            0   12     1       f  Lsun/font/CompositeFont;
            0   12     2    rank  I
            8   12     3  family  Lsun/font/FontFamily;
    MethodParameters:
      Name  Flags
      f     
      rank  

  protected sun.font.PhysicalFont addToFontList(sun.font.PhysicalFont, int);
    descriptor: (Lsun/font/PhysicalFont;I)Lsun/font/PhysicalFont;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // sun.font.PhysicalFont f
        start local 2 // int rank
         0: .line 613
            aload 1 /* f */
            getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
            astore 3 /* fontName */
        start local 3 // java.lang.String fontName
         1: .line 614
            aload 1 /* f */
            getfield sun.font.PhysicalFont.familyName:Ljava/lang/String;
            astore 4 /* familyName */
        start local 4 // java.lang.String familyName
         2: .line 615
            aload 3 /* fontName */
            ifnull 3
            aload 3 /* fontName */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 4
         3: .line 616
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aconst_null
            areturn
         4: .line 618
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.compositeFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* fontName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.containsKey:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 620
            aconst_null
            areturn
         6: .line 622
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.PhysicalFont.setRank:(I)V
         7: .line 623
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* fontName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.containsKey:(Ljava/lang/Object;)Z
            ifne 21
         8: .line 624
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 12
         9: .line 625
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "Add to Family "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* familyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 626
            ldc ", Font "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* fontName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " rank="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* rank */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 625
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        12: .line 628
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* fontName */
            aload 1 /* f */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 629
            aload 4 /* familyName */
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 5 /* family */
        start local 5 // sun.font.FontFamily family
        14: .line 630
            aload 5 /* family */
            ifnonnull 18
        15: .line 631
            new sun.font.FontFamily
            dup
            aload 4 /* familyName */
            iconst_0
            iload 2 /* rank */
            invokespecial sun.font.FontFamily.<init>:(Ljava/lang/String;ZI)V
            astore 5 /* family */
        16: .line 632
            aload 5 /* family */
            aload 1 /* f */
            aload 1 /* f */
            getfield sun.font.PhysicalFont.style:I
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        17: .line 633
            goto 19
        18: .line 634
      StackMap locals: sun.font.FontFamily
      StackMap stack:
            aload 5 /* family */
            aload 1 /* f */
            aload 1 /* f */
            getfield sun.font.PhysicalFont.style:I
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        19: .line 636
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fullNameToFont:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* fontName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            aload 1 /* f */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 637
            aload 1 /* f */
            areturn
        end local 5 // sun.font.FontFamily family
        21: .line 639
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            astore 5 /* newFont */
        start local 5 // sun.font.PhysicalFont newFont
        22: .line 640
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* fontName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.PhysicalFont
            astore 6 /* oldFont */
        start local 6 // sun.font.PhysicalFont oldFont
        23: .line 641
            aload 6 /* oldFont */
            ifnonnull 25
        24: .line 642
            aconst_null
            areturn
        25: .line 647
      StackMap locals: sun.font.PhysicalFont sun.font.PhysicalFont
      StackMap stack:
            aload 6 /* oldFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iload 2 /* rank */
            if_icmplt 64
        26: .line 667
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.mapper:Lsun/font/CharToGlyphMapper;
            ifnull 28
            iload 2 /* rank */
            iconst_2
            if_icmple 28
        27: .line 668
            aload 6 /* oldFont */
            areturn
        28: .line 676
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iload 2 /* rank */
            if_icmpne 36
        29: .line 677
            aload 6 /* oldFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        30: .line 678
            aload 5 /* newFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        31: .line 679
            aload 6 /* oldFont */
            checkcast sun.font.TrueTypeFont
            astore 7 /* oldTTFont */
        start local 7 // sun.font.TrueTypeFont oldTTFont
        32: .line 680
            aload 5 /* newFont */
            checkcast sun.font.TrueTypeFont
            astore 8 /* newTTFont */
        start local 8 // sun.font.TrueTypeFont newTTFont
        33: .line 681
            aload 7 /* oldTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            aload 8 /* newTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            if_icmplt 36
        34: .line 682
            aload 6 /* oldFont */
            areturn
        end local 8 // sun.font.TrueTypeFont newTTFont
        end local 7 // sun.font.TrueTypeFont oldTTFont
        35: .line 685
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        36: .line 697
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 45
        37: .line 698
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 44
        38: .line 699
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        39: .line 700
            new java.lang.StringBuilder
            dup
            ldc "Unexpected attempt to replace a JRE  font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        40: .line 701
            aload 3 /* fontName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        41: .line 702
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 703
            ldc " with "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* newFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        43: .line 700
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        44: .line 705
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        45: .line 708
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 52
        46: .line 709
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        47: .line 710
            new java.lang.StringBuilder
            dup
            ldc "Replace in Family "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* familyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        48: .line 711
            ldc ",Font "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* fontName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " new rank="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* rank */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        49: .line 712
            ldc " from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        50: .line 713
            ldc " with "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* newFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        51: .line 710
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        52: .line 715
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* oldFont */
            aload 5 /* newFont */
            invokevirtual sun.font.SunFontManager.replaceFont:(Lsun/font/PhysicalFont;Lsun/font/PhysicalFont;)V
        53: .line 716
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* fontName */
            aload 5 /* newFont */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        54: .line 717
            aload 0 /* this */
            getfield sun.font.SunFontManager.fullNameToFont:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* fontName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
        55: .line 718
            aload 5 /* newFont */
        56: .line 717
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 720
            aload 4 /* familyName */
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 7 /* family */
        start local 7 // sun.font.FontFamily family
        58: .line 721
            aload 7 /* family */
            ifnonnull 62
        59: .line 722
            new sun.font.FontFamily
            dup
            aload 4 /* familyName */
            iconst_0
            iload 2 /* rank */
            invokespecial sun.font.FontFamily.<init>:(Ljava/lang/String;ZI)V
            astore 7 /* family */
        60: .line 723
            aload 7 /* family */
            aload 5 /* newFont */
            aload 5 /* newFont */
            getfield sun.font.PhysicalFont.style:I
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        61: .line 724
            goto 63
        62: .line 725
      StackMap locals: sun.font.FontFamily
      StackMap stack:
            aload 7 /* family */
            aload 5 /* newFont */
            aload 5 /* newFont */
            getfield sun.font.PhysicalFont.style:I
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        63: .line 727
      StackMap locals:
      StackMap stack:
            aload 5 /* newFont */
            areturn
        end local 7 // sun.font.FontFamily family
        64: .line 729
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        end local 6 // sun.font.PhysicalFont oldFont
        end local 5 // sun.font.PhysicalFont newFont
        end local 4 // java.lang.String familyName
        end local 3 // java.lang.String fontName
        end local 2 // int rank
        end local 1 // sun.font.PhysicalFont f
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   65     0        this  Lsun/font/SunFontManager;
            0   65     1           f  Lsun/font/PhysicalFont;
            0   65     2        rank  I
            1   65     3    fontName  Ljava/lang/String;
            2   65     4  familyName  Ljava/lang/String;
           14   21     5      family  Lsun/font/FontFamily;
           22   65     5     newFont  Lsun/font/PhysicalFont;
           23   65     6     oldFont  Lsun/font/PhysicalFont;
           32   35     7   oldTTFont  Lsun/font/TrueTypeFont;
           33   35     8   newTTFont  Lsun/font/TrueTypeFont;
           58   64     7      family  Lsun/font/FontFamily;
    MethodParameters:
      Name  Flags
      f     
      rank  

  public sun.font.Font2D[] getRegisteredFonts();
    descriptor: ()[Lsun/font/Font2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 735
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 1 /* physFonts */
        start local 1 // sun.font.PhysicalFont[] physFonts
         1: .line 736
            aload 0 /* this */
            getfield sun.font.SunFontManager.maxCompFont:I
            istore 2 /* mcf */
        start local 2 // int mcf
         2: .line 737
            aload 1 /* physFonts */
            arraylength
            iload 2 /* mcf */
            iadd
            anewarray sun.font.Font2D
            astore 3 /* regFonts */
        start local 3 // sun.font.Font2D[] regFonts
         3: .line 738
            aload 0 /* this */
            getfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
            iconst_0
            aload 3 /* regFonts */
            iconst_0
            iload 2 /* mcf */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 739
            aload 1 /* physFonts */
            iconst_0
            aload 3 /* regFonts */
            iload 2 /* mcf */
            aload 1 /* physFonts */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 740
            aload 3 /* regFonts */
            areturn
        end local 3 // sun.font.Font2D[] regFonts
        end local 2 // int mcf
        end local 1 // sun.font.PhysicalFont[] physFonts
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/font/SunFontManager;
            1    6     1  physFonts  [Lsun/font/PhysicalFont;
            2    6     2        mcf  I
            3    6     3   regFonts  [Lsun/font/Font2D;

  protected sun.font.PhysicalFont[] getPhysicalFonts();
    descriptor: ()[Lsun/font/PhysicalFont;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 744
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            iconst_0
            anewarray sun.font.PhysicalFont
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast sun.font.PhysicalFont[]
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  protected synchronized void initialiseDeferredFonts();
    descriptor: ()V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 791
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.keySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
            invokevirtual java.util.concurrent.ConcurrentHashMap$KeySetView.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: sun.font.SunFontManager top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 1 /* fileName */
        start local 1 // java.lang.String fileName
         2: .line 792
            aload 0 /* this */
            aload 1 /* fileName */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            pop
        end local 1 // java.lang.String fileName
         3: .line 791
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 794
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lsun/font/SunFontManager;
            2    3     1  fileName  Ljava/lang/String;

  protected synchronized void registerDeferredJREFonts(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String jreDir
         0: .line 797
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: sun.font.SunFontManager java.lang.String top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.SunFontManager$FontRegistrationInfo
            astore 2 /* info */
        start local 2 // sun.font.SunFontManager$FontRegistrationInfo info
         2: .line 798
            aload 2 /* info */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
            ifnull 5
         3: .line 799
            aload 2 /* info */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
            aload 1 /* jreDir */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 800
            aload 0 /* this */
            aload 2 /* info */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            pop
        end local 2 // sun.font.SunFontManager$FontRegistrationInfo info
         5: .line 797
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 803
            return
        end local 1 // java.lang.String jreDir
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lsun/font/SunFontManager;
            0    7     1  jreDir  Ljava/lang/String;
            2    5     2    info  Lsun/font/SunFontManager$FontRegistrationInfo;
    MethodParameters:
        Name  Flags
      jreDir  

  public boolean isDeferredFont(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fileName
         0: .line 806
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.String fileName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lsun/font/SunFontManager;
            0    1     1  fileName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fileName  

  sun.font.PhysicalFont findJREDeferredFont(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lsun/font/PhysicalFont;
    flags: (0x0000) 
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
        start local 2 // int style
         0: .line 819
            aload 0 /* this */
            getfield sun.font.SunFontManager.noOtherJREFontFiles:Z
            ifeq 2
         1: .line 820
            aconst_null
            areturn
         2: .line 822
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            dup
            astore 3
            monitorenter
         3: .line 823
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            ifnonnull 16
         4: .line 824
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* otherFontFiles */
        start local 4 // java.util.HashSet otherFontFiles
         5: .line 825
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.keySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
            invokevirtual java.util.concurrent.ConcurrentHashMap$KeySetView.iterator:()Ljava/util/Iterator;
            astore 6
            goto 12
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String java.util.HashSet top java.util.Iterator
      StackMap stack:
         6: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* deferredFile */
        start local 5 // java.lang.String deferredFile
         7: .line 826
            new java.io.File
            dup
            aload 5 /* deferredFile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 7 /* file */
        start local 7 // java.io.File file
         8: .line 827
            aload 7 /* file */
            invokevirtual java.io.File.getParent:()Ljava/lang/String;
            astore 8 /* dir */
        start local 8 // java.lang.String dir
         9: .line 831
            aload 8 /* dir */
            ifnull 12
            aload 8 /* dir */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 832
            goto 12
        11: .line 834
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String java.util.HashSet java.lang.String java.util.Iterator java.io.File java.lang.String
      StackMap stack:
            aload 4 /* otherFontFiles */
            aload 5 /* deferredFile */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // java.lang.String dir
        end local 7 // java.io.File file
        end local 5 // java.lang.String deferredFile
        12: .line 825
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String java.util.HashSet top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        13: .line 836
            aload 0 /* this */
            aload 4 /* otherFontFiles */
            getstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
            invokevirtual java.util.HashSet.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            putfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
        14: .line 837
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            arraylength
            ifne 16
        15: .line 838
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        end local 4 // java.util.HashSet otherFontFiles
        16: .line 842
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        17: goto 30
        18: .line 843
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            iload 4 /* i */
            aaload
            astore 5 /* fileName */
        start local 5 // java.lang.String fileName
        19: .line 844
            aload 5 /* fileName */
            ifnonnull 21
        20: .line 845
            goto 29
        21: .line 847
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            iload 4 /* i */
            aconst_null
            aastore
        22: .line 848
            aload 0 /* this */
            aload 5 /* fileName */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            astore 6 /* physicalFont */
        start local 6 // sun.font.PhysicalFont physicalFont
        23: .line 849
            aload 6 /* physicalFont */
            ifnull 29
        24: .line 850
            aload 6 /* physicalFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 26
        25: .line 851
            aload 6 /* physicalFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 29
        26: .line 852
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 6 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            iload 2 /* style */
            if_icmpne 29
        27: .line 853
            aload 6 /* physicalFont */
            aload 3
            monitorexit
        28: areturn
        end local 6 // sun.font.PhysicalFont physicalFont
        end local 5 // java.lang.String fileName
        29: .line 842
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 4 /* i */
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            arraylength
            if_icmplt 18
        end local 4 // int i
        31: .line 822
            aload 3
            monitorexit
        32: goto 35
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String
      StackMap stack: java.lang.Throwable
        33: aload 3
            monitorexit
        34: athrow
        35: .line 858
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   36     0            this  Lsun/font/SunFontManager;
            0   36     1            name  Ljava/lang/String;
            0   36     2           style  I
            5   16     4  otherFontFiles  Ljava/util/HashSet<Ljava/lang/String;>;
            7   12     5    deferredFile  Ljava/lang/String;
            8   12     7            file  Ljava/io/File;
            9   12     8             dir  Ljava/lang/String;
           17   31     4               i  I
           19   29     5        fileName  Ljava/lang/String;
           23   29     6    physicalFont  Lsun/font/PhysicalFont;
      Exception table:
        from    to  target  type
           3    28      33  any
          29    32      33  any
          33    34      33  any
    MethodParameters:
       Name  Flags
      name   
      style  

  private sun.font.PhysicalFont findOtherDeferredFont(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lsun/font/PhysicalFont;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
        start local 2 // int style
         0: .line 862
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.keySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
            invokevirtual java.util.concurrent.ConcurrentHashMap$KeySetView.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* fileName */
        start local 3 // java.lang.String fileName
         2: .line 863
            aload 0 /* this */
            aload 3 /* fileName */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            astore 5 /* physicalFont */
        start local 5 // sun.font.PhysicalFont physicalFont
         3: .line 864
            aload 5 /* physicalFont */
            ifnull 8
         4: .line 865
            aload 5 /* physicalFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 6
         5: .line 866
            aload 5 /* physicalFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 8
         6: .line 867
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String java.util.Iterator sun.font.PhysicalFont
      StackMap stack:
            aload 5 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            iload 2 /* style */
            if_icmpne 8
         7: .line 868
            aload 5 /* physicalFont */
            areturn
        end local 5 // sun.font.PhysicalFont physicalFont
        end local 3 // java.lang.String fileName
         8: .line 862
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         9: .line 871
            aconst_null
            areturn
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lsun/font/SunFontManager;
            0   10     1          name  Ljava/lang/String;
            0   10     2         style  I
            2    8     3      fileName  Ljava/lang/String;
            3    8     5  physicalFont  Lsun/font/PhysicalFont;
    MethodParameters:
       Name  Flags
      name   
      style  

  private sun.font.PhysicalFont findDeferredFont(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lsun/font/PhysicalFont;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
        start local 2 // int style
         0: .line 875
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findJREDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 3 /* physicalFont */
        start local 3 // sun.font.PhysicalFont physicalFont
         1: .line 876
            aload 3 /* physicalFont */
            ifnull 3
         2: .line 877
            aload 3 /* physicalFont */
            areturn
         3: .line 879
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findOtherDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            areturn
        end local 3 // sun.font.PhysicalFont physicalFont
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lsun/font/SunFontManager;
            0    4     1          name  Ljava/lang/String;
            0    4     2         style  I
            1    4     3  physicalFont  Lsun/font/PhysicalFont;
    MethodParameters:
       Name  Flags
      name   
      style  

  public void registerDeferredFont(java.lang.String, java.lang.String, java.lang.String[], int, boolean, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=7
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fileNameKey
        start local 2 // java.lang.String fullPathName
        start local 3 // java.lang.String[] nativeNames
        start local 4 // int fontFormat
        start local 5 // boolean useJavaRasterizer
        start local 6 // int fontRank
         0: .line 890
            new sun.font.SunFontManager$FontRegistrationInfo
            dup
            aload 2 /* fullPathName */
            aload 3 /* nativeNames */
            iload 4 /* fontFormat */
         1: .line 891
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         2: .line 890
            invokespecial sun.font.SunFontManager$FontRegistrationInfo.<init>:(Ljava/lang/String;[Ljava/lang/String;IZI)V
         3: .line 889
            astore 7 /* regInfo */
        start local 7 // sun.font.SunFontManager$FontRegistrationInfo regInfo
         4: .line 892
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileNameKey */
            aload 7 /* regInfo */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 893
            return
        end local 7 // sun.font.SunFontManager$FontRegistrationInfo regInfo
        end local 6 // int fontRank
        end local 5 // boolean useJavaRasterizer
        end local 4 // int fontFormat
        end local 3 // java.lang.String[] nativeNames
        end local 2 // java.lang.String fullPathName
        end local 1 // java.lang.String fileNameKey
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lsun/font/SunFontManager;
            0    6     1        fileNameKey  Ljava/lang/String;
            0    6     2       fullPathName  Ljava/lang/String;
            0    6     3        nativeNames  [Ljava/lang/String;
            0    6     4         fontFormat  I
            0    6     5  useJavaRasterizer  Z
            0    6     6           fontRank  I
            4    6     7            regInfo  Lsun/font/SunFontManager$FontRegistrationInfo;
    MethodParameters:
                   Name  Flags
      fileNameKey        
      fullPathName       
      nativeNames        
      fontFormat         
      useJavaRasterizer  
      fontRank           

  public synchronized sun.font.PhysicalFont initialiseDeferredFont(java.lang.String);
    descriptor: (Ljava/lang/String;)Lsun/font/PhysicalFont;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fileNameKey
         0: .line 899
            aload 1 /* fileNameKey */
            ifnonnull 2
         1: .line 900
            aconst_null
            areturn
         2: .line 902
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 903
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 904
            new java.lang.StringBuilder
            dup
            ldc "Opening deferred font file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fileNameKey */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         5: .line 907
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* physicalFont */
        start local 2 // sun.font.PhysicalFont physicalFont
         6: .line 908
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileNameKey */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.SunFontManager$FontRegistrationInfo
            astore 3 /* regInfo */
        start local 3 // sun.font.SunFontManager$FontRegistrationInfo regInfo
         7: .line 909
            aload 3 /* regInfo */
            ifnull 20
         8: .line 910
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileNameKey */
            invokevirtual java.util.concurrent.ConcurrentHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 911
            aload 0 /* this */
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
        10: .line 912
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.nativeNames:[Ljava/lang/String;
        11: .line 913
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFormat:I
        12: .line 914
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.javaRasterizer:Z
        13: .line 915
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontRank:I
        14: .line 911
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            astore 2 /* physicalFont */
        15: .line 917
            aload 2 /* physicalFont */
            ifnull 18
        16: .line 921
            aload 0 /* this */
            getfield sun.font.SunFontManager.initialisedFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileNameKey */
            aload 2 /* physicalFont */
            getfield sun.font.PhysicalFont.handle:Lsun/font/Font2DHandle;
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 922
            goto 25
        18: .line 923
      StackMap locals: sun.font.PhysicalFont sun.font.SunFontManager$FontRegistrationInfo
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.initialisedFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileNameKey */
            getstatic sun.font.SunFontManager.FONT_HANDLE_NULL:Lsun/font/Font2DHandle;
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 925
            goto 25
        20: .line 926
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.initialisedFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileNameKey */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2DHandle
            astore 4 /* handle */
        start local 4 // sun.font.Font2DHandle handle
        21: .line 927
            aload 4 /* handle */
            ifnonnull 24
        22: .line 929
            aload 0 /* this */
            getfield sun.font.SunFontManager.initialisedFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileNameKey */
            getstatic sun.font.SunFontManager.FONT_HANDLE_NULL:Lsun/font/Font2DHandle;
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 930
            goto 25
        24: .line 931
      StackMap locals: sun.font.Font2DHandle
      StackMap stack:
            aload 4 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            checkcast sun.font.PhysicalFont
            astore 2 /* physicalFont */
        end local 4 // sun.font.Font2DHandle handle
        25: .line 934
      StackMap locals:
      StackMap stack:
            aload 2 /* physicalFont */
            areturn
        end local 3 // sun.font.SunFontManager$FontRegistrationInfo regInfo
        end local 2 // sun.font.PhysicalFont physicalFont
        end local 1 // java.lang.String fileNameKey
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0          this  Lsun/font/SunFontManager;
            0   26     1   fileNameKey  Ljava/lang/String;
            6   26     2  physicalFont  Lsun/font/PhysicalFont;
            7   26     3       regInfo  Lsun/font/SunFontManager$FontRegistrationInfo;
           21   25     4        handle  Lsun/font/Font2DHandle;
    MethodParameters:
             Name  Flags
      fileNameKey  

  public boolean isRegisteredFontFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
         0: .line 938
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.String name
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public sun.font.PhysicalFont getRegisteredFontFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Lsun/font/PhysicalFont;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
         0: .line 942
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.PhysicalFont
            areturn
        end local 1 // java.lang.String name
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public sun.font.PhysicalFont registerFontFile(java.lang.String, java.lang.String[], int, boolean, int);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=6
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fileName
        start local 2 // java.lang.String[] nativeNames
        start local 3 // int fontFormat
        start local 4 // boolean useJavaRasterizer
        start local 5 // int fontRank
         0: .line 955
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.PhysicalFont
            astore 6 /* regFont */
        start local 6 // sun.font.PhysicalFont regFont
         1: .line 956
            aload 6 /* regFont */
            ifnull 3
         2: .line 957
            aload 6 /* regFont */
            areturn
         3: .line 960
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
         4: .line 962
            iload 3 /* fontFormat */
            tableswitch { // 0 - 4
                    0: 5
                    1: 15
                    2: 20
                    3: 20
                    4: 18
              default: 20
          }
         5: .line 965
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            iconst_0
            istore 8 /* fn */
        start local 8 // int fn
         6: .line 968
      StackMap locals: int
      StackMap stack:
            new sun.font.TrueTypeFont
            dup
            aload 1 /* fileName */
            aload 2 /* nativeNames */
            iload 8 /* fn */
            iinc 8 /* fn */ 1
         7: .line 969
            iload 4 /* useJavaRasterizer */
         8: .line 968
            invokespecial sun.font.TrueTypeFont.<init>:(Ljava/lang/String;Ljava/lang/Object;IZ)V
            astore 9 /* ttf */
        start local 9 // sun.font.TrueTypeFont ttf
         9: .line 970
            aload 0 /* this */
            aload 9 /* ttf */
            iload 5 /* fontRank */
            invokevirtual sun.font.SunFontManager.addToFontList:(Lsun/font/PhysicalFont;I)Lsun/font/PhysicalFont;
            astore 10 /* pf */
        start local 10 // sun.font.PhysicalFont pf
        10: .line 971
            aload 7 /* physicalFont */
            ifnonnull 12
        11: .line 972
            aload 10 /* pf */
            astore 7 /* physicalFont */
        end local 10 // sun.font.PhysicalFont pf
        12: .line 975
      StackMap locals: sun.font.TrueTypeFont
      StackMap stack:
            iload 8 /* fn */
            aload 9 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
        13: .line 967
            if_icmplt 6
        14: .line 976
            goto 20
        end local 9 // sun.font.TrueTypeFont ttf
        end local 8 // int fn
        15: .line 979
      StackMap locals:
      StackMap stack:
            new sun.font.Type1Font
            dup
            aload 1 /* fileName */
            aload 2 /* nativeNames */
            invokespecial sun.font.Type1Font.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
            astore 10 /* t1f */
        start local 10 // sun.font.Type1Font t1f
        16: .line 980
            aload 0 /* this */
            aload 10 /* t1f */
            iload 5 /* fontRank */
            invokevirtual sun.font.SunFontManager.addToFontList:(Lsun/font/PhysicalFont;I)Lsun/font/PhysicalFont;
            astore 7 /* physicalFont */
        17: .line 981
            goto 20
        end local 10 // sun.font.Type1Font t1f
        18: .line 984
      StackMap locals:
      StackMap stack:
            new sun.font.NativeFont
            dup
            aload 1 /* fileName */
            iconst_0
            invokespecial sun.font.NativeFont.<init>:(Ljava/lang/String;Z)V
            astore 11 /* nf */
        start local 11 // sun.font.NativeFont nf
        19: .line 985
            aload 0 /* this */
            aload 11 /* nf */
            iload 5 /* fontRank */
            invokevirtual sun.font.SunFontManager.addToFontList:(Lsun/font/PhysicalFont;I)Lsun/font/PhysicalFont;
            astore 7 /* physicalFont */
        end local 11 // sun.font.NativeFont nf
        20: .line 990
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        21: .line 991
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        22: .line 992
            new java.lang.StringBuilder
            dup
            ldc "Registered file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fileName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " as font "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 993
            aload 7 /* physicalFont */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " rank="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 5 /* fontRank */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        24: .line 992
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        25: .line 995
            goto 31
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
        26: astore 8 /* ffe */
        start local 8 // java.awt.FontFormatException ffe
        27: .line 996
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        28: .line 997
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "Unusable font: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        29: .line 998
            aload 1 /* fileName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* ffe */
            invokevirtual java.awt.FontFormatException.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        30: .line 997
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        end local 8 // java.awt.FontFormatException ffe
        31: .line 1001
      StackMap locals:
      StackMap stack:
            aload 7 /* physicalFont */
            ifnull 34
        32: .line 1002
            iload 3 /* fontFormat */
            iconst_4
            if_icmpeq 34
        33: .line 1003
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* fileName */
            aload 7 /* physicalFont */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        34: .line 1005
      StackMap locals:
      StackMap stack:
            aload 7 /* physicalFont */
            areturn
        end local 7 // sun.font.PhysicalFont physicalFont
        end local 6 // sun.font.PhysicalFont regFont
        end local 5 // int fontRank
        end local 4 // boolean useJavaRasterizer
        end local 3 // int fontFormat
        end local 2 // java.lang.String[] nativeNames
        end local 1 // java.lang.String fileName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   35     0               this  Lsun/font/SunFontManager;
            0   35     1           fileName  Ljava/lang/String;
            0   35     2        nativeNames  [Ljava/lang/String;
            0   35     3         fontFormat  I
            0   35     4  useJavaRasterizer  Z
            0   35     5           fontRank  I
            1   35     6            regFont  Lsun/font/PhysicalFont;
            4   35     7       physicalFont  Lsun/font/PhysicalFont;
            6   15     8                 fn  I
            9   15     9                ttf  Lsun/font/TrueTypeFont;
           10   12    10                 pf  Lsun/font/PhysicalFont;
           16   18    10                t1f  Lsun/font/Type1Font;
           19   20    11                 nf  Lsun/font/NativeFont;
           27   31     8                ffe  Ljava/awt/FontFormatException;
      Exception table:
        from    to  target  type
           4    25      26  Class java.awt.FontFormatException
    MethodParameters:
                   Name  Flags
      fileName           
      nativeNames        
      fontFormat         
      useJavaRasterizer  
      fontRank           

  public void registerFonts(java.lang.String[], java.lang.String[][], int, int, boolean, int, boolean);
    descriptor: ([Ljava/lang/String;[[Ljava/lang/String;IIZIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=8
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String[] fileNames
        start local 2 // java.lang.String[][] nativeNames
        start local 3 // int fontCount
        start local 4 // int fontFormat
        start local 5 // boolean useJavaRasterizer
        start local 6 // int fontRank
        start local 7 // boolean defer
         0: .line 1015
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         1: goto 11
         2: .line 1016
      StackMap locals: int
      StackMap stack:
            iload 7 /* defer */
            ifeq 7
         3: .line 1017
            aload 0 /* this */
            aload 1 /* fileNames */
            iload 8 /* i */
            aaload
            aload 1 /* fileNames */
            iload 8 /* i */
            aaload
            aload 2 /* nativeNames */
            iload 8 /* i */
            aaload
         4: .line 1018
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         5: .line 1017
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
         6: .line 1019
            goto 10
         7: .line 1020
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fileNames */
            iload 8 /* i */
            aaload
            aload 2 /* nativeNames */
            iload 8 /* i */
            aaload
         8: .line 1021
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         9: .line 1020
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        10: .line 1015
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 8 /* i */
            iload 3 /* fontCount */
            if_icmplt 2
        end local 8 // int i
        12: .line 1024
            return
        end local 7 // boolean defer
        end local 6 // int fontRank
        end local 5 // boolean useJavaRasterizer
        end local 4 // int fontFormat
        end local 3 // int fontCount
        end local 2 // java.lang.String[][] nativeNames
        end local 1 // java.lang.String[] fileNames
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   13     0               this  Lsun/font/SunFontManager;
            0   13     1          fileNames  [Ljava/lang/String;
            0   13     2        nativeNames  [[Ljava/lang/String;
            0   13     3          fontCount  I
            0   13     4         fontFormat  I
            0   13     5  useJavaRasterizer  Z
            0   13     6           fontRank  I
            0   13     7              defer  Z
            1   12     8                  i  I
    MethodParameters:
                   Name  Flags
      fileNames          
      nativeNames        
      fontCount          
      fontFormat         
      useJavaRasterizer  
      fontRank           
      defer              

  public sun.font.PhysicalFont getDefaultPhysicalFont();
    descriptor: ()Lsun/font/PhysicalFont;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1033
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 16
         1: .line 1034
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFaceName:()Ljava/lang/String;
            astore 1 /* defaultFontName */
        start local 1 // java.lang.String defaultFontName
         2: .line 1036
            aload 0 /* this */
            aload 1 /* defaultFontName */
            iconst_0
            iconst_0
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            astore 2 /* font2d */
        start local 2 // sun.font.Font2D font2d
         3: .line 1037
            aload 2 /* font2d */
            ifnull 12
         4: .line 1038
            aload 2 /* font2d */
            instanceof sun.font.PhysicalFont
            ifeq 7
         5: .line 1039
            aload 0 /* this */
            aload 2 /* font2d */
            checkcast sun.font.PhysicalFont
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
         6: .line 1040
            goto 12
         7: .line 1041
      StackMap locals: java.lang.String sun.font.Font2D
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 12
         8: .line 1042
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         9: .line 1043
            new java.lang.StringBuilder
            dup
            ldc "Font returned by findFont2D for default font name "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 1044
            aload 1 /* defaultFontName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is not a physical font: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* font2d */
            aconst_null
            invokevirtual sun.font.Font2D.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 1043
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        12: .line 1048
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 16
        13: .line 1055
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
        14: .line 1056
            invokedynamic get()Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  sun/font/SunFontManager.lambda$0()Ljava/lang/Error; (6)
                  ()Ljava/lang/Error;
            invokevirtual java.util.Optional.orElseThrow:(Ljava/util/function/Supplier;)Ljava/lang/Object;
            checkcast sun.font.PhysicalFont
        15: .line 1055
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
        end local 2 // sun.font.Font2D font2d
        end local 1 // java.lang.String defaultFontName
        16: .line 1059
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   17     0             this  Lsun/font/SunFontManager;
            2   16     1  defaultFontName  Ljava/lang/String;
            3   16     2           font2d  Lsun/font/Font2D;

  public sun.font.Font2D getDefaultLogicalFont(int);
    descriptor: (I)Lsun/font/Font2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // int style
         0: .line 1063
            aload 0 /* this */
            ldc "dialog"
            iload 1 /* style */
            iconst_0
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            areturn
        end local 1 // int style
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lsun/font/SunFontManager;
            0    1     1  style  I
    MethodParameters:
       Name  Flags
      style  

  private static java.lang.String dotStyleStr(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int num
         0: .line 1071
            iload 0 /* num */
            tableswitch { // 1 - 3
                    1: 1
                    2: 2
                    3: 3
              default: 4
          }
         1: .line 1073
      StackMap locals:
      StackMap stack:
            ldc ".bold"
            areturn
         2: .line 1075
      StackMap locals:
      StackMap stack:
            ldc ".italic"
            areturn
         3: .line 1077
      StackMap locals:
      StackMap stack:
            ldc ".bolditalic"
            areturn
         4: .line 1079
      StackMap locals:
      StackMap stack:
            ldc ".plain"
            areturn
        end local 0 // int num
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0   num  I
    MethodParameters:
      Name  Flags
      num   

  protected void populateFontFileNameMap(java.util.HashMap<java.lang.String, java.lang.String>, java.util.HashMap<java.lang.String, java.lang.String>, java.util.HashMap<java.lang.String, java.util.ArrayList<java.lang.String>>, java.util.Locale);
    descriptor: (Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/Locale;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=5, args_size=5
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.HashMap fontToFileMap
        start local 2 // java.util.HashMap fontToFamilyNameMap
        start local 3 // java.util.HashMap familyToFontListMap
        start local 4 // java.util.Locale locale
         0: .line 1093
            return
        end local 4 // java.util.Locale locale
        end local 3 // java.util.HashMap familyToFontListMap
        end local 2 // java.util.HashMap fontToFamilyNameMap
        end local 1 // java.util.HashMap fontToFileMap
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lsun/font/SunFontManager;
            0    1     1        fontToFileMap  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
            0    1     2  fontToFamilyNameMap  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
            0    1     3  familyToFontListMap  Ljava/util/HashMap<Ljava/lang/String;Ljava/util/ArrayList<Ljava/lang/String;>;>;
            0    1     4               locale  Ljava/util/Locale;
    Signature: (Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/HashMap<Ljava/lang/String;Ljava/util/ArrayList<Ljava/lang/String;>;>;Ljava/util/Locale;)V
    MethodParameters:
                     Name  Flags
      fontToFileMap        
      fontToFamilyNameMap  
      familyToFontListMap  
      locale               

  private java.lang.String[] getFontFilesFromPath(boolean);
    descriptor: (Z)[Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // boolean noType1
         0: .line 1122
            iload 1 /* noType1 */
            ifeq 3
         1: .line 1123
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
            astore 2 /* filter */
        start local 2 // java.io.FilenameFilter filter
         2: .line 1124
            goto 4
        end local 2 // java.io.FilenameFilter filter
         3: .line 1125
      StackMap locals:
      StackMap stack:
            new sun.font.SunFontManager$TTorT1Filter
            dup
            invokespecial sun.font.SunFontManager$TTorT1Filter.<init>:()V
            astore 2 /* filter */
        start local 2 // java.io.FilenameFilter filter
         4: .line 1127
      StackMap locals: java.io.FilenameFilter
      StackMap stack:
            new sun.font.SunFontManager$4
            dup
            aload 0 /* this */
            aload 2 /* filter */
            invokespecial sun.font.SunFontManager$4.<init>:(Lsun/font/SunFontManager;Ljava/io/FilenameFilter;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 2 // java.io.FilenameFilter filter
        end local 1 // boolean noType1
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lsun/font/SunFontManager;
            0    5     1  noType1  Z
            2    3     2   filter  Ljava/io/FilenameFilter;
            4    5     2   filter  Ljava/io/FilenameFilter;
    MethodParameters:
         Name  Flags
      noType1  

  private void resolveWindowsFonts();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1179
            aconst_null
            astore 1 /* unmappedFontNames */
        start local 1 // java.util.ArrayList unmappedFontNames
         1: .line 1180
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 25
      StackMap locals: sun.font.SunFontManager java.util.ArrayList top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* font */
        start local 2 // java.lang.String font
         3: .line 1181
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 2 /* font */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* file */
        start local 4 // java.lang.String file
         4: .line 1182
            aload 4 /* file */
            ifnonnull 25
         5: .line 1183
            aload 2 /* font */
            ldc "  "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            ifle 13
         6: .line 1184
            aload 2 /* font */
            ldc "  "
            ldc " "
            invokevirtual java.lang.String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* newName */
        start local 5 // java.lang.String newName
         7: .line 1185
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 5 /* newName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* file */
         8: .line 1189
            aload 4 /* file */
            ifnull 25
         9: .line 1190
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            aload 5 /* newName */
            invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
            ifne 25
        10: .line 1191
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 5 /* newName */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 1192
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 2 /* font */
            aload 4 /* file */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.lang.String newName
        12: .line 1194
            goto 25
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.lang.String java.util.Iterator java.lang.String
      StackMap stack:
        13: aload 2 /* font */
            ldc "marlett"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        14: .line 1195
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 2 /* font */
            ldc "marlett.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 1196
            goto 25
      StackMap locals:
      StackMap stack:
        16: aload 2 /* font */
            ldc "david"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        17: .line 1197
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            ldc "david regular"
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* file */
        18: .line 1198
            aload 4 /* file */
            ifnull 25
        19: .line 1199
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            ldc "david regular"
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 1200
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            ldc "david"
            aload 4 /* file */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 1202
            goto 25
        22: .line 1203
      StackMap locals:
      StackMap stack:
            aload 1 /* unmappedFontNames */
            ifnonnull 24
        23: .line 1204
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* unmappedFontNames */
        24: .line 1206
      StackMap locals:
      StackMap stack:
            aload 1 /* unmappedFontNames */
            aload 2 /* font */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.lang.String file
        end local 2 // java.lang.String font
        25: .line 1180
      StackMap locals: sun.font.SunFontManager java.util.ArrayList top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        26: .line 1211
            aload 1 /* unmappedFontNames */
            ifnull 70
        27: .line 1212
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* unmappedFontFiles */
        start local 2 // java.util.HashSet unmappedFontFiles
        28: .line 1245
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.clone:()Ljava/lang/Object;
            checkcast java.util.HashMap
        29: .line 1244
            astore 3 /* ffmapCopy */
        start local 3 // java.util.HashMap ffmapCopy
        30: .line 1246
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 33
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashSet java.util.HashMap top java.util.Iterator
      StackMap stack:
        31: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* key */
        start local 4 // java.lang.String key
        32: .line 1247
            aload 3 /* ffmapCopy */
            aload 4 /* key */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.String key
        33: .line 1246
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 31
        34: .line 1249
            aload 3 /* ffmapCopy */
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 38
      StackMap locals:
      StackMap stack:
        35: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* key */
        start local 4 // java.lang.String key
        36: .line 1250
            aload 2 /* unmappedFontFiles */
            aload 3 /* ffmapCopy */
            aload 4 /* key */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        37: .line 1251
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 4 /* key */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.String key
        38: .line 1249
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 35
        39: .line 1254
            aload 0 /* this */
            aload 2 /* unmappedFontFiles */
            aload 1 /* unmappedFontNames */
            invokevirtual sun.font.SunFontManager.resolveFontFiles:(Ljava/util/HashSet;Ljava/util/ArrayList;)V
        40: .line 1261
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            ifle 53
        41: .line 1267
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* registryFiles */
        start local 4 // java.util.ArrayList registryFiles
        42: .line 1269
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 45
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashSet java.util.HashMap java.util.ArrayList top java.util.Iterator
      StackMap stack:
        43: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* regFile */
        start local 5 // java.lang.String regFile
        44: .line 1270
            aload 4 /* registryFiles */
            aload 5 /* regFile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.String regFile
        45: .line 1269
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 43
        46: .line 1277
            aload 0 /* this */
            iconst_1
            invokevirtual sun.font.SunFontManager.getFontFilesFromPath:(Z)[Ljava/lang/String;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 51
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashSet java.util.HashMap java.util.ArrayList top int int java.lang.String[]
      StackMap stack:
        47: aload 8
            iload 6
            aaload
            astore 5 /* pathFile */
        start local 5 // java.lang.String pathFile
        48: .line 1278
            aload 4 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 50
        49: .line 1279
            aload 2 /* unmappedFontFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.String pathFile
        50: .line 1277
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        51: iload 6
            iload 7
            if_icmplt 47
        52: .line 1283
            aload 0 /* this */
            aload 2 /* unmappedFontFiles */
            aload 1 /* unmappedFontNames */
            invokevirtual sun.font.SunFontManager.resolveFontFiles:(Ljava/util/HashSet;Ljava/util/ArrayList;)V
        end local 4 // java.util.ArrayList registryFiles
        53: .line 1289
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashSet java.util.HashMap
      StackMap stack:
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            ifle 70
        54: .line 1290
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* sz */
        start local 4 // int sz
        55: .line 1291
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        56: goto 69
        57: .line 1292
      StackMap locals: int int
      StackMap stack:
            aload 1 /* unmappedFontNames */
            iload 5 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* name */
        start local 6 // java.lang.String name
        58: .line 1293
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            aload 6 /* name */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* familyName */
        start local 7 // java.lang.String familyName
        59: .line 1294
            aload 7 /* familyName */
            ifnull 64
        60: .line 1295
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
            aload 7 /* familyName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 8 /* family */
        start local 8 // java.util.ArrayList family
        61: .line 1296
            aload 8 /* family */
            ifnull 64
        62: .line 1297
            aload 8 /* family */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            if_icmpgt 64
        63: .line 1298
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
            aload 7 /* familyName */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // java.util.ArrayList family
        64: .line 1302
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            aload 6 /* name */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        65: .line 1303
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 68
        66: .line 1304
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        67: .line 1305
            new java.lang.StringBuilder
            dup
            ldc "No file for font:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 7 // java.lang.String familyName
        end local 6 // java.lang.String name
        68: .line 1291
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        69: iload 5 /* i */
            iload 4 /* sz */
            if_icmplt 57
        end local 5 // int i
        end local 4 // int sz
        end local 3 // java.util.HashMap ffmapCopy
        end local 2 // java.util.HashSet unmappedFontFiles
        70: .line 1310
      StackMap locals: sun.font.SunFontManager java.util.ArrayList
      StackMap stack:
            return
        end local 1 // java.util.ArrayList unmappedFontNames
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   71     0               this  Lsun/font/SunFontManager;
            1   71     1  unmappedFontNames  Ljava/util/ArrayList<Ljava/lang/String;>;
            3   25     2               font  Ljava/lang/String;
            4   25     4               file  Ljava/lang/String;
            7   12     5            newName  Ljava/lang/String;
           28   70     2  unmappedFontFiles  Ljava/util/HashSet<Ljava/lang/String;>;
           30   70     3          ffmapCopy  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
           32   33     4                key  Ljava/lang/String;
           36   38     4                key  Ljava/lang/String;
           42   53     4      registryFiles  Ljava/util/ArrayList<Ljava/lang/String;>;
           44   45     5            regFile  Ljava/lang/String;
           48   50     5           pathFile  Ljava/lang/String;
           55   70     4                 sz  I
           56   70     5                  i  I
           58   68     6               name  Ljava/lang/String;
           59   68     7         familyName  Ljava/lang/String;
           61   64     8             family  Ljava/util/ArrayList<Ljava/lang/String;>;

  private synchronized void checkForUnreferencedFontFiles();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=14, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1325
            aload 0 /* this */
            getfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
            ifeq 2
         1: .line 1326
            return
         2: .line 1328
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
         3: .line 1329
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 1330
            return
         5: .line 1336
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* registryFiles */
        start local 1 // java.util.ArrayList registryFiles
         6: .line 1337
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals: sun.font.SunFontManager java.util.ArrayList top java.util.Iterator
      StackMap stack:
         7: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* regFile */
        start local 2 // java.lang.String regFile
         8: .line 1338
            aload 1 /* registryFiles */
            aload 2 /* regFile */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.lang.String regFile
         9: .line 1337
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1348
            aconst_null
            astore 2 /* fontToFileMap2 */
        start local 2 // java.util.HashMap fontToFileMap2
        11: .line 1349
            aconst_null
            astore 3 /* fontToFamilyNameMap2 */
        start local 3 // java.util.HashMap fontToFamilyNameMap2
        12: .line 1350
            aconst_null
            astore 4 /* familyToFontListMap2 */
        start local 4 // java.util.HashMap familyToFontListMap2
        13: .line 1352
            aload 0 /* this */
            iconst_0
            invokevirtual sun.font.SunFontManager.getFontFilesFromPath:(Z)[Ljava/lang/String;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 39
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashMap java.util.HashMap java.util.HashMap top int int java.lang.String[]
      StackMap stack:
        14: aload 8
            iload 6
            aaload
            astore 5 /* pathFile */
        start local 5 // java.lang.String pathFile
        15: .line 1353
            aload 1 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 38
        16: .line 1354
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 19
        17: .line 1355
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        18: .line 1356
            new java.lang.StringBuilder
            dup
            ldc "Found non-registry file : "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* pathFile */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        19: .line 1358
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashMap java.util.HashMap java.util.HashMap java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* pathFile */
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            astore 9 /* f */
        start local 9 // sun.font.PhysicalFont f
        20: .line 1359
            aload 9 /* f */
            ifnonnull 22
        21: .line 1360
            goto 38
        22: .line 1362
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 2 /* fontToFileMap2 */
            ifnonnull 26
        23: .line 1363
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            astore 2 /* fontToFileMap2 */
        24: .line 1364
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            astore 3 /* fontToFamilyNameMap2 */
        25: .line 1365
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            astore 4 /* familyToFontListMap2 */
        26: .line 1367
      StackMap locals:
      StackMap stack:
            aload 9 /* f */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            astore 10 /* fontName */
        start local 10 // java.lang.String fontName
        27: .line 1368
            aload 9 /* f */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            astore 11 /* family */
        start local 11 // java.lang.String family
        28: .line 1369
            aload 11 /* family */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 12 /* familyLC */
        start local 12 // java.lang.String familyLC
        29: .line 1370
            aload 3 /* fontToFamilyNameMap2 */
            aload 10 /* fontName */
            aload 11 /* family */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        30: .line 1371
            aload 2 /* fontToFileMap2 */
            aload 10 /* fontName */
            aload 5 /* pathFile */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        31: .line 1372
            aload 4 /* familyToFontListMap2 */
            aload 12 /* familyLC */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 13 /* fonts */
        start local 13 // java.util.ArrayList fonts
        32: .line 1373
            aload 13 /* fonts */
            ifnonnull 35
        33: .line 1374
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 13 /* fonts */
        34: .line 1375
            goto 36
        35: .line 1376
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashMap java.util.HashMap java.util.HashMap java.lang.String int int java.lang.String[] sun.font.PhysicalFont java.lang.String java.lang.String java.lang.String java.util.ArrayList
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 13 /* fonts */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 13 /* fonts */
        36: .line 1378
      StackMap locals:
      StackMap stack:
            aload 13 /* fonts */
            aload 10 /* fontName */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        37: .line 1379
            aload 4 /* familyToFontListMap2 */
            aload 12 /* familyLC */
            aload 13 /* fonts */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 13 // java.util.ArrayList fonts
        end local 12 // java.lang.String familyLC
        end local 11 // java.lang.String family
        end local 10 // java.lang.String fontName
        end local 9 // sun.font.PhysicalFont f
        end local 5 // java.lang.String pathFile
        38: .line 1352
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashMap java.util.HashMap java.util.HashMap top int int java.lang.String[]
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        39: iload 6
            iload 7
            if_icmplt 14
        40: .line 1382
            aload 2 /* fontToFileMap2 */
            ifnull 44
        41: .line 1383
            aload 0 /* this */
            aload 2 /* fontToFileMap2 */
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        42: .line 1384
            aload 0 /* this */
            aload 4 /* familyToFontListMap2 */
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        43: .line 1385
            aload 0 /* this */
            aload 3 /* fontToFamilyNameMap2 */
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        44: .line 1387
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.HashMap java.util.HashMap java.util.HashMap
      StackMap stack:
            return
        end local 4 // java.util.HashMap familyToFontListMap2
        end local 3 // java.util.HashMap fontToFamilyNameMap2
        end local 2 // java.util.HashMap fontToFileMap2
        end local 1 // java.util.ArrayList registryFiles
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   45     0                  this  Lsun/font/SunFontManager;
            6   45     1         registryFiles  Ljava/util/ArrayList<Ljava/lang/String;>;
            8    9     2               regFile  Ljava/lang/String;
           11   45     2        fontToFileMap2  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
           12   45     3  fontToFamilyNameMap2  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
           13   45     4  familyToFontListMap2  Ljava/util/HashMap<Ljava/lang/String;Ljava/util/ArrayList<Ljava/lang/String;>;>;
           15   38     5              pathFile  Ljava/lang/String;
           20   38     9                     f  Lsun/font/PhysicalFont;
           27   38    10              fontName  Ljava/lang/String;
           28   38    11                family  Ljava/lang/String;
           29   38    12              familyLC  Ljava/lang/String;
           32   38    13                 fonts  Ljava/util/ArrayList<Ljava/lang/String;>;

  private void resolveFontFiles(java.util.HashSet<java.lang.String>, java.util.ArrayList<java.lang.String>);
    descriptor: (Ljava/util/HashSet;Ljava/util/ArrayList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.HashSet unmappedFiles
        start local 2 // java.util.ArrayList unmappedFonts
         0: .line 1392
            invokestatic sun.awt.SunToolkit.getStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
         1: .line 1394
            aload 1 /* unmappedFiles */
            invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
            astore 5
            goto 22
      StackMap locals: sun.font.SunFontManager java.util.HashSet java.util.ArrayList java.util.Locale top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* file */
        start local 4 // java.lang.String file
         3: .line 1396
            iconst_0
            istore 6 /* fn */
        start local 6 // int fn
         4: .line 1398
            aload 0 /* this */
            aload 4 /* file */
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* fullPath */
        start local 8 // java.lang.String fullPath
         5: .line 1399
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 8
         6: .line 1400
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         7: .line 1401
            new java.lang.StringBuilder
            dup
            ldc "Trying to resolve file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* fullPath */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         8: .line 1404
      StackMap locals: sun.font.SunFontManager java.util.HashSet java.util.ArrayList java.util.Locale java.lang.String java.util.Iterator int top java.lang.String
      StackMap stack:
            new sun.font.TrueTypeFont
            dup
            aload 8 /* fullPath */
            aconst_null
            iload 6 /* fn */
            iinc 6 /* fn */ 1
            iconst_0
            invokespecial sun.font.TrueTypeFont.<init>:(Ljava/lang/String;Ljava/lang/Object;IZ)V
            astore 7 /* ttf */
        start local 7 // sun.font.TrueTypeFont ttf
         9: .line 1406
            aload 7 /* ttf */
            aload 3 /* l */
            invokevirtual sun.font.TrueTypeFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 9 /* fontName */
        start local 9 // java.lang.String fontName
        10: .line 1407
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifeq 18
        11: .line 1408
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 9 /* fontName */
            aload 4 /* file */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 1409
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
            pop
        13: .line 1410
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        14: .line 1411
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        15: .line 1412
            new java.lang.StringBuilder
            dup
            ldc "Resolved absent registry entry for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        16: .line 1413
            aload 9 /* fontName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " located in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* fullPath */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        17: .line 1412
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 9 // java.lang.String fontName
        18: .line 1417
      StackMap locals: sun.font.SunFontManager java.util.HashSet java.util.ArrayList java.util.Locale java.lang.String java.util.Iterator int sun.font.TrueTypeFont java.lang.String
      StackMap stack:
            iload 6 /* fn */
            aload 7 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
        19: .line 1403
            if_icmplt 8
        end local 8 // java.lang.String fullPath
        end local 7 // sun.font.TrueTypeFont ttf
        end local 6 // int fn
        20: .line 1418
            goto 22
      StackMap locals: sun.font.SunFontManager java.util.HashSet java.util.ArrayList java.util.Locale java.lang.String java.util.Iterator
      StackMap stack: java.lang.Exception
        21: pop
        end local 4 // java.lang.String file
        22: .line 1394
      StackMap locals: sun.font.SunFontManager java.util.HashSet java.util.ArrayList java.util.Locale top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        23: .line 1421
            return
        end local 3 // java.util.Locale l
        end local 2 // java.util.ArrayList unmappedFonts
        end local 1 // java.util.HashSet unmappedFiles
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   24     0           this  Lsun/font/SunFontManager;
            0   24     1  unmappedFiles  Ljava/util/HashSet<Ljava/lang/String;>;
            0   24     2  unmappedFonts  Ljava/util/ArrayList<Ljava/lang/String;>;
            1   24     3              l  Ljava/util/Locale;
            3   22     4           file  Ljava/lang/String;
            4   20     6             fn  I
            9   20     7            ttf  Lsun/font/TrueTypeFont;
            5   20     8       fullPath  Ljava/lang/String;
           10   18     9       fontName  Ljava/lang/String;
      Exception table:
        from    to  target  type
           3    20      21  Class java.lang.Exception
    Signature: (Ljava/util/HashSet<Ljava/lang/String;>;Ljava/util/ArrayList<Ljava/lang/String;>;)V
    MethodParameters:
               Name  Flags
      unmappedFiles  
      unmappedFonts  

  public java.util.HashMap<java.lang.String, sun.font.SunFontManager$FamilyDescription> populateHardcodedFileNameMap();
    descriptor: ()Ljava/util/HashMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1454
            new java.util.HashMap
            dup
            iconst_0
            invokespecial java.util.HashMap.<init>:(I)V
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;
    Signature: ()Ljava/util/HashMap<Ljava/lang/String;Lsun/font/SunFontManager$FamilyDescription;>;

  sun.font.Font2D findFontFromPlatformMap(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lsun/font/Font2D;
    flags: (0x0000) 
    Code:
      stack=6, locals=16, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String lcName
        start local 2 // int style
         0: .line 1458
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            ifnonnull 2
         1: .line 1459
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.populateHardcodedFileNameMap:()Ljava/util/HashMap;
            putstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
         2: .line 1462
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            ifnull 3
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 4
         3: .line 1463
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         4: .line 1466
      StackMap locals:
      StackMap stack:
            aload 1 /* lcName */
            bipush 32
            invokevirtual java.lang.String.indexOf:(I)I
            istore 3 /* spaceIndex */
        start local 3 // int spaceIndex
         5: .line 1467
            aload 1 /* lcName */
            astore 4 /* firstWord */
        start local 4 // java.lang.String firstWord
         6: .line 1468
            iload 3 /* spaceIndex */
            ifle 8
         7: .line 1469
            aload 1 /* lcName */
            iconst_0
            iload 3 /* spaceIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* firstWord */
         8: .line 1472
      StackMap locals: int java.lang.String
      StackMap stack:
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            aload 4 /* firstWord */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.SunFontManager$FamilyDescription
            astore 5 /* fd */
        start local 5 // sun.font.SunFontManager$FamilyDescription fd
         9: .line 1473
            aload 5 /* fd */
            ifnonnull 11
        10: .line 1474
            aconst_null
            areturn
        11: .line 1482
      StackMap locals: sun.font.SunFontManager$FamilyDescription
      StackMap stack:
            iconst_m1
            istore 6 /* styleIndex */
        start local 6 // int styleIndex
        12: .line 1483
            aload 1 /* lcName */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.plainFullName:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 15
        13: .line 1484
            iconst_0
            istore 6 /* styleIndex */
        14: .line 1485
            goto 23
      StackMap locals: int
      StackMap stack:
        15: aload 1 /* lcName */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldFullName:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 18
        16: .line 1486
            iconst_1
            istore 6 /* styleIndex */
        17: .line 1487
            goto 23
      StackMap locals:
      StackMap stack:
        18: aload 1 /* lcName */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.italicFullName:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 21
        19: .line 1488
            iconst_2
            istore 6 /* styleIndex */
        20: .line 1489
            goto 23
      StackMap locals:
      StackMap stack:
        21: aload 1 /* lcName */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldItalicFullName:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 23
        22: .line 1490
            iconst_3
            istore 6 /* styleIndex */
        23: .line 1492
      StackMap locals:
      StackMap stack:
            iload 6 /* styleIndex */
            iconst_m1
            if_icmpne 25
            aload 1 /* lcName */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.familyName:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 25
        24: .line 1493
            aconst_null
            areturn
        25: .line 1496
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* plainFile */
        start local 7 // java.lang.String plainFile
        26: aconst_null
            astore 8 /* boldFile */
        start local 8 // java.lang.String boldFile
        27: .line 1497
            aconst_null
            astore 9 /* italicFile */
        start local 9 // java.lang.String italicFile
        28: aconst_null
            astore 10 /* boldItalicFile */
        start local 10 // java.lang.String boldItalicFile
        29: .line 1499
            iconst_0
            istore 11 /* failure */
        start local 11 // boolean failure
        30: .line 1506
            aload 0 /* this */
            getstatic sun.font.SunFontManager.noType1Font:Z
            invokevirtual sun.font.SunFontManager.getPlatformFontDirs:(Z)[Ljava/lang/String;
            pop
        31: .line 1508
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.plainFileName:Ljava/lang/String;
            ifnull 35
        32: .line 1509
            aload 0 /* this */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.plainFileName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* plainFile */
        33: .line 1510
            aload 7 /* plainFile */
            ifnonnull 35
        34: .line 1511
            iconst_1
            istore 11 /* failure */
        35: .line 1515
      StackMap locals: sun.font.SunFontManager java.lang.String int int java.lang.String sun.font.SunFontManager$FamilyDescription int java.lang.String java.lang.String java.lang.String java.lang.String int
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldFileName:Ljava/lang/String;
            ifnull 39
        36: .line 1516
            aload 0 /* this */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldFileName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* boldFile */
        37: .line 1517
            aload 8 /* boldFile */
            ifnonnull 39
        38: .line 1518
            iconst_1
            istore 11 /* failure */
        39: .line 1522
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.italicFileName:Ljava/lang/String;
            ifnull 43
        40: .line 1523
            aload 0 /* this */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.italicFileName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            astore 9 /* italicFile */
        41: .line 1524
            aload 9 /* italicFile */
            ifnonnull 43
        42: .line 1525
            iconst_1
            istore 11 /* failure */
        43: .line 1529
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldItalicFileName:Ljava/lang/String;
            ifnull 47
        44: .line 1530
            aload 0 /* this */
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldItalicFileName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* boldItalicFile */
        45: .line 1531
            aload 10 /* boldItalicFile */
            ifnonnull 47
        46: .line 1532
            iconst_1
            istore 11 /* failure */
        47: .line 1536
      StackMap locals:
      StackMap stack:
            iload 11 /* failure */
            ifeq 53
        48: .line 1537
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 51
        49: .line 1538
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        50: .line 1539
            new java.lang.StringBuilder
            dup
            ldc "Hardcoded file missing looking for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* lcName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        51: .line 1541
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            aload 4 /* firstWord */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        52: .line 1542
            aconst_null
            areturn
        53: .line 1546
      StackMap locals:
      StackMap stack:
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        54: .line 1547
            aload 7 /* plainFile */
            aastore
            dup
            iconst_1
            aload 8 /* boldFile */
            aastore
            dup
            iconst_2
            aload 9 /* italicFile */
            aastore
            dup
            iconst_3
            aload 10 /* boldItalicFile */
            aastore
        55: .line 1546
            astore 12 /* files */
        start local 12 // java.lang.String[] files
        56: .line 1549
            new sun.font.SunFontManager$5
            dup
            aload 0 /* this */
            aload 12 /* files */
            invokespecial sun.font.SunFontManager$5.<init>:(Lsun/font/SunFontManager;[Ljava/lang/String;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 11 /* failure */
        57: .line 1564
            iload 11 /* failure */
            ifeq 63
        58: .line 1565
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 61
        59: .line 1566
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        60: .line 1567
            new java.lang.StringBuilder
            dup
            ldc "Hardcoded file missing looking for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* lcName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        61: .line 1569
      StackMap locals: java.lang.String[]
      StackMap stack:
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            aload 4 /* firstWord */
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        62: .line 1570
            aconst_null
            areturn
        63: .line 1579
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 13 /* font */
        start local 13 // sun.font.Font2D font
        64: .line 1580
            iconst_0
            istore 14 /* f */
        start local 14 // int f
        65: goto 75
        66: .line 1581
      StackMap locals: sun.font.Font2D int
      StackMap stack:
            aload 12 /* files */
            iload 14 /* f */
            aaload
            ifnonnull 68
        67: .line 1582
            goto 74
        68: .line 1585
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* files */
            iload 14 /* f */
            aaload
            aconst_null
        69: .line 1586
            iconst_0
            iconst_0
            iconst_3
        70: .line 1585
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
        71: .line 1584
            astore 15 /* pf */
        start local 15 // sun.font.PhysicalFont pf
        72: .line 1587
            iload 14 /* f */
            iload 6 /* styleIndex */
            if_icmpne 74
        73: .line 1588
            aload 15 /* pf */
            astore 13 /* font */
        end local 15 // sun.font.PhysicalFont pf
        74: .line 1580
      StackMap locals:
      StackMap stack:
            iinc 14 /* f */ 1
      StackMap locals:
      StackMap stack:
        75: iload 14 /* f */
            aload 12 /* files */
            arraylength
            if_icmplt 66
        end local 14 // int f
        76: .line 1605
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.familyName:Ljava/lang/String;
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 14 /* fontFamily */
        start local 14 // sun.font.FontFamily fontFamily
        77: .line 1606
            aload 14 /* fontFamily */
            ifnull 88
        78: .line 1607
            aload 13 /* font */
            ifnonnull 83
        79: .line 1608
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        80: .line 1609
            aload 13 /* font */
            ifnonnull 88
        81: .line 1610
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        82: .line 1612
            goto 88
      StackMap locals: sun.font.SunFontManager java.lang.String int int java.lang.String sun.font.SunFontManager$FamilyDescription int java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String[] sun.font.Font2D sun.font.FontFamily
      StackMap stack:
        83: iload 2 /* style */
            ifle 88
            iload 2 /* style */
            aload 13 /* font */
            getfield sun.font.Font2D.style:I
            if_icmpeq 88
        84: .line 1613
            iload 2 /* style */
            aload 13 /* font */
            getfield sun.font.Font2D.style:I
            ior
            istore 2 /* style */
        85: .line 1614
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        86: .line 1615
            aload 13 /* font */
            ifnonnull 88
        87: .line 1616
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        88: .line 1621
      StackMap locals:
      StackMap stack:
            aload 13 /* font */
            areturn
        end local 14 // sun.font.FontFamily fontFamily
        end local 13 // sun.font.Font2D font
        end local 12 // java.lang.String[] files
        end local 11 // boolean failure
        end local 10 // java.lang.String boldItalicFile
        end local 9 // java.lang.String italicFile
        end local 8 // java.lang.String boldFile
        end local 7 // java.lang.String plainFile
        end local 6 // int styleIndex
        end local 5 // sun.font.SunFontManager$FamilyDescription fd
        end local 4 // java.lang.String firstWord
        end local 3 // int spaceIndex
        end local 2 // int style
        end local 1 // java.lang.String lcName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   89     0            this  Lsun/font/SunFontManager;
            0   89     1          lcName  Ljava/lang/String;
            0   89     2           style  I
            5   89     3      spaceIndex  I
            6   89     4       firstWord  Ljava/lang/String;
            9   89     5              fd  Lsun/font/SunFontManager$FamilyDescription;
           12   89     6      styleIndex  I
           26   89     7       plainFile  Ljava/lang/String;
           27   89     8        boldFile  Ljava/lang/String;
           28   89     9      italicFile  Ljava/lang/String;
           29   89    10  boldItalicFile  Ljava/lang/String;
           30   89    11         failure  Z
           56   89    12           files  [Ljava/lang/String;
           64   89    13            font  Lsun/font/Font2D;
           65   76    14               f  I
           72   74    15              pf  Lsun/font/PhysicalFont;
           77   89    14      fontFamily  Lsun/font/FontFamily;
    MethodParameters:
        Name  Flags
      lcName  
      style   

  private synchronized java.util.HashMap<java.lang.String, java.lang.String> getFullNameToFileMap();
    descriptor: ()Ljava/util/HashMap;
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1624
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            ifnonnull 14
         1: .line 1626
            aload 0 /* this */
            aload 0 /* this */
            getstatic sun.font.SunFontManager.noType1Font:Z
            invokevirtual sun.font.SunFontManager.getPlatformFontDirs:(Z)[Ljava/lang/String;
            putfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
         2: .line 1628
            aload 0 /* this */
            new java.util.HashMap
            dup
            bipush 100
            invokespecial java.util.HashMap.<init>:(I)V
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
         3: .line 1629
            aload 0 /* this */
            new java.util.HashMap
            dup
            bipush 100
            invokespecial java.util.HashMap.<init>:(I)V
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
         4: .line 1630
            aload 0 /* this */
            new java.util.HashMap
            dup
            bipush 50
            invokespecial java.util.HashMap.<init>:(I)V
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         5: .line 1631
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
         6: .line 1632
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
         7: .line 1633
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1634
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
         9: .line 1631
            invokevirtual sun.font.SunFontManager.populateFontFileNameMap:(Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/Locale;)V
        10: .line 1635
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 12
        11: .line 1636
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.resolveWindowsFonts:()V
        12: .line 1638
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 14
        13: .line 1639
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.logPlatformFontInfo:()V
        14: .line 1642
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lsun/font/SunFontManager;
    Signature: ()Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;

  private void logPlatformFontInfo();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1646
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            astore 1 /* logger */
        start local 1 // sun.util.logging.PlatformLogger logger
         1: .line 1647
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 1648
      StackMap locals: sun.util.logging.PlatformLogger int
      StackMap stack:
            aload 1 /* logger */
            new java.lang.StringBuilder
            dup
            ldc "fontdir="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         4: .line 1647
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            arraylength
            if_icmplt 3
        end local 2 // int i
         6: .line 1650
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals: sun.font.SunFontManager sun.util.logging.PlatformLogger top java.util.Iterator
      StackMap stack:
         7: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* keyName */
        start local 2 // java.lang.String keyName
         8: .line 1651
            aload 1 /* logger */
            new java.lang.StringBuilder
            dup
            ldc "font="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* keyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " file="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 2 /* keyName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
         9: .line 1650
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1653
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 15
      StackMap locals:
      StackMap stack:
        11: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* keyName */
        start local 2 // java.lang.String keyName
        12: .line 1654
            aload 1 /* logger */
            new java.lang.StringBuilder
            dup
            ldc "font="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* keyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " family="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 1655
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            aload 2 /* keyName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 1654
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        15: .line 1653
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        16: .line 1657
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 21
      StackMap locals:
      StackMap stack:
        17: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* keyName */
        start local 2 // java.lang.String keyName
        18: .line 1658
            aload 1 /* logger */
            new java.lang.StringBuilder
            dup
            ldc "family="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* keyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " fonts="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 1659
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
            aload 2 /* keyName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        20: .line 1658
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        21: .line 1657
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        22: .line 1661
            return
        end local 1 // sun.util.logging.PlatformLogger logger
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0     this  Lsun/font/SunFontManager;
            1   23     1   logger  Lsun/util/logging/PlatformLogger;
            2    6     2        i  I
            8    9     2  keyName  Ljava/lang/String;
           12   15     2  keyName  Ljava/lang/String;
           18   21     2  keyName  Ljava/lang/String;

  protected java.lang.String[] getFontNamesFromPlatform();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1665
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1666
            aconst_null
            areturn
         2: .line 1668
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1671
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* fontNames */
        start local 1 // java.util.ArrayList fontNames
         4: .line 1672
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 10
      StackMap locals: sun.font.SunFontManager java.util.ArrayList top java.util.Iterator
      StackMap stack:
         5: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 2 /* a */
        start local 2 // java.util.ArrayList a
         6: .line 1673
            aload 2 /* a */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 5
            goto 9
      StackMap locals: sun.font.SunFontManager java.util.ArrayList java.util.ArrayList java.util.Iterator top java.util.Iterator
      StackMap stack:
         7: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* s */
        start local 4 // java.lang.String s
         8: .line 1674
            aload 1 /* fontNames */
            aload 4 /* s */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.lang.String s
         9: .line 1673
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 2 // java.util.ArrayList a
        10: .line 1672
      StackMap locals: sun.font.SunFontManager java.util.ArrayList top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        11: .line 1677
            aload 1 /* fontNames */
            getstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 1 // java.util.ArrayList fontNames
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lsun/font/SunFontManager;
            4   12     1  fontNames  Ljava/util/ArrayList<Ljava/lang/String;>;
            6   10     2          a  Ljava/util/ArrayList<Ljava/lang/String;>;
            8    9     4          s  Ljava/lang/String;

  public boolean gotFontsFromPlatform();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1681
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/font/SunFontManager;

  public java.lang.String getFileNameForFontName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fontName
         0: .line 1685
            aload 1 /* fontName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 2 /* fontNameLC */
        start local 2 // java.lang.String fontNameLC
         1: .line 1686
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 2 /* fontNameLC */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        end local 2 // java.lang.String fontNameLC
        end local 1 // java.lang.String fontName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lsun/font/SunFontManager;
            0    2     1    fontName  Ljava/lang/String;
            1    2     2  fontNameLC  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fontName  

  private sun.font.PhysicalFont registerFontFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Lsun/font/PhysicalFont;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String file
         0: .line 1690
            new java.io.File
            dup
            aload 1 /* file */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.isAbsolute:()Z
            ifeq 14
         1: .line 1691
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* file */
            invokevirtual java.util.concurrent.ConcurrentHashMap.containsKey:(Ljava/lang/Object;)Z
            ifne 14
         2: .line 1692
            iconst_m1
            istore 2 /* fontFormat */
        start local 2 // int fontFormat
         3: .line 1693
            bipush 6
            istore 3 /* fontRank */
        start local 3 // int fontRank
         4: .line 1694
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
            aconst_null
            aload 1 /* file */
            invokeinterface java.io.FilenameFilter.accept:(Ljava/io/File;Ljava/lang/String;)Z
            ifeq 8
         5: .line 1695
            iconst_0
            istore 2 /* fontFormat */
         6: .line 1696
            iconst_3
            istore 3 /* fontRank */
         7: .line 1697
            goto 11
         8: .line 1698
      StackMap locals: int int
      StackMap stack:
            getstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
            aconst_null
            aload 1 /* file */
            invokeinterface java.io.FilenameFilter.accept:(Ljava/io/File;Ljava/lang/String;)Z
            ifeq 11
         9: .line 1699
            iconst_1
            istore 2 /* fontFormat */
        10: .line 1700
            iconst_4
            istore 3 /* fontRank */
        11: .line 1702
      StackMap locals:
      StackMap stack:
            iload 2 /* fontFormat */
            iconst_m1
            if_icmpne 13
        12: .line 1703
            aconst_null
            areturn
        13: .line 1705
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* file */
            aconst_null
            iload 2 /* fontFormat */
            iconst_0
            iload 3 /* fontRank */
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            areturn
        end local 3 // int fontRank
        end local 2 // int fontFormat
        14: .line 1707
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.String file
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Lsun/font/SunFontManager;
            0   15     1        file  Ljava/lang/String;
            3   14     2  fontFormat  I
            4   14     3    fontRank  I
    MethodParameters:
      Name  Flags
      file  

  protected void registerOtherFontFiles(java.util.HashSet<java.lang.String>);
    descriptor: (Ljava/util/HashSet;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.HashSet registeredFontFiles
         0: .line 1719
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1720
            return
         2: .line 1722
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: sun.font.SunFontManager java.util.HashSet top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* file */
        start local 2 // java.lang.String file
         4: .line 1723
            aload 0 /* this */
            aload 2 /* file */
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            pop
        end local 2 // java.lang.String file
         5: .line 1722
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1725
            return
        end local 1 // java.util.HashSet registeredFontFiles
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    7     0                 this  Lsun/font/SunFontManager;
            0    7     1  registeredFontFiles  Ljava/util/HashSet<Ljava/lang/String;>;
            4    5     2                 file  Ljava/lang/String;
    Signature: (Ljava/util/HashSet<Ljava/lang/String;>;)V
    MethodParameters:
                     Name  Flags
      registeredFontFiles  

  public boolean getFamilyNamesFromPlatform(java.util.TreeMap<java.lang.String, java.lang.String>, java.util.Locale);
    descriptor: (Ljava/util/TreeMap;Ljava/util/Locale;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.TreeMap familyNames
        start local 2 // java.util.Locale requestedLocale
         0: .line 1730
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1731
            iconst_0
            ireturn
         2: .line 1733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1734
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: sun.font.SunFontManager java.util.TreeMap java.util.Locale top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* name */
        start local 3 // java.lang.String name
         5: .line 1735
            aload 1 /* familyNames */
            aload 3 /* name */
            aload 2 /* requestedLocale */
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            aload 3 /* name */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // java.lang.String name
         6: .line 1734
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 1737
            iconst_1
            ireturn
        end local 2 // java.util.Locale requestedLocale
        end local 1 // java.util.TreeMap familyNames
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lsun/font/SunFontManager;
            0    8     1      familyNames  Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;
            0    8     2  requestedLocale  Ljava/util/Locale;
            5    6     3             name  Ljava/lang/String;
    Signature: (Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/Locale;)Z
    MethodParameters:
                 Name  Flags
      familyNames      
      requestedLocale  

  private java.lang.String getPathName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String s
         0: .line 1744
            new java.io.File
            dup
            aload 1 /* s */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 2 /* f */
        start local 2 // java.io.File f
         1: .line 1745
            aload 2 /* f */
            invokevirtual java.io.File.isAbsolute:()Z
            ifeq 3
         2: .line 1746
            aload 1 /* s */
            areturn
         3: .line 1747
      StackMap locals: java.io.File
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            arraylength
            iconst_1
            if_icmpne 5
         4: .line 1748
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            iconst_0
            aaload
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.separator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         5: .line 1751
      StackMap locals:
      StackMap stack:
            new sun.font.SunFontManager$6
            dup
            aload 0 /* this */
            aload 1 /* s */
            invokespecial sun.font.SunFontManager$6.<init>:(Lsun/font/SunFontManager;Ljava/lang/String;)V
         6: .line 1750
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* path */
        start local 3 // java.lang.String path
         7: .line 1762
            aload 3 /* path */
            ifnull 9
         8: .line 1763
            aload 3 /* path */
            areturn
        end local 3 // java.lang.String path
         9: .line 1766
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            areturn
        end local 2 // java.io.File f
        end local 1 // java.lang.String s
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/font/SunFontManager;
            0   10     1     s  Ljava/lang/String;
            1   10     2     f  Ljava/io/File;
            7    9     3  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     final

  private sun.font.Font2D findFontFromPlatform(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lsun/font/Font2D;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=11, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String lcName
        start local 2 // int style
         0: .line 1790
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1791
            aconst_null
            areturn
         2: .line 1794
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* family */
        start local 3 // java.util.ArrayList family
         3: .line 1795
            aconst_null
            astore 4 /* fontFile */
        start local 4 // java.lang.String fontFile
         4: .line 1796
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            aload 1 /* lcName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* familyName */
        start local 5 // java.lang.String familyName
         5: .line 1797
            aload 5 /* familyName */
            ifnull 11
         6: .line 1798
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 1 /* lcName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* fontFile */
         7: .line 1799
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1800
            aload 5 /* familyName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
         9: .line 1799
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 3 /* family */
        10: .line 1801
            goto 16
        11: .line 1802
      StackMap locals: java.util.ArrayList java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
            aload 1 /* lcName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 3 /* family */
        12: .line 1803
            aload 3 /* family */
            ifnull 16
            aload 3 /* family */
            invokevirtual java.util.ArrayList.size:()I
            ifle 16
        13: .line 1804
            aload 3 /* family */
            iconst_0
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 6 /* lcFontName */
        start local 6 // java.lang.String lcFontName
        14: .line 1805
            aload 6 /* lcFontName */
            ifnull 16
        15: .line 1806
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
            aload 6 /* lcFontName */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* familyName */
        end local 6 // java.lang.String lcFontName
        16: .line 1810
      StackMap locals:
      StackMap stack:
            aload 3 /* family */
            ifnull 17
            aload 5 /* familyName */
            ifnonnull 18
        17: .line 1811
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        18: .line 1813
      StackMap locals:
      StackMap stack:
            aload 3 /* family */
            getstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 6 /* fontList */
        start local 6 // java.lang.String[] fontList
        19: .line 1814
            aload 6 /* fontList */
            arraylength
            ifne 21
        20: .line 1815
            aconst_null
            areturn
        21: .line 1829
      StackMap locals: java.lang.String[]
      StackMap stack:
            iconst_0
            istore 7 /* f */
        start local 7 // int f
        22: goto 33
        23: .line 1830
      StackMap locals: int
      StackMap stack:
            aload 6 /* fontList */
            iload 7 /* f */
            aaload
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 8 /* fontNameLC */
        start local 8 // java.lang.String fontNameLC
        24: .line 1831
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 8 /* fontNameLC */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 9 /* fileName */
        start local 9 // java.lang.String fileName
        25: .line 1832
            aload 9 /* fileName */
            ifnonnull 32
        26: .line 1833
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        27: .line 1834
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        28: .line 1835
            new java.lang.StringBuilder
            dup
            ldc "Platform lookup : No file for font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        29: .line 1836
            aload 6 /* fontList */
            iload 7 /* f */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in family "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* familyName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        30: .line 1835
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        31: .line 1838
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aconst_null
            areturn
        end local 9 // java.lang.String fileName
        end local 8 // java.lang.String fontNameLC
        32: .line 1829
      StackMap locals:
      StackMap stack:
            iinc 7 /* f */ 1
      StackMap locals:
      StackMap stack:
        33: iload 7 /* f */
            aload 6 /* fontList */
            arraylength
            if_icmplt 23
        end local 7 // int f
        34: .line 1845
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
        35: .line 1846
            aload 4 /* fontFile */
            ifnull 40
        36: .line 1847
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* fontFile */
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            aconst_null
        37: .line 1848
            iconst_0
            iconst_0
        38: .line 1849
            iconst_3
        39: .line 1847
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            astore 7 /* physicalFont */
        40: .line 1852
      StackMap locals: sun.font.SunFontManager java.lang.String int java.util.ArrayList java.lang.String java.lang.String java.lang.String[] sun.font.PhysicalFont
      StackMap stack:
            iconst_0
            istore 8 /* f */
        start local 8 // int f
        41: goto 50
        42: .line 1853
      StackMap locals: int
      StackMap stack:
            aload 6 /* fontList */
            iload 8 /* f */
            aaload
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 9 /* fontNameLC */
        start local 9 // java.lang.String fontNameLC
        43: .line 1854
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            aload 9 /* fontNameLC */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 10 /* fileName */
        start local 10 // java.lang.String fileName
        44: .line 1855
            aload 4 /* fontFile */
            ifnull 46
            aload 4 /* fontFile */
            aload 10 /* fileName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 46
        45: .line 1856
            goto 49
        46: .line 1861
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 10 /* fileName */
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            aconst_null
        47: .line 1862
            iconst_0
            iconst_0
            iconst_3
        48: .line 1861
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        end local 10 // java.lang.String fileName
        end local 9 // java.lang.String fontNameLC
        49: .line 1852
      StackMap locals:
      StackMap stack:
            iinc 8 /* f */ 1
      StackMap locals:
      StackMap stack:
        50: iload 8 /* f */
            aload 6 /* fontList */
            arraylength
            if_icmplt 42
        end local 8 // int f
        51: .line 1865
            aconst_null
            astore 8 /* font */
        start local 8 // sun.font.Font2D font
        52: .line 1866
            aload 5 /* familyName */
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 9 /* fontFamily */
        start local 9 // sun.font.FontFamily fontFamily
        53: .line 1868
            aload 7 /* physicalFont */
            ifnull 55
        54: .line 1869
            iload 2 /* style */
            aload 7 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            ior
            istore 2 /* style */
        55: .line 1871
      StackMap locals: sun.font.SunFontManager java.lang.String int java.util.ArrayList java.lang.String java.lang.String java.lang.String[] sun.font.PhysicalFont sun.font.Font2D sun.font.FontFamily
      StackMap stack:
            aload 9 /* fontFamily */
            ifnull 59
        56: .line 1872
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 8 /* font */
        57: .line 1873
            aload 8 /* font */
            ifnonnull 59
        58: .line 1874
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 8 /* font */
        59: .line 1877
      StackMap locals:
      StackMap stack:
            aload 8 /* font */
            areturn
        end local 9 // sun.font.FontFamily fontFamily
        end local 8 // sun.font.Font2D font
        end local 7 // sun.font.PhysicalFont physicalFont
        end local 6 // java.lang.String[] fontList
        end local 5 // java.lang.String familyName
        end local 4 // java.lang.String fontFile
        end local 3 // java.util.ArrayList family
        end local 2 // int style
        end local 1 // java.lang.String lcName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   60     0          this  Lsun/font/SunFontManager;
            0   60     1        lcName  Ljava/lang/String;
            0   60     2         style  I
            3   60     3        family  Ljava/util/ArrayList<Ljava/lang/String;>;
            4   60     4      fontFile  Ljava/lang/String;
            5   60     5    familyName  Ljava/lang/String;
           14   16     6    lcFontName  Ljava/lang/String;
           19   60     6      fontList  [Ljava/lang/String;
           22   34     7             f  I
           24   32     8    fontNameLC  Ljava/lang/String;
           25   32     9      fileName  Ljava/lang/String;
           35   60     7  physicalFont  Lsun/font/PhysicalFont;
           41   51     8             f  I
           43   49     9    fontNameLC  Ljava/lang/String;
           44   49    10      fileName  Ljava/lang/String;
           52   60     8          font  Lsun/font/Font2D;
           53   60     9    fontFamily  Lsun/font/FontFamily;
    MethodParameters:
        Name  Flags
      lcName  
      style   

  public sun.font.Font2D findFont2D(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Lsun/font/Font2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=4
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
        start local 2 // int style
        start local 3 // int fallback
         0: .line 1891
            aload 1 /* name */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 4 /* lowerCaseName */
        start local 4 // java.lang.String lowerCaseName
         1: .line 1892
            new java.lang.StringBuilder
            dup
            aload 4 /* lowerCaseName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* style */
            invokestatic sun.font.SunFontManager.dotStyleStr:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* mapName */
        start local 5 // java.lang.String mapName
         2: .line 1900
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 6 /* font */
        start local 6 // sun.font.Font2D font
         3: .line 1901
            aload 6 /* font */
            ifnull 5
         4: .line 1902
            aload 6 /* font */
            areturn
         5: .line 1905
      StackMap locals: java.lang.String java.lang.String sun.font.Font2D
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 7
         6: .line 1906
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "Search for font: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 1915
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 13
         8: .line 1916
            aload 4 /* lowerCaseName */
            ldc "ms sans serif"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
         9: .line 1917
            ldc "sansserif"
            astore 1 /* name */
        10: .line 1918
            goto 13
      StackMap locals:
      StackMap stack:
        11: aload 4 /* lowerCaseName */
            ldc "ms serif"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 1919
            ldc "serif"
            astore 1 /* name */
        13: .line 1931
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "default"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        14: .line 1932
            ldc "dialog"
            astore 1 /* name */
        15: .line 1936
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 7 /* family */
        start local 7 // sun.font.FontFamily family
        16: .line 1937
            aload 7 /* family */
            ifnull 29
        17: .line 1938
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
        18: .line 1939
            aload 6 /* font */
            ifnonnull 20
        19: .line 1940
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        20: .line 1942
      StackMap locals: sun.font.FontFamily
      StackMap stack:
            aload 6 /* font */
            ifnonnull 22
        21: .line 1943
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findFontFromPlatform:(Ljava/lang/String;I)Lsun/font/Font2D;
            astore 6 /* font */
        22: .line 1945
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 24
        23: .line 1946
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
        24: .line 1948
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 26
        25: .line 1949
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
        26: .line 1951
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 29
        27: .line 1952
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 1953
            aload 6 /* font */
            areturn
        29: .line 1960
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fullNameToFont:Ljava/util/concurrent/ConcurrentHashMap;
            aload 4 /* lowerCaseName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 6 /* font */
        30: .line 1961
            aload 6 /* font */
            ifnull 45
        31: .line 1974
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 32
            iload 2 /* style */
            ifne 34
        32: .line 1975
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        33: .line 1976
            aload 6 /* font */
            areturn
        34: .line 1984
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            aconst_null
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 7 /* family */
        35: .line 1985
            aload 7 /* family */
            ifnull 45
        36: .line 1986
            aload 7 /* family */
            iload 2 /* style */
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            ior
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 8 /* familyFont */
        start local 8 // sun.font.Font2D familyFont
        37: .line 1988
            aload 8 /* familyFont */
            ifnull 40
        38: .line 1989
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 8 /* familyFont */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        39: .line 1990
            aload 8 /* familyFont */
            areturn
        40: .line 1997
      StackMap locals: sun.font.Font2D
      StackMap stack:
            aload 7 /* family */
            iload 2 /* style */
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            ior
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 8 /* familyFont */
        41: .line 1998
            aload 8 /* familyFont */
            ifnull 45
        42: .line 2006
            aload 8 /* familyFont */
            iload 2 /* style */
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            ior
            invokevirtual sun.font.Font2D.canDoStyle:(I)Z
            ifeq 45
        43: .line 2007
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 8 /* familyFont */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        44: .line 2008
            aload 8 /* familyFont */
            areturn
        end local 8 // sun.font.Font2D familyFont
        45: .line 2016
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 68
        46: .line 2018
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findFontFromPlatformMap:(Ljava/lang/String;I)Lsun/font/Font2D;
            astore 6 /* font */
        47: .line 2019
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 50
        48: .line 2020
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        49: .line 2021
            new java.lang.StringBuilder
            dup
            ldc "findFontFromPlatformMap returned "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* font */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        50: .line 2023
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 53
        51: .line 2024
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        52: .line 2025
            aload 6 /* font */
            areturn
        53: .line 2031
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifle 58
        54: .line 2032
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findJREDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        55: .line 2033
            aload 6 /* font */
            ifnull 58
        56: .line 2034
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 2035
            aload 6 /* font */
            areturn
        58: .line 2038
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findFontFromPlatform:(Ljava/lang/String;I)Lsun/font/Font2D;
            astore 6 /* font */
        59: .line 2039
            aload 6 /* font */
            ifnull 68
        60: .line 2040
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 66
        61: .line 2041
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        62: .line 2042
            new java.lang.StringBuilder
            dup
            ldc "Found font via platform API for request:\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        63: .line 2043
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\":, style="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* style */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        64: .line 2044
            ldc " found font: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* font */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        65: .line 2042
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        66: .line 2046
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        67: .line 2047
            aload 6 /* font */
            areturn
        68: .line 2063
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifle 73
        69: .line 2064
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        70: .line 2065
            aload 6 /* font */
            ifnull 73
        71: .line 2066
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        72: .line 2067
            aload 6 /* font */
            areturn
        73: .line 2081
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 92
        74: .line 2082
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 8 /* familyTable */
        start local 8 // java.util.Hashtable familyTable
        75: .line 2083
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 9 /* nameTable */
        start local 9 // java.util.Hashtable nameTable
        76: .line 2085
            aload 8 /* familyTable */
            aload 4 /* lowerCaseName */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.FontFamily
            astore 7 /* family */
        77: .line 2086
            aload 7 /* family */
            ifnull 87
        78: .line 2087
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
        79: .line 2088
            aload 6 /* font */
            ifnonnull 81
        80: .line 2089
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
        81: .line 2091
      StackMap locals: java.util.Hashtable java.util.Hashtable
      StackMap stack:
            aload 6 /* font */
            ifnonnull 83
        82: .line 2092
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
        83: .line 2094
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 87
        84: .line 2095
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 86
        85: .line 2096
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        86: .line 2098
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
        87: .line 2101
      StackMap locals:
      StackMap stack:
            aload 9 /* nameTable */
            aload 4 /* lowerCaseName */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 6 /* font */
        88: .line 2102
            aload 6 /* font */
            ifnull 92
        89: .line 2103
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 91
        90: .line 2104
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        91: .line 2106
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
        end local 9 // java.util.Hashtable nameTable
        end local 8 // java.util.Hashtable familyTable
        92: .line 2113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFonts:Z
            ifne 99
        93: .line 2114
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 96
        94: .line 2115
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        95: .line 2116
            new java.lang.StringBuilder
            dup
            ldc "Load fonts looking for:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        96: .line 2118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
        97: .line 2119
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFonts:Z
        98: .line 2120
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            iload 3 /* fallback */
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            areturn
        99: .line 2123
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifne 106
       100: .line 2124
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 103
       101: .line 2125
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
       102: .line 2126
            new java.lang.StringBuilder
            dup
            ldc "Load font files looking for:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
       103: .line 2128
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
       104: .line 2129
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
       105: .line 2130
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            iload 3 /* fallback */
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            areturn
       106: .line 2148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findFont2DAllLocales:(Ljava/lang/String;I)Lsun/font/Font2D;
            dup
            astore 6 /* font */
            ifnull 109
       107: .line 2149
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       108: .line 2150
            aload 6 /* font */
            areturn
       109: .line 2163
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 116
       110: .line 2165
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFontConfiguration:()Lsun/awt/FontConfiguration;
            aload 1 /* name */
            aconst_null
            invokevirtual sun.awt.FontConfiguration.getFallbackFamilyName:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
       111: .line 2164
            astore 8 /* compatName */
        start local 8 // java.lang.String compatName
       112: .line 2166
            aload 8 /* compatName */
            ifnull 128
       113: .line 2167
            aload 0 /* this */
            aload 8 /* compatName */
            iload 2 /* style */
            iload 3 /* fallback */
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            astore 6 /* font */
       114: .line 2168
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       115: .line 2169
            aload 6 /* font */
            areturn
        end local 8 // java.lang.String compatName
       116: .line 2171
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "timesroman"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 120
       117: .line 2172
            aload 0 /* this */
            ldc "serif"
            iload 2 /* style */
            iload 3 /* fallback */
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            astore 6 /* font */
       118: .line 2173
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       119: .line 2174
            aload 6 /* font */
            areturn
       120: .line 2175
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "helvetica"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 124
       121: .line 2176
            aload 0 /* this */
            ldc "sansserif"
            iload 2 /* style */
            iload 3 /* fallback */
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            astore 6 /* font */
       122: .line 2177
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       123: .line 2178
            aload 6 /* font */
            areturn
       124: .line 2179
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "courier"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 128
       125: .line 2180
            aload 0 /* this */
            ldc "monospaced"
            iload 2 /* style */
            iload 3 /* fallback */
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            astore 6 /* font */
       126: .line 2181
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       127: .line 2182
            aload 6 /* font */
            areturn
       128: .line 2185
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 130
       129: .line 2186
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "No font found for:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
       130: .line 2189
      StackMap locals:
      StackMap stack:
            iload 3 /* fallback */
            tableswitch { // 1 - 2
                    1: 131
                    2: 132
              default: 133
          }
       131: .line 2190
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            areturn
       132: .line 2191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.getDefaultLogicalFont:(I)Lsun/font/Font2D;
            areturn
       133: .line 2192
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 7 // sun.font.FontFamily family
        end local 6 // sun.font.Font2D font
        end local 5 // java.lang.String mapName
        end local 4 // java.lang.String lowerCaseName
        end local 3 // int fallback
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  134     0           this  Lsun/font/SunFontManager;
            0  134     1           name  Ljava/lang/String;
            0  134     2          style  I
            0  134     3       fallback  I
            1  134     4  lowerCaseName  Ljava/lang/String;
            2  134     5        mapName  Ljava/lang/String;
            3  134     6           font  Lsun/font/Font2D;
           16  134     7         family  Lsun/font/FontFamily;
           37   45     8     familyFont  Lsun/font/Font2D;
           75   92     8    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           76   92     9      nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
          112  116     8     compatName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      name      
      style     
      fallback  

  public boolean usePlatformFontMetrics();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2202
            aload 0 /* this */
            getfield sun.font.SunFontManager.usePlatformFontMetrics:Z
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  public int getNumFonts();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2206
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            aload 0 /* this */
            getfield sun.font.SunFontManager.maxCompFont:I
            iadd
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  private static boolean fontSupportsEncoding(java.awt.Font, java.lang.String);
    descriptor: (Ljava/awt/Font;Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Font font
        start local 1 // java.lang.String encoding
         0: .line 2210
            aload 0 /* font */
            invokestatic sun.font.FontUtilities.getFont2D:(Ljava/awt/Font;)Lsun/font/Font2D;
            aload 1 /* encoding */
            invokevirtual sun.font.Font2D.supportsEncoding:(Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String encoding
        end local 0 // java.awt.Font font
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      font  Ljava/awt/Font;
            0    1     1  encoding  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      font      
      encoding  

  protected abstract java.lang.String getFontPath(boolean);
    descriptor: (Z)Ljava/lang/String;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
              Name  Flags
      noType1Fonts  

  public sun.font.Font2D[] createFont2D(java.io.File, int, boolean, boolean, sun.font.CreatedFontTracker);
    descriptor: (Ljava/io/File;IZZLsun/font/CreatedFontTracker;)[Lsun/font/Font2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=16, args_size=6
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.io.File fontFile
        start local 2 // int fontFormat
        start local 3 // boolean all
        start local 4 // boolean isCopy
        start local 5 // sun.font.CreatedFontTracker tracker
         0: .line 2224
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* fList */
        start local 6 // java.util.List fList
         1: .line 2225
            iconst_1
            istore 7 /* cnt */
        start local 7 // int cnt
         2: .line 2226
            aload 1 /* fontFile */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 8 /* fontFilePath */
        start local 8 // java.lang.String fontFilePath
         3: .line 2227
            aconst_null
            astore 9 /* font2D */
        start local 9 // sun.font.FileFont font2D
         4: .line 2228
            aload 1 /* fontFile */
            astore 10 /* fFile */
        start local 10 // java.io.File fFile
         5: .line 2229
            aload 5 /* tracker */
            astore 11 /* _tracker */
        start local 11 // sun.font.CreatedFontTracker _tracker
         6: .line 2230
            iconst_0
            istore 12 /* weakRefs */
        start local 12 // boolean weakRefs
         7: .line 2231
            iconst_0
            istore 13 /* maxStrikes */
        start local 13 // int maxStrikes
         8: .line 2232
            aload 0 /* this */
            dup
            astore 14
            monitorenter
         9: .line 2233
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdFontCount:I
            getstatic sun.font.SunFontManager.maxSoftRefCnt:I
            if_icmpge 12
        10: .line 2234
            aload 0 /* this */
            dup
            getfield sun.font.SunFontManager.createdFontCount:I
            iconst_1
            iadd
            putfield sun.font.SunFontManager.createdFontCount:I
        11: .line 2235
            goto 14
        12: .line 2236
      StackMap locals: sun.font.SunFontManager java.io.File int int int sun.font.CreatedFontTracker java.util.List int java.lang.String sun.font.FileFont java.io.File sun.font.CreatedFontTracker int int sun.font.SunFontManager
      StackMap stack:
            iconst_1
            istore 12 /* weakRefs */
        13: .line 2237
            bipush 10
            istore 13 /* maxStrikes */
        14: .line 2232
      StackMap locals:
      StackMap stack:
            aload 14
            monitorexit
        15: goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        16: aload 14
            monitorexit
        17: athrow
        18: .line 2241
      StackMap locals:
      StackMap stack:
            iload 2 /* fontFormat */
            tableswitch { // 0 - 1
                    0: 19
                    1: 32
              default: 36
          }
        19: .line 2243
      StackMap locals:
      StackMap stack:
            new sun.font.TrueTypeFont
            dup
            aload 8 /* fontFilePath */
            aconst_null
            iconst_0
            iconst_1
            invokespecial sun.font.TrueTypeFont.<init>:(Ljava/lang/String;Ljava/lang/Object;IZ)V
            astore 9 /* font2D */
        20: .line 2244
            aload 9 /* font2D */
            iload 12 /* weakRefs */
            iload 13 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        21: .line 2245
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 2246
            iload 3 /* all */
            ifne 24
        23: .line 2247
            goto 41
        24: .line 2249
      StackMap locals:
      StackMap stack:
            aload 9 /* font2D */
            checkcast sun.font.TrueTypeFont
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
            istore 7 /* cnt */
        25: .line 2250
            iconst_1
            istore 14 /* index */
        start local 14 // int index
        26: .line 2251
            goto 30
        27: .line 2252
      StackMap locals: int
      StackMap stack:
            new sun.font.TrueTypeFont
            dup
            aload 8 /* fontFilePath */
            aconst_null
            iload 14 /* index */
            iinc 14 /* index */ 1
            iconst_1
            invokespecial sun.font.TrueTypeFont.<init>:(Ljava/lang/String;Ljava/lang/Object;IZ)V
            astore 9 /* font2D */
        28: .line 2253
            aload 9 /* font2D */
            iload 12 /* weakRefs */
            iload 13 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        29: .line 2254
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        30: .line 2251
      StackMap locals:
      StackMap stack:
            iload 14 /* index */
            iload 7 /* cnt */
            if_icmplt 27
        31: .line 2256
            goto 41
        end local 14 // int index
        32: .line 2258
      StackMap locals:
      StackMap stack:
            new sun.font.Type1Font
            dup
            aload 8 /* fontFilePath */
            aconst_null
            iload 4 /* isCopy */
            invokespecial sun.font.Type1Font.<init>:(Ljava/lang/String;Ljava/lang/Object;Z)V
            astore 9 /* font2D */
        33: .line 2259
            aload 9 /* font2D */
            iload 12 /* weakRefs */
            iload 13 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        34: .line 2260
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        35: .line 2261
            goto 41
        36: .line 2263
      StackMap locals:
      StackMap stack:
            new java.awt.FontFormatException
            dup
            ldc "Unrecognised Font Format"
            invokespecial java.awt.FontFormatException.<init>:(Ljava/lang/String;)V
            athrow
        37: .line 2265
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
            astore 14 /* e */
        start local 14 // java.awt.FontFormatException e
        38: .line 2266
            iload 4 /* isCopy */
            ifeq 40
        39: .line 2267
            new sun.font.SunFontManager$7
            dup
            aload 0 /* this */
            aload 11 /* _tracker */
            aload 10 /* fFile */
            invokespecial sun.font.SunFontManager$7.<init>:(Lsun/font/SunFontManager;Lsun/font/CreatedFontTracker;Ljava/io/File;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        40: .line 2277
      StackMap locals: java.awt.FontFormatException
      StackMap stack:
            aload 14 /* e */
            athrow
        end local 14 // java.awt.FontFormatException e
        41: .line 2279
      StackMap locals:
      StackMap stack:
            iload 4 /* isCopy */
            ifeq 54
        42: .line 2280
            aload 6 /* fList */
            aload 1 /* fontFile */
            iload 7 /* cnt */
            aload 5 /* tracker */
            invokestatic sun.font.FileFont.setFileToRemove:(Ljava/util/List;Ljava/io/File;ILsun/font/CreatedFontTracker;)V
        43: .line 2281
            ldc Lsun/font/FontManager;
            dup
            astore 14
            monitorenter
        44: .line 2283
            aload 0 /* this */
            getfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
            ifnonnull 46
        45: .line 2284
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        46: .line 2286
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
            aload 1 /* fontFile */
            invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
            pop
        47: .line 2288
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            ifnonnull 50
        48: .line 2289
            new sun.font.SunFontManager$8
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$8.<init>:(Lsun/font/SunFontManager;)V
            astore 15 /* fileCloserRunnable */
        start local 15 // java.lang.Runnable fileCloserRunnable
        49: .line 2316
            aload 0 /* this */
            aload 15 /* fileCloserRunnable */
            invokedynamic run(Lsun/font/SunFontManager;Ljava/lang/Runnable;)Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  sun/font/SunFontManager.lambda$1(Ljava/lang/Runnable;)Ljava/lang/Void; (7)
                  ()Ljava/lang/Void;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        end local 15 // java.lang.Runnable fileCloserRunnable
        50: .line 2281
      StackMap locals:
      StackMap stack:
            aload 14
            monitorexit
        51: goto 54
      StackMap locals:
      StackMap stack: java.lang.Throwable
        52: aload 14
            monitorexit
        53: athrow
        54: .line 2327
      StackMap locals:
      StackMap stack:
            aload 6 /* fList */
            iconst_0
            anewarray sun.font.Font2D
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast sun.font.Font2D[]
            areturn
        end local 13 // int maxStrikes
        end local 12 // boolean weakRefs
        end local 11 // sun.font.CreatedFontTracker _tracker
        end local 10 // java.io.File fFile
        end local 9 // sun.font.FileFont font2D
        end local 8 // java.lang.String fontFilePath
        end local 7 // int cnt
        end local 6 // java.util.List fList
        end local 5 // sun.font.CreatedFontTracker tracker
        end local 4 // boolean isCopy
        end local 3 // boolean all
        end local 2 // int fontFormat
        end local 1 // java.io.File fontFile
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   55     0                this  Lsun/font/SunFontManager;
            0   55     1            fontFile  Ljava/io/File;
            0   55     2          fontFormat  I
            0   55     3                 all  Z
            0   55     4              isCopy  Z
            0   55     5             tracker  Lsun/font/CreatedFontTracker;
            1   55     6               fList  Ljava/util/List<Lsun/font/Font2D;>;
            2   55     7                 cnt  I
            3   55     8        fontFilePath  Ljava/lang/String;
            4   55     9              font2D  Lsun/font/FileFont;
            5   55    10               fFile  Ljava/io/File;
            6   55    11            _tracker  Lsun/font/CreatedFontTracker;
            7   55    12            weakRefs  Z
            8   55    13          maxStrikes  I
           26   32    14               index  I
           38   41    14                   e  Ljava/awt/FontFormatException;
           49   50    15  fileCloserRunnable  Ljava/lang/Runnable;
      Exception table:
        from    to  target  type
           9    15      16  any
          16    17      16  any
          18    37      37  Class java.awt.FontFormatException
          44    51      52  any
          52    53      52  any
    Exceptions:
      throws java.awt.FontFormatException
    MethodParameters:
            Name  Flags
      fontFile    
      fontFormat  
      all         
      isCopy      
      tracker     

  public synchronized java.lang.String getFullNameByFileName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fileName
         0: .line 2334
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 2 /* physFonts */
        start local 2 // sun.font.PhysicalFont[] physFonts
         1: .line 2335
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 6
         3: .line 2336
      StackMap locals: sun.font.PhysicalFont[] int
      StackMap stack:
            aload 2 /* physFonts */
            iload 3 /* i */
            aaload
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            aload 1 /* fileName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 2337
            aload 2 /* physFonts */
            iload 3 /* i */
            aaload
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
         5: .line 2335
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 2 /* physFonts */
            arraylength
            if_icmplt 3
        end local 3 // int i
         7: .line 2340
            aconst_null
            areturn
        end local 2 // sun.font.PhysicalFont[] physFonts
        end local 1 // java.lang.String fileName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lsun/font/SunFontManager;
            0    8     1   fileName  Ljava/lang/String;
            1    8     2  physFonts  [Lsun/font/PhysicalFont;
            2    7     3          i  I
    MethodParameters:
          Name  Flags
      fileName  

  public synchronized void deRegisterBadFont(sun.font.Font2D);
    descriptor: (Lsun/font/Font2D;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // sun.font.Font2D font2D
         0: .line 2356
            aload 1 /* font2D */
            instanceof sun.font.PhysicalFont
            ifne 2
         1: .line 2358
            return
         2: .line 2360
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 2361
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 2362
            new java.lang.StringBuilder
            dup
            ldc "Deregister bad font: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* font2D */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.severe:(Ljava/lang/String;)V
         5: .line 2364
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* font2D */
            checkcast sun.font.PhysicalFont
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            invokevirtual sun.font.SunFontManager.replaceFont:(Lsun/font/PhysicalFont;Lsun/font/PhysicalFont;)V
         6: .line 2366
            return
        end local 1 // sun.font.Font2D font2D
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lsun/font/SunFontManager;
            0    7     1  font2D  Lsun/font/Font2D;
    MethodParameters:
        Name  Flags
      font2D  

  public synchronized void replaceFont(sun.font.PhysicalFont, sun.font.PhysicalFont);
    descriptor: (Lsun/font/PhysicalFont;Lsun/font/PhysicalFont;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // sun.font.PhysicalFont oldFont
        start local 2 // sun.font.PhysicalFont newFont
         0: .line 2375
            aload 1 /* oldFont */
            getfield sun.font.PhysicalFont.handle:Lsun/font/Font2DHandle;
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            aload 1 /* oldFont */
            if_acmpeq 2
         1: .line 2377
            return
         2: .line 2383
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
         3: .line 2384
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 6
         4: .line 2385
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         5: .line 2386
            new java.lang.StringBuilder
            dup
            ldc "Can't replace bad font with itself "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* oldFont */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.severe:(Ljava/lang/String;)V
         6: .line 2388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 3 /* physFonts */
        start local 3 // sun.font.PhysicalFont[] physFonts
         7: .line 2389
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 13
         9: .line 2390
      StackMap locals: sun.font.PhysicalFont[] int
      StackMap stack:
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            aload 2 /* newFont */
            if_acmpeq 12
        10: .line 2391
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            astore 2 /* newFont */
        11: .line 2392
            goto 14
        12: .line 2389
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            aload 3 /* physFonts */
            arraylength
            if_icmplt 9
        end local 4 // int i
        14: .line 2395
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
        15: .line 2396
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        16: .line 2397
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        17: .line 2398
            ldc "This is bad. No good physicalFonts found."
            invokevirtual sun.util.logging.PlatformLogger.severe:(Ljava/lang/String;)V
        18: .line 2400
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.font.PhysicalFont[] physFonts
        19: .line 2408
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            getfield sun.font.PhysicalFont.handle:Lsun/font/Font2DHandle;
            aload 2 /* newFont */
            putfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
        20: .line 2409
            aload 0 /* this */
            getfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* oldFont */
            getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
            invokevirtual java.util.concurrent.ConcurrentHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 2410
            aload 0 /* this */
            getfield sun.font.SunFontManager.fullNameToFont:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* oldFont */
            getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.util.concurrent.ConcurrentHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 2411
            aload 1 /* oldFont */
            invokestatic sun.font.FontFamily.remove:(Lsun/font/Font2D;)V
        23: .line 2412
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 37
        24: .line 2413
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
        25: .line 2414
            iconst_0
            anewarray java.util.Map$Entry
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.util.Map$Entry[]
        26: .line 2413
            astore 3 /* mapEntries */
        start local 3 // java.util.Map$Entry[] mapEntries
        27: .line 2418
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        28: goto 36
        29: .line 2419
      StackMap locals: java.util.Map$Entry[] int
      StackMap stack:
            aload 3 /* mapEntries */
            iload 4 /* i */
            aaload
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            aload 1 /* oldFont */
            if_acmpne 35
        30: .line 2422
            aload 3 /* mapEntries */
            iload 4 /* i */
            aaload
            astore 5 /* tmp */
        start local 5 // java.util.Map$Entry tmp
        31: .line 2423
            aload 5 /* tmp */
            aload 2 /* newFont */
            invokeinterface java.util.Map$Entry.setValue:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.util.Map$Entry tmp
        32: .line 2424
            goto 35
      StackMap locals:
      StackMap stack: java.lang.Exception
        33: pop
        34: .line 2428
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            aload 3 /* mapEntries */
            iload 4 /* i */
            aaload
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 2418
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        36: iload 4 /* i */
            aload 3 /* mapEntries */
            arraylength
            if_icmplt 29
        end local 4 // int i
        end local 3 // java.util.Map$Entry[] mapEntries
        37: .line 2434
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        38: goto 42
        39: .line 2464
      StackMap locals: int
      StackMap stack:
            aload 2 /* newFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iconst_2
            if_icmple 41
        40: .line 2465
            aload 0 /* this */
            getfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
            iload 3 /* i */
            aaload
            aload 1 /* oldFont */
            aload 2 /* newFont */
            invokevirtual sun.font.CompositeFont.replaceComponentFont:(Lsun/font/PhysicalFont;Lsun/font/PhysicalFont;)V
        41: .line 2434
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        42: iload 3 /* i */
            aload 0 /* this */
            getfield sun.font.SunFontManager.maxCompFont:I
            if_icmplt 39
        end local 3 // int i
        43: .line 2468
            return
        end local 2 // sun.font.PhysicalFont newFont
        end local 1 // sun.font.PhysicalFont oldFont
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   44     0        this  Lsun/font/SunFontManager;
            0   44     1     oldFont  Lsun/font/PhysicalFont;
            0   44     2     newFont  Lsun/font/PhysicalFont;
            7   19     3   physFonts  [Lsun/font/PhysicalFont;
            8   14     4           i  I
           27   37     3  mapEntries  [Ljava/util/Map$Entry;
           28   37     4           i  I
           31   32     5         tmp  Ljava/util/Map$Entry<Ljava/lang/String;Lsun/font/PhysicalFont;>;
           38   43     3           i  I
      Exception table:
        from    to  target  type
          30    32      33  Class java.lang.Exception
    MethodParameters:
         Name  Flags
      oldFont  
      newFont  

  private synchronized void loadLocaleNames();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2471
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 2
         1: .line 2472
            return
         2: .line 2474
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
         3: .line 2475
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 1 /* fonts */
        start local 1 // sun.font.Font2D[] fonts
         4: .line 2476
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 18
         6: .line 2477
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            instanceof sun.font.TrueTypeFont
            ifeq 17
         7: .line 2478
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            checkcast sun.font.TrueTypeFont
            astore 3 /* ttf */
        start local 3 // sun.font.TrueTypeFont ttf
         8: .line 2479
            aload 3 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getAllFullNames:()[Ljava/lang/String;
            astore 4 /* fullNames */
        start local 4 // java.lang.String[] fullNames
         9: .line 2480
            iconst_0
            istore 5 /* n */
        start local 5 // int n
        10: goto 13
        11: .line 2481
      StackMap locals: sun.font.TrueTypeFont java.lang.String[] int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            aload 4 /* fullNames */
            iload 5 /* n */
            aaload
            aload 3 /* ttf */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 2480
            iinc 5 /* n */ 1
      StackMap locals:
      StackMap stack:
        13: iload 5 /* n */
            aload 4 /* fullNames */
            arraylength
            if_icmplt 11
        end local 5 // int n
        14: .line 2483
            aload 3 /* ttf */
            getfield sun.font.TrueTypeFont.familyName:Ljava/lang/String;
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 5 /* family */
        start local 5 // sun.font.FontFamily family
        15: .line 2484
            aload 5 /* family */
            ifnull 17
        16: .line 2485
            aload 5 /* family */
            aload 3 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getAllFamilyNames:()[Ljava/lang/String;
            invokestatic sun.font.FontFamily.addLocaleNames:(Lsun/font/FontFamily;[Ljava/lang/String;)V
        end local 5 // sun.font.FontFamily family
        end local 4 // java.lang.String[] fullNames
        end local 3 // sun.font.TrueTypeFont ttf
        17: .line 2476
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 2 /* i */
            aload 1 /* fonts */
            arraylength
            if_icmplt 6
        end local 2 // int i
        19: .line 2489
            return
        end local 1 // sun.font.Font2D[] fonts
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lsun/font/SunFontManager;
            4   20     1      fonts  [Lsun/font/Font2D;
            5   19     2          i  I
            8   17     3        ttf  Lsun/font/TrueTypeFont;
            9   17     4  fullNames  [Ljava/lang/String;
           10   14     5          n  I
           15   17     5     family  Lsun/font/FontFamily;

  private sun.font.Font2D findFont2DAllLocales(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lsun/font/Font2D;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
        start local 2 // int style
         0: .line 2500
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2501
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2502
            new java.lang.StringBuilder
            dup
            ldc "Searching localised font names for:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2509
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnonnull 5
         4: .line 2510
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadLocaleNames:()V
         5: .line 2512
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 3 /* lowerCaseName */
        start local 3 // java.lang.String lowerCaseName
         6: .line 2513
            aconst_null
            astore 4 /* font */
        start local 4 // sun.font.Font2D font
         7: .line 2516
            aload 3 /* lowerCaseName */
            invokestatic sun.font.FontFamily.getLocaleFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 5 /* family */
        start local 5 // sun.font.FontFamily family
         8: .line 2517
            aload 5 /* family */
            ifnull 14
         9: .line 2518
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 4 /* font */
        10: .line 2519
            aload 4 /* font */
            ifnonnull 12
        11: .line 2520
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 4 /* font */
        12: .line 2522
      StackMap locals: java.lang.String sun.font.Font2D sun.font.FontFamily
      StackMap stack:
            aload 4 /* font */
            ifnull 14
        13: .line 2523
            aload 4 /* font */
            areturn
        14: .line 2528
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 6
            monitorenter
        15: .line 2529
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            aload 1 /* name */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 4 /* font */
        16: .line 2528
            aload 6
            monitorexit
        17: goto 20
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String sun.font.Font2D sun.font.FontFamily sun.font.SunFontManager
      StackMap stack: java.lang.Throwable
        18: aload 6
            monitorexit
        19: athrow
        20: .line 2531
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            ifnull 33
        21: .line 2532
            aload 4 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 22
            iload 2 /* style */
            ifne 23
        22: .line 2533
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            areturn
        23: .line 2535
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            aconst_null
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
            astore 5 /* family */
        24: .line 2536
            aload 5 /* family */
            ifnull 33
        25: .line 2537
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* familyFont */
        start local 6 // sun.font.Font2D familyFont
        26: .line 2539
            aload 6 /* familyFont */
            ifnull 28
        27: .line 2540
            aload 6 /* familyFont */
            areturn
        28: .line 2542
      StackMap locals: sun.font.Font2D
      StackMap stack:
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* familyFont */
        29: .line 2543
            aload 6 /* familyFont */
            ifnull 33
        30: .line 2552
            aload 6 /* familyFont */
            iload 2 /* style */
            invokevirtual sun.font.Font2D.canDoStyle:(I)Z
            ifne 32
        31: .line 2553
            aconst_null
            astore 6 /* familyFont */
        32: .line 2555
      StackMap locals:
      StackMap stack:
            aload 6 /* familyFont */
            areturn
        end local 6 // sun.font.Font2D familyFont
        33: .line 2561
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            areturn
        end local 5 // sun.font.FontFamily family
        end local 4 // sun.font.Font2D font
        end local 3 // java.lang.String lowerCaseName
        end local 2 // int style
        end local 1 // java.lang.String name
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   34     0           this  Lsun/font/SunFontManager;
            0   34     1           name  Ljava/lang/String;
            0   34     2          style  I
            6   34     3  lowerCaseName  Ljava/lang/String;
            7   34     4           font  Lsun/font/Font2D;
            8   34     5         family  Lsun/font/FontFamily;
           26   33     6     familyFont  Lsun/font/Font2D;
      Exception table:
        from    to  target  type
          15    17      18  any
          18    19      18  any
    MethodParameters:
       Name  Flags
      name   
      style  

  public boolean usingAlternateCompositeFonts();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2629
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingAlternateComposites:Z
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  public synchronized void useAlternateFontforJALocales();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2637
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2638
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2639
            ldc "Entered useAlternateFontforJALocales()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2641
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 2642
            return
         5: .line 2644
      StackMap locals:
      StackMap stack:
            iconst_1
            putstatic sun.font.SunFontManager.gAltJAFont:Z
         6: .line 2645
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/font/SunFontManager;

  public boolean usingAlternateFontforJALocales();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2648
            getstatic sun.font.SunFontManager.gAltJAFont:Z
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  public synchronized void preferLocaleFonts();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2652
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 2
         1: .line 2653
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "Entered preferLocaleFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         2: .line 2656
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.willReorderForStartupLocale:()Z
            ifne 4
         3: .line 2657
            return
         4: .line 2659
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.gLocalePref:Z
            ifeq 6
         5: .line 2660
            return
         6: .line 2662
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gLocalePref:Z
         7: .line 2663
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 0 /* this */
            getfield sun.font.SunFontManager.gLocalePref:Z
            aload 0 /* this */
            getfield sun.font.SunFontManager.gPropPref:Z
            invokevirtual sun.font.SunFontManager.createCompositeFonts:(Ljava/util/concurrent/ConcurrentHashMap;ZZ)V
         8: .line 2664
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
         9: .line 2665
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/font/SunFontManager;

  public synchronized void preferProportionalFonts();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2668
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2669
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2670
            ldc "Entered preferProportionalFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2675
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.hasMonoToPropMap:()Z
            ifne 5
         4: .line 2676
            return
         5: .line 2678
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.gPropPref:Z
            ifeq 7
         6: .line 2679
            return
         7: .line 2681
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gPropPref:Z
         8: .line 2682
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 0 /* this */
            getfield sun.font.SunFontManager.gLocalePref:Z
            aload 0 /* this */
            getfield sun.font.SunFontManager.gPropPref:Z
            invokevirtual sun.font.SunFontManager.createCompositeFonts:(Ljava/util/concurrent/ConcurrentHashMap;ZZ)V
         9: .line 2683
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        10: .line 2684
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/font/SunFontManager;

  private static java.util.HashSet<java.lang.String> getInstalledNames();
    descriptor: ()Ljava/util/HashSet;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=0
         0: .line 2688
            getstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
            ifnonnull 18
         1: .line 2689
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 0 /* l */
        start local 0 // java.util.Locale l
         2: .line 2690
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
            astore 1 /* fontManager */
        start local 1 // sun.font.SunFontManager fontManager
         3: .line 2692
            aload 1 /* fontManager */
            aload 0 /* l */
            invokevirtual sun.font.SunFontManager.getInstalledFontFamilyNames:(Ljava/util/Locale;)[Ljava/lang/String;
         4: .line 2691
            astore 2 /* installedFamilies */
        start local 2 // java.lang.String[] installedFamilies
         5: .line 2693
            aload 1 /* fontManager */
            invokevirtual sun.font.SunFontManager.getAllInstalledFonts:()[Ljava/awt/Font;
            astore 3 /* installedFonts */
        start local 3 // java.awt.Font[] installedFonts
         6: .line 2694
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* names */
        start local 4 // java.util.HashSet names
         7: .line 2695
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 11
         9: .line 2696
      StackMap locals: java.util.Locale sun.font.SunFontManager java.lang.String[] java.awt.Font[] java.util.HashSet int
      StackMap stack:
            aload 4 /* names */
            aload 2 /* installedFamilies */
            iload 5 /* i */
            aaload
            aload 0 /* l */
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        10: .line 2695
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* i */
            aload 2 /* installedFamilies */
            arraylength
            if_icmplt 9
        end local 5 // int i
        12: .line 2698
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        13: goto 16
        14: .line 2699
      StackMap locals:
      StackMap stack:
            aload 4 /* names */
            aload 3 /* installedFonts */
            iload 5 /* i */
            aaload
            aload 0 /* l */
            invokevirtual java.awt.Font.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            aload 0 /* l */
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        15: .line 2698
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 5 /* i */
            aload 3 /* installedFonts */
            arraylength
            if_icmplt 14
        end local 5 // int i
        17: .line 2701
            aload 4 /* names */
            putstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
        end local 4 // java.util.HashSet names
        end local 3 // java.awt.Font[] installedFonts
        end local 2 // java.lang.String[] installedFamilies
        end local 1 // sun.font.SunFontManager fontManager
        end local 0 // java.util.Locale l
        18: .line 2703
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
            areturn
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            2   18     0                  l  Ljava/util/Locale;
            3   18     1        fontManager  Lsun/font/SunFontManager;
            5   18     2  installedFamilies  [Ljava/lang/String;
            6   18     3     installedFonts  [Ljava/awt/Font;
            7   18     4              names  Ljava/util/HashSet<Ljava/lang/String;>;
            8   12     5                  i  I
           13   17     5                  i  I
    Signature: ()Ljava/util/HashSet<Ljava/lang/String;>;

  public boolean registerFont(java.awt.Font);
    descriptor: (Ljava/awt/Font;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.awt.Font font
         0: .line 2715
            aload 1 /* font */
            ifnonnull 2
         1: .line 2716
            iconst_0
            ireturn
         2: .line 2720
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.regFamilyLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         3: .line 2721
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            ifnonnull 6
         4: .line 2722
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
         5: .line 2723
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
         6: .line 2720
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 2
            monitorexit
         9: athrow
        10: .line 2727
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontAccess.getFontAccess:()Lsun/font/FontAccess;
            aload 1 /* font */
            invokevirtual sun.font.FontAccess.isCreatedFont:(Ljava/awt/Font;)Z
            ifne 12
        11: .line 2728
            iconst_0
            ireturn
        12: .line 2748
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.getInstalledNames:()Ljava/util/HashSet;
            astore 2 /* names */
        start local 2 // java.util.HashSet names
        13: .line 2749
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
        14: .line 2750
            aload 1 /* font */
            aload 3 /* l */
            invokevirtual java.awt.Font.getFamily:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 4 /* familyName */
        start local 4 // java.lang.String familyName
        15: .line 2751
            aload 1 /* font */
            aload 3 /* l */
            invokevirtual java.awt.Font.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 5 /* fullName */
        start local 5 // java.lang.String fullName
        16: .line 2752
            aload 2 /* names */
            aload 4 /* familyName */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifne 17
            aload 2 /* names */
            aload 5 /* fullName */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 18
        17: .line 2753
      StackMap locals: sun.font.SunFontManager java.awt.Font java.util.HashSet java.util.Locale java.lang.String java.lang.String
      StackMap stack:
            iconst_0
            ireturn
        18: .line 2757
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 6 /* familyTable */
        start local 6 // java.util.Hashtable familyTable
        19: .line 2758
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 7 /* fullNameTable */
        start local 7 // java.util.Hashtable fullNameTable
        20: .line 2759
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        21: .line 2762
            aload 1 /* font */
            invokestatic sun.font.FontUtilities.getFont2D:(Ljava/awt/Font;)Lsun/font/Font2D;
            astore 8 /* font2D */
        start local 8 // sun.font.Font2D font2D
        22: .line 2763
            aload 8 /* font2D */
            invokevirtual sun.font.Font2D.getStyle:()I
            istore 9 /* style */
        start local 9 // int style
        23: .line 2764
            aload 6 /* familyTable */
            aload 4 /* familyName */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.FontFamily
            astore 10 /* family */
        start local 10 // sun.font.FontFamily family
        24: .line 2765
            aload 10 /* family */
            ifnonnull 27
        25: .line 2766
            new sun.font.FontFamily
            dup
            aload 1 /* font */
            aload 3 /* l */
            invokevirtual java.awt.Font.getFamily:(Ljava/util/Locale;)Ljava/lang/String;
            invokespecial sun.font.FontFamily.<init>:(Ljava/lang/String;)V
            astore 10 /* family */
        26: .line 2767
            aload 6 /* familyTable */
            aload 4 /* familyName */
            aload 10 /* family */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 2775
      StackMap locals: sun.font.SunFontManager java.awt.Font java.util.HashSet java.util.Locale java.lang.String java.lang.String java.util.Hashtable java.util.Hashtable sun.font.Font2D int sun.font.FontFamily
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 33
        28: .line 2776
            aload 0 /* this */
            aload 10 /* family */
            iconst_0
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            invokevirtual sun.font.SunFontManager.removeFromCache:(Lsun/font/Font2D;)V
        29: .line 2777
            aload 0 /* this */
            aload 10 /* family */
            iconst_1
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            invokevirtual sun.font.SunFontManager.removeFromCache:(Lsun/font/Font2D;)V
        30: .line 2778
            aload 0 /* this */
            aload 10 /* family */
            iconst_2
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            invokevirtual sun.font.SunFontManager.removeFromCache:(Lsun/font/Font2D;)V
        31: .line 2779
            aload 0 /* this */
            aload 10 /* family */
            iconst_3
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            invokevirtual sun.font.SunFontManager.removeFromCache:(Lsun/font/Font2D;)V
        32: .line 2780
            aload 0 /* this */
            aload 7 /* fullNameTable */
            aload 5 /* fullName */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2D
            invokevirtual sun.font.SunFontManager.removeFromCache:(Lsun/font/Font2D;)V
        33: .line 2782
      StackMap locals:
      StackMap stack:
            aload 10 /* family */
            aload 8 /* font2D */
            iload 9 /* style */
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        34: .line 2783
            aload 7 /* fullNameTable */
            aload 5 /* fullName */
            aload 8 /* font2D */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 2784
            iconst_1
            ireturn
        end local 10 // sun.font.FontFamily family
        end local 9 // int style
        end local 8 // sun.font.Font2D font2D
        end local 7 // java.util.Hashtable fullNameTable
        end local 6 // java.util.Hashtable familyTable
        end local 5 // java.lang.String fullName
        end local 4 // java.lang.String familyName
        end local 3 // java.util.Locale l
        end local 2 // java.util.HashSet names
        end local 1 // java.awt.Font font
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   36     0           this  Lsun/font/SunFontManager;
            0   36     1           font  Ljava/awt/Font;
           13   36     2          names  Ljava/util/HashSet<Ljava/lang/String;>;
           14   36     3              l  Ljava/util/Locale;
           15   36     4     familyName  Ljava/lang/String;
           16   36     5       fullName  Ljava/lang/String;
           19   36     6    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           20   36     7  fullNameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           22   36     8         font2D  Lsun/font/Font2D;
           23   36     9          style  I
           24   36    10         family  Lsun/font/FontFamily;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any
    MethodParameters:
      Name  Flags
      font  

  private void removeFromCache(sun.font.Font2D);
    descriptor: (Lsun/font/Font2D;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // sun.font.Font2D font
         0: .line 2789
            aload 1 /* font */
            ifnonnull 2
         1: .line 2790
            return
         2: .line 2792
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.keySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
            getstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
            invokevirtual java.util.concurrent.ConcurrentHashMap$KeySetView.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 2 /* keys */
        start local 2 // java.lang.String[] keys
         3: .line 2793
            iconst_0
            istore 3 /* k */
        start local 3 // int k
         4: goto 8
         5: .line 2794
      StackMap locals: java.lang.String[] int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 2 /* keys */
            iload 3 /* k */
            aaload
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 1 /* font */
            if_acmpne 7
         6: .line 2795
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 2 /* keys */
            iload 3 /* k */
            aaload
            invokevirtual java.util.concurrent.ConcurrentHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 2793
      StackMap locals:
      StackMap stack:
            iinc 3 /* k */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* k */
            aload 2 /* keys */
            arraylength
            if_icmplt 5
        end local 3 // int k
         9: .line 2798
            return
        end local 2 // java.lang.String[] keys
        end local 1 // sun.font.Font2D font
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/font/SunFontManager;
            0   10     1  font  Lsun/font/Font2D;
            3   10     2  keys  [Ljava/lang/String;
            4    9     3     k  I
    MethodParameters:
      Name  Flags
      font  

  public java.util.TreeMap<java.lang.String, java.lang.String> getCreatedFontFamilyNames();
    descriptor: ()Ljava/util/TreeMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2804
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 2805
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 1 /* familyTable */
        start local 1 // java.util.Hashtable familyTable
         2: .line 2806
            goto 4
        end local 1 // java.util.Hashtable familyTable
         3: .line 2807
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable familyTable
         4: .line 2810
      StackMap locals: java.util.Hashtable
      StackMap stack:
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 2 /* l */
        start local 2 // java.util.Locale l
         5: .line 2811
            aload 1 /* familyTable */
            dup
            astore 3
            monitorenter
         6: .line 2812
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 4 /* map */
        start local 4 // java.util.TreeMap map
         7: .line 2813
            aload 1 /* familyTable */
            invokevirtual java.util.Hashtable.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 14
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.util.TreeMap top java.util.Iterator
      StackMap stack:
         8: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.FontFamily
            astore 5 /* f */
        start local 5 // sun.font.FontFamily f
         9: .line 2814
            aload 5 /* f */
            iconst_0
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 7 /* font2D */
        start local 7 // sun.font.Font2D font2D
        10: .line 2815
            aload 7 /* font2D */
            ifnonnull 12
        11: .line 2816
            aload 5 /* f */
            iconst_0
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 7 /* font2D */
        12: .line 2818
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.util.TreeMap sun.font.FontFamily java.util.Iterator sun.font.Font2D
      StackMap stack:
            aload 7 /* font2D */
            aload 2 /* l */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        13: .line 2819
            aload 4 /* map */
            aload 8 /* name */
            aload 2 /* l */
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            aload 8 /* name */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // java.lang.String name
        end local 7 // sun.font.Font2D font2D
        end local 5 // sun.font.FontFamily f
        14: .line 2813
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.util.TreeMap top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        15: .line 2821
            aload 4 /* map */
            aload 3
            monitorexit
        16: areturn
        end local 4 // java.util.TreeMap map
        17: .line 2811
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        18: athrow
        end local 2 // java.util.Locale l
        end local 1 // java.util.Hashtable familyTable
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Lsun/font/SunFontManager;
            2    3     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
            4   19     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
            5   19     2            l  Ljava/util/Locale;
            7   17     4          map  Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;
            9   14     5            f  Lsun/font/FontFamily;
           10   14     7       font2D  Lsun/font/Font2D;
           13   14     8         name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           6    16      17  any
          17    18      17  any
    Signature: ()Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;

  public java.awt.Font[] getCreatedFonts();
    descriptor: ()[Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2828
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 2829
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 1 /* nameTable */
        start local 1 // java.util.Hashtable nameTable
         2: .line 2830
            goto 4
        end local 1 // java.util.Hashtable nameTable
         3: .line 2831
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable nameTable
         4: .line 2834
      StackMap locals: java.util.Hashtable
      StackMap stack:
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 2 /* l */
        start local 2 // java.util.Locale l
         5: .line 2835
            aload 1 /* nameTable */
            dup
            astore 3
            monitorenter
         6: .line 2836
            aload 1 /* nameTable */
            invokevirtual java.util.Hashtable.size:()I
            anewarray java.awt.Font
            astore 4 /* fonts */
        start local 4 // java.awt.Font[] fonts
         7: .line 2837
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: .line 2838
            aload 1 /* nameTable */
            invokevirtual java.util.Hashtable.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 11
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.awt.Font[] int top java.util.Iterator
      StackMap stack:
         9: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 6 /* font2D */
        start local 6 // sun.font.Font2D font2D
        10: .line 2839
            aload 4 /* fonts */
            iload 5 /* i */
            iinc 5 /* i */ 1
            new java.awt.Font
            dup
            aload 6 /* font2D */
            aload 2 /* l */
            invokevirtual sun.font.Font2D.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            iconst_0
            iconst_1
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;II)V
            aastore
        end local 6 // sun.font.Font2D font2D
        11: .line 2838
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        12: .line 2841
            aload 4 /* fonts */
            aload 3
            monitorexit
        13: areturn
        end local 5 // int i
        end local 4 // java.awt.Font[] fonts
        14: .line 2835
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        15: athrow
        end local 2 // java.util.Locale l
        end local 1 // java.util.Hashtable nameTable
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lsun/font/SunFontManager;
            2    3     1  nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
            4   16     1  nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
            5   16     2          l  Ljava/util/Locale;
            7   14     4      fonts  [Ljava/awt/Font;
            8   14     5          i  I
           10   11     6     font2D  Lsun/font/Font2D;
      Exception table:
        from    to  target  type
           6    13      14  any
          14    15      14  any

  protected java.lang.String[] getPlatformFontDirs(boolean);
    descriptor: (Z)[Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // boolean noType1Fonts
         0: .line 2849
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            ifnull 2
         1: .line 2850
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            areturn
         2: .line 2853
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* noType1Fonts */
            invokevirtual sun.font.SunFontManager.getPlatformFontPath:(Z)Ljava/lang/String;
            astore 2 /* path */
        start local 2 // java.lang.String path
         3: .line 2855
            new java.util.StringTokenizer
            dup
            aload 2 /* path */
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 2854
            astore 3 /* parser */
        start local 3 // java.util.StringTokenizer parser
         5: .line 2856
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* pathList */
        start local 4 // java.util.ArrayList pathList
         6: .line 2858
            goto 8
         7: .line 2859
      StackMap locals: java.lang.String java.util.StringTokenizer java.util.ArrayList
      StackMap stack:
            aload 4 /* pathList */
            aload 3 /* parser */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         8: .line 2858
      StackMap locals:
      StackMap stack:
            aload 3 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 7
         9: .line 2861
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 2863
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* pathList */
            iconst_0
            anewarray java.lang.String
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            putfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
        12: .line 2864
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            areturn
        end local 4 // java.util.ArrayList pathList
        end local 3 // java.util.StringTokenizer parser
        end local 2 // java.lang.String path
        end local 1 // boolean noType1Fonts
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0          this  Lsun/font/SunFontManager;
            0   13     1  noType1Fonts  Z
            3   13     2          path  Ljava/lang/String;
            5   13     3        parser  Ljava/util/StringTokenizer;
            6   13     4      pathList  Ljava/util/ArrayList<Ljava/lang/String;>;
      Exception table:
        from    to  target  type
           6     9      10  Class java.util.NoSuchElementException
    MethodParameters:
              Name  Flags
      noType1Fonts  

  protected abstract java.lang.String[] getDefaultPlatformFont();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  private void addDirFonts(java.lang.String, java.io.File, java.io.FilenameFilter, int, boolean, int, boolean, boolean);
    descriptor: (Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=19, args_size=9
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String dirName
        start local 2 // java.io.File dirFile
        start local 3 // java.io.FilenameFilter filter
        start local 4 // int fontFormat
        start local 5 // boolean useJavaRasterizer
        start local 6 // int fontRank
        start local 7 // boolean defer
        start local 8 // boolean resolveSymLinks
         0: .line 2883
            aload 2 /* dirFile */
            aload 3 /* filter */
            invokevirtual java.io.File.list:(Ljava/io/FilenameFilter;)[Ljava/lang/String;
            astore 9 /* ls */
        start local 9 // java.lang.String[] ls
         1: .line 2884
            aload 9 /* ls */
            ifnull 2
            aload 9 /* ls */
            arraylength
            ifne 3
         2: .line 2885
      StackMap locals: java.lang.String[]
      StackMap stack:
            return
         3: .line 2887
      StackMap locals:
      StackMap stack:
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String
            astore 10 /* fontNames */
        start local 10 // java.lang.String[] fontNames
         4: .line 2888
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String[]
            astore 11 /* nativeNames */
        start local 11 // java.lang.String[][] nativeNames
         5: .line 2889
            iconst_0
            istore 12 /* fontCount */
        start local 12 // int fontCount
         6: .line 2891
            iconst_0
            istore 13 /* i */
        start local 13 // int i
         7: goto 41
         8: .line 2892
      StackMap locals: sun.font.SunFontManager java.lang.String java.io.File java.io.FilenameFilter int int int int int java.lang.String[] java.lang.String[] java.lang.String[][] int int
      StackMap stack:
            new java.io.File
            dup
            aload 2 /* dirFile */
            aload 9 /* ls */
            iload 13 /* i */
            aaload
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 14 /* theFile */
        start local 14 // java.io.File theFile
         9: .line 2893
            aconst_null
            astore 15 /* fullName */
        start local 15 // java.lang.String fullName
        10: .line 2894
            iload 8 /* resolveSymLinks */
            ifeq 14
        11: .line 2896
            aload 14 /* theFile */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 15 /* fullName */
        12: .line 2897
            goto 14
      StackMap locals: sun.font.SunFontManager java.lang.String java.io.File java.io.FilenameFilter int int int int int java.lang.String[] java.lang.String[] java.lang.String[][] int int java.io.File java.lang.String
      StackMap stack: java.io.IOException
        13: pop
        14: .line 2900
      StackMap locals:
      StackMap stack:
            aload 15 /* fullName */
            ifnonnull 16
        15: .line 2901
            new java.lang.StringBuilder
            dup
            aload 1 /* dirName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.separator:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 9 /* ls */
            iload 13 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* fullName */
        16: .line 2905
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
            aload 15 /* fullName */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 18
        17: .line 2906
            goto 40
        18: .line 2909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.badFonts:Ljava/util/ArrayList;
            ifnull 23
            aload 0 /* this */
            getfield sun.font.SunFontManager.badFonts:Ljava/util/ArrayList;
            aload 15 /* fullName */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifeq 23
        19: .line 2910
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 40
        20: .line 2911
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        21: .line 2912
            new java.lang.StringBuilder
            dup
            ldc "skip bad font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* fullName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        22: .line 2914
            goto 40
        23: .line 2917
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
            aload 15 /* fullName */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        24: .line 2919
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 38
        25: .line 2920
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            getstatic sun.util.logging.PlatformLogger$Level.INFO:Lsun/util/logging/PlatformLogger$Level;
            invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
            ifeq 38
        26: .line 2921
            new java.lang.StringBuilder
            dup
            ldc "Registering font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* fullName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 16 /* message */
        start local 16 // java.lang.String message
        27: .line 2922
            aload 0 /* this */
            aload 15 /* fullName */
            aconst_null
            invokevirtual sun.font.SunFontManager.getNativeNames:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            astore 17 /* natNames */
        start local 17 // java.lang.String[] natNames
        28: .line 2923
            aload 17 /* natNames */
            ifnonnull 31
        29: .line 2924
            new java.lang.StringBuilder
            dup
            aload 16 /* message */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " with no native name"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 16 /* message */
        30: .line 2925
            goto 37
        31: .line 2926
      StackMap locals: java.lang.String java.lang.String[]
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 16 /* message */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " with native name(s) "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 17 /* natNames */
            iconst_0
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 16 /* message */
        32: .line 2927
            iconst_1
            istore 18 /* nn */
        start local 18 // int nn
        33: goto 36
        34: .line 2928
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 16 /* message */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 17 /* natNames */
            iload 18 /* nn */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 16 /* message */
        35: .line 2927
            iinc 18 /* nn */ 1
      StackMap locals:
      StackMap stack:
        36: iload 18 /* nn */
            aload 17 /* natNames */
            arraylength
            if_icmplt 34
        end local 18 // int nn
        37: .line 2931
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            aload 16 /* message */
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 17 // java.lang.String[] natNames
        end local 16 // java.lang.String message
        38: .line 2933
      StackMap locals:
      StackMap stack:
            aload 10 /* fontNames */
            iload 12 /* fontCount */
            aload 15 /* fullName */
            aastore
        39: .line 2934
            aload 11 /* nativeNames */
            iload 12 /* fontCount */
            iinc 12 /* fontCount */ 1
            aload 0 /* this */
            aload 15 /* fullName */
            aconst_null
            invokevirtual sun.font.SunFontManager.getNativeNames:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            aastore
        end local 15 // java.lang.String fullName
        end local 14 // java.io.File theFile
        40: .line 2891
      StackMap locals:
      StackMap stack:
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 13 /* i */
            aload 9 /* ls */
            arraylength
            if_icmplt 8
        end local 13 // int i
        42: .line 2936
            aload 0 /* this */
            aload 10 /* fontNames */
            aload 11 /* nativeNames */
            iload 12 /* fontCount */
            iload 4 /* fontFormat */
        43: .line 2937
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
            iload 7 /* defer */
        44: .line 2936
            invokevirtual sun.font.SunFontManager.registerFonts:([Ljava/lang/String;[[Ljava/lang/String;IIZIZ)V
        45: .line 2938
            return
        end local 12 // int fontCount
        end local 11 // java.lang.String[][] nativeNames
        end local 10 // java.lang.String[] fontNames
        end local 9 // java.lang.String[] ls
        end local 8 // boolean resolveSymLinks
        end local 7 // boolean defer
        end local 6 // int fontRank
        end local 5 // boolean useJavaRasterizer
        end local 4 // int fontFormat
        end local 3 // java.io.FilenameFilter filter
        end local 2 // java.io.File dirFile
        end local 1 // java.lang.String dirName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   46     0               this  Lsun/font/SunFontManager;
            0   46     1            dirName  Ljava/lang/String;
            0   46     2            dirFile  Ljava/io/File;
            0   46     3             filter  Ljava/io/FilenameFilter;
            0   46     4         fontFormat  I
            0   46     5  useJavaRasterizer  Z
            0   46     6           fontRank  I
            0   46     7              defer  Z
            0   46     8    resolveSymLinks  Z
            1   46     9                 ls  [Ljava/lang/String;
            4   46    10          fontNames  [Ljava/lang/String;
            5   46    11        nativeNames  [[Ljava/lang/String;
            6   46    12          fontCount  I
            7   42    13                  i  I
            9   40    14            theFile  Ljava/io/File;
           10   40    15           fullName  Ljava/lang/String;
           27   38    16            message  Ljava/lang/String;
           28   38    17           natNames  [Ljava/lang/String;
           33   37    18                 nn  I
      Exception table:
        from    to  target  type
          11    12      13  Class java.io.IOException
    MethodParameters:
                   Name  Flags
      dirName            
      dirFile            
      filter             
      fontFormat         
      useJavaRasterizer  
      fontRank           
      defer              
      resolveSymLinks    

  protected java.lang.String[] getNativeNames(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fontFileName
        start local 2 // java.lang.String platformName
         0: .line 2943
            aconst_null
            areturn
        end local 2 // java.lang.String platformName
        end local 1 // java.lang.String fontFileName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lsun/font/SunFontManager;
            0    1     1  fontFileName  Ljava/lang/String;
            0    1     2  platformName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      fontFileName  
      platformName  

  protected java.lang.String getFileNameFromPlatformName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String platformFontName
         0: .line 2953
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontConfig:Lsun/awt/FontConfiguration;
            aload 1 /* platformFontName */
            invokevirtual sun.awt.FontConfiguration.getFileNameFromPlatformName:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String platformFontName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lsun/font/SunFontManager;
            0    1     1  platformFontName  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      platformFontName  

  public sun.awt.FontConfiguration getFontConfiguration();
    descriptor: ()Lsun/awt/FontConfiguration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2960
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontConfig:Lsun/awt/FontConfiguration;
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  public java.lang.String getPlatformFontPath(boolean);
    descriptor: (Z)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // boolean noType1Font
         0: .line 2967
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontPath:Ljava/lang/String;
            ifnonnull 2
         1: .line 2968
            aload 0 /* this */
            aload 0 /* this */
            iload 1 /* noType1Font */
            invokevirtual sun.font.SunFontManager.getFontPath:(Z)Ljava/lang/String;
            putfield sun.font.SunFontManager.fontPath:Ljava/lang/String;
         2: .line 2970
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontPath:Ljava/lang/String;
            areturn
        end local 1 // boolean noType1Font
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lsun/font/SunFontManager;
            0    3     1  noType1Font  Z
    MethodParameters:
             Name  Flags
      noType1Font  

  protected void loadFonts();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2974
            aload 0 /* this */
            getfield sun.font.SunFontManager.discoveredAllFonts:Z
            ifeq 2
         1: .line 2975
            return
         2: .line 2978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         3: .line 2979
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         4: .line 2980
            invokestatic java.lang.Thread.dumpStack:()V
         5: .line 2981
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         6: .line 2982
            ldc "SunGraphicsEnvironment.loadFonts() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 2984
      StackMap locals: sun.font.SunFontManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFonts:()V
         8: .line 2986
            new sun.font.SunFontManager$9
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$9.<init>:(Lsun/font/SunFontManager;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         9: .line 2978
            aload 1
            monitorexit
        10: goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: aload 1
            monitorexit
        12: athrow
        13: .line 3009
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lsun/font/SunFontManager;
      Exception table:
        from    to  target  type
           3    10      11  any
          11    12      11  any

  protected void registerFontDirs(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String pathName
         0: .line 3012
            return
        end local 1 // java.lang.String pathName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lsun/font/SunFontManager;
            0    1     1  pathName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      pathName  

  private void registerFontsOnPath(java.lang.String, boolean, int, boolean, boolean);
    descriptor: (Ljava/lang/String;ZIZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String pathName
        start local 2 // boolean useJavaRasterizer
        start local 3 // int fontRank
        start local 4 // boolean defer
        start local 5 // boolean resolveSymLinks
         0: .line 3019
            new java.util.StringTokenizer
            dup
            aload 1 /* pathName */
         1: .line 3020
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
         2: .line 3019
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 6 /* parser */
        start local 6 // java.util.StringTokenizer parser
         3: .line 3022
            goto 8
         4: .line 3023
      StackMap locals: java.util.StringTokenizer
      StackMap stack:
            aload 0 /* this */
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
         5: .line 3024
            iload 2 /* useJavaRasterizer */
            iload 3 /* fontRank */
         6: .line 3025
            iload 4 /* defer */
            iload 5 /* resolveSymLinks */
         7: .line 3023
            invokevirtual sun.font.SunFontManager.registerFontsInDir:(Ljava/lang/String;ZIZZ)V
         8: .line 3022
      StackMap locals:
      StackMap stack:
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 4
         9: .line 3027
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 3029
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.util.StringTokenizer parser
        end local 5 // boolean resolveSymLinks
        end local 4 // boolean defer
        end local 3 // int fontRank
        end local 2 // boolean useJavaRasterizer
        end local 1 // java.lang.String pathName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0               this  Lsun/font/SunFontManager;
            0   12     1           pathName  Ljava/lang/String;
            0   12     2  useJavaRasterizer  Z
            0   12     3           fontRank  I
            0   12     4              defer  Z
            0   12     5    resolveSymLinks  Z
            3   12     6             parser  Ljava/util/StringTokenizer;
      Exception table:
        from    to  target  type
           3     9      10  Class java.util.NoSuchElementException
    MethodParameters:
                   Name  Flags
      pathName           
      useJavaRasterizer  
      fontRank           
      defer              
      resolveSymLinks    

  public void registerFontsInDir(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String dirName
         0: .line 3033
            aload 0 /* this */
            aload 1 /* dirName */
            iconst_1
            iconst_2
            iconst_1
            iconst_0
            invokevirtual sun.font.SunFontManager.registerFontsInDir:(Ljava/lang/String;ZIZZ)V
         1: .line 3034
            return
        end local 1 // java.lang.String dirName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/font/SunFontManager;
            0    2     1  dirName  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      dirName  

  protected void registerFontsInDir(java.lang.String, boolean, int, boolean, boolean);
    descriptor: (Ljava/lang/String;ZIZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=7, args_size=6
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String dirName
        start local 2 // boolean useJavaRasterizer
        start local 3 // int fontRank
        start local 4 // boolean defer
        start local 5 // boolean resolveSymLinks
         0: .line 3041
            new java.io.File
            dup
            aload 1 /* dirName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 6 /* pathFile */
        start local 6 // java.io.File pathFile
         1: .line 3042
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         2: .line 3043
            iconst_0
            iload 2 /* useJavaRasterizer */
         3: .line 3044
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 5
         4: .line 3045
            iconst_3
            goto 6
      StackMap locals: sun.font.SunFontManager java.lang.String int int int int java.io.File
      StackMap stack: sun.font.SunFontManager java.lang.String java.io.File java.io.FilenameFilter int int
         5: iload 3 /* fontRank */
         6: .line 3046
      StackMap locals: sun.font.SunFontManager java.lang.String int int int int java.io.File
      StackMap stack: sun.font.SunFontManager java.lang.String java.io.File java.io.FilenameFilter int int int
            iload 4 /* defer */
            iload 5 /* resolveSymLinks */
         7: .line 3042
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
         8: .line 3047
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         9: .line 3048
            iconst_1
            iload 2 /* useJavaRasterizer */
        10: .line 3049
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 12
        11: .line 3050
            iconst_4
            goto 13
      StackMap locals: sun.font.SunFontManager java.lang.String int int int int java.io.File
      StackMap stack: sun.font.SunFontManager java.lang.String java.io.File java.io.FilenameFilter int int
        12: iload 3 /* fontRank */
        13: .line 3051
      StackMap locals: sun.font.SunFontManager java.lang.String int int int int java.io.File
      StackMap stack: sun.font.SunFontManager java.lang.String java.io.File java.io.FilenameFilter int int int
            iload 4 /* defer */
            iload 5 /* resolveSymLinks */
        14: .line 3047
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
        15: .line 3052
            return
        end local 6 // java.io.File pathFile
        end local 5 // boolean resolveSymLinks
        end local 4 // boolean defer
        end local 3 // int fontRank
        end local 2 // boolean useJavaRasterizer
        end local 1 // java.lang.String dirName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   16     0               this  Lsun/font/SunFontManager;
            0   16     1            dirName  Ljava/lang/String;
            0   16     2  useJavaRasterizer  Z
            0   16     3           fontRank  I
            0   16     4              defer  Z
            0   16     5    resolveSymLinks  Z
            1   16     6           pathFile  Ljava/io/File;
    MethodParameters:
                   Name  Flags
      dirName            
      useJavaRasterizer  
      fontRank           
      defer              
      resolveSymLinks    

  protected void registerFontDir(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String path
         0: .line 3055
            return
        end local 1 // java.lang.String path
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;
            0    1     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public synchronized java.lang.String getDefaultFontFile();
    descriptor: ()Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3062
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultFontFileName:Ljava/lang/String;
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  protected boolean useAbsoluteFontFileNames();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3070
            iconst_1
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  protected abstract sun.awt.FontConfiguration createFontConfiguration();
    descriptor: ()Lsun/awt/FontConfiguration;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  public abstract sun.awt.FontConfiguration createFontConfiguration(boolean, boolean);
    descriptor: (ZZ)Lsun/awt/FontConfiguration;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
                   Name  Flags
      preferLocaleFonts  
      preferPropFonts    

  public synchronized java.lang.String getDefaultFontFaceName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3088
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultFontName:Ljava/lang/String;
            areturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  public void loadFontFiles();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3092
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         1: .line 3093
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifeq 3
         2: .line 3094
            return
         3: .line 3097
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         4: .line 3098
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         5: .line 3099
            invokestatic java.lang.Thread.dumpStack:()V
         6: .line 3100
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "loadAllFontFiles() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 3102
      StackMap locals: sun.font.SunFontManager
      StackMap stack:
            new sun.font.SunFontManager$10
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$10.<init>:(Lsun/font/SunFontManager;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         8: .line 3097
            aload 1
            monitorexit
         9: goto 12
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: aload 1
            monitorexit
        11: athrow
        12: .line 3120
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lsun/font/SunFontManager;
      Exception table:
        from    to  target  type
           4     9      10  any
          10    11      10  any

  private void initCompositeFonts(sun.awt.FontConfiguration, java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.Font2D>);
    descriptor: (Lsun/awt/FontConfiguration;Ljava/util/concurrent/ConcurrentHashMap;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=11, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // sun.awt.FontConfiguration fontConfig
        start local 2 // java.util.concurrent.ConcurrentHashMap altNameCache
         0: .line 3133
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 3134
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 3135
            ldc "Initialising composite fonts"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 3138
      StackMap locals:
      StackMap stack:
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getNumberCoreFonts:()I
            istore 3 /* numCoreFonts */
        start local 3 // int numCoreFonts
         4: .line 3139
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getPlatformFontNames:()[Ljava/lang/String;
            astore 4 /* fcFonts */
        start local 4 // java.lang.String[] fcFonts
         5: .line 3140
            iconst_0
            istore 5 /* f */
        start local 5 // int f
         6: goto 22
         7: .line 3141
      StackMap locals: int java.lang.String[] int
      StackMap stack:
            aload 4 /* fcFonts */
            iload 5 /* f */
            aaload
            astore 6 /* platformFontName */
        start local 6 // java.lang.String platformFontName
         8: .line 3143
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.getFileNameFromPlatformName:(Ljava/lang/String;)Ljava/lang/String;
         9: .line 3142
            astore 7 /* fontFileName */
        start local 7 // java.lang.String fontFileName
        10: .line 3144
            aconst_null
            astore 8 /* nativeNames */
        start local 8 // java.lang.String[] nativeNames
        11: .line 3145
            aload 7 /* fontFileName */
            ifnull 13
        12: .line 3146
            aload 7 /* fontFileName */
            aload 6 /* platformFontName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 3150
      StackMap locals: java.lang.String java.lang.String java.lang.String[]
      StackMap stack:
            aload 6 /* platformFontName */
            astore 7 /* fontFileName */
        14: .line 3151
            goto 18
        15: .line 3152
      StackMap locals:
      StackMap stack:
            iload 5 /* f */
            iload 3 /* numCoreFonts */
            if_icmpge 17
        16: .line 3167
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.addFontToPlatformFontPath:(Ljava/lang/String;)V
        17: .line 3169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* fontFileName */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.getNativeNames:(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
            astore 8 /* nativeNames */
        18: .line 3178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* fontFileName */
            aload 8 /* nativeNames */
        19: .line 3179
            iconst_2
            iconst_1
        20: .line 3178
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZ)V
        end local 8 // java.lang.String[] nativeNames
        end local 7 // java.lang.String fontFileName
        end local 6 // java.lang.String platformFontName
        21: .line 3140
            iinc 5 /* f */ 1
      StackMap locals:
      StackMap stack:
        22: iload 5 /* f */
            aload 4 /* fcFonts */
            arraylength
            if_icmplt 7
        end local 5 // int f
        23: .line 3190
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.registerPlatformFontsUsedByFontConfiguration:()V
        24: .line 3193
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.get2DCompositeFontInfo:()[Lsun/font/CompositeFontDescriptor;
        25: .line 3192
            astore 5 /* compositeFontInfo */
        start local 5 // sun.font.CompositeFontDescriptor[] compositeFontInfo
        26: .line 3194
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        27: goto 60
        28: .line 3195
      StackMap locals: sun.font.SunFontManager sun.awt.FontConfiguration java.util.concurrent.ConcurrentHashMap int java.lang.String[] sun.font.CompositeFontDescriptor[] int
      StackMap stack:
            aload 5 /* compositeFontInfo */
            iload 6 /* i */
            aaload
            astore 7 /* descriptor */
        start local 7 // sun.font.CompositeFontDescriptor descriptor
        29: .line 3196
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFileNames:()[Ljava/lang/String;
            astore 8 /* componentFileNames */
        start local 8 // java.lang.String[] componentFileNames
        30: .line 3197
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFaceNames:()[Ljava/lang/String;
            astore 9 /* componentFaceNames */
        start local 9 // java.lang.String[] componentFaceNames
        31: .line 3202
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnull 39
        32: .line 3203
            iconst_0
            istore 10 /* ii */
        start local 10 // int ii
        33: goto 38
        34: .line 3204
      StackMap locals: sun.font.SunFontManager sun.awt.FontConfiguration java.util.concurrent.ConcurrentHashMap int java.lang.String[] sun.font.CompositeFontDescriptor[] int sun.font.CompositeFontDescriptor java.lang.String[] java.lang.String[] int
      StackMap stack:
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            aload 8 /* componentFileNames */
            iload 10 /* ii */
            aaload
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 37
        35: .line 3205
            aload 8 /* componentFileNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFile:()Ljava/lang/String;
            aastore
        36: .line 3206
            aload 9 /* componentFaceNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFaceName:()Ljava/lang/String;
            aastore
        37: .line 3203
      StackMap locals:
      StackMap stack:
            iinc 10 /* ii */ 1
      StackMap locals:
      StackMap stack:
        38: iload 10 /* ii */
            aload 8 /* componentFileNames */
            arraylength
            if_icmplt 34
        end local 10 // int ii
        39: .line 3217
      StackMap locals:
      StackMap stack:
            aload 2 /* altNameCache */
            ifnull 49
        40: .line 3219
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        41: .line 3220
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        42: .line 3221
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        43: .line 3222
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        44: .line 3223
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        45: .line 3224
            iconst_1
        46: .line 3225
            aload 2 /* altNameCache */
        47: .line 3218
            invokestatic sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLjava/util/concurrent/ConcurrentHashMap;)V
        48: .line 3226
            goto 56
        49: .line 3227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        50: .line 3228
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        51: .line 3229
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        52: .line 3230
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        53: .line 3231
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        54: .line 3232
            iconst_1
        55: .line 3227
            invokevirtual sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZ)V
        56: .line 3234
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 59
        57: .line 3235
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        58: .line 3236
            new java.lang.StringBuilder
            dup
            ldc "registered "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 9 // java.lang.String[] componentFaceNames
        end local 8 // java.lang.String[] componentFileNames
        end local 7 // sun.font.CompositeFontDescriptor descriptor
        59: .line 3194
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        60: iload 6 /* i */
            aload 5 /* compositeFontInfo */
            arraylength
            if_icmplt 28
        end local 6 // int i
        61: .line 3239
            return
        end local 5 // sun.font.CompositeFontDescriptor[] compositeFontInfo
        end local 4 // java.lang.String[] fcFonts
        end local 3 // int numCoreFonts
        end local 2 // java.util.concurrent.ConcurrentHashMap altNameCache
        end local 1 // sun.awt.FontConfiguration fontConfig
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   62     0                this  Lsun/font/SunFontManager;
            0   62     1          fontConfig  Lsun/awt/FontConfiguration;
            0   62     2        altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;
            4   62     3        numCoreFonts  I
            5   62     4             fcFonts  [Ljava/lang/String;
            6   23     5                   f  I
            8   21     6    platformFontName  Ljava/lang/String;
           10   21     7        fontFileName  Ljava/lang/String;
           11   21     8         nativeNames  [Ljava/lang/String;
           26   62     5   compositeFontInfo  [Lsun/font/CompositeFontDescriptor;
           27   61     6                   i  I
           29   59     7          descriptor  Lsun/font/CompositeFontDescriptor;
           30   59     8  componentFileNames  [Ljava/lang/String;
           31   59     9  componentFaceNames  [Ljava/lang/String;
           33   39    10                  ii  I
    Signature: (Lsun/awt/FontConfiguration;Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;)V
    MethodParameters:
              Name  Flags
      fontConfig    
      altNameCache  

  protected void addFontToPlatformFontPath(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String platformFontName
         0: .line 3247
            return
        end local 1 // java.lang.String platformFontName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lsun/font/SunFontManager;
            0    1     1  platformFontName  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      platformFontName  

  protected void registerFontFile(java.lang.String, java.lang.String[], int, boolean);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;IZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fontFileName
        start local 2 // java.lang.String[] nativeNames
        start local 3 // int fontRank
        start local 4 // boolean defer
         0: .line 3252
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
            aload 1 /* fontFileName */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 3253
            return
         2: .line 3256
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
            aconst_null
            aload 1 /* fontFileName */
            invokeinterface java.io.FilenameFilter.accept:(Ljava/io/File;Ljava/lang/String;)Z
            ifeq 5
         3: .line 3257
            iconst_0
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         4: .line 3258
            goto 9
        end local 5 // int fontFormat
      StackMap locals:
      StackMap stack:
         5: getstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
            aconst_null
            aload 1 /* fontFileName */
            invokeinterface java.io.FilenameFilter.accept:(Ljava/io/File;Ljava/lang/String;)Z
            ifeq 8
         6: .line 3259
            iconst_1
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         7: .line 3260
            goto 9
        end local 5 // int fontFormat
         8: .line 3261
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         9: .line 3263
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
            aload 1 /* fontFileName */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        10: .line 3264
            iload 4 /* defer */
            ifeq 15
        11: .line 3265
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
        12: .line 3266
            iload 5 /* fontFormat */
            iconst_0
            iload 3 /* fontRank */
        13: .line 3265
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
        14: .line 3267
            goto 18
        15: .line 3268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
            iload 5 /* fontFormat */
            iconst_0
        16: .line 3269
            iload 3 /* fontRank */
        17: .line 3268
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        18: .line 3271
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int fontFormat
        end local 4 // boolean defer
        end local 3 // int fontRank
        end local 2 // java.lang.String[] nativeNames
        end local 1 // java.lang.String fontFileName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lsun/font/SunFontManager;
            0   19     1  fontFileName  Ljava/lang/String;
            0   19     2   nativeNames  [Ljava/lang/String;
            0   19     3      fontRank  I
            0   19     4         defer  Z
            4    5     5    fontFormat  I
            7    8     5    fontFormat  I
            9   19     5    fontFormat  I
    MethodParameters:
              Name  Flags
      fontFileName  
      nativeNames   
      fontRank      
      defer         

  protected void registerPlatformFontsUsedByFontConfiguration();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3274
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/SunFontManager;

  protected void addToMissingFontFileList(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fileName
         0: .line 3291
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnonnull 2
         1: .line 3292
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         2: .line 3294
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            aload 1 /* fileName */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 3295
            return
        end local 1 // java.lang.String fileName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lsun/font/SunFontManager;
            0    4     1  fileName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fileName  

  private boolean isNameForRegisteredFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String fontName
         0: .line 3316
            aload 0 /* this */
            aload 1 /* fontName */
            invokevirtual sun.font.SunFontManager.getFileNameForFontName:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* fileName */
        start local 2 // java.lang.String fileName
         1: .line 3317
            aload 2 /* fileName */
            ifnonnull 3
         2: .line 3318
            iconst_0
            ireturn
         3: .line 3320
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
            aload 2 /* fileName */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // java.lang.String fileName
        end local 1 // java.lang.String fontName
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lsun/font/SunFontManager;
            0    4     1  fontName  Ljava/lang/String;
            1    4     2  fileName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fontName  

  public void createCompositeFonts(java.util.concurrent.ConcurrentHashMap<java.lang.String, sun.font.Font2D>, boolean, );
    descriptor: (Ljava/util/concurrent/ConcurrentHashMap;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.concurrent.ConcurrentHashMap altNameCache
        start local 2 // boolean preferLocale
        start local 3 // boolean preferProportional
         0: .line 3334
            aload 0 /* this */
            iload 2 /* preferLocale */
            iload 3 /* preferProportional */
            invokevirtual sun.font.SunFontManager.createFontConfiguration:(ZZ)Lsun/awt/FontConfiguration;
         1: .line 3333
            astore 4 /* fontConfig */
        start local 4 // sun.awt.FontConfiguration fontConfig
         2: .line 3335
            aload 0 /* this */
            aload 4 /* fontConfig */
            aload 1 /* altNameCache */
            invokevirtual sun.font.SunFontManager.initCompositeFonts:(Lsun/awt/FontConfiguration;Ljava/util/concurrent/ConcurrentHashMap;)V
         3: .line 3336
            return
        end local 4 // sun.awt.FontConfiguration fontConfig
        end local 3 // boolean preferProportional
        end local 2 // boolean preferLocale
        end local 1 // java.util.concurrent.ConcurrentHashMap altNameCache
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lsun/font/SunFontManager;
            0    4     1        altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;
            0    4     2        preferLocale  Z
            0    4     3  preferProportional  Z
            2    4     4          fontConfig  Lsun/awt/FontConfiguration;
    Signature: (Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;ZZ)V
    MethodParameters:
                    Name  Flags
      altNameCache        
      preferLocale        
      preferProportional  

  public java.awt.Font[] getAllInstalledFonts();
    descriptor: ()[Ljava/awt/Font;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3342
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
            ifnonnull 39
         1: .line 3343
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         2: .line 3344
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 1 /* fontMapNames */
        start local 1 // java.util.TreeMap fontMapNames
         3: .line 3349
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 2 /* allfonts */
        start local 2 // sun.font.Font2D[] allfonts
         4: .line 3350
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 11
         6: .line 3351
      StackMap locals: java.util.TreeMap sun.font.Font2D[] int
      StackMap stack:
            aload 2 /* allfonts */
            iload 3 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 10
         7: .line 3352
            aload 1 /* fontMapNames */
            aload 2 /* allfonts */
            iload 3 /* i */
            aaload
            aconst_null
            invokevirtual sun.font.Font2D.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
         8: .line 3353
            aload 2 /* allfonts */
            iload 3 /* i */
            aaload
         9: .line 3352
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 3350
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 3 /* i */
            aload 2 /* allfonts */
            arraylength
            if_icmplt 6
        end local 3 // int i
        12: .line 3357
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFontNamesFromPlatform:()[Ljava/lang/String;
            astore 3 /* platformNames */
        start local 3 // java.lang.String[] platformNames
        13: .line 3358
            aload 3 /* platformNames */
            ifnull 20
        14: .line 3359
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        15: goto 19
        16: .line 3360
      StackMap locals: sun.font.SunFontManager java.util.TreeMap sun.font.Font2D[] java.lang.String[] int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* platformNames */
            iload 4 /* i */
            aaload
            invokevirtual sun.font.SunFontManager.isNameForRegisteredFile:(Ljava/lang/String;)Z
            ifne 18
        17: .line 3361
            aload 1 /* fontMapNames */
            aload 3 /* platformNames */
            iload 4 /* i */
            aaload
            aconst_null
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 3359
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 4 /* i */
            aload 3 /* platformNames */
            arraylength
            if_icmplt 16
        end local 4 // int i
        20: .line 3366
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* fontNames */
        start local 4 // java.lang.String[] fontNames
        21: .line 3367
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            ifle 29
        22: .line 3368
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            anewarray java.lang.String
            astore 4 /* fontNames */
        23: .line 3369
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.toArray:()[Ljava/lang/Object;
            astore 5 /* keyNames */
        start local 5 // java.lang.Object[] keyNames
        24: .line 3370
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        25: goto 28
        26: .line 3371
      StackMap locals: java.lang.String[] java.lang.Object[] int
      StackMap stack:
            aload 4 /* fontNames */
            iload 6 /* i */
            aload 5 /* keyNames */
            iload 6 /* i */
            aaload
            checkcast java.lang.String
            aastore
        27: .line 3370
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 6 /* i */
            aload 5 /* keyNames */
            arraylength
            if_icmplt 26
        end local 6 // int i
        end local 5 // java.lang.Object[] keyNames
        29: .line 3374
      StackMap locals:
      StackMap stack:
            aload 4 /* fontNames */
            arraylength
            anewarray java.awt.Font
            astore 5 /* fonts */
        start local 5 // java.awt.Font[] fonts
        30: .line 3375
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        31: goto 37
        32: .line 3376
      StackMap locals: java.awt.Font[] int
      StackMap stack:
            aload 5 /* fonts */
            iload 6 /* i */
            new java.awt.Font
            dup
            aload 4 /* fontNames */
            iload 6 /* i */
            aaload
            iconst_0
            iconst_1
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;II)V
            aastore
        33: .line 3377
            aload 1 /* fontMapNames */
            aload 4 /* fontNames */
            iload 6 /* i */
            aaload
            invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 7 /* f2d */
        start local 7 // sun.font.Font2D f2d
        34: .line 3378
            aload 7 /* f2d */
            ifnull 36
        35: .line 3379
            invokestatic sun.font.FontAccess.getFontAccess:()Lsun/font/FontAccess;
            aload 5 /* fonts */
            iload 6 /* i */
            aaload
            aload 7 /* f2d */
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
            invokevirtual sun.font.FontAccess.setFont2D:(Ljava/awt/Font;Lsun/font/Font2DHandle;)V
        end local 7 // sun.font.Font2D f2d
        36: .line 3375
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 6 /* i */
            aload 4 /* fontNames */
            arraylength
            if_icmplt 32
        end local 6 // int i
        38: .line 3382
            aload 0 /* this */
            aload 5 /* fonts */
            putfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
        end local 5 // java.awt.Font[] fonts
        end local 4 // java.lang.String[] fontNames
        end local 3 // java.lang.String[] platformNames
        end local 2 // sun.font.Font2D[] allfonts
        end local 1 // java.util.TreeMap fontMapNames
        39: .line 3385
      StackMap locals: sun.font.SunFontManager
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
            arraylength
            anewarray java.awt.Font
            astore 1 /* copyFonts */
        start local 1 // java.awt.Font[] copyFonts
        40: .line 3386
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
            iconst_0
            aload 1 /* copyFonts */
            iconst_0
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        41: .line 3387
            aload 1 /* copyFonts */
            areturn
        end local 1 // java.awt.Font[] copyFonts
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   42     0           this  Lsun/font/SunFontManager;
            3   39     1   fontMapNames  Ljava/util/TreeMap<Ljava/lang/String;Lsun/font/Font2D;>;
            4   39     2       allfonts  [Lsun/font/Font2D;
            5   12     3              i  I
           13   39     3  platformNames  [Ljava/lang/String;
           15   20     4              i  I
           21   39     4      fontNames  [Ljava/lang/String;
           24   29     5       keyNames  [Ljava/lang/Object;
           25   29     6              i  I
           30   39     5          fonts  [Ljava/awt/Font;
           31   38     6              i  I
           34   36     7            f2d  Lsun/font/Font2D;
           40   42     1      copyFonts  [Ljava/awt/Font;

  public java.lang.String[] getInstalledFontFamilyNames(java.util.Locale);
    descriptor: (Ljava/util/Locale;)[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.Locale requestedLocale
         0: .line 3399
            aload 1 /* requestedLocale */
            ifnonnull 2
         1: .line 3400
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            astore 1 /* requestedLocale */
         2: .line 3402
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            ifnull 9
            aload 0 /* this */
            getfield sun.font.SunFontManager.lastDefaultLocale:Ljava/util/Locale;
            ifnull 9
         3: .line 3403
            aload 1 /* requestedLocale */
            aload 0 /* this */
            getfield sun.font.SunFontManager.lastDefaultLocale:Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 9
         4: .line 3404
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            arraylength
            anewarray java.lang.String
            astore 2 /* copyFamilies */
        start local 2 // java.lang.String[] copyFamilies
         5: .line 3405
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            iconst_0
            aload 2 /* copyFamilies */
         6: .line 3406
            iconst_0
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            arraylength
         7: .line 3405
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 3407
            aload 2 /* copyFamilies */
            areturn
        end local 2 // java.lang.String[] copyFamilies
         9: .line 3410
      StackMap locals:
      StackMap stack:
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 2 /* familyNames */
        start local 2 // java.util.TreeMap familyNames
        10: .line 3413
            ldc "Serif"
            astore 3 /* str */
        start local 3 // java.lang.String str
        11: aload 2 /* familyNames */
            aload 3 /* str */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            aload 3 /* str */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 3414
            ldc "SansSerif"
            astore 3 /* str */
            aload 2 /* familyNames */
            aload 3 /* str */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            aload 3 /* str */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 3415
            ldc "Monospaced"
            astore 3 /* str */
            aload 2 /* familyNames */
            aload 3 /* str */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            aload 3 /* str */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 3416
            ldc "Dialog"
            astore 3 /* str */
            aload 2 /* familyNames */
            aload 3 /* str */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            aload 3 /* str */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 3417
            ldc "DialogInput"
            astore 3 /* str */
            aload 2 /* familyNames */
            aload 3 /* str */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            aload 3 /* str */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 3423
            aload 1 /* requestedLocale */
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 20
        17: .line 3424
            aload 0 /* this */
            aload 2 /* familyNames */
            aload 1 /* requestedLocale */
            invokevirtual sun.font.SunFontManager.getFamilyNamesFromPlatform:(Ljava/util/TreeMap;Ljava/util/Locale;)Z
            ifeq 20
        18: .line 3426
            aload 0 /* this */
            aload 2 /* familyNames */
            aload 1 /* requestedLocale */
            invokevirtual sun.font.SunFontManager.getJREFontFamilyNames:(Ljava/util/TreeMap;Ljava/util/Locale;)V
        19: .line 3427
            goto 30
        20: .line 3428
      StackMap locals: java.util.TreeMap java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
        21: .line 3429
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 4 /* physicalfonts */
        start local 4 // sun.font.Font2D[] physicalfonts
        22: .line 3430
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        23: goto 29
        24: .line 3431
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 28
        25: .line 3433
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            aload 1 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
        26: .line 3432
            astore 6 /* name */
        start local 6 // java.lang.String name
        27: .line 3434
            aload 2 /* familyNames */
            aload 6 /* name */
            aload 1 /* requestedLocale */
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            aload 6 /* name */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.String name
        28: .line 3430
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 5 /* i */
            aload 4 /* physicalfonts */
            arraylength
            if_icmplt 24
        end local 5 // int i
        end local 4 // sun.font.Font2D[] physicalfonts
        30: .line 3440
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* familyNames */
            aload 1 /* requestedLocale */
            invokevirtual sun.font.SunFontManager.addNativeFontFamilyNames:(Ljava/util/TreeMap;Ljava/util/Locale;)V
        31: .line 3442
            aload 2 /* familyNames */
            invokevirtual java.util.TreeMap.size:()I
            anewarray java.lang.String
            astore 4 /* retval */
        start local 4 // java.lang.String[] retval
        32: .line 3443
            aload 2 /* familyNames */
            invokevirtual java.util.TreeMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.toArray:()[Ljava/lang/Object;
            astore 5 /* keyNames */
        start local 5 // java.lang.Object[] keyNames
        33: .line 3444
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        34: goto 37
        35: .line 3445
      StackMap locals: java.lang.String[] java.lang.Object[] int
      StackMap stack:
            aload 4 /* retval */
            iload 6 /* i */
            aload 2 /* familyNames */
            aload 5 /* keyNames */
            iload 6 /* i */
            aaload
            invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            aastore
        36: .line 3444
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 6 /* i */
            aload 5 /* keyNames */
            arraylength
            if_icmplt 35
        end local 6 // int i
        38: .line 3447
            aload 1 /* requestedLocale */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 42
        39: .line 3448
            aload 0 /* this */
            aload 1 /* requestedLocale */
            putfield sun.font.SunFontManager.lastDefaultLocale:Ljava/util/Locale;
        40: .line 3449
            aload 0 /* this */
            aload 4 /* retval */
            arraylength
            anewarray java.lang.String
            putfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
        41: .line 3450
            aload 4 /* retval */
            iconst_0
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            iconst_0
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        42: .line 3452
      StackMap locals:
      StackMap stack:
            aload 4 /* retval */
            areturn
        end local 5 // java.lang.Object[] keyNames
        end local 4 // java.lang.String[] retval
        end local 3 // java.lang.String str
        end local 2 // java.util.TreeMap familyNames
        end local 1 // java.util.Locale requestedLocale
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   43     0             this  Lsun/font/SunFontManager;
            0   43     1  requestedLocale  Ljava/util/Locale;
            5    9     2     copyFamilies  [Ljava/lang/String;
           10   43     2      familyNames  Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;
           11   43     3              str  Ljava/lang/String;
           22   30     4    physicalfonts  [Lsun/font/Font2D;
           23   30     5                i  I
           27   28     6             name  Ljava/lang/String;
           32   43     4           retval  [Ljava/lang/String;
           33   43     5         keyNames  [Ljava/lang/Object;
           34   38     6                i  I
    MethodParameters:
                 Name  Flags
      requestedLocale  

  protected void addNativeFontFamilyNames(java.util.TreeMap<java.lang.String, java.lang.String>, java.util.Locale);
    descriptor: (Ljava/util/TreeMap;Ljava/util/Locale;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.TreeMap familyNames
        start local 2 // java.util.Locale requestedLocale
         0: .line 3456
            return
        end local 2 // java.util.Locale requestedLocale
        end local 1 // java.util.TreeMap familyNames
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Lsun/font/SunFontManager;
            0    1     1      familyNames  Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;
            0    1     2  requestedLocale  Ljava/util/Locale;
    Signature: (Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/Locale;)V
    MethodParameters:
                 Name  Flags
      familyNames      
      requestedLocale  

  public void register1dot0Fonts();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3459
            new sun.font.SunFontManager$11
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$11.<init>:(Lsun/font/SunFontManager;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         1: .line 3467
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/font/SunFontManager;

  protected void getJREFontFamilyNames(java.util.TreeMap<java.lang.String, java.lang.String>, java.util.Locale);
    descriptor: (Ljava/util/TreeMap;Ljava/util/Locale;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.util.TreeMap familyNames
        start local 2 // java.util.Locale requestedLocale
         0: .line 3475
            aload 0 /* this */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.registerDeferredJREFonts:(Ljava/lang/String;)V
         1: .line 3476
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 3 /* physicalfonts */
        start local 3 // sun.font.Font2D[] physicalfonts
         2: .line 3477
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 9
         4: .line 3478
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 8
         5: .line 3480
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            aload 2 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
         6: .line 3479
            astore 5 /* name */
        start local 5 // java.lang.String name
         7: .line 3481
            aload 1 /* familyNames */
            aload 5 /* name */
            aload 2 /* requestedLocale */
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            aload 5 /* name */
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.lang.String name
         8: .line 3477
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 3 /* physicalfonts */
            arraylength
            if_icmplt 4
        end local 4 // int i
        10: .line 3484
            return
        end local 3 // sun.font.Font2D[] physicalfonts
        end local 2 // java.util.Locale requestedLocale
        end local 1 // java.util.TreeMap familyNames
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lsun/font/SunFontManager;
            0   11     1      familyNames  Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;
            0   11     2  requestedLocale  Ljava/util/Locale;
            2   11     3    physicalfonts  [Lsun/font/Font2D;
            3   10     4                i  I
            7    8     5             name  Ljava/lang/String;
    Signature: (Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/Locale;)V
    MethodParameters:
                 Name  Flags
      familyNames      
      requestedLocale  

  private static java.util.Locale getSystemStartupLocale();
    descriptor: ()Ljava/util/Locale;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 3498
            getstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
            ifnonnull 2
         1: .line 3499
            new sun.font.SunFontManager$12
            dup
            invokespecial sun.font.SunFontManager$12.<init>:()V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.util.Locale
            putstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
         2: .line 3524
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void addToPool(sun.font.FileFont);
    descriptor: (Lsun/font/FileFont;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // sun.font.SunFontManager this
        start local 1 // sun.font.FileFont font
         0: .line 3529
            aconst_null
            astore 2 /* fontFileToClose */
        start local 2 // sun.font.FileFont fontFileToClose
         1: .line 3530
            iconst_m1
            istore 3 /* freeSlot */
        start local 3 // int freeSlot
         2: .line 3532
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            dup
            astore 4
            monitorenter
         3: .line 3540
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 11
         5: .line 3541
      StackMap locals: sun.font.SunFontManager sun.font.FileFont sun.font.FileFont int sun.font.FileFont[] int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            iload 5 /* i */
            aaload
            aload 1 /* font */
            if_acmpne 8
         6: .line 3542
            aload 4
            monitorexit
         7: return
         8: .line 3544
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            iload 5 /* i */
            aaload
            ifnonnull 10
            iload 3 /* freeSlot */
            ifge 10
         9: .line 3545
            iload 5 /* i */
            istore 3 /* freeSlot */
        10: .line 3540
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* i */
            bipush 20
            if_icmplt 5
        end local 5 // int i
        12: .line 3548
            iload 3 /* freeSlot */
            iflt 16
        13: .line 3549
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            iload 3 /* freeSlot */
            aload 1 /* font */
            aastore
        14: .line 3550
            aload 4
            monitorexit
        15: return
        16: .line 3553
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            aload 0 /* this */
            getfield sun.font.SunFontManager.lastPoolIndex:I
            aaload
            astore 2 /* fontFileToClose */
        17: .line 3554
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            aload 0 /* this */
            getfield sun.font.SunFontManager.lastPoolIndex:I
            aload 1 /* font */
            aastore
        18: .line 3558
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.lastPoolIndex:I
            iconst_1
            iadd
            bipush 20
            irem
            putfield sun.font.SunFontManager.lastPoolIndex:I
        19: .line 3532
            aload 4
            monitorexit
        20: goto 23
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: aload 4
            monitorexit
        22: athrow
        23: .line 3571
      StackMap locals:
      StackMap stack:
            aload 2 /* fontFileToClose */
            ifnull 25
        24: .line 3572
            aload 2 /* fontFileToClose */
            invokevirtual sun.font.FileFont.close:()V
        25: .line 3574
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int freeSlot
        end local 2 // sun.font.FileFont fontFileToClose
        end local 1 // sun.font.FileFont font
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   26     0             this  Lsun/font/SunFontManager;
            0   26     1             font  Lsun/font/FileFont;
            1   26     2  fontFileToClose  Lsun/font/FileFont;
            2   26     3         freeSlot  I
            4   12     5                i  I
      Exception table:
        from    to  target  type
           3     7      21  any
           8    15      21  any
          16    20      21  any
          21    22      21  any
    MethodParameters:
      Name  Flags
      font  

  protected javax.swing.plaf.FontUIResource getFontConfigFUIR(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Ljavax/swing/plaf/FontUIResource;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String family
        start local 2 // int style
        start local 3 // int size
         0: .line 3579
            new javax.swing.plaf.FontUIResource
            dup
            aload 1 /* family */
            iload 2 /* style */
            iload 3 /* size */
            invokespecial javax.swing.plaf.FontUIResource.<init>:(Ljava/lang/String;II)V
            areturn
        end local 3 // int size
        end local 2 // int style
        end local 1 // java.lang.String family
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lsun/font/SunFontManager;
            0    1     1  family  Ljava/lang/String;
            0    1     2   style  I
            0    1     3    size  I
    MethodParameters:
        Name  Flags
      family  
      style   
      size    

  private static java.lang.Error lambda$0();
    descriptor: ()Ljava/lang/Error;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 1056
            new java.lang.Error
            dup
            ldc "Probable fatal error: No physical fonts found."
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private java.lang.Void lambda$1(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)Ljava/lang/Void;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=9, locals=3, args_size=2
        start local 0 // sun.font.SunFontManager this
         0: .line 2317
            invokestatic sun.awt.util.ThreadGroupUtils.getRootThreadGroup:()Ljava/lang/ThreadGroup;
            astore 2 /* rootTG */
        start local 2 // java.lang.ThreadGroup rootTG
         1: .line 2318
            aload 0 /* this */
            new java.lang.Thread
            dup
            aload 2 /* rootTG */
            aload 1
         2: .line 2319
            ldc "FileCloser"
            lconst_0
            iconst_0
            invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JZ)V
         3: .line 2318
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
         4: .line 2320
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            aconst_null
            invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
         5: .line 2321
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            invokevirtual java.lang.Runtime.addShutdownHook:(Ljava/lang/Thread;)V
         6: .line 2322
            aconst_null
            areturn
        end local 2 // java.lang.ThreadGroup rootTG
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lsun/font/SunFontManager;
            1    7     2  rootTG  Ljava/lang/ThreadGroup;
}
SourceFile: "SunFontManager.java"
NestMembers:
  sun.font.SunFontManager$1  sun.font.SunFontManager$10  sun.font.SunFontManager$11  sun.font.SunFontManager$12  sun.font.SunFontManager$2  sun.font.SunFontManager$3  sun.font.SunFontManager$4  sun.font.SunFontManager$5  sun.font.SunFontManager$6  sun.font.SunFontManager$7  sun.font.SunFontManager$8  sun.font.SunFontManager$8$1  sun.font.SunFontManager$9  sun.font.SunFontManager$FamilyDescription  sun.font.SunFontManager$FontRegistrationInfo  sun.font.SunFontManager$T1Filter  sun.font.SunFontManager$TTFilter  sun.font.SunFontManager$TTorT1Filter
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public KeySetView = java.util.concurrent.ConcurrentHashMap$KeySetView of java.util.concurrent.ConcurrentHashMap
  sun.font.SunFontManager$1
  sun.font.SunFontManager$10
  sun.font.SunFontManager$11
  sun.font.SunFontManager$12
  sun.font.SunFontManager$2
  sun.font.SunFontManager$3
  sun.font.SunFontManager$4
  sun.font.SunFontManager$5
  sun.font.SunFontManager$6
  sun.font.SunFontManager$7
  sun.font.SunFontManager$8
  sun.font.SunFontManager$9
  public FamilyDescription = sun.font.SunFontManager$FamilyDescription of sun.font.SunFontManager
  private final FontRegistrationInfo = sun.font.SunFontManager$FontRegistrationInfo of sun.font.SunFontManager
  private T1Filter = sun.font.SunFontManager$T1Filter of sun.font.SunFontManager
  private TTFilter = sun.font.SunFontManager$TTFilter of sun.font.SunFontManager
  private TTorT1Filter = sun.font.SunFontManager$TTorT1Filter of sun.font.SunFontManager
  public final Level = sun.util.logging.PlatformLogger$Level of sun.util.logging.PlatformLogger