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
{
  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_T2K;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

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

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

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

  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.util.HashMap<java.lang.String, java.lang.String> jreFontMap;
    descriptor: Ljava/util/HashMap;
    flags: (0x0000) 
    Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;

  java.util.HashSet<java.lang.String> jreLucidaFontFiles;
    descriptor: Ljava/util/HashSet;
    flags: (0x0000) 
    Signature: Ljava/util/HashSet<Ljava/lang/String;>;

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

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

  public static final java.lang.String lucidaFontName;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Lucida Sans Regular"

  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 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 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=2, locals=0, args_size=0
         0: .line 199
            aconst_null
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         1: .line 224
            new sun.font.SunFontManager$TTFilter
            dup
            invokespecial sun.font.SunFontManager$TTFilter.<init>:()V
            putstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         2: .line 225
            new sun.font.SunFontManager$T1Filter
            dup
            invokespecial sun.font.SunFontManager$T1Filter.<init>:()V
            putstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         3: .line 234
            iconst_0
            anewarray java.lang.String
            putstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
         4: .line 337
            new sun.font.SunFontManager$1
            dup
            invokespecial sun.font.SunFontManager$1.<init>:()V
         5: .line 336
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         6: .line 2818
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.altJAFontKey:Ljava/lang/Object;
         7: .line 2819
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
         8: .line 2820
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
         9: .line 2827
            iconst_0
            putstatic sun.font.SunFontManager.gAltJAFont:Z
        10: .line 2965
            aconst_null
            putstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
        11: .line 2986
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
        12: .line 2987
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.regFullNameKey:Ljava/lang/Object;
        13: .line 3836
            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 251
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 0 /* fm */
        start local 0 // sun.font.FontManager fm
         1: .line 252
            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 256
            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 260
            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 265
            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;

  private void initJREFontMap();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 281
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
         1: .line 282
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield sun.font.SunFontManager.jreLucidaFontFiles:Ljava/util/HashSet;
         2: .line 283
            invokestatic sun.font.SunFontManager.isOpenJDK:()Z
            ifeq 4
         3: .line 284
            return
         4: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans0"
            ldc "LucidaSansRegular.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 288
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans1"
            ldc "LucidaSansDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 290
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans regular0"
            ldc "LucidaSansRegular.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 291
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans regular1"
            ldc "LucidaSansDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 292
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans bold1"
            ldc "LucidaSansDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 293
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans demibold1"
            ldc "LucidaSansDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 296
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter0"
        11: .line 297
            ldc "LucidaTypewriterRegular.ttf"
        12: .line 296
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 298
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter1"
            ldc "LucidaTypewriterBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 300
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter regular0"
        15: .line 301
            ldc "LucidaTypewriter.ttf"
        16: .line 300
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 302
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter regular1"
        18: .line 303
            ldc "LucidaTypewriterBold.ttf"
        19: .line 302
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 304
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter bold1"
        21: .line 305
            ldc "LucidaTypewriterBold.ttf"
        22: .line 304
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 306
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter demibold1"
        24: .line 307
            ldc "LucidaTypewriterBold.ttf"
        25: .line 306
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 310
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright0"
            ldc "LucidaBrightRegular.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 311
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright1"
            ldc "LucidaBrightDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 312
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright2"
            ldc "LucidaBrightItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 313
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright3"
            ldc "LucidaBrightDemiItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        30: .line 315
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright regular0"
            ldc "LucidaBrightRegular.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        31: .line 316
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright regular1"
            ldc "LucidaBrightDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        32: .line 317
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright regular2"
            ldc "LucidaBrightItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        33: .line 318
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright regular3"
            ldc "LucidaBrightDemiItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        34: .line 319
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright bold1"
            ldc "LucidaBrightDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 320
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright bold3"
            ldc "LucidaBrightDemiItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        36: .line 321
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright demibold1"
            ldc "LucidaBrightDemiBold.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        37: .line 322
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright demibold3"
            ldc "LucidaBrightDemiItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        38: .line 323
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright italic2"
            ldc "LucidaBrightItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        39: .line 324
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright italic3"
            ldc "LucidaBrightDemiItalic.ttf"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        40: .line 325
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright bold italic3"
        41: .line 326
            ldc "LucidaBrightDemiItalic.ttf"
        42: .line 325
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        43: .line 327
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright demibold italic3"
        44: .line 328
            ldc "LucidaBrightDemiItalic.ttf"
        45: .line 327
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        46: .line 329
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2
            goto 49
      StackMap locals: sun.font.SunFontManager top java.util.Iterator
      StackMap stack:
        47: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 1 /* ffile */
        start local 1 // java.lang.String ffile
        48: .line 330
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreLucidaFontFiles:Ljava/util/HashSet;
            aload 1 /* ffile */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 1 // java.lang.String ffile
        49: .line 329
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 47
        50: .line 332
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   51     0   this  Lsun/font/SunFontManager;
           48   49     1  ffile  Ljava/lang/String;

  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 370
            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 375
            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 382
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 149
            aload 0 /* this */
            bipush 20
            anewarray sun.font.FileFont
            putfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
         2: .line 151
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.lastPoolIndex:I
         3: .line 162
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.maxCompFont:I
         4: .line 163
            aload 0 /* this */
            bipush 20
            anewarray sun.font.CompositeFont
            putfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
         5: .line 165
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.compositeFonts:Ljava/util/concurrent/ConcurrentHashMap;
         6: .line 167
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.physicalFonts:Ljava/util/concurrent/ConcurrentHashMap;
         7: .line 169
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
         8: .line 177
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.fullNameToFont:Ljava/util/concurrent/ConcurrentHashMap;
         9: .line 188
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loaded1dot0Fonts:Z
        10: .line 189
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFonts:Z
        11: .line 190
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
        12: .line 194
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        13: .line 202
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
        14: .line 219
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.discoveredAllFonts:Z
        15: .line 240
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        16: .line 892
            aload 0 /* this */
        17: .line 893
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
        18: .line 895
            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 1260
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        20: .line 1266
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        21: .line 1273
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        22: .line 1276
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
        23: .line 2043
            aload 0 /* this */
        24: .line 2044
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
        25: .line 2431
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
        26: .line 2432
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        27: .line 2821
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        28: .line 2822
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        29: .line 2828
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gLocalePref:Z
        30: .line 2829
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gPropPref:Z
        31: .line 2990
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        32: .line 2991
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
        33: .line 384
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initJREFontMap:()V
        34: .line 386
            new sun.font.SunFontManager$2
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$2.<init>:(Lsun/font/SunFontManager;)V
        35: .line 385
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        36: .line 561
            new sun.font.SunFontManager$3
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$3.<init>:(Lsun/font/SunFontManager;)V
        37: .line 560
            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 570
            iload 1 /* platformFont */
            ifeq 44
        39: .line 571
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        40: .line 572
            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 573
            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 574
            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 575
            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 577
      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 582
            aload 3 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifne 2
         1: .line 583
            aload 3 /* handle */
            areturn
         2: .line 586
      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 587
            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 589
            aload 1 /* family */
            ifnonnull 6
         5: .line 590
            aload 5 /* oldFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            astore 1 /* family */
         6: .line 592
      StackMap locals: sun.font.CompositeFont sun.font.PhysicalFont
      StackMap stack:
            iload 2 /* style */
            iconst_m1
            if_icmpne 8
         7: .line 593
            aload 4 /* oldComp */
            invokevirtual sun.font.CompositeFont.getStyle:()I
            istore 2 /* style */
         8: .line 596
      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 597
            aload 6 /* newFont */
            instanceof sun.font.PhysicalFont
            ifne 11
        10: .line 598
            aload 5 /* oldFont */
            astore 6 /* newFont */
        11: .line 600
      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 602
            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 601
            astore 8 /* dialog2D */
        start local 8 // sun.font.CompositeFont dialog2D
        14: .line 603
            aload 8 /* dialog2D */
            ifnonnull 16
        15: .line 604
            aload 3 /* handle */
            areturn
        16: .line 606
      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 607
            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 608
            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 619
            new sun.font.CompositeFont
            dup
            aload 1 /* compositeName */
         1: .line 620
            aload 2 /* componentFileNames */
         2: .line 621
            aload 3 /* componentNames */
         3: .line 622
            iload 4 /* numMetricsSlots */
         4: .line 623
            aload 5 /* exclusionRanges */
         5: .line 624
            aload 6 /* exclusionMaxIndex */
            iload 7 /* defer */
            aload 0 /* this */
         6: .line 619
            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 625
            aload 0 /* this */
            aload 8 /* cf */
            iconst_2
            invokevirtual sun.font.SunFontManager.addCompositeToFontList:(Lsun/font/CompositeFont;I)V
         8: .line 626
            aload 0 /* this */
            getfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
            dup
            astore 9
            monitorenter
         9: .line 627
            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 626
            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 629
      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 645
            new sun.font.CompositeFont
            dup
            aload 0 /* compositeName */
         1: .line 646
            aload 1 /* componentFileNames */
         2: .line 647
            aload 2 /* componentNames */
         3: .line 648
            iload 3 /* numMetricsSlots */
         4: .line 649
            aload 4 /* exclusionRanges */
         5: .line 650
            aload 5 /* exclusionMaxIndex */
            iload 6 /* defer */
         6: .line 651
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
         7: .line 645
            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 666
            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 667
            aload 9 /* oldFont */
            instanceof sun.font.CompositeFont
            ifeq 11
        10: .line 668
            aload 9 /* oldFont */
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
            aload 8 /* cf */
            putfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
        11: .line 670
      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 671
            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 675
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 4
         1: .line 676
            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 677
            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 676
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         4: .line 679
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.CompositeFont.setRank:(I)V
         5: .line 680
            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 681
            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 683
            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 684
            aload 3 /* family */
            ifnonnull 10
         9: .line 685
            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 687
      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 688
            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 725
            aload 1 /* f */
            getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
            astore 3 /* fontName */
        start local 3 // java.lang.String fontName
         1: .line 726
            aload 1 /* f */
            getfield sun.font.PhysicalFont.familyName:Ljava/lang/String;
            astore 4 /* familyName */
        start local 4 // java.lang.String familyName
         2: .line 727
            aload 3 /* fontName */
            ifnull 3
            ldc ""
            aload 3 /* fontName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 728
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aconst_null
            areturn
         4: .line 730
      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 732
            aconst_null
            areturn
         6: .line 734
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.PhysicalFont.setRank:(I)V
         7: .line 735
            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 736
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 12
         9: .line 737
            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 738
            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 737
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        12: .line 740
      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 741
            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 742
            aload 5 /* family */
            ifnonnull 18
        15: .line 743
            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 744
            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 745
            goto 19
        18: .line 746
      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 748
      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 749
            aload 1 /* f */
            areturn
        end local 5 // sun.font.FontFamily family
        21: .line 751
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            astore 5 /* newFont */
        start local 5 // sun.font.PhysicalFont newFont
        22: .line 752
            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 753
            aload 6 /* oldFont */
            ifnonnull 25
        24: .line 754
            aconst_null
            areturn
        25: .line 759
      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 779
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.mapper:Lsun/font/CharToGlyphMapper;
            ifnull 28
            iload 2 /* rank */
            iconst_2
            if_icmple 28
        27: .line 780
            aload 6 /* oldFont */
            areturn
        28: .line 788
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iload 2 /* rank */
            if_icmpne 36
        29: .line 789
            aload 6 /* oldFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        30: .line 790
            aload 5 /* newFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        31: .line 791
            aload 6 /* oldFont */
            checkcast sun.font.TrueTypeFont
            astore 7 /* oldTTFont */
        start local 7 // sun.font.TrueTypeFont oldTTFont
        32: .line 792
            aload 5 /* newFont */
            checkcast sun.font.TrueTypeFont
            astore 8 /* newTTFont */
        start local 8 // sun.font.TrueTypeFont newTTFont
        33: .line 793
            aload 7 /* oldTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            aload 8 /* newTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            if_icmplt 36
        34: .line 794
            aload 6 /* oldFont */
            areturn
        end local 8 // sun.font.TrueTypeFont newTTFont
        end local 7 // sun.font.TrueTypeFont oldTTFont
        35: .line 797
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        36: .line 809
      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 810
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 44
        38: .line 811
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        39: .line 812
            new java.lang.StringBuilder
            dup
            ldc "Unexpected attempt to replace a JRE  font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        40: .line 813
            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 814
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 815
            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 812
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        44: .line 817
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        45: .line 820
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 52
        46: .line 821
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        47: .line 822
            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 823
            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 824
            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 825
            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 822
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        52: .line 827
      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 828
            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 829
            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 830
            aload 5 /* newFont */
        56: .line 829
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 832
            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 833
            aload 7 /* family */
            ifnonnull 62
        59: .line 834
            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 835
            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 836
            goto 63
        62: .line 837
      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 839
      StackMap locals:
      StackMap stack:
            aload 5 /* newFont */
            areturn
        end local 7 // sun.font.FontFamily family
        64: .line 841
      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 847
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 1 /* physFonts */
        start local 1 // sun.font.PhysicalFont[] physFonts
         1: .line 848
            aload 0 /* this */
            getfield sun.font.SunFontManager.maxCompFont:I
            istore 2 /* mcf */
        start local 2 // int mcf
         2: .line 849
            aload 1 /* physFonts */
            arraylength
            iload 2 /* mcf */
            iadd
            anewarray sun.font.Font2D
            astore 3 /* regFonts */
        start local 3 // sun.font.Font2D[] regFonts
         3: .line 850
            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 851
            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 852
            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 856
            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 904
            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 905
            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 904
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 907
            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 910
            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 911
            aload 2 /* info */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
            ifnull 5
         3: .line 912
            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 913
            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 910
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 916
            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 919
            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  

  public sun.font.PhysicalFont findJREDeferredFont(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lsun/font/PhysicalFont;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=13, args_size=3
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.lang.String name
        start local 2 // int style
         0: .line 935
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* style */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* nameAndStyle */
        start local 4 // java.lang.String nameAndStyle
         1: .line 936
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            aload 4 /* nameAndStyle */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* fileName */
        start local 5 // java.lang.String fileName
         2: .line 937
            aload 5 /* fileName */
            ifnull 11
         3: .line 938
            new java.lang.StringBuilder
            dup
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            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 5 /* fileName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* fileName */
         4: .line 939
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* fileName */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 11
         5: .line 940
            aload 0 /* this */
            aload 5 /* fileName */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            astore 3 /* physicalFont */
        start local 3 // sun.font.PhysicalFont physicalFont
         6: .line 941
            aload 3 /* physicalFont */
            ifnull 11
         7: .line 942
            aload 3 /* 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 9
         8: .line 943
            aload 3 /* 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 11
         9: .line 944
      StackMap locals: sun.font.PhysicalFont java.lang.String java.lang.String
      StackMap stack:
            aload 3 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            iload 2 /* style */
            if_icmpne 11
        10: .line 945
            aload 3 /* physicalFont */
            areturn
        end local 3 // sun.font.PhysicalFont physicalFont
        11: .line 959
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.noOtherJREFontFiles:Z
            ifeq 13
        12: .line 960
            aconst_null
            areturn
        13: .line 962
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreLucidaFontFiles:Ljava/util/HashSet;
            dup
            astore 6
            monitorenter
        14: .line 963
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            ifnonnull 30
        15: .line 964
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 7 /* otherFontFiles */
        start local 7 // java.util.HashSet otherFontFiles
        16: .line 965
            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 9
            goto 26
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.lang.String java.lang.String java.util.HashSet java.util.HashSet top java.util.Iterator
      StackMap stack:
        17: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* deferredFile */
        start local 8 // java.lang.String deferredFile
        18: .line 966
            new java.io.File
            dup
            aload 8 /* deferredFile */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 10 /* file */
        start local 10 // java.io.File file
        19: .line 967
            aload 10 /* file */
            invokevirtual java.io.File.getParent:()Ljava/lang/String;
            astore 11 /* dir */
        start local 11 // java.lang.String dir
        20: .line 968
            aload 10 /* file */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 12 /* fname */
        start local 12 // java.lang.String fname
        21: .line 972
            aload 11 /* dir */
            ifnull 26
        22: .line 973
            aload 11 /* dir */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        23: .line 974
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreLucidaFontFiles:Ljava/util/HashSet;
            aload 12 /* fname */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 25
        24: .line 975
            goto 26
        25: .line 977
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.lang.String java.lang.String java.util.HashSet java.util.HashSet java.lang.String java.util.Iterator java.io.File java.lang.String java.lang.String
      StackMap stack:
            aload 7 /* otherFontFiles */
            aload 8 /* deferredFile */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 12 // java.lang.String fname
        end local 11 // java.lang.String dir
        end local 10 // java.io.File file
        end local 8 // java.lang.String deferredFile
        26: .line 965
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.lang.String java.lang.String java.util.HashSet java.util.HashSet top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        27: .line 979
            aload 0 /* this */
            aload 7 /* 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;
        28: .line 980
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            arraylength
            ifne 30
        29: .line 981
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        end local 7 // java.util.HashSet otherFontFiles
        30: .line 985
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.lang.String java.lang.String java.util.HashSet
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        31: goto 44
        32: .line 986
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            iload 7 /* i */
            aaload
            astore 5 /* fileName */
        33: .line 987
            aload 5 /* fileName */
            ifnonnull 35
        34: .line 988
            goto 43
        35: .line 990
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            iload 7 /* i */
            aconst_null
            aastore
        36: .line 991
            aload 0 /* this */
            aload 5 /* fileName */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            astore 3 /* physicalFont */
        start local 3 // sun.font.PhysicalFont physicalFont
        37: .line 992
            aload 3 /* physicalFont */
            ifnull 43
        38: .line 993
            aload 3 /* 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 40
        39: .line 994
            aload 3 /* 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 43
        40: .line 995
      StackMap locals: sun.font.SunFontManager java.lang.String int sun.font.PhysicalFont java.lang.String java.lang.String java.util.HashSet int
      StackMap stack:
            aload 3 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            iload 2 /* style */
            if_icmpne 43
        41: .line 996
            aload 3 /* physicalFont */
            aload 6
            monitorexit
        42: areturn
        end local 3 // sun.font.PhysicalFont physicalFont
        43: .line 985
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.lang.String java.lang.String java.util.HashSet int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        44: iload 7 /* i */
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            arraylength
            if_icmplt 32
        end local 7 // int i
        45: .line 962
            aload 6
            monitorexit
        46: goto 49
      StackMap locals: sun.font.SunFontManager java.lang.String int top java.lang.String java.lang.String java.util.HashSet
      StackMap stack: java.lang.Throwable
        47: aload 6
            monitorexit
        48: athrow
        49: .line 1001
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 5 // java.lang.String fileName
        end local 4 // java.lang.String nameAndStyle
        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   50     0            this  Lsun/font/SunFontManager;
            0   50     1            name  Ljava/lang/String;
            0   50     2           style  I
            6   11     3    physicalFont  Lsun/font/PhysicalFont;
           37   43     3    physicalFont  Lsun/font/PhysicalFont;
            1   50     4    nameAndStyle  Ljava/lang/String;
            2   50     5        fileName  Ljava/lang/String;
           16   30     7  otherFontFiles  Ljava/util/HashSet<Ljava/lang/String;>;
           18   26     8    deferredFile  Ljava/lang/String;
           19   26    10            file  Ljava/io/File;
           20   26    11             dir  Ljava/lang/String;
           21   26    12           fname  Ljava/lang/String;
           31   45     7               i  I
      Exception table:
        from    to  target  type
          14    42      47  any
          43    46      47  any
          47    48      47  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=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 1006
            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 15
      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 1007
            new java.io.File
            dup
            aload 3 /* fileName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 5 /* file */
        start local 5 // java.io.File file
         3: .line 1008
            aload 5 /* file */
            invokevirtual java.io.File.getParent:()Ljava/lang/String;
            astore 6 /* dir */
        start local 6 // java.lang.String dir
         4: .line 1009
            aload 5 /* file */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 7 /* fname */
        start local 7 // java.lang.String fname
         5: .line 1010
            aload 6 /* dir */
            ifnull 9
         6: .line 1011
            aload 6 /* dir */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 1012
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreLucidaFontFiles:Ljava/util/HashSet;
            aload 7 /* fname */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 9
         8: .line 1013
            goto 15
         9: .line 1015
      StackMap locals: sun.font.SunFontManager java.lang.String int java.lang.String java.util.Iterator java.io.File java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 3 /* fileName */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
            astore 8 /* physicalFont */
        start local 8 // sun.font.PhysicalFont physicalFont
        10: .line 1016
            aload 8 /* physicalFont */
            ifnull 15
        11: .line 1017
            aload 8 /* 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 13
        12: .line 1018
            aload 8 /* 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 15
        13: .line 1019
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 8 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            iload 2 /* style */
            if_icmpne 15
        14: .line 1020
            aload 8 /* physicalFont */
            areturn
        end local 8 // sun.font.PhysicalFont physicalFont
        end local 7 // java.lang.String fname
        end local 6 // java.lang.String dir
        end local 5 // java.io.File file
        end local 3 // java.lang.String fileName
        15: .line 1006
      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
        16: .line 1023
            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   17     0          this  Lsun/font/SunFontManager;
            0   17     1          name  Ljava/lang/String;
            0   17     2         style  I
            2   15     3      fileName  Ljava/lang/String;
            3   15     5          file  Ljava/io/File;
            4   15     6           dir  Ljava/lang/String;
            5   15     7         fname  Ljava/lang/String;
           10   15     8  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 1028
            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 1029
            aload 3 /* physicalFont */
            ifnull 3
         2: .line 1030
            aload 3 /* physicalFont */
            areturn
         3: .line 1032
      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 1043
            new sun.font.SunFontManager$FontRegistrationInfo
            dup
            aload 2 /* fullPathName */
            aload 3 /* nativeNames */
            iload 4 /* fontFormat */
         1: .line 1044
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         2: .line 1043
            invokespecial sun.font.SunFontManager$FontRegistrationInfo.<init>:(Ljava/lang/String;[Ljava/lang/String;IZI)V
         3: .line 1042
            astore 7 /* regInfo */
        start local 7 // sun.font.SunFontManager$FontRegistrationInfo regInfo
         4: .line 1045
            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 1046
            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 1052
            aload 1 /* fileNameKey */
            ifnonnull 2
         1: .line 1053
            aconst_null
            areturn
         2: .line 1055
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 1056
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 1057
            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 1061
      StackMap locals:
      StackMap stack:
            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
         6: .line 1062
            aload 3 /* regInfo */
            ifnull 21
         7: .line 1063
            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
         8: .line 1064
            aload 0 /* this */
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
         9: .line 1065
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.nativeNames:[Ljava/lang/String;
        10: .line 1066
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFormat:I
        11: .line 1067
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.javaRasterizer:Z
        12: .line 1068
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontRank:I
        13: .line 1064
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            astore 2 /* physicalFont */
        start local 2 // sun.font.PhysicalFont physicalFont
        14: .line 1071
            aload 2 /* physicalFont */
            ifnull 17
        15: .line 1075
            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
        16: .line 1076
            goto 26
        17: .line 1077
      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 */
        18: .line 1078
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            getfield sun.font.PhysicalFont.handle:Lsun/font/Font2DHandle;
        19: .line 1077
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 1080
            goto 26
        end local 2 // sun.font.PhysicalFont physicalFont
        21: .line 1081
      StackMap locals: sun.font.SunFontManager java.lang.String top sun.font.SunFontManager$FontRegistrationInfo
      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
        22: .line 1082
            aload 4 /* handle */
            ifnonnull 25
        23: .line 1084
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            astore 2 /* physicalFont */
        start local 2 // sun.font.PhysicalFont physicalFont
        24: .line 1085
            goto 26
        end local 2 // sun.font.PhysicalFont physicalFont
        25: .line 1086
      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
        start local 2 // sun.font.PhysicalFont physicalFont
        26: .line 1089
      StackMap locals: sun.font.SunFontManager java.lang.String sun.font.PhysicalFont sun.font.SunFontManager$FontRegistrationInfo
      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   27     0          this  Lsun/font/SunFontManager;
            0   27     1   fileNameKey  Ljava/lang/String;
           14   21     2  physicalFont  Lsun/font/PhysicalFont;
           24   25     2  physicalFont  Lsun/font/PhysicalFont;
           26   27     2  physicalFont  Lsun/font/PhysicalFont;
            6   27     3       regInfo  Lsun/font/SunFontManager$FontRegistrationInfo;
           22   26     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 1093
            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 1097
            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 1110
            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 1111
            aload 6 /* regFont */
            ifnull 3
         2: .line 1112
            aload 6 /* regFont */
            areturn
         3: .line 1115
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
         4: .line 1119
            iload 3 /* fontFormat */
            tableswitch { // 0 - 5
                    0: 5
                    1: 15
                    2: 20
                    3: 20
                    4: 20
                    5: 18
              default: 20
          }
         5: .line 1122
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            iconst_0
            istore 8 /* fn */
        start local 8 // int fn
         6: .line 1125
      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 1126
            iload 4 /* useJavaRasterizer */
         8: .line 1125
            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 1127
            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 1128
            aload 7 /* physicalFont */
            ifnonnull 12
        11: .line 1129
            aload 10 /* pf */
            astore 7 /* physicalFont */
        end local 10 // sun.font.PhysicalFont pf
        12: .line 1132
      StackMap locals: sun.font.TrueTypeFont
      StackMap stack:
            iload 8 /* fn */
            aload 9 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
        13: .line 1124
            if_icmplt 6
        14: .line 1133
            goto 20
        end local 9 // sun.font.TrueTypeFont ttf
        end local 8 // int fn
        15: .line 1136
      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 1137
            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 1138
            goto 20
        end local 10 // sun.font.Type1Font t1f
        18: .line 1141
      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 1142
            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 1147
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        21: .line 1148
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        22: .line 1149
            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 1150
            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 1149
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        25: .line 1152
            goto 31
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
        26: astore 8 /* ffe */
        start local 8 // java.awt.FontFormatException ffe
        27: .line 1153
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        28: .line 1154
            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 1155
            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 1154
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        end local 8 // java.awt.FontFormatException ffe
        31: .line 1158
      StackMap locals:
      StackMap stack:
            aload 7 /* physicalFont */
            ifnull 34
        32: .line 1159
            iload 3 /* fontFormat */
            iconst_5
            if_icmpeq 34
        33: .line 1160
            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 1162
      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 1172
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         1: goto 11
         2: .line 1173
      StackMap locals: int
      StackMap stack:
            iload 7 /* defer */
            ifeq 7
         3: .line 1174
            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 1175
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         5: .line 1174
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
         6: .line 1176
            goto 10
         7: .line 1177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fileNames */
            iload 8 /* i */
            aaload
            aload 2 /* nativeNames */
            iload 8 /* i */
            aaload
         8: .line 1178
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         9: .line 1177
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        10: .line 1172
      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 1181
            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=5, locals=2, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 1190
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 14
         1: .line 1198
            aload 0 /* this */
         2: .line 1199
            aload 0 /* this */
            ldc "Lucida Sans Regular"
            iconst_0
            iconst_0
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
         3: .line 1198
            checkcast sun.font.PhysicalFont
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
         4: .line 1200
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 8
         5: .line 1201
            aload 0 /* this */
         6: .line 1202
            aload 0 /* this */
            ldc "Arial"
            iconst_0
            iconst_0
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
         7: .line 1201
            checkcast sun.font.PhysicalFont
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
         8: .line 1204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 14
         9: .line 1211
            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.iterator:()Ljava/util/Iterator;
            astore 1 /* i */
        start local 1 // java.util.Iterator i
        10: .line 1212
            aload 1 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 13
        11: .line 1213
            aload 0 /* this */
            aload 1 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.PhysicalFont
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
        12: .line 1214
            goto 14
        13: .line 1215
      StackMap locals: java.util.Iterator
      StackMap stack:
            new java.lang.Error
            dup
            ldc "Probable fatal error:No fonts found."
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.util.Iterator i
        14: .line 1219
      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   15     0  this  Lsun/font/SunFontManager;
           10   14     1     i  Ljava/util/Iterator<Lsun/font/PhysicalFont;>;

  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 1223
            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 1231
            iload 0 /* num */
            tableswitch { // 1 - 3
                    1: 1
                    2: 2
                    3: 3
              default: 4
          }
         1: .line 1233
      StackMap locals:
      StackMap stack:
            ldc ".bold"
            areturn
         2: .line 1235
      StackMap locals:
      StackMap stack:
            ldc ".italic"
            areturn
         3: .line 1237
      StackMap locals:
      StackMap stack:
            ldc ".bolditalic"
            areturn
         4: .line 1239
      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 1253
            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 1282
            iload 1 /* noType1 */
            ifeq 3
         1: .line 1283
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
            astore 2 /* filter */
        start local 2 // java.io.FilenameFilter filter
         2: .line 1284
            goto 4
        end local 2 // java.io.FilenameFilter filter
         3: .line 1285
      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 1287
      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 1339
            aconst_null
            astore 1 /* unmappedFontNames */
        start local 1 // java.util.ArrayList unmappedFontNames
         1: .line 1340
            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 1341
            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 1342
            aload 4 /* file */
            ifnonnull 25
         5: .line 1343
            aload 2 /* font */
            ldc "  "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            ifle 13
         6: .line 1344
            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 1345
            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 1349
            aload 4 /* file */
            ifnull 25
         9: .line 1350
            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 1351
            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 1352
            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 1354
            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 1355
            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 1356
            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 1357
            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 1358
            aload 4 /* file */
            ifnull 25
        19: .line 1359
            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 1360
            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 1362
            goto 25
        22: .line 1363
      StackMap locals:
      StackMap stack:
            aload 1 /* unmappedFontNames */
            ifnonnull 24
        23: .line 1364
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* unmappedFontNames */
        24: .line 1366
      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 1340
      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 1371
            aload 1 /* unmappedFontNames */
            ifnull 70
        27: .line 1372
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* unmappedFontFiles */
        start local 2 // java.util.HashSet unmappedFontFiles
        28: .line 1405
            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 1404
            astore 3 /* ffmapCopy */
        start local 3 // java.util.HashMap ffmapCopy
        30: .line 1406
            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 1407
            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 1406
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 31
        34: .line 1409
            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 1410
            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 1411
            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 1409
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 35
        39: .line 1414
            aload 0 /* this */
            aload 2 /* unmappedFontFiles */
            aload 1 /* unmappedFontNames */
            invokevirtual sun.font.SunFontManager.resolveFontFiles:(Ljava/util/HashSet;Ljava/util/ArrayList;)V
        40: .line 1421
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            ifle 53
        41: .line 1427
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* registryFiles */
        start local 4 // java.util.ArrayList registryFiles
        42: .line 1429
            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 1430
            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 1429
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 43
        46: .line 1437
            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 1438
            aload 4 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 50
        49: .line 1439
            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 1437
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        51: iload 6
            iload 7
            if_icmplt 47
        52: .line 1443
            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 1449
      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 1450
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* sz */
        start local 4 // int sz
        55: .line 1451
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        56: goto 69
        57: .line 1452
      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 1453
            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 1454
            aload 7 /* familyName */
            ifnull 64
        60: .line 1455
            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 1456
            aload 8 /* family */
            ifnull 64
        62: .line 1457
            aload 8 /* family */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            if_icmpgt 64
        63: .line 1458
            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 1462
      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 1463
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 68
        66: .line 1464
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        67: .line 1465
            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 1451
      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 1470
      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 1485
            aload 0 /* this */
            getfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
            ifeq 2
         1: .line 1486
            return
         2: .line 1488
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
         3: .line 1489
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 1490
            return
         5: .line 1496
      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 1497
            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 1498
            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 1497
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1508
            aconst_null
            astore 2 /* fontToFileMap2 */
        start local 2 // java.util.HashMap fontToFileMap2
        11: .line 1509
            aconst_null
            astore 3 /* fontToFamilyNameMap2 */
        start local 3 // java.util.HashMap fontToFamilyNameMap2
        12: .line 1510
            aconst_null
            astore 4 /* familyToFontListMap2 */
        start local 4 // java.util.HashMap familyToFontListMap2
        13: .line 1512
            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 1513
            aload 1 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 40
        16: .line 1514
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 19
        17: .line 1515
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        18: .line 1516
            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 1518
      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 1519
            aload 9 /* f */
            ifnonnull 22
        21: .line 1520
            goto 40
        22: .line 1522
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 2 /* fontToFileMap2 */
            ifnonnull 28
        23: .line 1523
            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 1525
            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 1524
            astore 3 /* fontToFamilyNameMap2 */
        26: .line 1527
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        27: .line 1526
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            astore 4 /* familyToFontListMap2 */
        28: .line 1529
      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 1530
            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 1531
            aload 11 /* family */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 12 /* familyLC */
        start local 12 // java.lang.String familyLC
        31: .line 1532
            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 1533
            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 1534
            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 1535
            aload 13 /* fonts */
            ifnonnull 37
        35: .line 1536
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 13 /* fonts */
        36: .line 1537
            goto 38
        37: .line 1538
      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 1540
      StackMap locals:
      StackMap stack:
            aload 13 /* fonts */
            aload 10 /* fontName */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        39: .line 1541
            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 1512
      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 1544
            aload 2 /* fontToFileMap2 */
            ifnull 46
        43: .line 1545
            aload 0 /* this */
            aload 2 /* fontToFileMap2 */
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        44: .line 1546
            aload 0 /* this */
            aload 4 /* familyToFontListMap2 */
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        45: .line 1547
            aload 0 /* this */
            aload 3 /* fontToFamilyNameMap2 */
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        46: .line 1549
      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 1554
            invokestatic sun.awt.SunToolkit.getStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
         1: .line 1556
            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 1558
            iconst_0
            istore 6 /* fn */
        start local 6 // int fn
         4: .line 1560
            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 1561
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 8
         6: .line 1562
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         7: .line 1563
            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 1566
      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 1568
            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 1569
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifeq 18
        11: .line 1570
            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 1571
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
            pop
        13: .line 1572
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        14: .line 1573
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        15: .line 1574
            new java.lang.StringBuilder
            dup
            ldc "Resolved absent registry entry for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        16: .line 1575
            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 1574
            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 1579
      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 1565
            if_icmplt 8
        end local 8 // java.lang.String fullPath
        end local 7 // sun.font.TrueTypeFont ttf
        end local 6 // int fn
        20: .line 1580
            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 1556
      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 1583
            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 1616
            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 1620
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            ifnonnull 2
         1: .line 1621
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.populateHardcodedFileNameMap:()Ljava/util/HashMap;
            putstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
         2: .line 1624
      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 1625
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         4: .line 1628
      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 1629
            aload 1 /* lcName */
            astore 4 /* firstWord */
        start local 4 // java.lang.String firstWord
         6: .line 1630
            iload 3 /* spaceIndex */
            ifle 8
         7: .line 1631
            aload 1 /* lcName */
            iconst_0
            iload 3 /* spaceIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* firstWord */
         8: .line 1634
      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 1635
            aload 5 /* fd */
            ifnonnull 11
        10: .line 1636
            aconst_null
            areturn
        11: .line 1644
      StackMap locals: sun.font.SunFontManager$FamilyDescription
      StackMap stack:
            iconst_m1
            istore 6 /* styleIndex */
        start local 6 // int styleIndex
        12: .line 1645
            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 1646
            iconst_0
            istore 6 /* styleIndex */
        14: .line 1647
            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 1648
            iconst_1
            istore 6 /* styleIndex */
        17: .line 1649
            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 1650
            iconst_2
            istore 6 /* styleIndex */
        20: .line 1651
            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 1652
            iconst_3
            istore 6 /* styleIndex */
        23: .line 1654
      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 1655
            aconst_null
            areturn
        25: .line 1658
      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 1659
            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 1661
            iconst_0
            istore 11 /* failure */
        start local 11 // boolean failure
        30: .line 1668
            aload 0 /* this */
            getstatic sun.font.SunFontManager.noType1Font:Z
            invokevirtual sun.font.SunFontManager.getPlatformFontDirs:(Z)[Ljava/lang/String;
            pop
        31: .line 1670
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.plainFileName:Ljava/lang/String;
            ifnull 35
        32: .line 1671
            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 1672
            aload 7 /* plainFile */
            ifnonnull 35
        34: .line 1673
            iconst_1
            istore 11 /* failure */
        35: .line 1677
      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 1678
            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 1679
            aload 8 /* boldFile */
            ifnonnull 39
        38: .line 1680
            iconst_1
            istore 11 /* failure */
        39: .line 1684
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.italicFileName:Ljava/lang/String;
            ifnull 43
        40: .line 1685
            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 1686
            aload 9 /* italicFile */
            ifnonnull 43
        42: .line 1687
            iconst_1
            istore 11 /* failure */
        43: .line 1691
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldItalicFileName:Ljava/lang/String;
            ifnull 47
        44: .line 1692
            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 1693
            aload 10 /* boldItalicFile */
            ifnonnull 47
        46: .line 1694
            iconst_1
            istore 11 /* failure */
        47: .line 1698
      StackMap locals:
      StackMap stack:
            iload 11 /* failure */
            ifeq 53
        48: .line 1699
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 51
        49: .line 1700
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        50: .line 1701
            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 1703
      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 1704
            aconst_null
            areturn
        53: .line 1708
      StackMap locals:
      StackMap stack:
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        54: .line 1709
            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 1708
            astore 12 /* files */
        start local 12 // java.lang.String[] files
        56: .line 1712
            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 1711
            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 1727
            iload 11 /* failure */
            ifeq 64
        59: .line 1728
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 62
        60: .line 1729
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        61: .line 1730
            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 1732
      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 1733
            aconst_null
            areturn
        64: .line 1742
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 13 /* font */
        start local 13 // sun.font.Font2D font
        65: .line 1743
            iconst_0
            istore 14 /* f */
        start local 14 // int f
        66: goto 76
        67: .line 1744
      StackMap locals: sun.font.Font2D int
      StackMap stack:
            aload 12 /* files */
            iload 14 /* f */
            aaload
            ifnonnull 69
        68: .line 1745
            goto 75
        69: .line 1748
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* files */
            iload 14 /* f */
            aaload
            aconst_null
        70: .line 1749
            iconst_0
            iconst_0
            iconst_3
        71: .line 1748
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
        72: .line 1747
            astore 15 /* pf */
        start local 15 // sun.font.PhysicalFont pf
        73: .line 1750
            iload 14 /* f */
            iload 6 /* styleIndex */
            if_icmpne 75
        74: .line 1751
            aload 15 /* pf */
            astore 13 /* font */
        end local 15 // sun.font.PhysicalFont pf
        75: .line 1743
      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 1768
            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 1769
            aload 14 /* fontFamily */
            ifnull 89
        79: .line 1770
            aload 13 /* font */
            ifnonnull 84
        80: .line 1771
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        81: .line 1772
            aload 13 /* font */
            ifnonnull 89
        82: .line 1773
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        83: .line 1775
            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 1776
            iload 2 /* style */
            aload 13 /* font */
            getfield sun.font.Font2D.style:I
            ior
            istore 2 /* style */
        86: .line 1777
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        87: .line 1778
            aload 13 /* font */
            ifnonnull 89
        88: .line 1779
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        89: .line 1784
      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 1787
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            ifnonnull 14
         1: .line 1789
            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 1791
            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 1792
            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 1793
            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 1794
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
         6: .line 1795
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
         7: .line 1796
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1797
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
         9: .line 1794
            invokevirtual sun.font.SunFontManager.populateFontFileNameMap:(Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/Locale;)V
        10: .line 1798
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 12
        11: .line 1799
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.resolveWindowsFonts:()V
        12: .line 1801
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 14
        13: .line 1802
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.logPlatformFontInfo:()V
        14: .line 1805
      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 1809
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            astore 1 /* logger */
        start local 1 // sun.util.logging.PlatformLogger logger
         1: .line 1810
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 1811
      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 1810
            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 1813
            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 1814
            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 1813
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1816
            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 1817
            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 1818
            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 1817
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        15: .line 1816
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        16: .line 1820
            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 1821
            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 1822
            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 1821
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        21: .line 1820
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        22: .line 1824
            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 1828
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1829
            aconst_null
            areturn
         2: .line 1831
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1834
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* fontNames */
        start local 1 // java.util.ArrayList fontNames
         4: .line 1835
            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 1836
            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 1837
            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 1836
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 2 // java.util.ArrayList a
        10: .line 1835
      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 1840
            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 1844
            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 1848
            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 1849
            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 1853
            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 1854
            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 1855
            iconst_m1
            istore 2 /* fontFormat */
        start local 2 // int fontFormat
         3: .line 1856
            bipush 6
            istore 3 /* fontRank */
        start local 3 // int fontRank
         4: .line 1857
            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 1858
            iconst_0
            istore 2 /* fontFormat */
         6: .line 1859
            iconst_3
            istore 3 /* fontRank */
         7: .line 1860
            goto 11
         8: .line 1861
      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 1862
            iconst_1
            istore 2 /* fontFormat */
        10: .line 1863
            iconst_4
            istore 3 /* fontRank */
        11: .line 1865
      StackMap locals:
      StackMap stack:
            iload 2 /* fontFormat */
            iconst_m1
            if_icmpne 13
        12: .line 1866
            aconst_null
            areturn
        13: .line 1868
      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 1870
      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 1882
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1883
            return
         2: .line 1885
      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 1886
            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 1885
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1888
            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 1893
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1894
            iconst_0
            ireturn
         2: .line 1896
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1897
            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 1898
            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 1897
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 1900
            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 1907
            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 1908
            aload 2 /* f */
            invokevirtual java.io.File.isAbsolute:()Z
            ifeq 3
         2: .line 1909
            aload 1 /* s */
            areturn
         3: .line 1910
      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 1911
            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 1914
      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 1913
            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 1925
            aload 3 /* path */
            ifnull 9
         8: .line 1926
            aload 3 /* path */
            areturn
        end local 3 // java.lang.String path
         9: .line 1929
      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 1953
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1954
            aconst_null
            areturn
         2: .line 1957
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* family */
        start local 3 // java.util.ArrayList family
         3: .line 1958
            aconst_null
            astore 4 /* fontFile */
        start local 4 // java.lang.String fontFile
         4: .line 1959
            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 1960
            aload 5 /* familyName */
            ifnull 11
         6: .line 1961
            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 1962
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1963
            aload 5 /* familyName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
         9: .line 1962
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 3 /* family */
        10: .line 1964
            goto 16
        11: .line 1965
      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 1966
            aload 3 /* family */
            ifnull 16
            aload 3 /* family */
            invokevirtual java.util.ArrayList.size:()I
            ifle 16
        13: .line 1967
            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 1968
            aload 6 /* lcFontName */
            ifnull 16
        15: .line 1969
            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 1973
      StackMap locals:
      StackMap stack:
            aload 3 /* family */
            ifnull 17
            aload 5 /* familyName */
            ifnonnull 18
        17: .line 1974
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        18: .line 1976
      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 1977
            aload 6 /* fontList */
            arraylength
            ifne 21
        20: .line 1978
            aconst_null
            areturn
        21: .line 1992
      StackMap locals: java.lang.String[]
      StackMap stack:
            iconst_0
            istore 7 /* f */
        start local 7 // int f
        22: goto 33
        23: .line 1993
      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 1994
            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 1995
            aload 9 /* fileName */
            ifnonnull 32
        26: .line 1996
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        27: .line 1997
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        28: .line 1998
            new java.lang.StringBuilder
            dup
            ldc "Platform lookup : No file for font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        29: .line 1999
            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 1998
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        31: .line 2001
      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 1992
      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 2008
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
        35: .line 2009
            aload 4 /* fontFile */
            ifnull 40
        36: .line 2010
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* fontFile */
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            aconst_null
        37: .line 2011
            iconst_0
            iconst_0
        38: .line 2012
            iconst_3
        39: .line 2010
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            astore 7 /* physicalFont */
        40: .line 2015
      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 2016
      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 2017
            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 2018
            aload 4 /* fontFile */
            ifnull 46
            aload 4 /* fontFile */
            aload 10 /* fileName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 46
        45: .line 2019
            goto 49
        46: .line 2024
      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 2025
            iconst_0
            iconst_0
            iconst_3
        48: .line 2024
            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 2015
      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 2028
            aconst_null
            astore 8 /* font */
        start local 8 // sun.font.Font2D font
        52: .line 2029
            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 2031
            aload 7 /* physicalFont */
            ifnull 55
        54: .line 2032
            iload 2 /* style */
            aload 7 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            ior
            istore 2 /* style */
        55: .line 2034
      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 2035
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 8 /* font */
        57: .line 2036
            aload 8 /* font */
            ifnonnull 59
        58: .line 2037
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 8 /* font */
        59: .line 2040
      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 2054
            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 2055
            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 2064
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ifeq 11
         3: .line 2068
            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 2067
            checkcast java.util.concurrent.ConcurrentHashMap
         5: .line 2066
            astore 7 /* altNameCache */
        start local 7 // java.util.concurrent.ConcurrentHashMap altNameCache
         6: .line 2069
            aload 7 /* altNameCache */
            ifnull 9
         7: .line 2070
            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 2071
            goto 12
        end local 6 // sun.font.Font2D font
         9: .line 2072
      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 2074
            goto 12
        end local 6 // sun.font.Font2D font
        11: .line 2075
      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 2077
      StackMap locals: sun.font.Font2D
      StackMap stack:
            aload 6 /* font */
            ifnull 14
        13: .line 2078
            aload 6 /* font */
            areturn
        14: .line 2081
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 16
        15: .line 2082
            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 2091
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 22
        17: .line 2092
            aload 4 /* lowerCaseName */
            ldc "ms sans serif"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        18: .line 2093
            ldc "sansserif"
            astore 1 /* name */
        19: .line 2094
            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 2095
            ldc "serif"
            astore 1 /* name */
        22: .line 2107
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "default"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        23: .line 2108
            ldc "dialog"
            astore 1 /* name */
        24: .line 2112
      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 2113
            aload 7 /* family */
            ifnull 36
        26: .line 2114
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
        27: .line 2115
            aload 6 /* font */
            ifnonnull 29
        28: .line 2116
            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 2118
      StackMap locals: sun.font.FontFamily
      StackMap stack:
            aload 6 /* font */
            ifnonnull 31
        30: .line 2119
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
        31: .line 2121
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 33
        32: .line 2122
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
        33: .line 2124
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 36
        34: .line 2125
            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
        35: .line 2126
            aload 6 /* font */
            areturn
        36: .line 2133
      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 */
        37: .line 2134
            aload 6 /* font */
            ifnull 52
        38: .line 2147
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 39
            iload 2 /* style */
            ifne 41
        39: .line 2148
      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
        40: .line 2149
            aload 6 /* font */
            areturn
        41: .line 2157
      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 */
        42: .line 2158
            aload 7 /* family */
            ifnull 52
        43: .line 2159
            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
        44: .line 2161
            aload 8 /* familyFont */
            ifnull 47
        45: .line 2162
            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
        46: .line 2163
            aload 8 /* familyFont */
            areturn
        47: .line 2170
      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 */
        48: .line 2171
            aload 8 /* familyFont */
            ifnull 52
        49: .line 2179
            aload 8 /* familyFont */
            iload 2 /* style */
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            ior
            invokevirtual sun.font.Font2D.canDoStyle:(I)Z
            ifeq 52
        50: .line 2180
            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
        51: .line 2181
            aload 8 /* familyFont */
            areturn
        end local 8 // sun.font.Font2D familyFont
        52: .line 2189
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 75
        53: .line 2191
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findFontFromPlatformMap:(Ljava/lang/String;I)Lsun/font/Font2D;
            astore 6 /* font */
        54: .line 2192
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 57
        55: .line 2193
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        56: .line 2194
            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
        57: .line 2196
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 60
        58: .line 2197
            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
        59: .line 2198
            aload 6 /* font */
            areturn
        60: .line 2204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifle 65
        61: .line 2205
            aload 0 /* this */
            aload 4 /* lowerCaseName */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findJREDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        62: .line 2206
            aload 6 /* font */
            ifnull 65
        63: .line 2207
            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
        64: .line 2208
            aload 6 /* font */
            areturn
        65: .line 2211
      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 */
        66: .line 2212
            aload 6 /* font */
            ifnull 75
        67: .line 2213
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 73
        68: .line 2214
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        69: .line 2215
            new java.lang.StringBuilder
            dup
            ldc "Found font via platform API for request:\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        70: .line 2216
            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;
        71: .line 2217
            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;
        72: .line 2215
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        73: .line 2219
      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
        74: .line 2220
            aload 6 /* font */
            areturn
        75: .line 2236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.size:()I
            ifle 80
        76: .line 2237
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.findDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
            astore 6 /* font */
        77: .line 2238
            aload 6 /* font */
            ifnull 80
        78: .line 2239
            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
        79: .line 2240
            aload 6 /* font */
            areturn
        80: .line 2257
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isSolaris:Z
            ifeq 88
            aload 0 /* this */
            getfield sun.font.SunFontManager.loaded1dot0Fonts:Z
            ifne 88
        81: .line 2261
            aload 4 /* lowerCaseName */
            ldc "timesroman"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 84
        82: .line 2262
            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 */
        83: .line 2263
            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
        84: .line 2265
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.register1dot0Fonts:()V
        85: .line 2266
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loaded1dot0Fonts:Z
        86: .line 2267
            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
        87: .line 2268
            aload 8 /* ff */
            areturn
        end local 8 // sun.font.Font2D ff
        88: .line 2281
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifne 89
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
            ifeq 117
        89: .line 2282
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* familyTable */
        start local 8 // java.util.Hashtable familyTable
        90: .line 2285
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 94
        91: .line 2286
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 8 /* familyTable */
        92: .line 2287
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 9 /* nameTable */
        start local 9 // java.util.Hashtable nameTable
        93: .line 2288
            goto 101
        end local 9 // java.util.Hashtable nameTable
        94: .line 2289
      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
        95: .line 2292
            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
        96: .line 2291
            astore 11 /* tmp1 */
        start local 11 // java.util.Hashtable tmp1
        97: .line 2293
            aload 11 /* tmp1 */
            astore 8 /* familyTable */
        98: .line 2297
            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
        99: .line 2296
            astore 12 /* tmp2 */
        start local 12 // java.util.Hashtable tmp2
       100: .line 2298
            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
       101: .line 2301
      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 */
       102: .line 2302
            aload 7 /* family */
            ifnull 112
       103: .line 2303
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
       104: .line 2304
            aload 6 /* font */
            ifnonnull 106
       105: .line 2305
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
       106: .line 2307
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 108
       107: .line 2308
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
       108: .line 2310
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 112
       109: .line 2311
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 111
       110: .line 2312
            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
       111: .line 2314
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
       112: .line 2317
      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 */
       113: .line 2318
            aload 6 /* font */
            ifnull 117
       114: .line 2319
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 116
       115: .line 2320
            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
       116: .line 2322
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
        end local 9 // java.util.Hashtable nameTable
        end local 8 // java.util.Hashtable familyTable
       117: .line 2329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFonts:Z
            ifne 124
       118: .line 2330
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 121
       119: .line 2331
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
       120: .line 2332
            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
       121: .line 2334
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
       122: .line 2335
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFonts:Z
       123: .line 2336
            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
       124: .line 2339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifne 131
       125: .line 2340
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 128
       126: .line 2341
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
       127: .line 2342
            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
       128: .line 2344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
       129: .line 2345
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
       130: .line 2346
            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
       131: .line 2364
      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 134
       132: .line 2365
            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
       133: .line 2366
            aload 6 /* font */
            areturn
       134: .line 2379
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 141
       135: .line 2381
            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;
       136: .line 2380
            astore 8 /* compatName */
        start local 8 // java.lang.String compatName
       137: .line 2382
            aload 8 /* compatName */
            ifnull 153
       138: .line 2383
            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 */
       139: .line 2384
            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
       140: .line 2385
            aload 6 /* font */
            areturn
        end local 8 // java.lang.String compatName
       141: .line 2387
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "timesroman"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 145
       142: .line 2388
            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 */
       143: .line 2389
            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
       144: .line 2390
            aload 6 /* font */
            areturn
       145: .line 2391
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "helvetica"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 149
       146: .line 2392
            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 */
       147: .line 2393
            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
       148: .line 2394
            aload 6 /* font */
            areturn
       149: .line 2395
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "courier"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 153
       150: .line 2396
            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 */
       151: .line 2397
            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
       152: .line 2398
            aload 6 /* font */
            areturn
       153: .line 2401
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 155
       154: .line 2402
            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
       155: .line 2405
      StackMap locals:
      StackMap stack:
            iload 3 /* fallback */
            tableswitch { // 1 - 2
                    1: 156
                    2: 157
              default: 158
          }
       156: .line 2406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            areturn
       157: .line 2407
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.getDefaultLogicalFont:(I)Lsun/font/Font2D;
            areturn
       158: .line 2408
      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  159     0           this  Lsun/font/SunFontManager;
            0  159     1           name  Ljava/lang/String;
            0  159     2          style  I
            0  159     3       fallback  I
            1  159     4  lowerCaseName  Ljava/lang/String;
            2  159     5        mapName  Ljava/lang/String;
            8    9     6           font  Lsun/font/Font2D;
           10   11     6           font  Lsun/font/Font2D;
           12  159     6           font  Lsun/font/Font2D;
            6   10     7   altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;
           25  159     7         family  Lsun/font/FontFamily;
           44   52     8     familyFont  Lsun/font/Font2D;
           87   88     8             ff  Lsun/font/Font2D;
           90  117     8    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           93   94     9      nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
          101  117     9      nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           95  101    10     appContext  Lsun/awt/AppContext;
           97  101    11           tmp1  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
          100  101    12           tmp2  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
          137  141     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 2418
            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 2422
            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 2426
            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=7, locals=14, 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 2438
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* fList */
        start local 6 // java.util.List fList
         1: .line 2439
            iconst_1
            istore 7 /* cnt */
        start local 7 // int cnt
         2: .line 2440
            aload 1 /* fontFile */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 8 /* fontFilePath */
        start local 8 // java.lang.String fontFilePath
         3: .line 2441
            aconst_null
            astore 9 /* font2D */
        start local 9 // sun.font.FileFont font2D
         4: .line 2442
            aload 1 /* fontFile */
            astore 10 /* fFile */
        start local 10 // java.io.File fFile
         5: .line 2443
            aload 5 /* tracker */
            astore 11 /* _tracker */
        start local 11 // sun.font.CreatedFontTracker _tracker
         6: .line 2445
            iload 2 /* fontFormat */
            tableswitch { // 0 - 1
                    0: 7
                    1: 17
              default: 20
          }
         7: .line 2447
      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
      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 */
         8: .line 2448
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         9: .line 2449
            iload 3 /* all */
            ifne 11
        10: .line 2450
            goto 26
        11: .line 2452
      StackMap locals:
      StackMap stack:
            aload 9 /* font2D */
            checkcast sun.font.TrueTypeFont
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
            istore 7 /* cnt */
        12: .line 2453
            iconst_1
            istore 12 /* index */
        start local 12 // int index
        13: .line 2454
            goto 15
        14: .line 2455
      StackMap locals: int
      StackMap stack:
            aload 6 /* fList */
            new sun.font.TrueTypeFont
            dup
            aload 8 /* fontFilePath */
            aconst_null
            iload 12 /* index */
            iinc 12 /* index */ 1
            iconst_1
            invokespecial sun.font.TrueTypeFont.<init>:(Ljava/lang/String;Ljava/lang/Object;IZ)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 2454
      StackMap locals:
      StackMap stack:
            iload 12 /* index */
            iload 7 /* cnt */
            if_icmplt 14
        16: .line 2457
            goto 26
        end local 12 // int index
        17: .line 2459
      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 */
        18: .line 2460
            aload 6 /* fList */
            aload 9 /* font2D */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 2461
            goto 26
        20: .line 2463
      StackMap locals:
      StackMap stack:
            new java.awt.FontFormatException
            dup
            ldc "Unrecognised Font Format"
            invokespecial java.awt.FontFormatException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 2465
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
            astore 12 /* e */
        start local 12 // java.awt.FontFormatException e
        22: .line 2466
            iload 4 /* isCopy */
            ifeq 25
        23: .line 2468
            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
        24: .line 2467
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        25: .line 2478
      StackMap locals: java.awt.FontFormatException
      StackMap stack:
            aload 12 /* e */
            athrow
        end local 12 // java.awt.FontFormatException e
        26: .line 2480
      StackMap locals:
      StackMap stack:
            iload 4 /* isCopy */
            ifeq 39
        27: .line 2481
            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
        28: .line 2482
            ldc Lsun/font/FontManager;
            dup
            astore 12
            monitorenter
        29: .line 2484
            aload 0 /* this */
            getfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
            ifnonnull 31
        30: .line 2485
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        31: .line 2487
      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
        32: .line 2489
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            ifnonnull 35
        33: .line 2490
            new sun.font.SunFontManager$8
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$8.<init>:(Lsun/font/SunFontManager;)V
            astore 13 /* fileCloserRunnable */
        start local 13 // java.lang.Runnable fileCloserRunnable
        34: .line 2521
            aload 0 /* this */
            aload 13 /* 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$0(Ljava/lang/Runnable;)Ljava/lang/Void; (7)
                  ()Ljava/lang/Void;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        end local 13 // java.lang.Runnable fileCloserRunnable
        35: .line 2482
      StackMap locals:
      StackMap stack:
            aload 12
            monitorexit
        36: goto 39
      StackMap locals:
      StackMap stack: java.lang.Throwable
        37: aload 12
            monitorexit
        38: athrow
        39: .line 2532
      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 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   40     0                this  Lsun/font/SunFontManager;
            0   40     1            fontFile  Ljava/io/File;
            0   40     2          fontFormat  I
            0   40     3                 all  Z
            0   40     4              isCopy  Z
            0   40     5             tracker  Lsun/font/CreatedFontTracker;
            1   40     6               fList  Ljava/util/List<Lsun/font/Font2D;>;
            2   40     7                 cnt  I
            3   40     8        fontFilePath  Ljava/lang/String;
            4   40     9              font2D  Lsun/font/FileFont;
            5   40    10               fFile  Ljava/io/File;
            6   40    11            _tracker  Lsun/font/CreatedFontTracker;
           13   17    12               index  I
           22   26    12                   e  Ljava/awt/FontFormatException;
           34   35    13  fileCloserRunnable  Ljava/lang/Runnable;
      Exception table:
        from    to  target  type
           6    21      21  Class java.awt.FontFormatException
          29    36      37  any
          37    38      37  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 2539
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 2 /* physFonts */
        start local 2 // sun.font.PhysicalFont[] physFonts
         1: .line 2540
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 6
         3: .line 2541
      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 2542
            aload 2 /* physFonts */
            iload 3 /* i */
            aaload
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
         5: .line 2540
      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 2545
            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 2561
            aload 1 /* font2D */
            instanceof sun.font.PhysicalFont
            ifne 2
         1: .line 2563
            return
         2: .line 2565
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 2566
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 2567
            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 2569
      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 2571
            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 2580
            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 2582
            return
         2: .line 2588
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
         3: .line 2589
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 6
         4: .line 2590
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         5: .line 2591
            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 2593
      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 2594
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 13
         9: .line 2595
      StackMap locals: sun.font.PhysicalFont[] int
      StackMap stack:
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            aload 2 /* newFont */
            if_acmpeq 12
        10: .line 2596
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            astore 2 /* newFont */
        11: .line 2597
            goto 14
        12: .line 2594
      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 2600
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
        15: .line 2601
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        16: .line 2602
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        17: .line 2603
            ldc "This is bad. No good physicalFonts found."
            invokevirtual sun.util.logging.PlatformLogger.severe:(Ljava/lang/String;)V
        18: .line 2605
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.font.PhysicalFont[] physFonts
        19: .line 2613
      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 2614
            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 2615
            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 2616
            aload 1 /* oldFont */
            invokestatic sun.font.FontFamily.remove:(Lsun/font/Font2D;)V
        23: .line 2617
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 37
        24: .line 2618
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
        25: .line 2619
            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 2618
            astore 3 /* mapEntries */
        start local 3 // java.util.Map$Entry[] mapEntries
        27: .line 2623
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        28: goto 36
        29: .line 2624
      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 2627
            aload 3 /* mapEntries */
            iload 4 /* i */
            aaload
            astore 5 /* tmp */
        start local 5 // java.util.Map$Entry tmp
        31: .line 2628
            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 2629
            goto 35
      StackMap locals:
      StackMap stack: java.lang.Exception
        33: pop
        34: .line 2633
            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 2623
      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 2639
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        38: goto 42
        39: .line 2669
      StackMap locals: int
      StackMap stack:
            aload 2 /* newFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iconst_2
            if_icmple 41
        40: .line 2670
            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 2639
      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 2673
            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 2676
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 2
         1: .line 2677
            return
         2: .line 2679
      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 2680
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 1 /* fonts */
        start local 1 // sun.font.Font2D[] fonts
         4: .line 2681
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 18
         6: .line 2682
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            instanceof sun.font.TrueTypeFont
            ifeq 17
         7: .line 2683
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            checkcast sun.font.TrueTypeFont
            astore 3 /* ttf */
        start local 3 // sun.font.TrueTypeFont ttf
         8: .line 2684
            aload 3 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getAllFullNames:()[Ljava/lang/String;
            astore 4 /* fullNames */
        start local 4 // java.lang.String[] fullNames
         9: .line 2685
            iconst_0
            istore 5 /* n */
        start local 5 // int n
        10: goto 13
        11: .line 2686
      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 2685
            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 2688
            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 2689
            aload 5 /* family */
            ifnull 17
        16: .line 2690
            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 2681
      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 2694
            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 2705
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2706
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2707
            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 2714
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnonnull 5
         4: .line 2715
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadLocaleNames:()V
         5: .line 2717
      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 2718
            aconst_null
            astore 4 /* font */
        start local 4 // sun.font.Font2D font
         7: .line 2721
            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 2722
            aload 5 /* family */
            ifnull 14
         9: .line 2723
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 4 /* font */
        10: .line 2724
            aload 4 /* font */
            ifnonnull 12
        11: .line 2725
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 4 /* font */
        12: .line 2727
      StackMap locals: java.lang.String sun.font.Font2D sun.font.FontFamily
      StackMap stack:
            aload 4 /* font */
            ifnull 14
        13: .line 2728
            aload 4 /* font */
            areturn
        14: .line 2733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 6
            monitorenter
        15: .line 2734
            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 2733
            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 2736
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            ifnull 33
        21: .line 2737
            aload 4 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 22
            iload 2 /* style */
            ifne 23
        22: .line 2738
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            areturn
        23: .line 2740
      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 2741
            aload 5 /* family */
            ifnull 33
        25: .line 2742
            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 2744
            aload 6 /* familyFont */
            ifnull 28
        27: .line 2745
            aload 6 /* familyFont */
            areturn
        28: .line 2747
      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 2748
            aload 6 /* familyFont */
            ifnull 33
        30: .line 2757
            aload 6 /* familyFont */
            iload 2 /* style */
            invokevirtual sun.font.Font2D.canDoStyle:(I)Z
            ifne 32
        31: .line 2758
            aconst_null
            astore 6 /* familyFont */
        32: .line 2760
      StackMap locals:
      StackMap stack:
            aload 6 /* familyFont */
            areturn
        end local 6 // sun.font.Font2D familyFont
        33: .line 2766
      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 2845
            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 2849
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingAlternateComposites:Z
            ifne 4
         1: .line 2850
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ifeq 3
         2: .line 2851
            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 2849
      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 2857
            new sun.font.SunFontManager$9
            dup
            invokespecial sun.font.SunFontManager$9.<init>:()V
         1: .line 2856
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
         2: .line 2855
            astore 0 /* appletSM */
        start local 0 // java.lang.Boolean appletSM
         3: .line 2863
            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 2871
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2872
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2873
            ldc "Entered useAlternateFontforJALocales()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2875
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 2876
            return
         5: .line 2879
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 8
         6: .line 2880
            iconst_1
            putstatic sun.font.SunFontManager.gAltJAFont:Z
         7: .line 2881
            goto 10
         8: .line 2882
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
         9: .line 2883
            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 2885
      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 2888
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 2
         1: .line 2889
            getstatic sun.font.SunFontManager.gAltJAFont:Z
            ireturn
         2: .line 2891
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
         3: .line 2892
            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 2897
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 2
         1: .line 2898
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "Entered preferLocaleFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         2: .line 2901
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.willReorderForStartupLocale:()Z
            ifne 4
         3: .line 2902
            return
         4: .line 2905
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 11
         5: .line 2906
            aload 0 /* this */
            getfield sun.font.SunFontManager.gLocalePref:Z
            ifeq 7
         6: .line 2907
            return
         7: .line 2909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gLocalePref:Z
         8: .line 2910
            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 2911
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        10: .line 2912
            goto 22
        11: .line 2913
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
        12: .line 2914
            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 2915
            return
        14: .line 2917
      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 2919
            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 2918
      StackMap locals:
      StackMap stack: int
            istore 2 /* acPropPref */
        start local 2 // boolean acPropPref
        18: .line 2921
            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 2923
            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 2924
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        21: .line 2925
            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 2927
      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 2930
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2931
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2932
            ldc "Entered preferProportionalFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2937
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.hasMonoToPropMap:()Z
            ifne 5
         4: .line 2938
            return
         5: .line 2941
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 12
         6: .line 2942
            aload 0 /* this */
            getfield sun.font.SunFontManager.gPropPref:Z
            ifeq 8
         7: .line 2943
            return
         8: .line 2945
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gPropPref:Z
         9: .line 2946
            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 2947
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        11: .line 2948
            goto 23
        12: .line 2949
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
        13: .line 2950
            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 2951
            return
        15: .line 2953
      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 2955
            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 2954
      StackMap locals:
      StackMap stack: int
            istore 2 /* acLocalePref */
        start local 2 // boolean acLocalePref
        19: .line 2957
            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 2959
            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 2960
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        22: .line 2961
            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 2963
      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 2967
            getstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
            ifnonnull 18
         1: .line 2968
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 0 /* l */
        start local 0 // java.util.Locale l
         2: .line 2969
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
            astore 1 /* fontManager */
        start local 1 // sun.font.SunFontManager fontManager
         3: .line 2971
            aload 1 /* fontManager */
            aload 0 /* l */
            invokevirtual sun.font.SunFontManager.getInstalledFontFamilyNames:(Ljava/util/Locale;)[Ljava/lang/String;
         4: .line 2970
            astore 2 /* installedFamilies */
        start local 2 // java.lang.String[] installedFamilies
         5: .line 2972
            aload 1 /* fontManager */
            invokevirtual sun.font.SunFontManager.getAllInstalledFonts:()[Ljava/awt/Font;
            astore 3 /* installedFonts */
        start local 3 // java.awt.Font[] installedFonts
         6: .line 2973
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* names */
        start local 4 // java.util.HashSet names
         7: .line 2974
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 11
         9: .line 2975
      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 2974
            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 2977
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        13: goto 16
        14: .line 2978
      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 2977
            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 2980
            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 2982
      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 2997
            aload 1 /* font */
            ifnonnull 2
         1: .line 2998
            iconst_0
            ireturn
         2: .line 3002
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         3: .line 3003
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            ifnonnull 6
         4: .line 3004
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
         5: .line 3005
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
         6: .line 3002
      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 3009
      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 3010
            iconst_0
            ireturn
        12: .line 3030
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.getInstalledNames:()Ljava/util/HashSet;
            astore 2 /* names */
        start local 2 // java.util.HashSet names
        13: .line 3031
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
        14: .line 3032
            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 3033
            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 3034
            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 3035
      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 3041
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 23
        19: .line 3042
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 6 /* familyTable */
        start local 6 // java.util.Hashtable familyTable
        20: .line 3043
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 7 /* fullNameTable */
        start local 7 // java.util.Hashtable fullNameTable
        21: .line 3044
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        22: .line 3045
            goto 36
        end local 7 // java.util.Hashtable fullNameTable
        end local 6 // java.util.Hashtable familyTable
        23: .line 3046
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 8 /* appContext */
        start local 8 // sun.awt.AppContext appContext
        24: .line 3049
            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 3048
            astore 9 /* tmp1 */
        start local 9 // java.util.Hashtable tmp1
        26: .line 3050
            aload 9 /* tmp1 */
            astore 6 /* familyTable */
        start local 6 // java.util.Hashtable familyTable
        27: .line 3053
            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 3052
            astore 10 /* tmp2 */
        start local 10 // java.util.Hashtable tmp2
        29: .line 3054
            aload 10 /* tmp2 */
            astore 7 /* fullNameTable */
        start local 7 // java.util.Hashtable fullNameTable
        30: .line 3056
            aload 6 /* familyTable */
            ifnonnull 35
        31: .line 3057
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 6 /* familyTable */
        32: .line 3058
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 7 /* fullNameTable */
        33: .line 3059
            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 3060
            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 3062
      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 3065
      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 3066
            aload 8 /* font2D */
            invokevirtual sun.font.Font2D.getStyle:()I
            istore 9 /* style */
        start local 9 // int style
        38: .line 3067
            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 3068
            aload 10 /* family */
            ifnonnull 42
        40: .line 3069
            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 3070
            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 3078
      StackMap locals: sun.font.Font2D int sun.font.FontFamily
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 48
        43: .line 3079
            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 3080
            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 3081
            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 3082
            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 3083
            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 3085
      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 3086
            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 3087
            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 3092
            aload 1 /* font */
            ifnonnull 2
         1: .line 3093
            return
         2: .line 3095
      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 3096
            iconst_0
            istore 3 /* k */
        start local 3 // int k
         4: goto 8
         5: .line 3097
      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 3098
            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 3096
      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 3101
            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 3107
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 3108
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 1 /* familyTable */
        start local 1 // java.util.Hashtable familyTable
         2: .line 3109
            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 3110
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 2 /* appContext */
        start local 2 // sun.awt.AppContext appContext
         5: .line 3113
            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 3112
            astore 3 /* tmp */
        start local 3 // java.util.Hashtable tmp
         7: .line 3114
            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 3115
            goto 10
        end local 1 // java.util.Hashtable familyTable
         9: .line 3116
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable familyTable
        10: .line 3119
      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 3120
            aload 1 /* familyTable */
            dup
            astore 3
            monitorenter
        12: .line 3121
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 4 /* map */
        start local 4 // java.util.TreeMap map
        13: .line 3122
            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 3123
            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 3124
            aload 7 /* font2D */
            ifnonnull 18
        17: .line 3125
            aload 5 /* f */
            iconst_0
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 7 /* font2D */
        18: .line 3127
      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 3128
            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 3122
      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 3130
            aload 4 /* map */
            aload 3
            monitorexit
        22: areturn
        end local 4 // java.util.TreeMap map
        23: .line 3120
      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 3137
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 3138
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 1 /* nameTable */
        start local 1 // java.util.Hashtable nameTable
         2: .line 3139
            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 3140
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 2 /* appContext */
        start local 2 // sun.awt.AppContext appContext
         5: .line 3143
            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 3142
            astore 3 /* tmp */
        start local 3 // java.util.Hashtable tmp
         7: .line 3144
            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 3145
            goto 10
        end local 1 // java.util.Hashtable nameTable
         9: .line 3146
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable nameTable
        10: .line 3149
      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 3150
            aload 1 /* nameTable */
            dup
            astore 3
            monitorenter
        12: .line 3151
            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 3152
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        14: .line 3153
            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 3154
            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 3153
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 3156
            aload 4 /* fonts */
            aload 3
            monitorexit
        19: areturn
        end local 5 // int i
        end local 4 // java.awt.Font[] fonts
        20: .line 3150
      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 3164
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            ifnull 2
         1: .line 3165
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            areturn
         2: .line 3168
      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 3170
            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 3169
            astore 3 /* parser */
        start local 3 // java.util.StringTokenizer parser
         5: .line 3171
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* pathList */
        start local 4 // java.util.ArrayList pathList
         6: .line 3173
            goto 8
         7: .line 3174
      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 3173
      StackMap locals:
      StackMap stack:
            aload 3 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 7
         9: .line 3176
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 3178
      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 3179
            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 3198
            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 3199
            aload 9 /* ls */
            ifnull 2
            aload 9 /* ls */
            arraylength
            ifne 3
         2: .line 3200
      StackMap locals: java.lang.String[]
      StackMap stack:
            return
         3: .line 3202
      StackMap locals:
      StackMap stack:
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String
            astore 10 /* fontNames */
        start local 10 // java.lang.String[] fontNames
         4: .line 3203
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String[]
            astore 11 /* nativeNames */
        start local 11 // java.lang.String[][] nativeNames
         5: .line 3204
            iconst_0
            istore 12 /* fontCount */
        start local 12 // int fontCount
         6: .line 3206
            iconst_0
            istore 13 /* i */
        start local 13 // int i
         7: goto 41
         8: .line 3207
      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 3208
            aconst_null
            astore 15 /* fullName */
        start local 15 // java.lang.String fullName
        10: .line 3209
            iload 8 /* resolveSymLinks */
            ifeq 14
        11: .line 3211
            aload 14 /* theFile */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 15 /* fullName */
        12: .line 3212
            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 3215
      StackMap locals:
      StackMap stack:
            aload 15 /* fullName */
            ifnonnull 16
        15: .line 3216
            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 3220
      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 3221
            goto 40
        18: .line 3224
      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 3225
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 40
        20: .line 3226
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        21: .line 3227
            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 3229
            goto 40
        23: .line 3232
      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 3234
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 38
        25: .line 3235
            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 3236
            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 3237
            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 3238
            aload 17 /* natNames */
            ifnonnull 31
        29: .line 3239
            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 3240
            goto 37
        31: .line 3241
      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 3242
            iconst_1
            istore 18 /* nn */
        start local 18 // int nn
        33: goto 36
        34: .line 3243
      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 3242
            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 3246
      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 3248
      StackMap locals:
      StackMap stack:
            aload 10 /* fontNames */
            iload 12 /* fontCount */
            aload 15 /* fullName */
            aastore
        39: .line 3249
            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 3206
      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 3251
            aload 0 /* this */
            aload 10 /* fontNames */
            aload 11 /* nativeNames */
            iload 12 /* fontCount */
            iload 4 /* fontFormat */
        43: .line 3252
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
            iload 7 /* defer */
        44: .line 3251
            invokevirtual sun.font.SunFontManager.registerFonts:([Ljava/lang/String;[[Ljava/lang/String;IIZIZ)V
        45: .line 3253
            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 3258
            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 3268
            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 3275
            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 3282
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontPath:Ljava/lang/String;
            ifnonnull 2
         1: .line 3283
            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 3285
      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  

  public static boolean isOpenJDK();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 3289
            getstatic sun.font.FontUtilities.isOpenJDK:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  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 3293
            aload 0 /* this */
            getfield sun.font.SunFontManager.discoveredAllFonts:Z
            ifeq 2
         1: .line 3294
            return
         2: .line 3297
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         3: .line 3298
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         4: .line 3299
            invokestatic java.lang.Thread.dumpStack:()V
         5: .line 3300
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         6: .line 3301
            ldc "SunGraphicsEnvironment.loadFonts() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 3303
      StackMap locals: sun.font.SunFontManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFonts:()V
         8: .line 3306
            new sun.font.SunFontManager$10
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$10.<init>:(Lsun/font/SunFontManager;)V
         9: .line 3305
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        10: .line 3297
            aload 1
            monitorexit
        11: goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: aload 1
            monitorexit
        13: athrow
        14: .line 3329
      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 3332
            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 3339
            new java.util.StringTokenizer
            dup
            aload 1 /* pathName */
         1: .line 3340
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
         2: .line 3339
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 6 /* parser */
        start local 6 // java.util.StringTokenizer parser
         3: .line 3342
            goto 8
         4: .line 3343
      StackMap locals: java.util.StringTokenizer
      StackMap stack:
            aload 0 /* this */
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
         5: .line 3344
            iload 2 /* useJavaRasterizer */
            iload 3 /* fontRank */
         6: .line 3345
            iload 4 /* defer */
            iload 5 /* resolveSymLinks */
         7: .line 3343
            invokevirtual sun.font.SunFontManager.registerFontsInDir:(Ljava/lang/String;ZIZZ)V
         8: .line 3342
      StackMap locals:
      StackMap stack:
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 4
         9: .line 3347
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 3349
      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 3353
            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 3354
            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 3361
            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 3362
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         2: .line 3363
            iconst_0
            iload 2 /* useJavaRasterizer */
         3: .line 3364
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 5
         4: .line 3365
            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 3366
      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 3362
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
         8: .line 3367
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         9: .line 3368
            iconst_1
            iload 2 /* useJavaRasterizer */
        10: .line 3369
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 12
        11: .line 3370
            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 3371
      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 3367
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
        15: .line 3372
            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 3375
            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 3382
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultFontFileName:Ljava/lang/String;
            ifnonnull 2
         1: .line 3383
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initDefaultFonts:()V
         2: .line 3385
      StackMap locals:
      StackMap stack:
            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    3     0  this  Lsun/font/SunFontManager;

  private void initDefaultFonts();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.font.SunFontManager this
         0: .line 3389
            invokestatic sun.font.SunFontManager.isOpenJDK:()Z
            ifne 8
         1: .line 3390
            aload 0 /* this */
            ldc "Lucida Sans Regular"
            putfield sun.font.SunFontManager.defaultFontName:Ljava/lang/String;
         2: .line 3391
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.useAbsoluteFontFileNames:()Z
            ifeq 7
         3: .line 3392
            aload 0 /* this */
         4: .line 3393
            new java.lang.StringBuilder
            dup
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            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;
            ldc "LucidaSansRegular.ttf"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 3392
            putfield sun.font.SunFontManager.defaultFontFileName:Ljava/lang/String;
         6: .line 3394
            goto 8
         7: .line 3395
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "LucidaSansRegular.ttf"
            putfield sun.font.SunFontManager.defaultFontFileName:Ljava/lang/String;
         8: .line 3398
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     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 3405
            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 3423
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultFontName:Ljava/lang/String;
            ifnonnull 2
         1: .line 3424
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initDefaultFonts:()V
         2: .line 3426
      StackMap locals:
      StackMap stack:
            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    3     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 3430
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         1: .line 3431
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifeq 3
         2: .line 3432
            return
         3: .line 3435
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         4: .line 3436
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         5: .line 3437
            invokestatic java.lang.Thread.dumpStack:()V
         6: .line 3438
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "loadAllFontFiles() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 3441
      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 3440
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         9: .line 3435
            aload 1
            monitorexit
        10: goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: aload 1
            monitorexit
        12: athrow
        13: .line 3459
      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 3472
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 3473
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 3474
            ldc "Initialising composite fonts"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 3477
      StackMap locals:
      StackMap stack:
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getNumberCoreFonts:()I
            istore 3 /* numCoreFonts */
        start local 3 // int numCoreFonts
         4: .line 3478
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getPlatformFontNames:()[Ljava/lang/String;
            astore 4 /* fcFonts */
        start local 4 // java.lang.String[] fcFonts
         5: .line 3479
            iconst_0
            istore 5 /* f */
        start local 5 // int f
         6: goto 22
         7: .line 3480
      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 3482
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.getFileNameFromPlatformName:(Ljava/lang/String;)Ljava/lang/String;
         9: .line 3481
            astore 7 /* fontFileName */
        start local 7 // java.lang.String fontFileName
        10: .line 3483
            aconst_null
            astore 8 /* nativeNames */
        start local 8 // java.lang.String[] nativeNames
        11: .line 3484
            aload 7 /* fontFileName */
            ifnull 13
        12: .line 3485
            aload 7 /* fontFileName */
            aload 6 /* platformFontName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 3489
      StackMap locals: java.lang.String java.lang.String java.lang.String[]
      StackMap stack:
            aload 6 /* platformFontName */
            astore 7 /* fontFileName */
        14: .line 3490
            goto 18
        15: .line 3491
      StackMap locals:
      StackMap stack:
            iload 5 /* f */
            iload 3 /* numCoreFonts */
            if_icmpge 17
        16: .line 3506
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.addFontToPlatformFontPath:(Ljava/lang/String;)V
        17: .line 3508
      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 3517
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* fontFileName */
            aload 8 /* nativeNames */
        19: .line 3518
            iconst_2
            iconst_1
        20: .line 3517
            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 3479
            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 3529
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.registerPlatformFontsUsedByFontConfiguration:()V
        24: .line 3532
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.get2DCompositeFontInfo:()[Lsun/font/CompositeFontDescriptor;
        25: .line 3531
            astore 5 /* compositeFontInfo */
        start local 5 // sun.font.CompositeFontDescriptor[] compositeFontInfo
        26: .line 3533
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        27: goto 60
        28: .line 3534
      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 3535
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFileNames:()[Ljava/lang/String;
            astore 8 /* componentFileNames */
        start local 8 // java.lang.String[] componentFileNames
        30: .line 3536
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFaceNames:()[Ljava/lang/String;
            astore 9 /* componentFaceNames */
        start local 9 // java.lang.String[] componentFaceNames
        31: .line 3541
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnull 39
        32: .line 3542
            iconst_0
            istore 10 /* ii */
        start local 10 // int ii
        33: goto 38
        34: .line 3543
      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 3544
            aload 8 /* componentFileNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFile:()Ljava/lang/String;
            aastore
        36: .line 3545
            aload 9 /* componentFaceNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFaceName:()Ljava/lang/String;
            aastore
        37: .line 3542
      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 3556
      StackMap locals:
      StackMap stack:
            aload 2 /* altNameCache */
            ifnull 49
        40: .line 3558
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        41: .line 3559
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        42: .line 3560
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        43: .line 3561
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        44: .line 3562
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        45: .line 3563
            iconst_1
        46: .line 3564
            aload 2 /* altNameCache */
        47: .line 3557
            invokestatic sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLjava/util/concurrent/ConcurrentHashMap;)V
        48: .line 3565
            goto 56
        49: .line 3566
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        50: .line 3567
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        51: .line 3568
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        52: .line 3569
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        53: .line 3570
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        54: .line 3571
            iconst_1
        55: .line 3566
            invokevirtual sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZ)V
        56: .line 3573
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 59
        57: .line 3574
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        58: .line 3575
            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 3533
      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 3578
            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 3586
            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 3591
            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 3592
            return
         2: .line 3595
      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 3596
            iconst_0
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         4: .line 3597
            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 3598
            iconst_1
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         7: .line 3599
            goto 9
        end local 5 // int fontFormat
         8: .line 3600
      StackMap locals:
      StackMap stack:
            iconst_5
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         9: .line 3602
      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 3603
            iload 4 /* defer */
            ifeq 15
        11: .line 3604
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
        12: .line 3605
            iload 5 /* fontFormat */
            iconst_0
            iload 3 /* fontRank */
        13: .line 3604
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
        14: .line 3606
            goto 18
        15: .line 3607
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
            iload 5 /* fontFormat */
            iconst_0
        16: .line 3608
            iload 3 /* fontRank */
        17: .line 3607
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        18: .line 3610
      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 3613
            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 3630
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnonnull 2
         1: .line 3631
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         2: .line 3633
      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 3634
            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 3655
            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 3656
            aload 2 /* fileName */
            ifnonnull 3
         2: .line 3657
            iconst_0
            ireturn
         3: .line 3659
      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 3673
            aload 0 /* this */
            iload 2 /* preferLocale */
            iload 3 /* preferProportional */
            invokevirtual sun.font.SunFontManager.createFontConfiguration:(ZZ)Lsun/awt/FontConfiguration;
         1: .line 3672
            astore 4 /* fontConfig */
        start local 4 // sun.awt.FontConfiguration fontConfig
         2: .line 3674
            aload 0 /* this */
            aload 4 /* fontConfig */
            aload 1 /* altNameCache */
            invokevirtual sun.font.SunFontManager.initCompositeFonts:(Lsun/awt/FontConfiguration;Ljava/util/concurrent/ConcurrentHashMap;)V
         3: .line 3675
            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 3681
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
            ifnonnull 39
         1: .line 3682
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         2: .line 3683
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 1 /* fontMapNames */
        start local 1 // java.util.TreeMap fontMapNames
         3: .line 3688
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 2 /* allfonts */
        start local 2 // sun.font.Font2D[] allfonts
         4: .line 3689
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 11
         6: .line 3690
      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 3691
            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 3692
            aload 2 /* allfonts */
            iload 3 /* i */
            aaload
         9: .line 3691
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 3689
      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 3696
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFontNamesFromPlatform:()[Ljava/lang/String;
            astore 3 /* platformNames */
        start local 3 // java.lang.String[] platformNames
        13: .line 3697
            aload 3 /* platformNames */
            ifnull 20
        14: .line 3698
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        15: goto 19
        16: .line 3699
      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 3700
            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 3698
      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 3705
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* fontNames */
        start local 4 // java.lang.String[] fontNames
        21: .line 3706
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            ifle 29
        22: .line 3707
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            anewarray java.lang.String
            astore 4 /* fontNames */
        23: .line 3708
            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 3709
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        25: goto 28
        26: .line 3710
      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 3709
            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 3713
      StackMap locals:
      StackMap stack:
            aload 4 /* fontNames */
            arraylength
            anewarray java.awt.Font
            astore 5 /* fonts */
        start local 5 // java.awt.Font[] fonts
        30: .line 3714
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        31: goto 37
        32: .line 3715
      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 3716
            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 3717
            aload 7 /* f2d */
            ifnull 36
        35: .line 3718
            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 3714
      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 3721
            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 3724
      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 3725
            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 3726
            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 3738
            aload 1 /* requestedLocale */
            ifnonnull 2
         1: .line 3739
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            astore 1 /* requestedLocale */
         2: .line 3741
      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 3742
            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 3743
            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 3744
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            iconst_0
            aload 2 /* copyFamilies */
         6: .line 3745
            iconst_0
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            arraylength
         7: .line 3744
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 3746
            aload 2 /* copyFamilies */
            areturn
        end local 2 // java.lang.String[] copyFamilies
         9: .line 3749
      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 3752
            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 3753
            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 3754
            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 3755
            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 3756
            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 3762
            aload 1 /* requestedLocale */
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 20
        17: .line 3763
            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 3765
            aload 0 /* this */
            aload 2 /* familyNames */
            aload 1 /* requestedLocale */
            invokevirtual sun.font.SunFontManager.getJREFontFamilyNames:(Ljava/util/TreeMap;Ljava/util/Locale;)V
        19: .line 3766
            goto 30
        20: .line 3767
      StackMap locals: java.util.TreeMap java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
        21: .line 3768
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 4 /* physicalfonts */
        start local 4 // sun.font.Font2D[] physicalfonts
        22: .line 3769
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        23: goto 29
        24: .line 3770
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 28
        25: .line 3772
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            aload 1 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
        26: .line 3771
            astore 6 /* name */
        start local 6 // java.lang.String name
        27: .line 3773
            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 3769
      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 3779
      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 3781
            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 3782
            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 3783
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        34: goto 37
        35: .line 3784
      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 3783
            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 3786
            aload 1 /* requestedLocale */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 42
        39: .line 3787
            aload 0 /* this */
            aload 1 /* requestedLocale */
            putfield sun.font.SunFontManager.lastDefaultLocale:Ljava/util/Locale;
        40: .line 3788
            aload 0 /* this */
            aload 4 /* retval */
            arraylength
            anewarray java.lang.String
            putfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
        41: .line 3789
            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 3791
      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 3795
            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 3799
            new sun.font.SunFontManager$12
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$12.<init>:(Lsun/font/SunFontManager;)V
         1: .line 3798
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         2: .line 3807
            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 3815
            aload 0 /* this */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.registerDeferredJREFonts:(Ljava/lang/String;)V
         1: .line 3816
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 3 /* physicalfonts */
        start local 3 // sun.font.Font2D[] physicalfonts
         2: .line 3817
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 9
         4: .line 3818
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 8
         5: .line 3820
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            aload 2 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
         6: .line 3819
            astore 5 /* name */
        start local 5 // java.lang.String name
         7: .line 3821
            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 3817
      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 3824
            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 3838
            getstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
            ifnonnull 4
         1: .line 3841
            new sun.font.SunFontManager$13
            dup
            invokespecial sun.font.SunFontManager$13.<init>:()V
         2: .line 3840
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.util.Locale
         3: .line 3839
            putstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
         4: .line 3866
      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 3871
            aconst_null
            astore 2 /* fontFileToClose */
        start local 2 // sun.font.FileFont fontFileToClose
         1: .line 3872
            iconst_m1
            istore 3 /* freeSlot */
        start local 3 // int freeSlot
         2: .line 3874
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            dup
            astore 4
            monitorenter
         3: .line 3882
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 11
         5: .line 3883
      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 3884
            aload 4
            monitorexit
         7: return
         8: .line 3886
      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 3887
            iload 5 /* i */
            istore 3 /* freeSlot */
        10: .line 3882
      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 3890
            iload 3 /* freeSlot */
            iflt 16
        13: .line 3891
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            iload 3 /* freeSlot */
            aload 1 /* font */
            aastore
        14: .line 3892
            aload 4
            monitorexit
        15: return
        16: .line 3895
      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 3896
            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 3900
            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 3874
            aload 4
            monitorexit
        20: goto 23
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: aload 4
            monitorexit
        22: athrow
        23: .line 3913
      StackMap locals:
      StackMap stack:
            aload 2 /* fontFileToClose */
            ifnull 25
        24: .line 3914
            aload 2 /* fontFileToClose */
            invokevirtual sun.font.FileFont.close:()V
        25: .line 3916
      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 3921
            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 java.lang.Void lambda$0(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 2522
            invokestatic sun.awt.util.ThreadGroupUtils.getRootThreadGroup:()Ljava/lang/ThreadGroup;
            astore 2 /* rootTG */
        start local 2 // java.lang.ThreadGroup rootTG
         1: .line 2523
            aload 0 /* this */
            new java.lang.Thread
            dup
            aload 2 /* rootTG */
            aload 1
         2: .line 2524
            ldc "FileCloser"
            lconst_0
            iconst_0
            invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JZ)V
         3: .line 2523
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
         4: .line 2525
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            aconst_null
            invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
         5: .line 2526
            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 2527
            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