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 static final java.lang.Object altJAFontKey;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

  private boolean _usingPerAppContextComposites;
    descriptor: Z
    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 regFamilyKey;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.Object regFullNameKey;
    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 boolean fontsAreRegisteredPerAppContext;
    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 132
            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 197
            aconst_null
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         2: .line 222
            new sun.font.SunFontManager$TTFilter
            dup
            invokespecial sun.font.SunFontManager$TTFilter.<init>:()V
            putstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         3: .line 223
            new sun.font.SunFontManager$T1Filter
            dup
            invokespecial sun.font.SunFontManager$T1Filter.<init>:()V
            putstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         4: .line 232
            iconst_0
            anewarray java.lang.String
            putstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
         5: .line 271
            bipush 10
            putstatic sun.font.SunFontManager.maxSoftRefCnt:I
         6: .line 276
            new sun.font.SunFontManager$1
            dup
            invokespecial sun.font.SunFontManager$1.<init>:()V
         7: .line 275
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         8: .line 2731
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.altJAFontKey:Ljava/lang/Object;
         9: .line 2732
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
        10: .line 2733
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
        11: .line 2740
            iconst_0
            putstatic sun.font.SunFontManager.gAltJAFont:Z
        12: .line 2878
            aconst_null
            putstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
        13: .line 2899
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
        14: .line 2900
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.regFullNameKey:Ljava/lang/Object;
        15: .line 3727
            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 249
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 0 /* fm */
        start local 0 // sun.font.FontManager fm
         1: .line 250
            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 254
            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 258
            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 boolean usingPerAppContextComposites();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 263
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ireturn
        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 310
            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 315
            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 322
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 150
            aload 0 /* this */
            bipush 20
            anewarray sun.font.FileFont
            putfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
         2: .line 152
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.lastPoolIndex:I
         3: .line 163
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.maxCompFont:I
         4: .line 164
            aload 0 /* this */
            bipush 20
            anewarray sun.font.CompositeFont
            putfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
         5: .line 166
            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 168
            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 170
            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 178
            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 189
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loaded1dot0Fonts:Z
        10: .line 190
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFonts:Z
        11: .line 191
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
        12: .line 193
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        13: .line 200
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
        14: .line 217
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.discoveredAllFonts:Z
        15: .line 238
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        16: .line 830
            aload 0 /* this */
        17: .line 831
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
        18: .line 833
            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;
        19: .line 1154
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        20: .line 1160
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        21: .line 1167
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        22: .line 1170
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
        23: .line 1937
            aload 0 /* this */
        24: .line 1938
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
        25: .line 2328
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
        26: .line 2329
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        27: .line 2331
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.createdFontCount:I
        28: .line 2734
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        29: .line 2735
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        30: .line 2741
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gLocalePref:Z
        31: .line 2742
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gPropPref:Z
        32: .line 2903
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        33: .line 2904
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
        34: .line 325
            new sun.font.SunFontManager$2
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$2.<init>:(Lsun/font/SunFontManager;)V
        35: .line 324
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        36: .line 499
            new sun.font.SunFontManager$3
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$3.<init>:(Lsun/font/SunFontManager;)V
        37: .line 498
            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
        38: .line 508
            iload 1 /* platformFont */
            ifeq 44
        39: .line 509
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        40: .line 510
            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
        41: .line 511
            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
        42: .line 512
            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
        43: .line 513
            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
        44: .line 515
      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   45     0          this  Lsun/font/SunFontManager;
           38   45     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 520
            aload 3 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifne 2
         1: .line 521
            aload 3 /* handle */
            areturn
         2: .line 524
      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 525
            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 527
            aload 1 /* family */
            ifnonnull 6
         5: .line 528
            aload 5 /* oldFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            astore 1 /* family */
         6: .line 530
      StackMap locals: sun.font.CompositeFont sun.font.PhysicalFont
      StackMap stack:
            iload 2 /* style */
            iconst_m1
            if_icmpne 8
         7: .line 531
            aload 4 /* oldComp */
            invokevirtual sun.font.CompositeFont.getStyle:()I
            istore 2 /* style */
         8: .line 534
      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 535
            aload 6 /* newFont */
            instanceof sun.font.PhysicalFont
            ifne 11
        10: .line 536
            aload 5 /* oldFont */
            astore 6 /* newFont */
        11: .line 538
      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 540
            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 539
            astore 8 /* dialog2D */
        start local 8 // sun.font.CompositeFont dialog2D
        14: .line 541
            aload 8 /* dialog2D */
            ifnonnull 16
        15: .line 542
            aload 3 /* handle */
            areturn
        16: .line 544
      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 545
            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 546
            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 557
            new sun.font.CompositeFont
            dup
            aload 1 /* compositeName */
         1: .line 558
            aload 2 /* componentFileNames */
         2: .line 559
            aload 3 /* componentNames */
         3: .line 560
            iload 4 /* numMetricsSlots */
         4: .line 561
            aload 5 /* exclusionRanges */
         5: .line 562
            aload 6 /* exclusionMaxIndex */
            iload 7 /* defer */
            aload 0 /* this */
         6: .line 557
            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 563
            aload 0 /* this */
            aload 8 /* cf */
            iconst_2
            invokevirtual sun.font.SunFontManager.addCompositeToFontList:(Lsun/font/CompositeFont;I)V
         8: .line 564
            aload 0 /* this */
            getfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
            dup
            astore 9
            monitorenter
         9: .line 565
            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 564
            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 567
      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 583
            new sun.font.CompositeFont
            dup
            aload 0 /* compositeName */
         1: .line 584
            aload 1 /* componentFileNames */
         2: .line 585
            aload 2 /* componentNames */
         3: .line 586
            iload 3 /* numMetricsSlots */
         4: .line 587
            aload 4 /* exclusionRanges */
         5: .line 588
            aload 5 /* exclusionMaxIndex */
            iload 6 /* defer */
         6: .line 589
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
         7: .line 583
            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 604
            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 605
            aload 9 /* oldFont */
            instanceof sun.font.CompositeFont
            ifeq 11
        10: .line 606
            aload 9 /* oldFont */
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
            aload 8 /* cf */
            putfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
        11: .line 608
      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 609
            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 613
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 4
         1: .line 614
            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 615
            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 614
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         4: .line 617
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.CompositeFont.setRank:(I)V
         5: .line 618
            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 619
            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 621
            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 622
            aload 3 /* family */
            ifnonnull 10
         9: .line 623
            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 625
      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 626
            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 663
            aload 1 /* f */
            getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
            astore 3 /* fontName */
        start local 3 // java.lang.String fontName
         1: .line 664
            aload 1 /* f */
            getfield sun.font.PhysicalFont.familyName:Ljava/lang/String;
            astore 4 /* familyName */
        start local 4 // java.lang.String familyName
         2: .line 665
            aload 3 /* fontName */
            ifnull 3
            ldc ""
            aload 3 /* fontName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 666
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aconst_null
            areturn
         4: .line 668
      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 670
            aconst_null
            areturn
         6: .line 672
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.PhysicalFont.setRank:(I)V
         7: .line 673
            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 674
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 12
         9: .line 675
            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 676
            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 675
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        12: .line 678
      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 679
            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 680
            aload 5 /* family */
            ifnonnull 18
        15: .line 681
            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 682
            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 683
            goto 19
        18: .line 684
      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 686
      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 687
            aload 1 /* f */
            areturn
        end local 5 // sun.font.FontFamily family
        21: .line 689
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            astore 5 /* newFont */
        start local 5 // sun.font.PhysicalFont newFont
        22: .line 690
            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 691
            aload 6 /* oldFont */
            ifnonnull 25
        24: .line 692
            aconst_null
            areturn
        25: .line 697
      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 717
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.mapper:Lsun/font/CharToGlyphMapper;
            ifnull 28
            iload 2 /* rank */
            iconst_2
            if_icmple 28
        27: .line 718
            aload 6 /* oldFont */
            areturn
        28: .line 726
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iload 2 /* rank */
            if_icmpne 36
        29: .line 727
            aload 6 /* oldFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        30: .line 728
            aload 5 /* newFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        31: .line 729
            aload 6 /* oldFont */
            checkcast sun.font.TrueTypeFont
            astore 7 /* oldTTFont */
        start local 7 // sun.font.TrueTypeFont oldTTFont
        32: .line 730
            aload 5 /* newFont */
            checkcast sun.font.TrueTypeFont
            astore 8 /* newTTFont */
        start local 8 // sun.font.TrueTypeFont newTTFont
        33: .line 731
            aload 7 /* oldTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            aload 8 /* newTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            if_icmplt 36
        34: .line 732
            aload 6 /* oldFont */
            areturn
        end local 8 // sun.font.TrueTypeFont newTTFont
        end local 7 // sun.font.TrueTypeFont oldTTFont
        35: .line 735
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        36: .line 747
      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 748
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 44
        38: .line 749
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        39: .line 750
            new java.lang.StringBuilder
            dup
            ldc "Unexpected attempt to replace a JRE  font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        40: .line 751
            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 752
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 753
            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 750
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        44: .line 755
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        45: .line 758
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 52
        46: .line 759
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        47: .line 760
            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 761
            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 762
            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 763
            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 760
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        52: .line 765
      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 766
            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 767
            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 768
            aload 5 /* newFont */
        56: .line 767
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 770
            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 771
            aload 7 /* family */
            ifnonnull 62
        59: .line 772
            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 773
            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 774
            goto 63
        62: .line 775
      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 777
      StackMap locals:
      StackMap stack:
            aload 5 /* newFont */
            areturn
        end local 7 // sun.font.FontFamily family
        64: .line 779
      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 785
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 1 /* physFonts */
        start local 1 // sun.font.PhysicalFont[] physFonts
         1: .line 786
            aload 0 /* this */
            getfield sun.font.SunFontManager.maxCompFont:I
            istore 2 /* mcf */
        start local 2 // int mcf
         2: .line 787
            aload 1 /* physFonts */
            arraylength
            iload 2 /* mcf */
            iadd
            anewarray sun.font.Font2D
            astore 3 /* regFonts */
        start local 3 // sun.font.Font2D[] regFonts
         3: .line 788
            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 789
            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 790
            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 794
            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 842
            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 843
            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 842
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 845
            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 848
            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 849
            aload 2 /* info */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
            ifnull 5
         3: .line 850
            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 851
            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 848
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 854
            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 857
            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 870
            aload 0 /* this */
            getfield sun.font.SunFontManager.noOtherJREFontFiles:Z
            ifeq 2
         1: .line 871
            aconst_null
            areturn
         2: .line 873
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            dup
            astore 3
            monitorenter
         3: .line 874
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            ifnonnull 17
         4: .line 875
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* otherFontFiles */
        start local 4 // java.util.HashSet otherFontFiles
         5: .line 876
            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 13
      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 877
            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 878
            aload 7 /* file */
            invokevirtual java.io.File.getParent:()Ljava/lang/String;
            astore 8 /* dir */
        start local 8 // java.lang.String dir
         9: .line 879
            aload 7 /* file */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            pop
        10: .line 883
            aload 8 /* dir */
            ifnull 13
            aload 8 /* dir */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 884
            goto 13
        12: .line 886
      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
        13: .line 876
      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
        14: .line 888
            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;
        15: .line 889
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            arraylength
            ifne 17
        16: .line 890
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        end local 4 // java.util.HashSet otherFontFiles
        17: .line 894
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        18: goto 31
        19: .line 895
      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
        20: .line 896
            aload 5 /* fileName */
            ifnonnull 22
        21: .line 897
            goto 30
        22: .line 899
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            iload 4 /* i */
            aconst_null
            aastore
        23: .line 900
            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
        24: .line 901
            aload 6 /* physicalFont */
            ifnull 30
        25: .line 902
            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 27
        26: .line 903
            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 30
        27: .line 904
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 6 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            iload 2 /* style */
            if_icmpne 30
        28: .line 905
            aload 6 /* physicalFont */
            aload 3
            monitorexit
        29: areturn
        end local 6 // sun.font.PhysicalFont physicalFont
        end local 5 // java.lang.String fileName
        30: .line 894
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 4 /* i */
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            arraylength
            if_icmplt 19
        end local 4 // int i
        32: .line 873
            aload 3
            monitorexit
        33: goto 36
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String
      StackMap stack: java.lang.Throwable
        34: aload 3
            monitorexit
        35: athrow
        36: .line 910
      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   37     0            this  Lsun/font/SunFontManager;
            0   37     1            name  Ljava/lang/String;
            0   37     2           style  I
            5   17     4  otherFontFiles  Ljava/util/HashSet<Ljava/lang/String;>;
            7   13     5    deferredFile  Ljava/lang/String;
            8   13     7            file  Ljava/io/File;
            9   13     8             dir  Ljava/lang/String;
           18   32     4               i  I
           20   30     5        fileName  Ljava/lang/String;
           24   30     6    physicalFont  Lsun/font/PhysicalFont;
      Exception table:
        from    to  target  type
           3    29      34  any
          30    33      34  any
          34    35      34  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 914
            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 915
            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 916
            aload 5 /* physicalFont */
            ifnull 8
         4: .line 917
            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 918
            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 919
      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 920
            aload 5 /* physicalFont */
            areturn
        end local 5 // sun.font.PhysicalFont physicalFont
        end local 3 // java.lang.String fileName
         8: .line 914
      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 923
            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 927
            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 928
            aload 3 /* physicalFont */
            ifnull 3
         2: .line 929
            aload 3 /* physicalFont */
            areturn
         3: .line 931
      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 942
            new sun.font.SunFontManager$FontRegistrationInfo
            dup
            aload 2 /* fullPathName */
            aload 3 /* nativeNames */
            iload 4 /* fontFormat */
         1: .line 943
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         2: .line 942
            invokespecial sun.font.SunFontManager$FontRegistrationInfo.<init>:(Ljava/lang/String;[Ljava/lang/String;IZI)V
         3: .line 941
            astore 7 /* regInfo */
        start local 7 // sun.font.SunFontManager$FontRegistrationInfo regInfo
         4: .line 944
            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 945
            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 951
            aload 1 /* fileNameKey */
            ifnonnull 2
         1: .line 952
            aconst_null
            areturn
         2: .line 954
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 955
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 956
            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 959
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* physicalFont */
        start local 2 // sun.font.PhysicalFont physicalFont
         6: .line 960
            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 961
            aload 3 /* regInfo */
            ifnull 20
         8: .line 962
            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 963
            aload 0 /* this */
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
        10: .line 964
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.nativeNames:[Ljava/lang/String;
        11: .line 965
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFormat:I
        12: .line 966
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.javaRasterizer:Z
        13: .line 967
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontRank:I
        14: .line 963
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            astore 2 /* physicalFont */
        15: .line 969
            aload 2 /* physicalFont */
            ifnull 18
        16: .line 973
            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 974
            goto 25
        18: .line 975
      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 977
            goto 25
        20: .line 978
      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 979
            aload 4 /* handle */
            ifnonnull 24
        22: .line 981
            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 982
            goto 25
        24: .line 983
      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 986
      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 990
            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 994
            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 1007
            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 1008
            aload 6 /* regFont */
            ifnull 3
         2: .line 1009
            aload 6 /* regFont */
            areturn
         3: .line 1012
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
         4: .line 1016
            iload 3 /* fontFormat */
            tableswitch { // 0 - 4
                    0: 5
                    1: 15
                    2: 20
                    3: 20
                    4: 18
              default: 20
          }
         5: .line 1019
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            iconst_0
            istore 8 /* fn */
        start local 8 // int fn
         6: .line 1022
      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 1023
            iload 4 /* useJavaRasterizer */
         8: .line 1022
            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 1024
            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 1025
            aload 7 /* physicalFont */
            ifnonnull 12
        11: .line 1026
            aload 10 /* pf */
            astore 7 /* physicalFont */
        end local 10 // sun.font.PhysicalFont pf
        12: .line 1029
      StackMap locals: sun.font.TrueTypeFont
      StackMap stack:
            iload 8 /* fn */
            aload 9 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
        13: .line 1021
            if_icmplt 6
        14: .line 1030
            goto 20
        end local 9 // sun.font.TrueTypeFont ttf
        end local 8 // int fn
        15: .line 1033
      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 1034
            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 1035
            goto 20
        end local 10 // sun.font.Type1Font t1f
        18: .line 1038
      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 1039
            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 1044
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        21: .line 1045
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        22: .line 1046
            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 1047
            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 1046
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        25: .line 1049
            goto 31
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
        26: astore 8 /* ffe */
        start local 8 // java.awt.FontFormatException ffe
        27: .line 1050
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        28: .line 1051
            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 1052
            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 1051
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        end local 8 // java.awt.FontFormatException ffe
        31: .line 1055
      StackMap locals:
      StackMap stack:
            aload 7 /* physicalFont */
            ifnull 34
        32: .line 1056
            iload 3 /* fontFormat */
            iconst_4
            if_icmpeq 34
        33: .line 1057
            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 1059
      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 1069
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         1: goto 11
         2: .line 1070
      StackMap locals: int
      StackMap stack:
            iload 7 /* defer */
            ifeq 7
         3: .line 1071
            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 1072
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         5: .line 1071
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
         6: .line 1073
            goto 10
         7: .line 1074
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fileNames */
            iload 8 /* i */
            aaload
            aload 2 /* nativeNames */
            iload 8 /* i */
            aaload
         8: .line 1075
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         9: .line 1074
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        10: .line 1069
      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 1078
            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 1087
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 16
         1: .line 1088
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFaceName:()Ljava/lang/String;
            astore 1 /* defaultFontName */
        start local 1 // java.lang.String defaultFontName
         2: .line 1090
            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 1091
            aload 2 /* font2d */
            ifnull 12
         4: .line 1092
            aload 2 /* font2d */
            instanceof sun.font.PhysicalFont
            ifeq 7
         5: .line 1093
            aload 0 /* this */
            aload 2 /* font2d */
            checkcast sun.font.PhysicalFont
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
         6: .line 1094
            goto 12
         7: .line 1095
      StackMap locals: java.lang.String sun.font.Font2D
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 12
         8: .line 1096
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         9: .line 1097
            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 1098
            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 1097
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        12: .line 1102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 16
        13: .line 1109
            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 1110
            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 1109
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
        end local 2 // sun.font.Font2D font2d
        end local 1 // java.lang.String defaultFontName
        16: .line 1113
      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 1117
            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 1125
            iload 0 /* num */
            tableswitch { // 1 - 3
                    1: 1
                    2: 2
                    3: 3
              default: 4
          }
         1: .line 1127
      StackMap locals:
      StackMap stack:
            ldc ".bold"
            areturn
         2: .line 1129
      StackMap locals:
      StackMap stack:
            ldc ".italic"
            areturn
         3: .line 1131
      StackMap locals:
      StackMap stack:
            ldc ".bolditalic"
            areturn
         4: .line 1133
      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 1147
            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 1176
            iload 1 /* noType1 */
            ifeq 3
         1: .line 1177
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
            astore 2 /* filter */
        start local 2 // java.io.FilenameFilter filter
         2: .line 1178
            goto 4
        end local 2 // java.io.FilenameFilter filter
         3: .line 1179
      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 1181
      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 1233
            aconst_null
            astore 1 /* unmappedFontNames */
        start local 1 // java.util.ArrayList unmappedFontNames
         1: .line 1234
            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 1235
            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 1236
            aload 4 /* file */
            ifnonnull 25
         5: .line 1237
            aload 2 /* font */
            ldc "  "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            ifle 13
         6: .line 1238
            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 1239
            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 1243
            aload 4 /* file */
            ifnull 25
         9: .line 1244
            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 1245
            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 1246
            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 1248
            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 1249
            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 1250
            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 1251
            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 1252
            aload 4 /* file */
            ifnull 25
        19: .line 1253
            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 1254
            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 1256
            goto 25
        22: .line 1257
      StackMap locals:
      StackMap stack:
            aload 1 /* unmappedFontNames */
            ifnonnull 24
        23: .line 1258
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* unmappedFontNames */
        24: .line 1260
      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 1234
      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 1265
            aload 1 /* unmappedFontNames */
            ifnull 70
        27: .line 1266
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* unmappedFontFiles */
        start local 2 // java.util.HashSet unmappedFontFiles
        28: .line 1299
            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 1298
            astore 3 /* ffmapCopy */
        start local 3 // java.util.HashMap ffmapCopy
        30: .line 1300
            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 1301
            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 1300
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 31
        34: .line 1303
            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 1304
            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 1305
            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 1303
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 35
        39: .line 1308
            aload 0 /* this */
            aload 2 /* unmappedFontFiles */
            aload 1 /* unmappedFontNames */
            invokevirtual sun.font.SunFontManager.resolveFontFiles:(Ljava/util/HashSet;Ljava/util/ArrayList;)V
        40: .line 1315
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            ifle 53
        41: .line 1321
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* registryFiles */
        start local 4 // java.util.ArrayList registryFiles
        42: .line 1323
            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 1324
            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 1323
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 43
        46: .line 1331
            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 1332
            aload 4 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 50
        49: .line 1333
            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 1331
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        51: iload 6
            iload 7
            if_icmplt 47
        52: .line 1337
            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 1343
      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 1344
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* sz */
        start local 4 // int sz
        55: .line 1345
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        56: goto 69
        57: .line 1346
      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 1347
            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 1348
            aload 7 /* familyName */
            ifnull 64
        60: .line 1349
            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 1350
            aload 8 /* family */
            ifnull 64
        62: .line 1351
            aload 8 /* family */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            if_icmpgt 64
        63: .line 1352
            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 1356
      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 1357
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 68
        66: .line 1358
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        67: .line 1359
            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 1345
      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 1364
      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 1379
            aload 0 /* this */
            getfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
            ifeq 2
         1: .line 1380
            return
         2: .line 1382
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
         3: .line 1383
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 1384
            return
         5: .line 1390
      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 1391
            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 1392
            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 1391
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1402
            aconst_null
            astore 2 /* fontToFileMap2 */
        start local 2 // java.util.HashMap fontToFileMap2
        11: .line 1403
            aconst_null
            astore 3 /* fontToFamilyNameMap2 */
        start local 3 // java.util.HashMap fontToFamilyNameMap2
        12: .line 1404
            aconst_null
            astore 4 /* familyToFontListMap2 */
        start local 4 // java.util.HashMap familyToFontListMap2
        13: .line 1406
            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 41
      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 1407
            aload 1 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 40
        16: .line 1408
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 19
        17: .line 1409
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        18: .line 1410
            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 1412
      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 1413
            aload 9 /* f */
            ifnonnull 22
        21: .line 1414
            goto 40
        22: .line 1416
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 2 /* fontToFileMap2 */
            ifnonnull 28
        23: .line 1417
            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 1419
            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
        25: .line 1418
            astore 3 /* fontToFamilyNameMap2 */
        26: .line 1421
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        27: .line 1420
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            astore 4 /* familyToFontListMap2 */
        28: .line 1423
      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
        29: .line 1424
            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
        30: .line 1425
            aload 11 /* family */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 12 /* familyLC */
        start local 12 // java.lang.String familyLC
        31: .line 1426
            aload 3 /* fontToFamilyNameMap2 */
            aload 10 /* fontName */
            aload 11 /* family */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        32: .line 1427
            aload 2 /* fontToFileMap2 */
            aload 10 /* fontName */
            aload 5 /* pathFile */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        33: .line 1428
            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
        34: .line 1429
            aload 13 /* fonts */
            ifnonnull 37
        35: .line 1430
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 13 /* fonts */
        36: .line 1431
            goto 38
        37: .line 1432
      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 */
        38: .line 1434
      StackMap locals:
      StackMap stack:
            aload 13 /* fonts */
            aload 10 /* fontName */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        39: .line 1435
            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
        40: .line 1406
      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:
        41: iload 6
            iload 7
            if_icmplt 14
        42: .line 1438
            aload 2 /* fontToFileMap2 */
            ifnull 46
        43: .line 1439
            aload 0 /* this */
            aload 2 /* fontToFileMap2 */
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        44: .line 1440
            aload 0 /* this */
            aload 4 /* familyToFontListMap2 */
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        45: .line 1441
            aload 0 /* this */
            aload 3 /* fontToFamilyNameMap2 */
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        46: .line 1443
      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   47     0                  this  Lsun/font/SunFontManager;
            6   47     1         registryFiles  Ljava/util/ArrayList<Ljava/lang/String;>;
            8    9     2               regFile  Ljava/lang/String;
           11   47     2        fontToFileMap2  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
           12   47     3  fontToFamilyNameMap2  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
           13   47     4  familyToFontListMap2  Ljava/util/HashMap<Ljava/lang/String;Ljava/util/ArrayList<Ljava/lang/String;>;>;
           15   40     5              pathFile  Ljava/lang/String;
           20   40     9                     f  Lsun/font/PhysicalFont;
           29   40    10              fontName  Ljava/lang/String;
           30   40    11                family  Ljava/lang/String;
           31   40    12              familyLC  Ljava/lang/String;
           34   40    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 1448
            invokestatic sun.awt.SunToolkit.getStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
         1: .line 1450
            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 1452
            iconst_0
            istore 6 /* fn */
        start local 6 // int fn
         4: .line 1454
            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 1455
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 8
         6: .line 1456
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         7: .line 1457
            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 1460
      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 1462
            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 1463
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifeq 18
        11: .line 1464
            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 1465
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
            pop
        13: .line 1466
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        14: .line 1467
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        15: .line 1468
            new java.lang.StringBuilder
            dup
            ldc "Resolved absent registry entry for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        16: .line 1469
            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 1468
            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 1473
      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 1459
            if_icmplt 8
        end local 8 // java.lang.String fullPath
        end local 7 // sun.font.TrueTypeFont ttf
        end local 6 // int fn
        20: .line 1474
            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 1450
      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 1477
            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 1510
            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 1514
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            ifnonnull 2
         1: .line 1515
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.populateHardcodedFileNameMap:()Ljava/util/HashMap;
            putstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
         2: .line 1518
      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 1519
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         4: .line 1522
      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 1523
            aload 1 /* lcName */
            astore 4 /* firstWord */
        start local 4 // java.lang.String firstWord
         6: .line 1524
            iload 3 /* spaceIndex */
            ifle 8
         7: .line 1525
            aload 1 /* lcName */
            iconst_0
            iload 3 /* spaceIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* firstWord */
         8: .line 1528
      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 1529
            aload 5 /* fd */
            ifnonnull 11
        10: .line 1530
            aconst_null
            areturn
        11: .line 1538
      StackMap locals: sun.font.SunFontManager$FamilyDescription
      StackMap stack:
            iconst_m1
            istore 6 /* styleIndex */
        start local 6 // int styleIndex
        12: .line 1539
            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 1540
            iconst_0
            istore 6 /* styleIndex */
        14: .line 1541
            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 1542
            iconst_1
            istore 6 /* styleIndex */
        17: .line 1543
            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 1544
            iconst_2
            istore 6 /* styleIndex */
        20: .line 1545
            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 1546
            iconst_3
            istore 6 /* styleIndex */
        23: .line 1548
      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 1549
            aconst_null
            areturn
        25: .line 1552
      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 1553
            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 1555
            iconst_0
            istore 11 /* failure */
        start local 11 // boolean failure
        30: .line 1562
            aload 0 /* this */
            getstatic sun.font.SunFontManager.noType1Font:Z
            invokevirtual sun.font.SunFontManager.getPlatformFontDirs:(Z)[Ljava/lang/String;
            pop
        31: .line 1564
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.plainFileName:Ljava/lang/String;
            ifnull 35
        32: .line 1565
            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 1566
            aload 7 /* plainFile */
            ifnonnull 35
        34: .line 1567
            iconst_1
            istore 11 /* failure */
        35: .line 1571
      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 1572
            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 1573
            aload 8 /* boldFile */
            ifnonnull 39
        38: .line 1574
            iconst_1
            istore 11 /* failure */
        39: .line 1578
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.italicFileName:Ljava/lang/String;
            ifnull 43
        40: .line 1579
            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 1580
            aload 9 /* italicFile */
            ifnonnull 43
        42: .line 1581
            iconst_1
            istore 11 /* failure */
        43: .line 1585
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldItalicFileName:Ljava/lang/String;
            ifnull 47
        44: .line 1586
            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 1587
            aload 10 /* boldItalicFile */
            ifnonnull 47
        46: .line 1588
            iconst_1
            istore 11 /* failure */
        47: .line 1592
      StackMap locals:
      StackMap stack:
            iload 11 /* failure */
            ifeq 53
        48: .line 1593
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 51
        49: .line 1594
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        50: .line 1595
            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 1597
      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 1598
            aconst_null
            areturn
        53: .line 1602
      StackMap locals:
      StackMap stack:
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        54: .line 1603
            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 1602
            astore 12 /* files */
        start local 12 // java.lang.String[] files
        56: .line 1606
            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
        57: .line 1605
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 11 /* failure */
        58: .line 1621
            iload 11 /* failure */
            ifeq 64
        59: .line 1622
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 62
        60: .line 1623
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        61: .line 1624
            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
        62: .line 1626
      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
        63: .line 1627
            aconst_null
            areturn
        64: .line 1636
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 13 /* font */
        start local 13 // sun.font.Font2D font
        65: .line 1637
            iconst_0
            istore 14 /* f */
        start local 14 // int f
        66: goto 76
        67: .line 1638
      StackMap locals: sun.font.Font2D int
      StackMap stack:
            aload 12 /* files */
            iload 14 /* f */
            aaload
            ifnonnull 69
        68: .line 1639
            goto 75
        69: .line 1642
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* files */
            iload 14 /* f */
            aaload
            aconst_null
        70: .line 1643
            iconst_0
            iconst_0
            iconst_3
        71: .line 1642
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
        72: .line 1641
            astore 15 /* pf */
        start local 15 // sun.font.PhysicalFont pf
        73: .line 1644
            iload 14 /* f */
            iload 6 /* styleIndex */
            if_icmpne 75
        74: .line 1645
            aload 15 /* pf */
            astore 13 /* font */
        end local 15 // sun.font.PhysicalFont pf
        75: .line 1637
      StackMap locals:
      StackMap stack:
            iinc 14 /* f */ 1
      StackMap locals:
      StackMap stack:
        76: iload 14 /* f */
            aload 12 /* files */
            arraylength
            if_icmplt 67
        end local 14 // int f
        77: .line 1662
            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
        78: .line 1663
            aload 14 /* fontFamily */
            ifnull 89
        79: .line 1664
            aload 13 /* font */
            ifnonnull 84
        80: .line 1665
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        81: .line 1666
            aload 13 /* font */
            ifnonnull 89
        82: .line 1667
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        83: .line 1669
            goto 89
      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:
        84: iload 2 /* style */
            ifle 89
            iload 2 /* style */
            aload 13 /* font */
            getfield sun.font.Font2D.style:I
            if_icmpeq 89
        85: .line 1670
            iload 2 /* style */
            aload 13 /* font */
            getfield sun.font.Font2D.style:I
            ior
            istore 2 /* style */
        86: .line 1671
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        87: .line 1672
            aload 13 /* font */
            ifnonnull 89
        88: .line 1673
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        89: .line 1678
      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   90     0            this  Lsun/font/SunFontManager;
            0   90     1          lcName  Ljava/lang/String;
            0   90     2           style  I
            5   90     3      spaceIndex  I
            6   90     4       firstWord  Ljava/lang/String;
            9   90     5              fd  Lsun/font/SunFontManager$FamilyDescription;
           12   90     6      styleIndex  I
           26   90     7       plainFile  Ljava/lang/String;
           27   90     8        boldFile  Ljava/lang/String;
           28   90     9      italicFile  Ljava/lang/String;
           29   90    10  boldItalicFile  Ljava/lang/String;
           30   90    11         failure  Z
           56   90    12           files  [Ljava/lang/String;
           65   90    13            font  Lsun/font/Font2D;
           66   77    14               f  I
           73   75    15              pf  Lsun/font/PhysicalFont;
           78   90    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 1681
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            ifnonnull 14
         1: .line 1683
            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 1685
            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 1686
            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 1687
            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 1688
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
         6: .line 1689
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
         7: .line 1690
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1691
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
         9: .line 1688
            invokevirtual sun.font.SunFontManager.populateFontFileNameMap:(Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/Locale;)V
        10: .line 1692
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 12
        11: .line 1693
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.resolveWindowsFonts:()V
        12: .line 1695
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 14
        13: .line 1696
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.logPlatformFontInfo:()V
        14: .line 1699
      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 1703
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            astore 1 /* logger */
        start local 1 // sun.util.logging.PlatformLogger logger
         1: .line 1704
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 1705
      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 1704
            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 1707
            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 1708
            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 1707
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1710
            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 1711
            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 1712
            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 1711
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        15: .line 1710
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        16: .line 1714
            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 1715
            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 1716
            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 1715
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        21: .line 1714
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        22: .line 1718
            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 1722
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1723
            aconst_null
            areturn
         2: .line 1725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1728
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* fontNames */
        start local 1 // java.util.ArrayList fontNames
         4: .line 1729
            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 1730
            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 1731
            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 1730
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 2 // java.util.ArrayList a
        10: .line 1729
      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 1734
            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 1738
            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 1742
            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 1743
            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 1747
            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 1748
            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 1749
            iconst_m1
            istore 2 /* fontFormat */
        start local 2 // int fontFormat
         3: .line 1750
            bipush 6
            istore 3 /* fontRank */
        start local 3 // int fontRank
         4: .line 1751
            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 1752
            iconst_0
            istore 2 /* fontFormat */
         6: .line 1753
            iconst_3
            istore 3 /* fontRank */
         7: .line 1754
            goto 11
         8: .line 1755
      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 1756
            iconst_1
            istore 2 /* fontFormat */
        10: .line 1757
            iconst_4
            istore 3 /* fontRank */
        11: .line 1759
      StackMap locals:
      StackMap stack:
            iload 2 /* fontFormat */
            iconst_m1
            if_icmpne 13
        12: .line 1760
            aconst_null
            areturn
        13: .line 1762
      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 1764
      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 1776
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1777
            return
         2: .line 1779
      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 1780
            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 1779
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1782
            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 1787
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1788
            iconst_0
            ireturn
         2: .line 1790
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1791
            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 1792
            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 1791
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 1794
            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 1801
            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 1802
            aload 2 /* f */
            invokevirtual java.io.File.isAbsolute:()Z
            ifeq 3
         2: .line 1803
            aload 1 /* s */
            areturn
         3: .line 1804
      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 1805
            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 1808
      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 1807
            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 1819
            aload 3 /* path */
            ifnull 9
         8: .line 1820
            aload 3 /* path */
            areturn
        end local 3 // java.lang.String path
         9: .line 1823
      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 1847
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1848
            aconst_null
            areturn
         2: .line 1851
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* family */
        start local 3 // java.util.ArrayList family
         3: .line 1852
            aconst_null
            astore 4 /* fontFile */
        start local 4 // java.lang.String fontFile
         4: .line 1853
            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 1854
            aload 5 /* familyName */
            ifnull 11
         6: .line 1855
            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 1856
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1857
            aload 5 /* familyName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
         9: .line 1856
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 3 /* family */
        10: .line 1858
            goto 16
        11: .line 1859
      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 1860
            aload 3 /* family */
            ifnull 16
            aload 3 /* family */
            invokevirtual java.util.ArrayList.size:()I
            ifle 16
        13: .line 1861
            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 1862
            aload 6 /* lcFontName */
            ifnull 16
        15: .line 1863
            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 1867
      StackMap locals:
      StackMap stack:
            aload 3 /* family */
            ifnull 17
            aload 5 /* familyName */
            ifnonnull 18
        17: .line 1868
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        18: .line 1870
      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 1871
            aload 6 /* fontList */
            arraylength
            ifne 21
        20: .line 1872
            aconst_null
            areturn
        21: .line 1886
      StackMap locals: java.lang.String[]
      StackMap stack:
            iconst_0
            istore 7 /* f */
        start local 7 // int f
        22: goto 33
        23: .line 1887
      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 1888
            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 1889
            aload 9 /* fileName */
            ifnonnull 32
        26: .line 1890
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        27: .line 1891
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        28: .line 1892
            new java.lang.StringBuilder
            dup
            ldc "Platform lookup : No file for font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        29: .line 1893
            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 1892
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        31: .line 1895
      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 1886
      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 1902
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
        35: .line 1903
            aload 4 /* fontFile */
            ifnull 40
        36: .line 1904
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* fontFile */
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            aconst_null
        37: .line 1905
            iconst_0
            iconst_0
        38: .line 1906
            iconst_3
        39: .line 1904
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            astore 7 /* physicalFont */
        40: .line 1909
      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 1910
      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 1911
            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 1912
            aload 4 /* fontFile */
            ifnull 46
            aload 4 /* fontFile */
            aload 10 /* fileName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 46
        45: .line 1913
            goto 49
        46: .line 1918
      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 1919
            iconst_0
            iconst_0
            iconst_3
        48: .line 1918
            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 1909
      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 1922
            aconst_null
            astore 8 /* font */
        start local 8 // sun.font.Font2D font
        52: .line 1923
            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 1925
            aload 7 /* physicalFont */
            ifnull 55
        54: .line 1926
            iload 2 /* style */
            aload 7 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            ior
            istore 2 /* style */
        55: .line 1928
      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 1929
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 8 /* font */
        57: .line 1930
            aload 8 /* font */
            ifnonnull 59
        58: .line 1931
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 8 /* font */
        59: .line 1934
      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=13, 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 1948
            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 1949
            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 1958
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ifeq 11
         3: .line 1962
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            ldc Lsun/font/CompositeFont;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
         4: .line 1961
            checkcast java.util.concurrent.ConcurrentHashMap
         5: .line 1960
            astore 7 /* altNameCache */
        start local 7 // java.util.concurrent.ConcurrentHashMap altNameCache
         6: .line 1963
            aload 7 /* altNameCache */
            ifnull 9
         7: .line 1964
            aload 7 /* altNameCache */
            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
         8: .line 1965
            goto 12
        end local 6 // sun.font.Font2D font
         9: .line 1966
      StackMap locals: sun.font.SunFontManager java.lang.String int int java.lang.String java.lang.String top java.util.concurrent.ConcurrentHashMap
      StackMap stack:
            aconst_null
            astore 6 /* font */
        end local 7 // java.util.concurrent.ConcurrentHashMap altNameCache
        start local 6 // sun.font.Font2D font
        10: .line 1968
            goto 12
        end local 6 // sun.font.Font2D font
        11: .line 1969
      StackMap locals: sun.font.SunFontManager java.lang.String int int java.lang.String java.lang.String
      StackMap stack:
            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
        12: .line 1971
      StackMap locals: sun.font.Font2D
      StackMap stack:
            aload 6 /* font */
            ifnull 14
        13: .line 1972
            aload 6 /* font */
            areturn
        14: .line 1975
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 16
        15: .line 1976
            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
        16: .line 1985
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 22
        17: .line 1986
            aload 4 /* lowerCaseName */
            ldc "ms sans serif"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        18: .line 1987
            ldc "sansserif"
            astore 1 /* name */
        19: .line 1988
            goto 22
      StackMap locals:
      StackMap stack:
        20: aload 4 /* lowerCaseName */
            ldc "ms serif"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        21: .line 1989
            ldc "serif"
            astore 1 /* name */
        22: .line 2001
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "default"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        23: .line 2002
            ldc "dialog"
            astore 1 /* name */
        24: .line 2006
      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
        25: .line 2007
            aload 7 /* family */
            ifnull 38
        26: .line 2008
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
        27: .line 2009
            aload 6 /* font */
            ifnonnull 29
        28: .line 2010
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        29: .line 2012
      StackMap locals: sun.font.FontFamily
      StackMap stack:
            aload 6 /* font */
            ifnonnull 31
        30: .line 2013
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findFontFromPlatform:(Ljava/lang/String;I)Lsun/font/Font2D;
            astore 6 /* font */
        31: .line 2015
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 33
        32: .line 2016
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
        33: .line 2018
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 35
        34: .line 2019
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
        35: .line 2021
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 38
        36: .line 2022
            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
        37: .line 2023
            aload 6 /* font */
            areturn
        38: .line 2030
      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 */
        39: .line 2031
            aload 6 /* font */
            ifnull 54
        40: .line 2044
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 41
            iload 2 /* style */
            ifne 43
        41: .line 2045
      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
        42: .line 2046
            aload 6 /* font */
            areturn
        43: .line 2054
      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 */
        44: .line 2055
            aload 7 /* family */
            ifnull 54
        45: .line 2056
            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
        46: .line 2058
            aload 8 /* familyFont */
            ifnull 49
        47: .line 2059
            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
        48: .line 2060
            aload 8 /* familyFont */
            areturn
        49: .line 2067
      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 */
        50: .line 2068
            aload 8 /* familyFont */
            ifnull 54
        51: .line 2076
            aload 8 /* familyFont */
            iload 2 /* style */
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            ior
            invokevirtual sun.font.Font2D.canDoStyle:(I)Z
            ifeq 54
        52: .line 2077
            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
        53: .line 2078
            aload 8 /* familyFont */
            areturn
        end local 8 // sun.font.Font2D familyFont
        54: .line 2086
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 77
        55: .line 2088
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findFontFromPlatformMap:(Ljava/lang/String;I)Lsun/font/Font2D;
            astore 6 /* font */
        56: .line 2089
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 59
        57: .line 2090
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        58: .line 2091
            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
        59: .line 2093
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 62
        60: .line 2094
            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
        61: .line 2095
            aload 6 /* font */
            areturn
        62: .line 2101
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifle 67
        63: .line 2102
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findJREDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        64: .line 2103
            aload 6 /* font */
            ifnull 67
        65: .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
        66: .line 2105
            aload 6 /* font */
            areturn
        67: .line 2108
      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 */
        68: .line 2109
            aload 6 /* font */
            ifnull 77
        69: .line 2110
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 75
        70: .line 2111
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        71: .line 2112
            new java.lang.StringBuilder
            dup
            ldc "Found font via platform API for request:\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        72: .line 2113
            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;
        73: .line 2114
            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;
        74: .line 2112
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        75: .line 2116
      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
        76: .line 2117
            aload 6 /* font */
            areturn
        77: .line 2133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifle 82
        78: .line 2134
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        79: .line 2135
            aload 6 /* font */
            ifnull 82
        80: .line 2136
            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
        81: .line 2137
            aload 6 /* font */
            areturn
        82: .line 2154
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isSolaris:Z
            ifeq 90
            aload 0 /* this */
            getfield sun.font.SunFontManager.loaded1dot0Fonts:Z
            ifne 90
        83: .line 2158
            aload 4 /* lowerCaseName */
            ldc "timesroman"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 86
        84: .line 2159
            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 */
        85: .line 2160
            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 2162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.register1dot0Fonts:()V
        87: .line 2163
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loaded1dot0Fonts:Z
        88: .line 2164
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            iload 3 /* fallback */
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
            astore 8 /* ff */
        start local 8 // sun.font.Font2D ff
        89: .line 2165
            aload 8 /* ff */
            areturn
        end local 8 // sun.font.Font2D ff
        90: .line 2178
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifne 91
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
            ifeq 119
        91: .line 2179
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* familyTable */
        start local 8 // java.util.Hashtable familyTable
        92: .line 2182
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 96
        93: .line 2183
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 8 /* familyTable */
        94: .line 2184
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 9 /* nameTable */
        start local 9 // java.util.Hashtable nameTable
        95: .line 2185
            goto 103
        end local 9 // java.util.Hashtable nameTable
        96: .line 2186
      StackMap locals: java.util.Hashtable
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 10 /* appContext */
        start local 10 // sun.awt.AppContext appContext
        97: .line 2189
            aload 10 /* appContext */
            getstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
        98: .line 2188
            astore 11 /* tmp1 */
        start local 11 // java.util.Hashtable tmp1
        99: .line 2190
            aload 11 /* tmp1 */
            astore 8 /* familyTable */
       100: .line 2194
            aload 10 /* appContext */
            getstatic sun.font.SunFontManager.regFullNameKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
       101: .line 2193
            astore 12 /* tmp2 */
        start local 12 // java.util.Hashtable tmp2
       102: .line 2195
            aload 12 /* tmp2 */
            astore 9 /* nameTable */
        end local 12 // java.util.Hashtable tmp2
        end local 11 // java.util.Hashtable tmp1
        end local 10 // sun.awt.AppContext appContext
        start local 9 // java.util.Hashtable nameTable
       103: .line 2198
      StackMap locals: java.util.Hashtable
      StackMap stack:
            aload 8 /* familyTable */
            aload 4 /* lowerCaseName */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.font.FontFamily
            astore 7 /* family */
       104: .line 2199
            aload 7 /* family */
            ifnull 114
       105: .line 2200
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
       106: .line 2201
            aload 6 /* font */
            ifnonnull 108
       107: .line 2202
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
       108: .line 2204
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 110
       109: .line 2205
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
       110: .line 2207
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 114
       111: .line 2208
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 113
       112: .line 2209
            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
       113: .line 2211
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
       114: .line 2214
      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 */
       115: .line 2215
            aload 6 /* font */
            ifnull 119
       116: .line 2216
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 118
       117: .line 2217
            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
       118: .line 2219
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
        end local 9 // java.util.Hashtable nameTable
        end local 8 // java.util.Hashtable familyTable
       119: .line 2226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFonts:Z
            ifne 126
       120: .line 2227
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 123
       121: .line 2228
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
       122: .line 2229
            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
       123: .line 2231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
       124: .line 2232
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFonts:Z
       125: .line 2233
            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
       126: .line 2236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifne 133
       127: .line 2237
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 130
       128: .line 2238
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
       129: .line 2239
            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
       130: .line 2241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
       131: .line 2242
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
       132: .line 2243
            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
       133: .line 2261
      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 136
       134: .line 2262
            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
       135: .line 2263
            aload 6 /* font */
            areturn
       136: .line 2276
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 143
       137: .line 2278
            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;
       138: .line 2277
            astore 8 /* compatName */
        start local 8 // java.lang.String compatName
       139: .line 2279
            aload 8 /* compatName */
            ifnull 155
       140: .line 2280
            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 */
       141: .line 2281
            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
       142: .line 2282
            aload 6 /* font */
            areturn
        end local 8 // java.lang.String compatName
       143: .line 2284
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "timesroman"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 147
       144: .line 2285
            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 */
       145: .line 2286
            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
       146: .line 2287
            aload 6 /* font */
            areturn
       147: .line 2288
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "helvetica"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 151
       148: .line 2289
            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 */
       149: .line 2290
            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
       150: .line 2291
            aload 6 /* font */
            areturn
       151: .line 2292
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "courier"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 155
       152: .line 2293
            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 */
       153: .line 2294
            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
       154: .line 2295
            aload 6 /* font */
            areturn
       155: .line 2298
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 157
       156: .line 2299
            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
       157: .line 2302
      StackMap locals:
      StackMap stack:
            iload 3 /* fallback */
            tableswitch { // 1 - 2
                    1: 158
                    2: 159
              default: 160
          }
       158: .line 2303
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            areturn
       159: .line 2304
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.getDefaultLogicalFont:(I)Lsun/font/Font2D;
            areturn
       160: .line 2305
      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  161     0           this  Lsun/font/SunFontManager;
            0  161     1           name  Ljava/lang/String;
            0  161     2          style  I
            0  161     3       fallback  I
            1  161     4  lowerCaseName  Ljava/lang/String;
            2  161     5        mapName  Ljava/lang/String;
            8    9     6           font  Lsun/font/Font2D;
           10   11     6           font  Lsun/font/Font2D;
           12  161     6           font  Lsun/font/Font2D;
            6   10     7   altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;
           25  161     7         family  Lsun/font/FontFamily;
           46   54     8     familyFont  Lsun/font/Font2D;
           89   90     8             ff  Lsun/font/Font2D;
           92  119     8    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           95   96     9      nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
          103  119     9      nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           97  103    10     appContext  Lsun/awt/AppContext;
           99  103    11           tmp1  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
          102  103    12           tmp2  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
          139  143     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 2315
            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 2319
            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 2323
            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 2337
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* fList */
        start local 6 // java.util.List fList
         1: .line 2338
            iconst_1
            istore 7 /* cnt */
        start local 7 // int cnt
         2: .line 2339
            aload 1 /* fontFile */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 8 /* fontFilePath */
        start local 8 // java.lang.String fontFilePath
         3: .line 2340
            aconst_null
            astore 9 /* font2D */
        start local 9 // sun.font.FileFont font2D
         4: .line 2341
            aload 1 /* fontFile */
            astore 10 /* fFile */
        start local 10 // java.io.File fFile
         5: .line 2342
            aload 5 /* tracker */
            astore 11 /* _tracker */
        start local 11 // sun.font.CreatedFontTracker _tracker
         6: .line 2343
            iconst_0
            istore 12 /* weakRefs */
        start local 12 // boolean weakRefs
         7: .line 2344
            iconst_0
            istore 13 /* maxStrikes */
        start local 13 // int maxStrikes
         8: .line 2345
            aload 0 /* this */
            dup
            astore 14
            monitorenter
         9: .line 2346
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdFontCount:I
            getstatic sun.font.SunFontManager.maxSoftRefCnt:I
            if_icmpge 12
        10: .line 2347
            aload 0 /* this */
            dup
            getfield sun.font.SunFontManager.createdFontCount:I
            iconst_1
            iadd
            putfield sun.font.SunFontManager.createdFontCount:I
        11: .line 2348
            goto 14
        12: .line 2349
      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 2350
            bipush 10
            istore 13 /* maxStrikes */
        14: .line 2345
      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 2354
      StackMap locals:
      StackMap stack:
            iload 2 /* fontFormat */
            tableswitch { // 0 - 1
                    0: 19
                    1: 32
              default: 36
          }
        19: .line 2356
      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 2357
            aload 9 /* font2D */
            iload 12 /* weakRefs */
            iload 13 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        21: .line 2358
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 2359
            iload 3 /* all */
            ifne 24
        23: .line 2360
            goto 42
        24: .line 2362
      StackMap locals:
      StackMap stack:
            aload 9 /* font2D */
            checkcast sun.font.TrueTypeFont
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
            istore 7 /* cnt */
        25: .line 2363
            iconst_1
            istore 14 /* index */
        start local 14 // int index
        26: .line 2364
            goto 30
        27: .line 2365
      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 2366
            aload 9 /* font2D */
            iload 12 /* weakRefs */
            iload 13 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        29: .line 2367
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        30: .line 2364
      StackMap locals:
      StackMap stack:
            iload 14 /* index */
            iload 7 /* cnt */
            if_icmplt 27
        31: .line 2369
            goto 42
        end local 14 // int index
        32: .line 2371
      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 2372
            aload 9 /* font2D */
            iload 12 /* weakRefs */
            iload 13 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        34: .line 2373
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        35: .line 2374
            goto 42
        36: .line 2376
      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 2378
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
            astore 14 /* e */
        start local 14 // java.awt.FontFormatException e
        38: .line 2379
            iload 4 /* isCopy */
            ifeq 41
        39: .line 2381
            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
        40: .line 2380
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        41: .line 2391
      StackMap locals: java.awt.FontFormatException
      StackMap stack:
            aload 14 /* e */
            athrow
        end local 14 // java.awt.FontFormatException e
        42: .line 2393
      StackMap locals:
      StackMap stack:
            iload 4 /* isCopy */
            ifeq 55
        43: .line 2394
            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
        44: .line 2395
            ldc Lsun/font/FontManager;
            dup
            astore 14
            monitorenter
        45: .line 2397
            aload 0 /* this */
            getfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
            ifnonnull 47
        46: .line 2398
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        47: .line 2400
      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
        48: .line 2402
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            ifnonnull 51
        49: .line 2403
            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
        50: .line 2434
            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
        51: .line 2395
      StackMap locals:
      StackMap stack:
            aload 14
            monitorexit
        52: goto 55
      StackMap locals:
      StackMap stack: java.lang.Throwable
        53: aload 14
            monitorexit
        54: athrow
        55: .line 2445
      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   56     0                this  Lsun/font/SunFontManager;
            0   56     1            fontFile  Ljava/io/File;
            0   56     2          fontFormat  I
            0   56     3                 all  Z
            0   56     4              isCopy  Z
            0   56     5             tracker  Lsun/font/CreatedFontTracker;
            1   56     6               fList  Ljava/util/List<Lsun/font/Font2D;>;
            2   56     7                 cnt  I
            3   56     8        fontFilePath  Ljava/lang/String;
            4   56     9              font2D  Lsun/font/FileFont;
            5   56    10               fFile  Ljava/io/File;
            6   56    11            _tracker  Lsun/font/CreatedFontTracker;
            7   56    12            weakRefs  Z
            8   56    13          maxStrikes  I
           26   32    14               index  I
           38   42    14                   e  Ljava/awt/FontFormatException;
           50   51    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
          45    52      53  any
          53    54      53  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 2452
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 2 /* physFonts */
        start local 2 // sun.font.PhysicalFont[] physFonts
         1: .line 2453
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 6
         3: .line 2454
      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 2455
            aload 2 /* physFonts */
            iload 3 /* i */
            aaload
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
         5: .line 2453
      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 2458
            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 2474
            aload 1 /* font2D */
            instanceof sun.font.PhysicalFont
            ifne 2
         1: .line 2476
            return
         2: .line 2478
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 2479
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 2480
            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 2482
      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 2484
            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 2493
            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 2495
            return
         2: .line 2501
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
         3: .line 2502
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 6
         4: .line 2503
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         5: .line 2504
            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 2506
      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 2507
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 13
         9: .line 2508
      StackMap locals: sun.font.PhysicalFont[] int
      StackMap stack:
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            aload 2 /* newFont */
            if_acmpeq 12
        10: .line 2509
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            astore 2 /* newFont */
        11: .line 2510
            goto 14
        12: .line 2507
      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 2513
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
        15: .line 2514
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        16: .line 2515
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        17: .line 2516
            ldc "This is bad. No good physicalFonts found."
            invokevirtual sun.util.logging.PlatformLogger.severe:(Ljava/lang/String;)V
        18: .line 2518
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.font.PhysicalFont[] physFonts
        19: .line 2526
      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 2527
            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 2528
            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 2529
            aload 1 /* oldFont */
            invokestatic sun.font.FontFamily.remove:(Lsun/font/Font2D;)V
        23: .line 2530
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 37
        24: .line 2531
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
        25: .line 2532
            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 2531
            astore 3 /* mapEntries */
        start local 3 // java.util.Map$Entry[] mapEntries
        27: .line 2536
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        28: goto 36
        29: .line 2537
      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 2540
            aload 3 /* mapEntries */
            iload 4 /* i */
            aaload
            astore 5 /* tmp */
        start local 5 // java.util.Map$Entry tmp
        31: .line 2541
            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 2542
            goto 35
      StackMap locals:
      StackMap stack: java.lang.Exception
        33: pop
        34: .line 2546
            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 2536
      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 2552
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        38: goto 42
        39: .line 2582
      StackMap locals: int
      StackMap stack:
            aload 2 /* newFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iconst_2
            if_icmple 41
        40: .line 2583
            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 2552
      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 2586
            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 2589
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 2
         1: .line 2590
            return
         2: .line 2592
      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 2593
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 1 /* fonts */
        start local 1 // sun.font.Font2D[] fonts
         4: .line 2594
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 18
         6: .line 2595
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            instanceof sun.font.TrueTypeFont
            ifeq 17
         7: .line 2596
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            checkcast sun.font.TrueTypeFont
            astore 3 /* ttf */
        start local 3 // sun.font.TrueTypeFont ttf
         8: .line 2597
            aload 3 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getAllFullNames:()[Ljava/lang/String;
            astore 4 /* fullNames */
        start local 4 // java.lang.String[] fullNames
         9: .line 2598
            iconst_0
            istore 5 /* n */
        start local 5 // int n
        10: goto 13
        11: .line 2599
      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 2598
            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 2601
            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 2602
            aload 5 /* family */
            ifnull 17
        16: .line 2603
            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 2594
      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 2607
            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 2618
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2619
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2620
            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 2627
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnonnull 5
         4: .line 2628
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadLocaleNames:()V
         5: .line 2630
      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 2631
            aconst_null
            astore 4 /* font */
        start local 4 // sun.font.Font2D font
         7: .line 2634
            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 2635
            aload 5 /* family */
            ifnull 14
         9: .line 2636
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 4 /* font */
        10: .line 2637
            aload 4 /* font */
            ifnonnull 12
        11: .line 2638
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 4 /* font */
        12: .line 2640
      StackMap locals: java.lang.String sun.font.Font2D sun.font.FontFamily
      StackMap stack:
            aload 4 /* font */
            ifnull 14
        13: .line 2641
            aload 4 /* font */
            areturn
        14: .line 2646
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 6
            monitorenter
        15: .line 2647
            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 2646
            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 2649
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            ifnull 33
        21: .line 2650
            aload 4 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 22
            iload 2 /* style */
            ifne 23
        22: .line 2651
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            areturn
        23: .line 2653
      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 2654
            aload 5 /* family */
            ifnull 33
        25: .line 2655
            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 2657
            aload 6 /* familyFont */
            ifnull 28
        27: .line 2658
            aload 6 /* familyFont */
            areturn
        28: .line 2660
      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 2661
            aload 6 /* familyFont */
            ifnull 33
        30: .line 2670
            aload 6 /* familyFont */
            iload 2 /* style */
            invokevirtual sun.font.Font2D.canDoStyle:(I)Z
            ifne 32
        31: .line 2671
            aconst_null
            astore 6 /* familyFont */
        32: .line 2673
      StackMap locals:
      StackMap stack:
            aload 6 /* familyFont */
            areturn
        end local 6 // sun.font.Font2D familyFont
        33: .line 2679
      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 maybeUsingAlternateCompositeFonts();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2758
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingAlternateComposites:Z
            ifne 1
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/font/SunFontManager;

  public boolean usingAlternateCompositeFonts();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2762
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingAlternateComposites:Z
            ifne 4
         1: .line 2763
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ifeq 3
         2: .line 2764
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            ldc Lsun/font/CompositeFont;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnonnull 4
         3: .line 2762
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/font/SunFontManager;

  private static boolean maybeMultiAppContext();
    descriptor: ()Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 2770
            new sun.font.SunFontManager$9
            dup
            invokespecial sun.font.SunFontManager$9.<init>:()V
         1: .line 2769
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
         2: .line 2768
            astore 0 /* appletSM */
        start local 0 // java.lang.Boolean appletSM
         3: .line 2776
            aload 0 /* appletSM */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 0 // java.lang.Boolean appletSM
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            3    4     0  appletSM  Ljava/lang/Boolean;

  public synchronized void useAlternateFontforJALocales();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2784
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2785
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2786
            ldc "Entered useAlternateFontforJALocales()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2788
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 2789
            return
         5: .line 2792
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 8
         6: .line 2793
            iconst_1
            putstatic sun.font.SunFontManager.gAltJAFont:Z
         7: .line 2794
            goto 10
         8: .line 2795
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
         9: .line 2796
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.altJAFontKey:Ljava/lang/Object;
            getstatic sun.font.SunFontManager.altJAFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 1 // sun.awt.AppContext appContext
        10: .line 2798
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lsun/font/SunFontManager;
            9   10     1  appContext  Lsun/awt/AppContext;

  public boolean usingAlternateFontforJALocales();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2801
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 2
         1: .line 2802
            getstatic sun.font.SunFontManager.gAltJAFont:Z
            ireturn
         2: .line 2804
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
         3: .line 2805
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.altJAFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            getstatic sun.font.SunFontManager.altJAFontKey:Ljava/lang/Object;
            if_acmpne 4
            iconst_1
            ireturn
      StackMap locals: sun.awt.AppContext
      StackMap stack:
         4: iconst_0
            ireturn
        end local 1 // sun.awt.AppContext appContext
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lsun/font/SunFontManager;
            3    5     1  appContext  Lsun/awt/AppContext;

  public synchronized void preferLocaleFonts();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2810
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 2
         1: .line 2811
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "Entered preferLocaleFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         2: .line 2814
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.willReorderForStartupLocale:()Z
            ifne 4
         3: .line 2815
            return
         4: .line 2818
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 11
         5: .line 2819
            aload 0 /* this */
            getfield sun.font.SunFontManager.gLocalePref:Z
            ifeq 7
         6: .line 2820
            return
         7: .line 2822
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gLocalePref:Z
         8: .line 2823
            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 2824
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        10: .line 2825
            goto 22
        11: .line 2826
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
        12: .line 2827
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            getstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
            if_acmpne 14
        13: .line 2828
            return
        14: .line 2830
      StackMap locals: sun.awt.AppContext
      StackMap stack:
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
            getstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 2832
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            getstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
            if_acmpne 16
            iconst_1
            goto 17
      StackMap locals:
      StackMap stack:
        16: iconst_0
        17: .line 2831
      StackMap locals:
      StackMap stack: int
            istore 2 /* acPropPref */
        start local 2 // boolean acPropPref
        18: .line 2834
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            astore 3 /* altNameCache */
        start local 3 // java.util.concurrent.ConcurrentHashMap altNameCache
        19: .line 2836
            aload 1 /* appContext */
            ldc Lsun/font/CompositeFont;
            aload 3 /* altNameCache */
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 2837
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        21: .line 2838
            aload 0 /* this */
            aload 3 /* altNameCache */
            iconst_1
            iload 2 /* acPropPref */
            invokevirtual sun.font.SunFontManager.createCompositeFonts:(Ljava/util/concurrent/ConcurrentHashMap;ZZ)V
        end local 3 // java.util.concurrent.ConcurrentHashMap altNameCache
        end local 2 // boolean acPropPref
        end local 1 // sun.awt.AppContext appContext
        22: .line 2840
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lsun/font/SunFontManager;
           12   22     1    appContext  Lsun/awt/AppContext;
           18   22     2    acPropPref  Z
           19   22     3  altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;

  public synchronized void preferProportionalFonts();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 2843
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2844
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2845
            ldc "Entered preferProportionalFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2850
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.hasMonoToPropMap:()Z
            ifne 5
         4: .line 2851
            return
         5: .line 2854
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 12
         6: .line 2855
            aload 0 /* this */
            getfield sun.font.SunFontManager.gPropPref:Z
            ifeq 8
         7: .line 2856
            return
         8: .line 2858
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gPropPref:Z
         9: .line 2859
            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
        10: .line 2860
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        11: .line 2861
            goto 23
        12: .line 2862
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
        13: .line 2863
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            getstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
            if_acmpne 15
        14: .line 2864
            return
        15: .line 2866
      StackMap locals: sun.awt.AppContext
      StackMap stack:
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
            getstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 2868
            aload 1 /* appContext */
            getstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            getstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
            if_acmpne 17
            iconst_1
            goto 18
      StackMap locals:
      StackMap stack:
        17: iconst_0
        18: .line 2867
      StackMap locals:
      StackMap stack: int
            istore 2 /* acLocalePref */
        start local 2 // boolean acLocalePref
        19: .line 2870
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            astore 3 /* altNameCache */
        start local 3 // java.util.concurrent.ConcurrentHashMap altNameCache
        20: .line 2872
            aload 1 /* appContext */
            ldc Lsun/font/CompositeFont;
            aload 3 /* altNameCache */
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 2873
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        22: .line 2874
            aload 0 /* this */
            aload 3 /* altNameCache */
            iload 2 /* acLocalePref */
            iconst_1
            invokevirtual sun.font.SunFontManager.createCompositeFonts:(Ljava/util/concurrent/ConcurrentHashMap;ZZ)V
        end local 3 // java.util.concurrent.ConcurrentHashMap altNameCache
        end local 2 // boolean acLocalePref
        end local 1 // sun.awt.AppContext appContext
        23: .line 2876
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   24     0          this  Lsun/font/SunFontManager;
           13   23     1    appContext  Lsun/awt/AppContext;
           19   23     2  acLocalePref  Z
           20   23     3  altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;

  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 2880
            getstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
            ifnonnull 18
         1: .line 2881
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 0 /* l */
        start local 0 // java.util.Locale l
         2: .line 2882
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
            astore 1 /* fontManager */
        start local 1 // sun.font.SunFontManager fontManager
         3: .line 2884
            aload 1 /* fontManager */
            aload 0 /* l */
            invokevirtual sun.font.SunFontManager.getInstalledFontFamilyNames:(Ljava/util/Locale;)[Ljava/lang/String;
         4: .line 2883
            astore 2 /* installedFamilies */
        start local 2 // java.lang.String[] installedFamilies
         5: .line 2885
            aload 1 /* fontManager */
            invokevirtual sun.font.SunFontManager.getAllInstalledFonts:()[Ljava/awt/Font;
            astore 3 /* installedFonts */
        start local 3 // java.awt.Font[] installedFonts
         6: .line 2886
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* names */
        start local 4 // java.util.HashSet names
         7: .line 2887
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 11
         9: .line 2888
      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 2887
            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 2890
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        13: goto 16
        14: .line 2891
      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 2890
            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 2893
            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 2895
      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 2910
            aload 1 /* font */
            ifnonnull 2
         1: .line 2911
            iconst_0
            ireturn
         2: .line 2915
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         3: .line 2916
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            ifnonnull 6
         4: .line 2917
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
         5: .line 2918
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
         6: .line 2915
      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 2922
      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 2923
            iconst_0
            ireturn
        12: .line 2943
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.getInstalledNames:()Ljava/util/HashSet;
            astore 2 /* names */
        start local 2 // java.util.HashSet names
        13: .line 2944
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
        14: .line 2945
            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 2946
            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 2947
            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 2948
      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 2954
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 23
        19: .line 2955
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 6 /* familyTable */
        start local 6 // java.util.Hashtable familyTable
        20: .line 2956
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 7 /* fullNameTable */
        start local 7 // java.util.Hashtable fullNameTable
        21: .line 2957
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        22: .line 2958
            goto 36
        end local 7 // java.util.Hashtable fullNameTable
        end local 6 // java.util.Hashtable familyTable
        23: .line 2959
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 8 /* appContext */
        start local 8 // sun.awt.AppContext appContext
        24: .line 2962
            aload 8 /* appContext */
            getstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
        25: .line 2961
            astore 9 /* tmp1 */
        start local 9 // java.util.Hashtable tmp1
        26: .line 2963
            aload 9 /* tmp1 */
            astore 6 /* familyTable */
        start local 6 // java.util.Hashtable familyTable
        27: .line 2966
            aload 8 /* appContext */
            getstatic sun.font.SunFontManager.regFullNameKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
        28: .line 2965
            astore 10 /* tmp2 */
        start local 10 // java.util.Hashtable tmp2
        29: .line 2967
            aload 10 /* tmp2 */
            astore 7 /* fullNameTable */
        start local 7 // java.util.Hashtable fullNameTable
        30: .line 2969
            aload 6 /* familyTable */
            ifnonnull 35
        31: .line 2970
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 6 /* familyTable */
        32: .line 2971
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 7 /* fullNameTable */
        33: .line 2972
            aload 8 /* appContext */
            getstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
            aload 6 /* familyTable */
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        34: .line 2973
            aload 8 /* appContext */
            getstatic sun.font.SunFontManager.regFullNameKey:Ljava/lang/Object;
            aload 7 /* fullNameTable */
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 2975
      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.awt.AppContext java.util.Hashtable java.util.Hashtable
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
        end local 10 // java.util.Hashtable tmp2
        end local 9 // java.util.Hashtable tmp1
        end local 8 // sun.awt.AppContext appContext
        36: .line 2978
      StackMap locals:
      StackMap stack:
            aload 1 /* font */
            invokestatic sun.font.FontUtilities.getFont2D:(Ljava/awt/Font;)Lsun/font/Font2D;
            astore 8 /* font2D */
        start local 8 // sun.font.Font2D font2D
        37: .line 2979
            aload 8 /* font2D */
            invokevirtual sun.font.Font2D.getStyle:()I
            istore 9 /* style */
        start local 9 // int style
        38: .line 2980
            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
        39: .line 2981
            aload 10 /* family */
            ifnonnull 42
        40: .line 2982
            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 */
        41: .line 2983
            aload 6 /* familyTable */
            aload 4 /* familyName */
            aload 10 /* family */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        42: .line 2991
      StackMap locals: sun.font.Font2D int sun.font.FontFamily
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 48
        43: .line 2992
            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
        44: .line 2993
            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
        45: .line 2994
            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
        46: .line 2995
            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
        47: .line 2996
            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
        48: .line 2998
      StackMap locals:
      StackMap stack:
            aload 10 /* family */
            aload 8 /* font2D */
            iload 9 /* style */
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        49: .line 2999
            aload 7 /* fullNameTable */
            aload 5 /* fullName */
            aload 8 /* font2D */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        50: .line 3000
            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   51     0           this  Lsun/font/SunFontManager;
            0   51     1           font  Ljava/awt/Font;
           13   51     2          names  Ljava/util/HashSet<Ljava/lang/String;>;
           14   51     3              l  Ljava/util/Locale;
           15   51     4     familyName  Ljava/lang/String;
           16   51     5       fullName  Ljava/lang/String;
           20   23     6    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           27   51     6    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           21   23     7  fullNameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           30   51     7  fullNameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           24   36     8     appContext  Lsun/awt/AppContext;
           26   36     9           tmp1  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           29   36    10           tmp2  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           37   51     8         font2D  Lsun/font/Font2D;
           38   51     9          style  I
           39   51    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 3005
            aload 1 /* font */
            ifnonnull 2
         1: .line 3006
            return
         2: .line 3008
      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 3009
            iconst_0
            istore 3 /* k */
        start local 3 // int k
         4: goto 8
         5: .line 3010
      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 3011
            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 3009
      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 3014
            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 3020
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 3021
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 1 /* familyTable */
        start local 1 // java.util.Hashtable familyTable
         2: .line 3022
            goto 10
        end local 1 // java.util.Hashtable familyTable
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
            ifeq 9
         4: .line 3023
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 2 /* appContext */
        start local 2 // sun.awt.AppContext appContext
         5: .line 3026
            aload 2 /* appContext */
            getstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
         6: .line 3025
            astore 3 /* tmp */
        start local 3 // java.util.Hashtable tmp
         7: .line 3027
            aload 3 /* tmp */
            astore 1 /* familyTable */
        end local 3 // java.util.Hashtable tmp
        end local 2 // sun.awt.AppContext appContext
        start local 1 // java.util.Hashtable familyTable
         8: .line 3028
            goto 10
        end local 1 // java.util.Hashtable familyTable
         9: .line 3029
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable familyTable
        10: .line 3032
      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
        11: .line 3033
            aload 1 /* familyTable */
            dup
            astore 3
            monitorenter
        12: .line 3034
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 4 /* map */
        start local 4 // java.util.TreeMap map
        13: .line 3035
            aload 1 /* familyTable */
            invokevirtual java.util.Hashtable.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 20
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.util.TreeMap top java.util.Iterator
      StackMap stack:
        14: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.FontFamily
            astore 5 /* f */
        start local 5 // sun.font.FontFamily f
        15: .line 3036
            aload 5 /* f */
            iconst_0
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 7 /* font2D */
        start local 7 // sun.font.Font2D font2D
        16: .line 3037
            aload 7 /* font2D */
            ifnonnull 18
        17: .line 3038
            aload 5 /* f */
            iconst_0
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 7 /* font2D */
        18: .line 3040
      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
        19: .line 3041
            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
        20: .line 3035
      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 14
        21: .line 3043
            aload 4 /* map */
            aload 3
            monitorexit
        22: areturn
        end local 4 // java.util.TreeMap map
        23: .line 3033
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        24: 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   25     0         this  Lsun/font/SunFontManager;
            2    3     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
            8    9     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           10   25     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
            5    8     2   appContext  Lsun/awt/AppContext;
            7    8     3          tmp  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           11   25     2            l  Ljava/util/Locale;
           13   23     4          map  Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;
           15   20     5            f  Lsun/font/FontFamily;
           16   20     7       font2D  Lsun/font/Font2D;
           19   20     8         name  Ljava/lang/String;
      Exception table:
        from    to  target  type
          12    22      23  any
          23    24      23  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 3050
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 3051
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 1 /* nameTable */
        start local 1 // java.util.Hashtable nameTable
         2: .line 3052
            goto 10
        end local 1 // java.util.Hashtable nameTable
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
            ifeq 9
         4: .line 3053
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 2 /* appContext */
        start local 2 // sun.awt.AppContext appContext
         5: .line 3056
            aload 2 /* appContext */
            getstatic sun.font.SunFontManager.regFullNameKey:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Hashtable
         6: .line 3055
            astore 3 /* tmp */
        start local 3 // java.util.Hashtable tmp
         7: .line 3057
            aload 3 /* tmp */
            astore 1 /* nameTable */
        end local 3 // java.util.Hashtable tmp
        end local 2 // sun.awt.AppContext appContext
        start local 1 // java.util.Hashtable nameTable
         8: .line 3058
            goto 10
        end local 1 // java.util.Hashtable nameTable
         9: .line 3059
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable nameTable
        10: .line 3062
      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
        11: .line 3063
            aload 1 /* nameTable */
            dup
            astore 3
            monitorenter
        12: .line 3064
            aload 1 /* nameTable */
            invokevirtual java.util.Hashtable.size:()I
            anewarray java.awt.Font
            astore 4 /* fonts */
        start local 4 // java.awt.Font[] fonts
        13: .line 3065
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        14: .line 3066
            aload 1 /* nameTable */
            invokevirtual java.util.Hashtable.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 17
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.awt.Font[] int top java.util.Iterator
      StackMap stack:
        15: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 6 /* font2D */
        start local 6 // sun.font.Font2D font2D
        16: .line 3067
            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
        17: .line 3066
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 3069
            aload 4 /* fonts */
            aload 3
            monitorexit
        19: areturn
        end local 5 // int i
        end local 4 // java.awt.Font[] fonts
        20: .line 3063
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        21: 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   22     0        this  Lsun/font/SunFontManager;
            2    3     1   nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
            8    9     1   nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           10   22     1   nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
            5    8     2  appContext  Lsun/awt/AppContext;
            7    8     3         tmp  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           11   22     2           l  Ljava/util/Locale;
           13   20     4       fonts  [Ljava/awt/Font;
           14   20     5           i  I
           16   17     6      font2D  Lsun/font/Font2D;
      Exception table:
        from    to  target  type
          12    19      20  any
          20    21      20  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 3077
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            ifnull 2
         1: .line 3078
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            areturn
         2: .line 3081
      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 3083
            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 3082
            astore 3 /* parser */
        start local 3 // java.util.StringTokenizer parser
         5: .line 3084
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* pathList */
        start local 4 // java.util.ArrayList pathList
         6: .line 3086
            goto 8
         7: .line 3087
      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 3086
      StackMap locals:
      StackMap stack:
            aload 3 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 7
         9: .line 3089
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 3091
      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 3092
            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 3111
            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 3112
            aload 9 /* ls */
            ifnull 2
            aload 9 /* ls */
            arraylength
            ifne 3
         2: .line 3113
      StackMap locals: java.lang.String[]
      StackMap stack:
            return
         3: .line 3115
      StackMap locals:
      StackMap stack:
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String
            astore 10 /* fontNames */
        start local 10 // java.lang.String[] fontNames
         4: .line 3116
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String[]
            astore 11 /* nativeNames */
        start local 11 // java.lang.String[][] nativeNames
         5: .line 3117
            iconst_0
            istore 12 /* fontCount */
        start local 12 // int fontCount
         6: .line 3119
            iconst_0
            istore 13 /* i */
        start local 13 // int i
         7: goto 41
         8: .line 3120
      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 3121
            aconst_null
            astore 15 /* fullName */
        start local 15 // java.lang.String fullName
        10: .line 3122
            iload 8 /* resolveSymLinks */
            ifeq 14
        11: .line 3124
            aload 14 /* theFile */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 15 /* fullName */
        12: .line 3125
            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 3128
      StackMap locals:
      StackMap stack:
            aload 15 /* fullName */
            ifnonnull 16
        15: .line 3129
            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 3133
      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 3134
            goto 40
        18: .line 3137
      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 3138
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 40
        20: .line 3139
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        21: .line 3140
            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 3142
            goto 40
        23: .line 3145
      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 3147
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 38
        25: .line 3148
            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 3149
            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 3150
            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 3151
            aload 17 /* natNames */
            ifnonnull 31
        29: .line 3152
            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 3153
            goto 37
        31: .line 3154
      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 3155
            iconst_1
            istore 18 /* nn */
        start local 18 // int nn
        33: goto 36
        34: .line 3156
      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 3155
            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 3159
      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 3161
      StackMap locals:
      StackMap stack:
            aload 10 /* fontNames */
            iload 12 /* fontCount */
            aload 15 /* fullName */
            aastore
        39: .line 3162
            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 3119
      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 3164
            aload 0 /* this */
            aload 10 /* fontNames */
            aload 11 /* nativeNames */
            iload 12 /* fontCount */
            iload 4 /* fontFormat */
        43: .line 3165
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
            iload 7 /* defer */
        44: .line 3164
            invokevirtual sun.font.SunFontManager.registerFonts:([Ljava/lang/String;[[Ljava/lang/String;IIZIZ)V
        45: .line 3166
            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 3171
            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 3181
            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 3188
            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 3195
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontPath:Ljava/lang/String;
            ifnonnull 2
         1: .line 3196
            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 3198
      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 3202
            aload 0 /* this */
            getfield sun.font.SunFontManager.discoveredAllFonts:Z
            ifeq 2
         1: .line 3203
            return
         2: .line 3206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         3: .line 3207
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         4: .line 3208
            invokestatic java.lang.Thread.dumpStack:()V
         5: .line 3209
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         6: .line 3210
            ldc "SunGraphicsEnvironment.loadFonts() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 3212
      StackMap locals: sun.font.SunFontManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFonts:()V
         8: .line 3215
            new sun.font.SunFontManager$10
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$10.<init>:(Lsun/font/SunFontManager;)V
         9: .line 3214
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        10: .line 3206
            aload 1
            monitorexit
        11: goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: aload 1
            monitorexit
        13: athrow
        14: .line 3238
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lsun/font/SunFontManager;
      Exception table:
        from    to  target  type
           3    11      12  any
          12    13      12  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 3241
            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 3248
            new java.util.StringTokenizer
            dup
            aload 1 /* pathName */
         1: .line 3249
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
         2: .line 3248
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 6 /* parser */
        start local 6 // java.util.StringTokenizer parser
         3: .line 3251
            goto 8
         4: .line 3252
      StackMap locals: java.util.StringTokenizer
      StackMap stack:
            aload 0 /* this */
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
         5: .line 3253
            iload 2 /* useJavaRasterizer */
            iload 3 /* fontRank */
         6: .line 3254
            iload 4 /* defer */
            iload 5 /* resolveSymLinks */
         7: .line 3252
            invokevirtual sun.font.SunFontManager.registerFontsInDir:(Ljava/lang/String;ZIZZ)V
         8: .line 3251
      StackMap locals:
      StackMap stack:
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 4
         9: .line 3256
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 3258
      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 3262
            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 3263
            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 3270
            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 3271
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         2: .line 3272
            iconst_0
            iload 2 /* useJavaRasterizer */
         3: .line 3273
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 5
         4: .line 3274
            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 3275
      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 3271
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
         8: .line 3276
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         9: .line 3277
            iconst_1
            iload 2 /* useJavaRasterizer */
        10: .line 3278
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 12
        11: .line 3279
            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 3280
      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 3276
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
        15: .line 3281
            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 3284
            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 3291
            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 3299
            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 3317
            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 3321
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         1: .line 3322
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifeq 3
         2: .line 3323
            return
         3: .line 3326
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         4: .line 3327
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         5: .line 3328
            invokestatic java.lang.Thread.dumpStack:()V
         6: .line 3329
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "loadAllFontFiles() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 3332
      StackMap locals: sun.font.SunFontManager
      StackMap stack:
            new sun.font.SunFontManager$11
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$11.<init>:(Lsun/font/SunFontManager;)V
         8: .line 3331
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         9: .line 3326
            aload 1
            monitorexit
        10: goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: aload 1
            monitorexit
        12: athrow
        13: .line 3350
      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
           4    10      11  any
          11    12      11  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 3363
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 3364
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 3365
            ldc "Initialising composite fonts"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 3368
      StackMap locals:
      StackMap stack:
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getNumberCoreFonts:()I
            istore 3 /* numCoreFonts */
        start local 3 // int numCoreFonts
         4: .line 3369
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getPlatformFontNames:()[Ljava/lang/String;
            astore 4 /* fcFonts */
        start local 4 // java.lang.String[] fcFonts
         5: .line 3370
            iconst_0
            istore 5 /* f */
        start local 5 // int f
         6: goto 22
         7: .line 3371
      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 3373
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.getFileNameFromPlatformName:(Ljava/lang/String;)Ljava/lang/String;
         9: .line 3372
            astore 7 /* fontFileName */
        start local 7 // java.lang.String fontFileName
        10: .line 3374
            aconst_null
            astore 8 /* nativeNames */
        start local 8 // java.lang.String[] nativeNames
        11: .line 3375
            aload 7 /* fontFileName */
            ifnull 13
        12: .line 3376
            aload 7 /* fontFileName */
            aload 6 /* platformFontName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 3380
      StackMap locals: java.lang.String java.lang.String java.lang.String[]
      StackMap stack:
            aload 6 /* platformFontName */
            astore 7 /* fontFileName */
        14: .line 3381
            goto 18
        15: .line 3382
      StackMap locals:
      StackMap stack:
            iload 5 /* f */
            iload 3 /* numCoreFonts */
            if_icmpge 17
        16: .line 3397
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.addFontToPlatformFontPath:(Ljava/lang/String;)V
        17: .line 3399
      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 3408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* fontFileName */
            aload 8 /* nativeNames */
        19: .line 3409
            iconst_2
            iconst_1
        20: .line 3408
            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 3370
            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 3420
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.registerPlatformFontsUsedByFontConfiguration:()V
        24: .line 3423
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.get2DCompositeFontInfo:()[Lsun/font/CompositeFontDescriptor;
        25: .line 3422
            astore 5 /* compositeFontInfo */
        start local 5 // sun.font.CompositeFontDescriptor[] compositeFontInfo
        26: .line 3424
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        27: goto 60
        28: .line 3425
      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 3426
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFileNames:()[Ljava/lang/String;
            astore 8 /* componentFileNames */
        start local 8 // java.lang.String[] componentFileNames
        30: .line 3427
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFaceNames:()[Ljava/lang/String;
            astore 9 /* componentFaceNames */
        start local 9 // java.lang.String[] componentFaceNames
        31: .line 3432
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnull 39
        32: .line 3433
            iconst_0
            istore 10 /* ii */
        start local 10 // int ii
        33: goto 38
        34: .line 3434
      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 3435
            aload 8 /* componentFileNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFile:()Ljava/lang/String;
            aastore
        36: .line 3436
            aload 9 /* componentFaceNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFaceName:()Ljava/lang/String;
            aastore
        37: .line 3433
      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 3447
      StackMap locals:
      StackMap stack:
            aload 2 /* altNameCache */
            ifnull 49
        40: .line 3449
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        41: .line 3450
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        42: .line 3451
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        43: .line 3452
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        44: .line 3453
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        45: .line 3454
            iconst_1
        46: .line 3455
            aload 2 /* altNameCache */
        47: .line 3448
            invokestatic sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLjava/util/concurrent/ConcurrentHashMap;)V
        48: .line 3456
            goto 56
        49: .line 3457
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        50: .line 3458
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        51: .line 3459
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        52: .line 3460
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        53: .line 3461
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        54: .line 3462
            iconst_1
        55: .line 3457
            invokevirtual sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZ)V
        56: .line 3464
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 59
        57: .line 3465
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        58: .line 3466
            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 3424
      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 3469
            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 3477
            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 3482
            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 3483
            return
         2: .line 3486
      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 3487
            iconst_0
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         4: .line 3488
            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 3489
            iconst_1
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         7: .line 3490
            goto 9
        end local 5 // int fontFormat
         8: .line 3491
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         9: .line 3493
      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 3494
            iload 4 /* defer */
            ifeq 15
        11: .line 3495
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
        12: .line 3496
            iload 5 /* fontFormat */
            iconst_0
            iload 3 /* fontRank */
        13: .line 3495
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
        14: .line 3497
            goto 18
        15: .line 3498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
            iload 5 /* fontFormat */
            iconst_0
        16: .line 3499
            iload 3 /* fontRank */
        17: .line 3498
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        18: .line 3501
      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 3504
            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 3521
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnonnull 2
         1: .line 3522
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         2: .line 3524
      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 3525
            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 3546
            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 3547
            aload 2 /* fileName */
            ifnonnull 3
         2: .line 3548
            iconst_0
            ireturn
         3: .line 3550
      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 3564
            aload 0 /* this */
            iload 2 /* preferLocale */
            iload 3 /* preferProportional */
            invokevirtual sun.font.SunFontManager.createFontConfiguration:(ZZ)Lsun/awt/FontConfiguration;
         1: .line 3563
            astore 4 /* fontConfig */
        start local 4 // sun.awt.FontConfiguration fontConfig
         2: .line 3565
            aload 0 /* this */
            aload 4 /* fontConfig */
            aload 1 /* altNameCache */
            invokevirtual sun.font.SunFontManager.initCompositeFonts:(Lsun/awt/FontConfiguration;Ljava/util/concurrent/ConcurrentHashMap;)V
         3: .line 3566
            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 3572
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
            ifnonnull 39
         1: .line 3573
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         2: .line 3574
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 1 /* fontMapNames */
        start local 1 // java.util.TreeMap fontMapNames
         3: .line 3579
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 2 /* allfonts */
        start local 2 // sun.font.Font2D[] allfonts
         4: .line 3580
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 11
         6: .line 3581
      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 3582
            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 3583
            aload 2 /* allfonts */
            iload 3 /* i */
            aaload
         9: .line 3582
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 3580
      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 3587
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFontNamesFromPlatform:()[Ljava/lang/String;
            astore 3 /* platformNames */
        start local 3 // java.lang.String[] platformNames
        13: .line 3588
            aload 3 /* platformNames */
            ifnull 20
        14: .line 3589
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        15: goto 19
        16: .line 3590
      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 3591
            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 3589
      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 3596
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* fontNames */
        start local 4 // java.lang.String[] fontNames
        21: .line 3597
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            ifle 29
        22: .line 3598
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            anewarray java.lang.String
            astore 4 /* fontNames */
        23: .line 3599
            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 3600
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        25: goto 28
        26: .line 3601
      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 3600
            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 3604
      StackMap locals:
      StackMap stack:
            aload 4 /* fontNames */
            arraylength
            anewarray java.awt.Font
            astore 5 /* fonts */
        start local 5 // java.awt.Font[] fonts
        30: .line 3605
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        31: goto 37
        32: .line 3606
      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 3607
            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 3608
            aload 7 /* f2d */
            ifnull 36
        35: .line 3609
            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 3605
      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 3612
            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 3615
      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 3616
            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 3617
            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 3629
            aload 1 /* requestedLocale */
            ifnonnull 2
         1: .line 3630
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            astore 1 /* requestedLocale */
         2: .line 3632
      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 3633
            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 3634
            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 3635
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            iconst_0
            aload 2 /* copyFamilies */
         6: .line 3636
            iconst_0
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            arraylength
         7: .line 3635
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 3637
            aload 2 /* copyFamilies */
            areturn
        end local 2 // java.lang.String[] copyFamilies
         9: .line 3640
      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 3643
            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 3644
            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 3645
            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 3646
            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 3647
            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 3653
            aload 1 /* requestedLocale */
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 20
        17: .line 3654
            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 3656
            aload 0 /* this */
            aload 2 /* familyNames */
            aload 1 /* requestedLocale */
            invokevirtual sun.font.SunFontManager.getJREFontFamilyNames:(Ljava/util/TreeMap;Ljava/util/Locale;)V
        19: .line 3657
            goto 30
        20: .line 3658
      StackMap locals: java.util.TreeMap java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
        21: .line 3659
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 4 /* physicalfonts */
        start local 4 // sun.font.Font2D[] physicalfonts
        22: .line 3660
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        23: goto 29
        24: .line 3661
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 28
        25: .line 3663
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            aload 1 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
        26: .line 3662
            astore 6 /* name */
        start local 6 // java.lang.String name
        27: .line 3664
            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 3660
      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 3670
      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 3672
            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 3673
            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 3674
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        34: goto 37
        35: .line 3675
      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 3674
            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 3677
            aload 1 /* requestedLocale */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 42
        39: .line 3678
            aload 0 /* this */
            aload 1 /* requestedLocale */
            putfield sun.font.SunFontManager.lastDefaultLocale:Ljava/util/Locale;
        40: .line 3679
            aload 0 /* this */
            aload 4 /* retval */
            arraylength
            anewarray java.lang.String
            putfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
        41: .line 3680
            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 3682
      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 3686
            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 3690
            new sun.font.SunFontManager$12
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$12.<init>:(Lsun/font/SunFontManager;)V
         1: .line 3689
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         2: .line 3698
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     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 3706
            aload 0 /* this */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.registerDeferredJREFonts:(Ljava/lang/String;)V
         1: .line 3707
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 3 /* physicalfonts */
        start local 3 // sun.font.Font2D[] physicalfonts
         2: .line 3708
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 9
         4: .line 3709
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 8
         5: .line 3711
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            aload 2 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
         6: .line 3710
            astore 5 /* name */
        start local 5 // java.lang.String name
         7: .line 3712
            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 3708
      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 3715
            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 3729
            getstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
            ifnonnull 4
         1: .line 3732
            new sun.font.SunFontManager$13
            dup
            invokespecial sun.font.SunFontManager$13.<init>:()V
         2: .line 3731
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.util.Locale
         3: .line 3730
            putstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
         4: .line 3757
      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 3762
            aconst_null
            astore 2 /* fontFileToClose */
        start local 2 // sun.font.FileFont fontFileToClose
         1: .line 3763
            iconst_m1
            istore 3 /* freeSlot */
        start local 3 // int freeSlot
         2: .line 3765
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            dup
            astore 4
            monitorenter
         3: .line 3773
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 11
         5: .line 3774
      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 3775
            aload 4
            monitorexit
         7: return
         8: .line 3777
      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 3778
            iload 5 /* i */
            istore 3 /* freeSlot */
        10: .line 3773
      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 3781
            iload 3 /* freeSlot */
            iflt 16
        13: .line 3782
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            iload 3 /* freeSlot */
            aload 1 /* font */
            aastore
        14: .line 3783
            aload 4
            monitorexit
        15: return
        16: .line 3786
      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 3787
            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 3791
            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 3765
            aload 4
            monitorexit
        20: goto 23
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: aload 4
            monitorexit
        22: athrow
        23: .line 3804
      StackMap locals:
      StackMap stack:
            aload 2 /* fontFileToClose */
            ifnull 25
        24: .line 3805
            aload 2 /* fontFileToClose */
            invokevirtual sun.font.FileFont.close:()V
        25: .line 3807
      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 3812
            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 1110
            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 2435
            invokestatic sun.awt.util.ThreadGroupUtils.getRootThreadGroup:()Ljava/lang/ThreadGroup;
            astore 2 /* rootTG */
        start local 2 // java.lang.ThreadGroup rootTG
         1: .line 2436
            aload 0 /* this */
            new java.lang.Thread
            dup
            aload 2 /* rootTG */
            aload 1
         2: .line 2437
            ldc "FileCloser"
            lconst_0
            iconst_0
            invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JZ)V
         3: .line 2436
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
         4: .line 2438
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            aconst_null
            invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
         5: .line 2439
            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 2440
            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$13  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$13
  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