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 registeredFontFiles;
    descriptor: Ljava/util/HashSet;
    flags: (0x0004) ACC_PROTECTED

  private java.util.ArrayList badFonts;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  protected java.lang.Thread fileCloser;
    descriptor: Ljava/lang/Thread;
    flags: (0x0004) ACC_PROTECTED

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 198
            aconst_null
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         1: .line 223
            new sun.font.SunFontManager$TTFilter
            dup
            invokespecial sun.font.SunFontManager$TTFilter.<init>:()V
            putstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         2: .line 224
            new sun.font.SunFontManager$T1Filter
            dup
            invokespecial sun.font.SunFontManager$T1Filter.<init>:()V
            putstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         3: .line 233
            iconst_0
            anewarray java.lang.String
            putstatic sun.font.SunFontManager.STR_ARRAY:[Ljava/lang/String;
         4: .line 338
            bipush 10
            putstatic sun.font.SunFontManager.maxSoftRefCnt:I
         5: .line 343
            new sun.font.SunFontManager$1
            dup
            invokespecial sun.font.SunFontManager$1.<init>:()V
         6: .line 342
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         7: .line 2850
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.altJAFontKey:Ljava/lang/Object;
         8: .line 2851
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.localeFontKey:Ljava/lang/Object;
         9: .line 2852
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.proportionalFontKey:Ljava/lang/Object;
        10: .line 2859
            iconst_0
            putstatic sun.font.SunFontManager.gAltJAFont:Z
        11: .line 2998
            aconst_null
            putstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
        12: .line 3019
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
        13: .line 3020
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.font.SunFontManager.regFullNameKey:Ljava/lang/Object;
        14: .line 3860
            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 250
            invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
            astore 0 /* fm */
        start local 0 // sun.font.FontManager fm
         1: .line 251
            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 255
            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 259
            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 264
            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 280
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
         1: .line 281
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield sun.font.SunFontManager.jreLucidaFontFiles:Ljava/util/HashSet;
         2: .line 282
            invokestatic sun.font.SunFontManager.isOpenJDK:()Z
            ifeq 4
         3: .line 283
            return
         4: .line 286
      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 287
            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 289
            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 290
            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 291
            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 292
            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 295
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter0"
        11: .line 296
            ldc "LucidaTypewriterRegular.ttf"
        12: .line 295
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 297
            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 299
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter regular0"
        15: .line 300
            ldc "LucidaTypewriter.ttf"
        16: .line 299
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 301
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter regular1"
        18: .line 302
            ldc "LucidaTypewriterBold.ttf"
        19: .line 301
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 303
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter bold1"
        21: .line 304
            ldc "LucidaTypewriterBold.ttf"
        22: .line 303
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 305
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida sans typewriter demibold1"
        24: .line 306
            ldc "LucidaTypewriterBold.ttf"
        25: .line 305
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 309
            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 310
            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 311
            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 312
            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 314
            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 315
            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 316
            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 317
            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 318
            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 319
            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 320
            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 321
            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 322
            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 323
            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 324
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright bold italic3"
        41: .line 325
            ldc "LucidaBrightDemiItalic.ttf"
        42: .line 324
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        43: .line 326
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreFontMap:Ljava/util/HashMap;
            ldc "lucida bright demibold italic3"
        44: .line 327
            ldc "LucidaBrightDemiItalic.ttf"
        45: .line 326
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        46: .line 328
            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 329
            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 328
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 47
        50: .line 331
            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 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 376
            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 383
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 148
            aload 0 /* this */
            bipush 20
            anewarray sun.font.FileFont
            putfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
         2: .line 150
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.lastPoolIndex:I
         3: .line 161
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.maxCompFont:I
         4: .line 162
            aload 0 /* this */
            bipush 20
            anewarray sun.font.CompositeFont
            putfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
         5: .line 164
            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 166
            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 168
            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 176
            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 187
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loaded1dot0Fonts:Z
        10: .line 188
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFonts:Z
        11: .line 189
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
        12: .line 193
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        13: .line 201
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield sun.font.SunFontManager.registeredFontFiles:Ljava/util/HashSet;
        14: .line 218
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.discoveredAllFonts:Z
        15: .line 239
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        16: .line 924
            aload 0 /* this */
        17: .line 925
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.deferredFontFiles:Ljava/util/concurrent/ConcurrentHashMap;
        18: .line 927
            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 1291
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        20: .line 1297
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        21: .line 1304
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        22: .line 1307
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
        23: .line 2073
            aload 0 /* this */
        24: .line 2074
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
        25: .line 2456
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
        26: .line 2458
            aload 0 /* this */
            aconst_null
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        27: .line 2460
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.createdFontCount:I
        28: .line 2853
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        29: .line 2854
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        30: .line 2860
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gLocalePref:Z
        31: .line 2861
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.gPropPref:Z
        32: .line 3023
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        33: .line 3024
            aload 0 /* this */
            iconst_0
            putfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
        34: .line 385
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initJREFontMap:()V
        35: .line 387
            new sun.font.SunFontManager$2
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$2.<init>:(Lsun/font/SunFontManager;)V
        36: .line 386
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        37: .line 562
            new sun.font.SunFontManager$3
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$3.<init>:(Lsun/font/SunFontManager;)V
        38: .line 561
            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
        39: .line 571
            iload 1 /* platformFont */
            ifeq 45
        40: .line 572
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.usePlatformFontMetrics:Z
        41: .line 573
            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
        42: .line 574
            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
        43: .line 575
            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
        44: .line 576
            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
        45: .line 578
      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   46     0          this  Lsun/font/SunFontManager;
           39   46     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 613
            aload 3 /* handle */
            getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
            instanceof sun.font.CompositeFont
            ifne 2
         1: .line 614
            aload 3 /* handle */
            areturn
         2: .line 617
      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 618
            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 620
            aload 1 /* family */
            ifnonnull 6
         5: .line 621
            aload 5 /* oldFont */
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
            astore 1 /* family */
         6: .line 623
      StackMap locals: sun.font.CompositeFont sun.font.PhysicalFont
      StackMap stack:
            iload 2 /* style */
            iconst_m1
            if_icmpne 8
         7: .line 624
            aload 4 /* oldComp */
            invokevirtual sun.font.CompositeFont.getStyle:()I
            istore 2 /* style */
         8: .line 627
      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 628
            aload 6 /* newFont */
            instanceof sun.font.PhysicalFont
            ifne 11
        10: .line 629
            aload 5 /* oldFont */
            astore 6 /* newFont */
        11: .line 631
      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 633
            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 632
            astore 8 /* dialog2D */
        start local 8 // sun.font.CompositeFont dialog2D
        14: .line 634
            aload 8 /* dialog2D */
            ifnonnull 16
        15: .line 635
            aload 3 /* handle */
            areturn
        16: .line 637
      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 638
            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 639
            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 650
            new sun.font.CompositeFont
            dup
            aload 1 /* compositeName */
         1: .line 651
            aload 2 /* componentFileNames */
         2: .line 652
            aload 3 /* componentNames */
         3: .line 653
            iload 4 /* numMetricsSlots */
         4: .line 654
            aload 5 /* exclusionRanges */
         5: .line 655
            aload 6 /* exclusionMaxIndex */
            iload 7 /* defer */
            aload 0 /* this */
         6: .line 650
            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 656
            aload 0 /* this */
            aload 8 /* cf */
            iconst_2
            invokevirtual sun.font.SunFontManager.addCompositeToFontList:(Lsun/font/CompositeFont;I)V
         8: .line 657
            aload 0 /* this */
            getfield sun.font.SunFontManager.compFonts:[Lsun/font/CompositeFont;
            dup
            astore 9
            monitorenter
         9: .line 658
            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 657
            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 660
      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 676
            new sun.font.CompositeFont
            dup
            aload 0 /* compositeName */
         1: .line 677
            aload 1 /* componentFileNames */
         2: .line 678
            aload 2 /* componentNames */
         3: .line 679
            iload 3 /* numMetricsSlots */
         4: .line 680
            aload 4 /* exclusionRanges */
         5: .line 681
            aload 5 /* exclusionMaxIndex */
            iload 6 /* defer */
         6: .line 682
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
         7: .line 676
            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 698
            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
         9: .line 697
            astore 9 /* oldFont */
        start local 9 // sun.font.Font2D oldFont
        10: .line 699
            aload 9 /* oldFont */
            instanceof sun.font.CompositeFont
            ifeq 12
        11: .line 700
            aload 9 /* oldFont */
            getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
            aload 8 /* cf */
            putfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
        12: .line 702
      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
        13: .line 703
            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   14     0       compositeName  Ljava/lang/String;
            0   14     1  componentFileNames  [Ljava/lang/String;
            0   14     2      componentNames  [Ljava/lang/String;
            0   14     3     numMetricsSlots  I
            0   14     4     exclusionRanges  [I
            0   14     5   exclusionMaxIndex  [I
            0   14     6               defer  Z
            0   14     7        altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;
            8   14     8                  cf  Lsun/font/CompositeFont;
           10   14     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 707
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 4
         1: .line 708
            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 709
            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 708
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         4: .line 711
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.CompositeFont.setRank:(I)V
         5: .line 712
            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 713
            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 715
            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 716
            aload 3 /* family */
            ifnonnull 10
         9: .line 717
            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 719
      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 720
            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 757
            aload 1 /* f */
            getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
            astore 3 /* fontName */
        start local 3 // java.lang.String fontName
         1: .line 758
            aload 1 /* f */
            getfield sun.font.PhysicalFont.familyName:Ljava/lang/String;
            astore 4 /* familyName */
        start local 4 // java.lang.String familyName
         2: .line 759
            aload 3 /* fontName */
            ifnull 3
            ldc ""
            aload 3 /* fontName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 760
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aconst_null
            areturn
         4: .line 762
      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 764
            aconst_null
            areturn
         6: .line 766
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            iload 2 /* rank */
            invokevirtual sun.font.PhysicalFont.setRank:(I)V
         7: .line 767
            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 768
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 12
         9: .line 769
            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 770
            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 769
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        12: .line 772
      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 773
            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 774
            aload 5 /* family */
            ifnonnull 18
        15: .line 775
            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 776
            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 777
            goto 19
        18: .line 778
      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 780
      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 781
            aload 1 /* f */
            areturn
        end local 5 // sun.font.FontFamily family
        21: .line 783
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            astore 5 /* newFont */
        start local 5 // sun.font.PhysicalFont newFont
        22: .line 784
            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 785
            aload 6 /* oldFont */
            ifnonnull 25
        24: .line 786
            aconst_null
            areturn
        25: .line 791
      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 811
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.mapper:Lsun/font/CharToGlyphMapper;
            ifnull 28
            iload 2 /* rank */
            iconst_2
            if_icmple 28
        27: .line 812
            aload 6 /* oldFont */
            areturn
        28: .line 820
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iload 2 /* rank */
            if_icmpne 36
        29: .line 821
            aload 6 /* oldFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        30: .line 822
            aload 5 /* newFont */
            instanceof sun.font.TrueTypeFont
            ifeq 35
        31: .line 823
            aload 6 /* oldFont */
            checkcast sun.font.TrueTypeFont
            astore 7 /* oldTTFont */
        start local 7 // sun.font.TrueTypeFont oldTTFont
        32: .line 824
            aload 5 /* newFont */
            checkcast sun.font.TrueTypeFont
            astore 8 /* newTTFont */
        start local 8 // sun.font.TrueTypeFont newTTFont
        33: .line 825
            aload 7 /* oldTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            aload 8 /* newTTFont */
            getfield sun.font.TrueTypeFont.fileSize:I
            if_icmplt 36
        34: .line 826
            aload 6 /* oldFont */
            areturn
        end local 8 // sun.font.TrueTypeFont newTTFont
        end local 7 // sun.font.TrueTypeFont oldTTFont
        35: .line 829
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        36: .line 841
      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 842
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 44
        38: .line 843
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        39: .line 844
            new java.lang.StringBuilder
            dup
            ldc "Unexpected attempt to replace a JRE  font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        40: .line 845
            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 846
            aload 6 /* oldFont */
            getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        42: .line 847
            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 844
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        44: .line 849
      StackMap locals:
      StackMap stack:
            aload 6 /* oldFont */
            areturn
        45: .line 852
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 52
        46: .line 853
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        47: .line 854
            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 855
            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 856
            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 857
            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 854
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        52: .line 859
      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 860
            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 861
            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 862
            aload 5 /* newFont */
        56: .line 861
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        57: .line 864
            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 865
            aload 7 /* family */
            ifnonnull 62
        59: .line 866
            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 867
            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 868
            goto 63
        62: .line 869
      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 871
      StackMap locals:
      StackMap stack:
            aload 5 /* newFont */
            areturn
        end local 7 // sun.font.FontFamily family
        64: .line 873
      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 879
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 1 /* physFonts */
        start local 1 // sun.font.PhysicalFont[] physFonts
         1: .line 880
            aload 0 /* this */
            getfield sun.font.SunFontManager.maxCompFont:I
            istore 2 /* mcf */
        start local 2 // int mcf
         2: .line 881
            aload 1 /* physFonts */
            arraylength
            iload 2 /* mcf */
            iadd
            anewarray sun.font.Font2D
            astore 3 /* regFonts */
        start local 3 // sun.font.Font2D[] regFonts
         3: .line 882
            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 883
            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 884
            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 888
            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 936
            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 937
            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 936
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 939
            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 942
            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 943
            aload 2 /* info */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
            ifnull 5
         3: .line 944
            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 945
            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 942
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 948
            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 951
            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 967
            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 968
            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 969
            aload 5 /* fileName */
            ifnull 11
         3: .line 970
            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 971
            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 972
            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 973
            aload 3 /* physicalFont */
            ifnull 11
         7: .line 974
            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 975
            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 976
      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 977
            aload 3 /* physicalFont */
            areturn
        end local 3 // sun.font.PhysicalFont physicalFont
        11: .line 991
      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 992
            aconst_null
            areturn
        13: .line 994
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreLucidaFontFiles:Ljava/util/HashSet;
            dup
            astore 6
            monitorenter
        14: .line 995
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            ifnonnull 30
        15: .line 996
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 7 /* otherFontFiles */
        start local 7 // java.util.HashSet otherFontFiles
        16: .line 997
            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 998
            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 999
            aload 10 /* file */
            invokevirtual java.io.File.getParent:()Ljava/lang/String;
            astore 11 /* dir */
        start local 11 // java.lang.String dir
        20: .line 1000
            aload 10 /* file */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 12 /* fname */
        start local 12 // java.lang.String fname
        21: .line 1004
            aload 11 /* dir */
            ifnull 26
        22: .line 1005
            aload 11 /* dir */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        23: .line 1006
            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 1007
            goto 26
        25: .line 1009
      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 997
      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 1011
            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 1012
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            arraylength
            ifne 30
        29: .line 1013
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.noOtherJREFontFiles:Z
        end local 7 // java.util.HashSet otherFontFiles
        30: .line 1017
      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 1018
      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 1019
            aload 5 /* fileName */
            ifnonnull 35
        34: .line 1020
            goto 43
        35: .line 1022
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.jreOtherFontFiles:[Ljava/lang/String;
            iload 7 /* i */
            aconst_null
            aastore
        36: .line 1023
            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 1024
            aload 3 /* physicalFont */
            ifnull 43
        38: .line 1025
            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 1026
            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 1027
      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 1028
            aload 3 /* physicalFont */
            aload 6
            monitorexit
        42: areturn
        end local 3 // sun.font.PhysicalFont physicalFont
        43: .line 1017
      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 994
            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 1033
      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 1038
            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 1039
            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 1040
            aload 5 /* file */
            invokevirtual java.io.File.getParent:()Ljava/lang/String;
            astore 6 /* dir */
        start local 6 // java.lang.String dir
         4: .line 1041
            aload 5 /* file */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 7 /* fname */
        start local 7 // java.lang.String fname
         5: .line 1042
            aload 6 /* dir */
            ifnull 9
         6: .line 1043
            aload 6 /* dir */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 1044
            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 1045
            goto 15
         9: .line 1047
      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 1048
            aload 8 /* physicalFont */
            ifnull 15
        11: .line 1049
            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 1050
            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 1051
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 8 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            iload 2 /* style */
            if_icmpne 15
        14: .line 1052
            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 1038
      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 1055
            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 1060
            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 1061
            aload 3 /* physicalFont */
            ifnull 3
         2: .line 1062
            aload 3 /* physicalFont */
            areturn
         3: .line 1064
      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 1075
            new sun.font.SunFontManager$FontRegistrationInfo
            dup
            aload 2 /* fullPathName */
            aload 3 /* nativeNames */
            iload 4 /* fontFormat */
         1: .line 1076
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         2: .line 1075
            invokespecial sun.font.SunFontManager$FontRegistrationInfo.<init>:(Ljava/lang/String;[Ljava/lang/String;IZI)V
         3: .line 1074
            astore 7 /* regInfo */
        start local 7 // sun.font.SunFontManager$FontRegistrationInfo regInfo
         4: .line 1077
            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 1078
            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 1084
            aload 1 /* fileNameKey */
            ifnonnull 2
         1: .line 1085
            aconst_null
            areturn
         2: .line 1087
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 1088
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 1089
            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 1093
      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 1094
            aload 3 /* regInfo */
            ifnull 21
         7: .line 1095
            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 1096
            aload 0 /* this */
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFilePath:Ljava/lang/String;
         9: .line 1097
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.nativeNames:[Ljava/lang/String;
        10: .line 1098
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontFormat:I
        11: .line 1099
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.javaRasterizer:Z
        12: .line 1100
            aload 3 /* regInfo */
            getfield sun.font.SunFontManager$FontRegistrationInfo.fontRank:I
        13: .line 1096
            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 1103
            aload 2 /* physicalFont */
            ifnull 17
        15: .line 1107
            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 1108
            goto 26
        17: .line 1109
      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 1110
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            getfield sun.font.PhysicalFont.handle:Lsun/font/Font2DHandle;
        19: .line 1109
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 1112
            goto 26
        end local 2 // sun.font.PhysicalFont physicalFont
        21: .line 1113
      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 1114
            aload 4 /* handle */
            ifnonnull 25
        23: .line 1116
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            astore 2 /* physicalFont */
        start local 2 // sun.font.PhysicalFont physicalFont
        24: .line 1117
            goto 26
        end local 2 // sun.font.PhysicalFont physicalFont
        25: .line 1118
      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 1121
      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 1125
            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 1129
            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 1142
            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 1143
            aload 6 /* regFont */
            ifnull 3
         2: .line 1144
            aload 6 /* regFont */
            areturn
         3: .line 1147
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
         4: .line 1151
            iload 3 /* fontFormat */
            tableswitch { // 0 - 5
                    0: 5
                    1: 15
                    2: 20
                    3: 20
                    4: 20
                    5: 18
              default: 20
          }
         5: .line 1154
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            iconst_0
            istore 8 /* fn */
        start local 8 // int fn
         6: .line 1157
      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 1158
            iload 4 /* useJavaRasterizer */
         8: .line 1157
            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 1159
            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 1160
            aload 7 /* physicalFont */
            ifnonnull 12
        11: .line 1161
            aload 10 /* pf */
            astore 7 /* physicalFont */
        end local 10 // sun.font.PhysicalFont pf
        12: .line 1164
      StackMap locals: sun.font.TrueTypeFont
      StackMap stack:
            iload 8 /* fn */
            aload 9 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getFontCount:()I
        13: .line 1156
            if_icmplt 6
        14: .line 1165
            goto 20
        end local 9 // sun.font.TrueTypeFont ttf
        end local 8 // int fn
        15: .line 1168
      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 1169
            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 1170
            goto 20
        end local 10 // sun.font.Type1Font t1f
        18: .line 1173
      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 1174
            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 1178
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        21: .line 1179
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        22: .line 1180
            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 1181
            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 1180
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        25: .line 1183
            goto 31
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
        26: astore 8 /* ffe */
        start local 8 // java.awt.FontFormatException ffe
        27: .line 1184
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        28: .line 1185
            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 1186
            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 1185
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
        end local 8 // java.awt.FontFormatException ffe
        31: .line 1189
      StackMap locals:
      StackMap stack:
            aload 7 /* physicalFont */
            ifnull 34
        32: .line 1190
            iload 3 /* fontFormat */
            iconst_5
            if_icmpeq 34
        33: .line 1191
            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 1193
      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 1203
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         1: goto 11
         2: .line 1204
      StackMap locals: int
      StackMap stack:
            iload 7 /* defer */
            ifeq 7
         3: .line 1205
            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 1206
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         5: .line 1205
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
         6: .line 1207
            goto 10
         7: .line 1208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fileNames */
            iload 8 /* i */
            aaload
            aload 2 /* nativeNames */
            iload 8 /* i */
            aaload
         8: .line 1209
            iload 4 /* fontFormat */
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
         9: .line 1208
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        10: .line 1203
      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 1212
            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 1221
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 14
         1: .line 1229
            aload 0 /* this */
         2: .line 1230
            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 1229
            checkcast sun.font.PhysicalFont
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
         4: .line 1231
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 8
         5: .line 1232
            aload 0 /* this */
         6: .line 1233
            aload 0 /* this */
            ldc "Arial"
            iconst_0
            iconst_0
            invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
         7: .line 1232
            checkcast sun.font.PhysicalFont
            putfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
         8: .line 1235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultPhysicalFont:Lsun/font/PhysicalFont;
            ifnonnull 14
         9: .line 1242
            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 1243
            aload 1 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 13
        11: .line 1244
            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 1245
            goto 14
        13: .line 1246
      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 1250
      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;

  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 1254
            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 1262
            iload 0 /* num */
            tableswitch { // 1 - 3
                    1: 1
                    2: 2
                    3: 3
              default: 4
          }
         1: .line 1264
      StackMap locals:
      StackMap stack:
            ldc ".bold"
            areturn
         2: .line 1266
      StackMap locals:
      StackMap stack:
            ldc ".italic"
            areturn
         3: .line 1268
      StackMap locals:
      StackMap stack:
            ldc ".bolditalic"
            areturn
         4: .line 1270
      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 1284
            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 1313
            iload 1 /* noType1 */
            ifeq 3
         1: .line 1314
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
            astore 2 /* filter */
        start local 2 // java.io.FilenameFilter filter
         2: .line 1315
            goto 4
        end local 2 // java.io.FilenameFilter filter
         3: .line 1316
      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 1318
      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 1370
            aconst_null
            astore 1 /* unmappedFontNames */
        start local 1 // java.util.ArrayList unmappedFontNames
         1: .line 1371
            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 1372
            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 1373
            aload 4 /* file */
            ifnonnull 25
         5: .line 1374
            aload 2 /* font */
            ldc "  "
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            ifle 13
         6: .line 1375
            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 1376
            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 1380
            aload 4 /* file */
            ifnull 25
         9: .line 1381
            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 1382
            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 1383
            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 1385
            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 1386
            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 1387
            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 1388
            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 1389
            aload 4 /* file */
            ifnull 25
        19: .line 1390
            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 1391
            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 1393
            goto 25
        22: .line 1394
      StackMap locals:
      StackMap stack:
            aload 1 /* unmappedFontNames */
            ifnonnull 24
        23: .line 1395
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* unmappedFontNames */
        24: .line 1397
      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 1371
      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 1402
            aload 1 /* unmappedFontNames */
            ifnull 70
        27: .line 1403
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* unmappedFontFiles */
        start local 2 // java.util.HashSet unmappedFontFiles
        28: .line 1435
            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 1434
            astore 3 /* ffmapCopy */
        start local 3 // java.util.HashMap ffmapCopy
        30: .line 1436
            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 1437
            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 1436
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 31
        34: .line 1439
            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 1440
            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 1441
            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 1439
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 35
        39: .line 1444
            aload 0 /* this */
            aload 2 /* unmappedFontFiles */
            aload 1 /* unmappedFontNames */
            invokevirtual sun.font.SunFontManager.resolveFontFiles:(Ljava/util/HashSet;Ljava/util/ArrayList;)V
        40: .line 1451
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            ifle 53
        41: .line 1457
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* registryFiles */
        start local 4 // java.util.ArrayList registryFiles
        42: .line 1459
            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 1460
            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 1459
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 43
        46: .line 1467
            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 1468
            aload 4 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 50
        49: .line 1469
            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 1467
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        51: iload 6
            iload 7
            if_icmplt 47
        52: .line 1473
            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 1479
      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 1480
            aload 1 /* unmappedFontNames */
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* sz */
        start local 4 // int sz
        55: .line 1481
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        56: goto 69
        57: .line 1482
      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 1483
            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 1484
            aload 7 /* familyName */
            ifnull 64
        60: .line 1485
            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 1486
            aload 8 /* family */
            ifnull 64
        62: .line 1487
            aload 8 /* family */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            if_icmpgt 64
        63: .line 1488
            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 1492
      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 1493
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 68
        66: .line 1494
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        67: .line 1495
            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 1481
      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 1500
      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;

  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 1515
            aload 0 /* this */
            getfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
            ifeq 2
         1: .line 1516
            return
         2: .line 1518
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.haveCheckedUnreferencedFontFiles:Z
         3: .line 1519
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 1520
            return
         5: .line 1526
      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 1527
            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 1528
            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 1527
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1538
            aconst_null
            astore 2 /* fontToFileMap2 */
        start local 2 // java.util.HashMap fontToFileMap2
        11: .line 1539
            aconst_null
            astore 3 /* fontToFamilyNameMap2 */
        start local 3 // java.util.HashMap fontToFamilyNameMap2
        12: .line 1540
            aconst_null
            astore 4 /* familyToFontListMap2 */
        start local 4 // java.util.HashMap familyToFontListMap2
        13: .line 1542
            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 1543
            aload 1 /* registryFiles */
            aload 5 /* pathFile */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifne 40
        16: .line 1544
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 19
        17: .line 1545
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        18: .line 1546
            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 1548
      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 1549
            aload 9 /* f */
            ifnonnull 22
        21: .line 1550
            goto 40
        22: .line 1552
      StackMap locals: sun.font.PhysicalFont
      StackMap stack:
            aload 2 /* fontToFileMap2 */
            ifnonnull 28
        23: .line 1553
            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 1555
            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 1554
            astore 3 /* fontToFamilyNameMap2 */
        26: .line 1557
            new java.util.HashMap
            dup
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        27: .line 1556
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
            astore 4 /* familyToFontListMap2 */
        28: .line 1559
      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 1560
            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 1561
            aload 11 /* family */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 12 /* familyLC */
        start local 12 // java.lang.String familyLC
        31: .line 1562
            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 1563
            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 1564
            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 1565
            aload 13 /* fonts */
            ifnonnull 37
        35: .line 1566
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 13 /* fonts */
        36: .line 1567
            goto 38
        37: .line 1568
      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 1570
      StackMap locals:
      StackMap stack:
            aload 13 /* fonts */
            aload 10 /* fontName */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        39: .line 1571
            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 1542
      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 1574
            aload 2 /* fontToFileMap2 */
            ifnull 46
        43: .line 1575
            aload 0 /* this */
            aload 2 /* fontToFileMap2 */
            putfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
        44: .line 1576
            aload 0 /* this */
            aload 4 /* familyToFontListMap2 */
            putfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
        45: .line 1577
            aload 0 /* this */
            aload 3 /* fontToFamilyNameMap2 */
            putfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
        46: .line 1579
      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 1584
            invokestatic sun.awt.SunToolkit.getStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
         1: .line 1586
            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 1588
            iconst_0
            istore 6 /* fn */
        start local 6 // int fn
         4: .line 1590
            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 1591
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 8
         6: .line 1592
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         7: .line 1593
            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 1596
      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 1598
            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 1599
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
            ifeq 18
        11: .line 1600
            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 1601
            aload 2 /* unmappedFonts */
            aload 9 /* fontName */
            invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
            pop
        13: .line 1602
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        14: .line 1603
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        15: .line 1604
            new java.lang.StringBuilder
            dup
            ldc "Resolved absent registry entry for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        16: .line 1605
            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 1604
            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 1609
      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 1595
            if_icmplt 8
        end local 8 // java.lang.String fullPath
        end local 7 // sun.font.TrueTypeFont ttf
        end local 6 // int fn
        20: .line 1610
            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 1586
      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 1613
            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 1646
            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 1650
            getstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
            ifnonnull 2
         1: .line 1651
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.populateHardcodedFileNameMap:()Ljava/util/HashMap;
            putstatic sun.font.SunFontManager.platformFontMap:Ljava/util/HashMap;
         2: .line 1654
      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 1655
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         4: .line 1658
      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 1659
            aload 1 /* lcName */
            astore 4 /* firstWord */
        start local 4 // java.lang.String firstWord
         6: .line 1660
            iload 3 /* spaceIndex */
            ifle 8
         7: .line 1661
            aload 1 /* lcName */
            iconst_0
            iload 3 /* spaceIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* firstWord */
         8: .line 1664
      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 1665
            aload 5 /* fd */
            ifnonnull 11
        10: .line 1666
            aconst_null
            areturn
        11: .line 1674
      StackMap locals: sun.font.SunFontManager$FamilyDescription
      StackMap stack:
            iconst_m1
            istore 6 /* styleIndex */
        start local 6 // int styleIndex
        12: .line 1675
            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 1676
            iconst_0
            istore 6 /* styleIndex */
        14: .line 1677
            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 1678
            iconst_1
            istore 6 /* styleIndex */
        17: .line 1679
            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 1680
            iconst_2
            istore 6 /* styleIndex */
        20: .line 1681
            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 1682
            iconst_3
            istore 6 /* styleIndex */
        23: .line 1684
      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 1685
            aconst_null
            areturn
        25: .line 1688
      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 1689
            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 1691
            iconst_0
            istore 11 /* failure */
        start local 11 // boolean failure
        30: .line 1698
            aload 0 /* this */
            getstatic sun.font.SunFontManager.noType1Font:Z
            invokevirtual sun.font.SunFontManager.getPlatformFontDirs:(Z)[Ljava/lang/String;
            pop
        31: .line 1700
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.plainFileName:Ljava/lang/String;
            ifnull 35
        32: .line 1701
            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 1702
            aload 7 /* plainFile */
            ifnonnull 35
        34: .line 1703
            iconst_1
            istore 11 /* failure */
        35: .line 1707
      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 1708
            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 1709
            aload 8 /* boldFile */
            ifnonnull 39
        38: .line 1710
            iconst_1
            istore 11 /* failure */
        39: .line 1714
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.italicFileName:Ljava/lang/String;
            ifnull 43
        40: .line 1715
            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 1716
            aload 9 /* italicFile */
            ifnonnull 43
        42: .line 1717
            iconst_1
            istore 11 /* failure */
        43: .line 1721
      StackMap locals:
      StackMap stack:
            aload 5 /* fd */
            getfield sun.font.SunFontManager$FamilyDescription.boldItalicFileName:Ljava/lang/String;
            ifnull 47
        44: .line 1722
            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 1723
            aload 10 /* boldItalicFile */
            ifnonnull 47
        46: .line 1724
            iconst_1
            istore 11 /* failure */
        47: .line 1728
      StackMap locals:
      StackMap stack:
            iload 11 /* failure */
            ifeq 53
        48: .line 1729
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 51
        49: .line 1730
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        50: .line 1731
            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 1733
      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 1734
            aconst_null
            areturn
        53: .line 1738
      StackMap locals:
      StackMap stack:
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        54: .line 1739
            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 1738
            astore 12 /* files */
        start local 12 // java.lang.String[] files
        56: .line 1742
            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 1741
            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 1757
            iload 11 /* failure */
            ifeq 64
        59: .line 1758
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 62
        60: .line 1759
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        61: .line 1760
            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 1762
      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 1763
            aconst_null
            areturn
        64: .line 1772
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 13 /* font */
        start local 13 // sun.font.Font2D font
        65: .line 1773
            iconst_0
            istore 14 /* f */
        start local 14 // int f
        66: goto 76
        67: .line 1774
      StackMap locals: sun.font.Font2D int
      StackMap stack:
            aload 12 /* files */
            iload 14 /* f */
            aaload
            ifnonnull 69
        68: .line 1775
            goto 75
        69: .line 1778
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* files */
            iload 14 /* f */
            aaload
            aconst_null
        70: .line 1779
            iconst_0
            iconst_0
            iconst_3
        71: .line 1778
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
        72: .line 1777
            astore 15 /* pf */
        start local 15 // sun.font.PhysicalFont pf
        73: .line 1780
            iload 14 /* f */
            iload 6 /* styleIndex */
            if_icmpne 75
        74: .line 1781
            aload 15 /* pf */
            astore 13 /* font */
        end local 15 // sun.font.PhysicalFont pf
        75: .line 1773
      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 1798
            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 1799
            aload 14 /* fontFamily */
            ifnull 89
        79: .line 1800
            aload 13 /* font */
            ifnonnull 84
        80: .line 1801
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        81: .line 1802
            aload 13 /* font */
            ifnonnull 89
        82: .line 1803
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        83: .line 1805
            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 1806
            iload 2 /* style */
            aload 13 /* font */
            getfield sun.font.Font2D.style:I
            ior
            istore 2 /* style */
        86: .line 1807
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 13 /* font */
        87: .line 1808
            aload 13 /* font */
            ifnonnull 89
        88: .line 1809
            aload 14 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 13 /* font */
        89: .line 1814
      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 1817
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
            ifnonnull 14
         1: .line 1819
            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 1821
            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 1822
            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 1823
            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 1824
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFileMap:Ljava/util/HashMap;
         6: .line 1825
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontToFamilyNameMap:Ljava/util/HashMap;
         7: .line 1826
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1827
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
         9: .line 1824
            invokevirtual sun.font.SunFontManager.populateFontFileNameMap:(Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/HashMap;Ljava/util/Locale;)V
        10: .line 1828
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 12
        11: .line 1829
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.resolveWindowsFonts:()V
        12: .line 1831
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 14
        13: .line 1832
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.logPlatformFontInfo:()V
        14: .line 1835
      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 1839
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            astore 1 /* logger */
        start local 1 // sun.util.logging.PlatformLogger logger
         1: .line 1840
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 1841
      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 1840
            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 1843
            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 1844
            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 1843
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1846
            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 1847
            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 1848
            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 1847
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        15: .line 1846
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        16: .line 1850
            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 1851
            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 1852
            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 1851
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.String keyName
        21: .line 1850
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        22: .line 1854
            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 1858
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1859
            aconst_null
            areturn
         2: .line 1861
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1864
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* fontNames */
        start local 1 // java.util.ArrayList fontNames
         4: .line 1865
            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 1866
            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 1867
            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 1866
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 2 // java.util.ArrayList a
        10: .line 1865
      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 1870
            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 1874
            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 1878
            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 1879
            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 1883
            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 1884
            aload 0 /* this */
            getfield sun.font.SunFontManager.registeredFonts:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* file */
            invokevirtual java.util.concurrent.ConcurrentHashMap.contains:(Ljava/lang/Object;)Z
            ifne 14
         2: .line 1885
            iconst_m1
            istore 2 /* fontFormat */
        start local 2 // int fontFormat
         3: .line 1886
            bipush 6
            istore 3 /* fontRank */
        start local 3 // int fontRank
         4: .line 1887
            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 1888
            iconst_0
            istore 2 /* fontFormat */
         6: .line 1889
            iconst_3
            istore 3 /* fontRank */
         7: .line 1890
            goto 11
         8: .line 1891
      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 1892
            iconst_1
            istore 2 /* fontFormat */
        10: .line 1893
            iconst_4
            istore 3 /* fontRank */
        11: .line 1895
      StackMap locals:
      StackMap stack:
            iload 2 /* fontFormat */
            iconst_m1
            if_icmpne 13
        12: .line 1896
            aconst_null
            areturn
        13: .line 1898
      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 1900
      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);
    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 1912
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1913
            return
         2: .line 1915
      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 1916
            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 1915
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 1918
            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;
            4    5     2                 file  Ljava/lang/String;
    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 1923
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1924
            iconst_0
            ireturn
         2: .line 1926
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.checkForUnreferencedFontFiles:()V
         3: .line 1927
            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 1928
            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 1927
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 1930
            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 1937
            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 1938
            aload 2 /* f */
            invokevirtual java.io.File.isAbsolute:()Z
            ifeq 3
         2: .line 1939
            aload 1 /* s */
            areturn
         3: .line 1940
      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 1941
            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 1944
      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 1943
            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 1955
            aload 3 /* path */
            ifnull 9
         8: .line 1956
            aload 3 /* path */
            areturn
        end local 3 // java.lang.String path
         9: .line 1959
      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 1983
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFullNameToFileMap:()Ljava/util/HashMap;
            invokevirtual java.util.HashMap.size:()I
            ifne 2
         1: .line 1984
            aconst_null
            areturn
         2: .line 1987
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* family */
        start local 3 // java.util.ArrayList family
         3: .line 1988
            aconst_null
            astore 4 /* fontFile */
        start local 4 // java.lang.String fontFile
         4: .line 1989
            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 1990
            aload 5 /* familyName */
            ifnull 11
         6: .line 1991
            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 1992
            aload 0 /* this */
            getfield sun.font.SunFontManager.familyToFontListMap:Ljava/util/HashMap;
         8: .line 1993
            aload 5 /* familyName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
         9: .line 1992
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.ArrayList
            astore 3 /* family */
        10: .line 1994
            goto 16
        11: .line 1995
      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 1996
            aload 3 /* family */
            ifnull 16
            aload 3 /* family */
            invokevirtual java.util.ArrayList.size:()I
            ifle 16
        13: .line 1997
            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 1998
            aload 6 /* lcFontName */
            ifnull 16
        15: .line 1999
            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 2003
      StackMap locals:
      StackMap stack:
            aload 3 /* family */
            ifnull 17
            aload 5 /* familyName */
            ifnonnull 18
        17: .line 2004
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        18: .line 2006
      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 2007
            aload 6 /* fontList */
            arraylength
            ifne 21
        20: .line 2008
            aconst_null
            areturn
        21: .line 2022
      StackMap locals: java.lang.String[]
      StackMap stack:
            iconst_0
            istore 7 /* f */
        start local 7 // int f
        22: goto 33
        23: .line 2023
      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 2024
            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 2025
            aload 9 /* fileName */
            ifnonnull 32
        26: .line 2026
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 31
        27: .line 2027
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        28: .line 2028
            new java.lang.StringBuilder
            dup
            ldc "Platform lookup : No file for font "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        29: .line 2029
            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 2028
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        31: .line 2031
      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 2022
      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 2038
            aconst_null
            astore 7 /* physicalFont */
        start local 7 // sun.font.PhysicalFont physicalFont
        35: .line 2039
            aload 4 /* fontFile */
            ifnull 40
        36: .line 2040
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* fontFile */
            invokevirtual sun.font.SunFontManager.getPathName:(Ljava/lang/String;)Ljava/lang/String;
            aconst_null
        37: .line 2041
            iconst_0
            iconst_0
        38: .line 2042
            iconst_3
        39: .line 2040
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            astore 7 /* physicalFont */
        40: .line 2045
      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 2046
      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 2047
            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 2048
            aload 4 /* fontFile */
            ifnull 46
            aload 4 /* fontFile */
            aload 10 /* fileName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 46
        45: .line 2049
            goto 49
        46: .line 2054
      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 2055
            iconst_0
            iconst_0
            iconst_3
        48: .line 2054
            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 2045
      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 2058
            aconst_null
            astore 8 /* font */
        start local 8 // sun.font.Font2D font
        52: .line 2059
            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 2061
            aload 7 /* physicalFont */
            ifnull 55
        54: .line 2062
            iload 2 /* style */
            aload 7 /* physicalFont */
            getfield sun.font.PhysicalFont.style:I
            ior
            istore 2 /* style */
        55: .line 2064
      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 2065
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 8 /* font */
        57: .line 2066
            aload 8 /* font */
            ifnonnull 59
        58: .line 2067
            aload 9 /* fontFamily */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 8 /* font */
        59: .line 2070
      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=11, 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 2084
            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 2085
            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 2094
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ifeq 11
         3: .line 2097
            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 2096
            checkcast java.util.concurrent.ConcurrentHashMap
         5: .line 2095
            astore 7 /* altNameCache */
        start local 7 // java.util.concurrent.ConcurrentHashMap altNameCache
         6: .line 2098
            aload 7 /* altNameCache */
            ifnull 9
         7: .line 2099
            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 2100
            goto 12
        end local 6 // sun.font.Font2D font
         9: .line 2101
      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 2103
            goto 12
        end local 6 // sun.font.Font2D font
        11: .line 2104
      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 2106
      StackMap locals: sun.font.Font2D
      StackMap stack:
            aload 6 /* font */
            ifnull 14
        13: .line 2107
            aload 6 /* font */
            areturn
        14: .line 2110
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 16
        15: .line 2111
            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 2120
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 22
        17: .line 2121
            aload 4 /* lowerCaseName */
            ldc "ms sans serif"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
        18: .line 2122
            ldc "sansserif"
            astore 1 /* name */
        19: .line 2123
            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 2124
            ldc "serif"
            astore 1 /* name */
        22: .line 2136
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "default"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        23: .line 2137
            ldc "dialog"
            astore 1 /* name */
        24: .line 2141
      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 2142
            aload 7 /* family */
            ifnull 36
        26: .line 2143
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
        27: .line 2144
            aload 6 /* font */
            ifnonnull 29
        28: .line 2145
            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 2147
      StackMap locals: sun.font.FontFamily
      StackMap stack:
            aload 6 /* font */
            ifnonnull 31
        30: .line 2148
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
        31: .line 2150
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 33
        32: .line 2151
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
        33: .line 2153
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 36
        34: .line 2154
            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 2155
            aload 6 /* font */
            areturn
        36: .line 2162
      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 2163
            aload 6 /* font */
            ifnull 52
        38: .line 2176
            aload 6 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 39
            iload 2 /* style */
            ifne 41
        39: .line 2177
      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 2178
            aload 6 /* font */
            areturn
        41: .line 2186
      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 2187
            aload 7 /* family */
            ifnull 52
        43: .line 2188
            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 2190
            aload 8 /* familyFont */
            ifnull 47
        45: .line 2191
            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 2192
            aload 8 /* familyFont */
            areturn
        47: .line 2199
      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 2200
            aload 8 /* familyFont */
            ifnull 52
        49: .line 2208
            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 2209
            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 2210
            aload 8 /* familyFont */
            areturn
        end local 8 // sun.font.Font2D familyFont
        52: .line 2218
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 75
        53: .line 2220
            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 2221
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 57
        55: .line 2222
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        56: .line 2223
            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 2225
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 60
        58: .line 2226
            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 2227
            aload 6 /* font */
            areturn
        60: .line 2233
      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 2234
            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 2235
            aload 6 /* font */
            ifnull 65
        63: .line 2236
            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 2237
            aload 6 /* font */
            areturn
        65: .line 2240
      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 2241
            aload 6 /* font */
            ifnull 75
        67: .line 2242
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 73
        68: .line 2243
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        69: .line 2244
            new java.lang.StringBuilder
            dup
            ldc "Found font via platform API for request:\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        70: .line 2245
            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 2246
            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 2244
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
        73: .line 2248
      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 2249
            aload 6 /* font */
            areturn
        75: .line 2265
      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 2266
            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 2267
            aload 6 /* font */
            ifnull 80
        78: .line 2268
            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 2269
            aload 6 /* font */
            areturn
        80: .line 2286
      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 2290
            aload 4 /* lowerCaseName */
            ldc "timesroman"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 84
        82: .line 2291
            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 2292
            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 2294
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.register1dot0Fonts:()V
        85: .line 2295
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loaded1dot0Fonts:Z
        86: .line 2296
            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 2297
            aload 8 /* ff */
            areturn
        end local 8 // sun.font.Font2D ff
        88: .line 2310
      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 115
        89: .line 2311
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* familyTable */
        start local 8 // java.util.Hashtable familyTable
        90: .line 2314
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 94
        91: .line 2315
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 8 /* familyTable */
        92: .line 2316
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 9 /* nameTable */
        start local 9 // java.util.Hashtable nameTable
        93: .line 2317
            goto 99
        end local 9 // java.util.Hashtable nameTable
        94: .line 2318
      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 2320
            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 2319
            astore 8 /* familyTable */
        97: .line 2322
            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
        98: .line 2321
            astore 9 /* nameTable */
        end local 10 // sun.awt.AppContext appContext
        start local 9 // java.util.Hashtable nameTable
        99: .line 2325
      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 */
       100: .line 2326
            aload 7 /* family */
            ifnull 110
       101: .line 2327
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
            astore 6 /* font */
       102: .line 2328
            aload 6 /* font */
            ifnonnull 104
       103: .line 2329
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 6 /* font */
       104: .line 2331
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnonnull 106
       105: .line 2332
            aload 7 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 6 /* font */
       106: .line 2334
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            ifnull 110
       107: .line 2335
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 109
       108: .line 2336
            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
       109: .line 2338
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
       110: .line 2341
      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 */
       111: .line 2342
            aload 6 /* font */
            ifnull 115
       112: .line 2343
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 114
       113: .line 2344
            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
       114: .line 2346
      StackMap locals:
      StackMap stack:
            aload 6 /* font */
            areturn
        end local 9 // java.util.Hashtable nameTable
        end local 8 // java.util.Hashtable familyTable
       115: .line 2353
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFonts:Z
            ifne 122
       116: .line 2354
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 119
       117: .line 2355
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
       118: .line 2356
            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
       119: .line 2358
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
       120: .line 2359
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFonts:Z
       121: .line 2360
            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
       122: .line 2363
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifne 129
       123: .line 2364
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 126
       124: .line 2365
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
       125: .line 2366
            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
       126: .line 2368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
       127: .line 2369
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.loadedAllFontFiles:Z
       128: .line 2370
            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
       129: .line 2388
      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 132
       130: .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
       131: .line 2390
            aload 6 /* font */
            areturn
       132: .line 2403
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifeq 139
       133: .line 2405
            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;
       134: .line 2404
            astore 8 /* compatName */
        start local 8 // java.lang.String compatName
       135: .line 2406
            aload 8 /* compatName */
            ifnull 151
       136: .line 2407
            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 */
       137: .line 2408
            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
       138: .line 2409
            aload 6 /* font */
            areturn
        end local 8 // java.lang.String compatName
       139: .line 2411
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "timesroman"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 143
       140: .line 2412
            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 */
       141: .line 2413
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       142: .line 2414
            aload 6 /* font */
            areturn
       143: .line 2415
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "helvetica"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 147
       144: .line 2416
            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 */
       145: .line 2417
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       146: .line 2418
            aload 6 /* font */
            areturn
       147: .line 2419
      StackMap locals:
      StackMap stack:
            aload 4 /* lowerCaseName */
            ldc "courier"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 151
       148: .line 2420
            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 */
       149: .line 2421
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontNameCache:Ljava/util/concurrent/ConcurrentHashMap;
            aload 5 /* mapName */
            aload 6 /* font */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
       150: .line 2422
            aload 6 /* font */
            areturn
       151: .line 2425
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 153
       152: .line 2426
            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
       153: .line 2429
      StackMap locals:
      StackMap stack:
            iload 3 /* fallback */
            tableswitch { // 1 - 2
                    1: 154
                    2: 155
              default: 156
          }
       154: .line 2430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
            areturn
       155: .line 2431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* style */
            invokevirtual sun.font.SunFontManager.getDefaultLogicalFont:(I)Lsun/font/Font2D;
            areturn
       156: .line 2432
      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  157     0           this  Lsun/font/SunFontManager;
            0  157     1           name  Ljava/lang/String;
            0  157     2          style  I
            0  157     3       fallback  I
            1  157     4  lowerCaseName  Ljava/lang/String;
            2  157     5        mapName  Ljava/lang/String;
            8    9     6           font  Lsun/font/Font2D;
           10   11     6           font  Lsun/font/Font2D;
           12  157     6           font  Lsun/font/Font2D;
            6   10     7   altNameCache  Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lsun/font/Font2D;>;
           25  157     7         family  Lsun/font/FontFamily;
           44   52     8     familyFont  Lsun/font/Font2D;
           87   88     8             ff  Lsun/font/Font2D;
           90  115     8    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           93   94     9      nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           99  115     9      nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           95   99    10     appContext  Lsun/awt/AppContext;
          135  139     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 2442
            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 2446
            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 2450
            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, sun.font.CreatedFontTracker);
    descriptor: (Ljava/io/File;IZLsun/font/CreatedFontTracker;)Lsun/font/Font2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=13, args_size=5
        start local 0 // sun.font.SunFontManager this
        start local 1 // java.io.File fontFile
        start local 2 // int fontFormat
        start local 3 // boolean isCopy
        start local 4 // sun.font.CreatedFontTracker tracker
         0: .line 2466
            aload 1 /* fontFile */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 5 /* fontFilePath */
        start local 5 // java.lang.String fontFilePath
         1: .line 2467
            aconst_null
            astore 6 /* font2D */
        start local 6 // sun.font.FileFont font2D
         2: .line 2468
            aload 1 /* fontFile */
            astore 7 /* fFile */
        start local 7 // java.io.File fFile
         3: .line 2469
            aload 4 /* tracker */
            astore 8 /* _tracker */
        start local 8 // sun.font.CreatedFontTracker _tracker
         4: .line 2470
            iconst_0
            istore 9 /* weakRefs */
        start local 9 // boolean weakRefs
         5: .line 2471
            iconst_0
            istore 10 /* maxStrikes */
        start local 10 // int maxStrikes
         6: .line 2472
            aload 0 /* this */
            dup
            astore 11
            monitorenter
         7: .line 2473
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdFontCount:I
            getstatic sun.font.SunFontManager.maxSoftRefCnt:I
            if_icmpge 10
         8: .line 2474
            aload 0 /* this */
            dup
            getfield sun.font.SunFontManager.createdFontCount:I
            iconst_1
            iadd
            putfield sun.font.SunFontManager.createdFontCount:I
         9: .line 2475
            goto 12
        10: .line 2476
      StackMap locals: sun.font.SunFontManager java.io.File int int sun.font.CreatedFontTracker java.lang.String sun.font.FileFont java.io.File sun.font.CreatedFontTracker int int sun.font.SunFontManager
      StackMap stack:
            iconst_1
            istore 9 /* weakRefs */
        11: .line 2477
            bipush 10
            istore 10 /* maxStrikes */
        12: .line 2472
      StackMap locals:
      StackMap stack:
            aload 11
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 11
            monitorexit
        15: athrow
        16: .line 2482
      StackMap locals:
      StackMap stack:
            iload 2 /* fontFormat */
            tableswitch { // 0 - 1
                    0: 17
                    1: 20
              default: 23
          }
        17: .line 2484
      StackMap locals:
      StackMap stack:
            new sun.font.TrueTypeFont
            dup
            aload 5 /* fontFilePath */
            aconst_null
            iconst_0
            iconst_1
            invokespecial sun.font.TrueTypeFont.<init>:(Ljava/lang/String;Ljava/lang/Object;IZ)V
            astore 6 /* font2D */
        18: .line 2485
            aload 6 /* font2D */
            iload 9 /* weakRefs */
            iload 10 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        19: .line 2486
            goto 29
        20: .line 2488
      StackMap locals:
      StackMap stack:
            new sun.font.Type1Font
            dup
            aload 5 /* fontFilePath */
            aconst_null
            iload 3 /* isCopy */
            invokespecial sun.font.Type1Font.<init>:(Ljava/lang/String;Ljava/lang/Object;Z)V
            astore 6 /* font2D */
        21: .line 2489
            aload 6 /* font2D */
            iload 9 /* weakRefs */
            iload 10 /* maxStrikes */
            invokevirtual sun.font.FileFont.setUseWeakRefs:(ZI)V
        22: .line 2490
            goto 29
        23: .line 2492
      StackMap locals:
      StackMap stack:
            new java.awt.FontFormatException
            dup
            ldc "Unrecognised Font Format"
            invokespecial java.awt.FontFormatException.<init>:(Ljava/lang/String;)V
            athrow
        24: .line 2494
      StackMap locals:
      StackMap stack: java.awt.FontFormatException
            astore 11 /* e */
        start local 11 // java.awt.FontFormatException e
        25: .line 2495
            iload 3 /* isCopy */
            ifeq 28
        26: .line 2497
            new sun.font.SunFontManager$7
            dup
            aload 0 /* this */
            aload 8 /* _tracker */
            aload 7 /* fFile */
            invokespecial sun.font.SunFontManager$7.<init>:(Lsun/font/SunFontManager;Lsun/font/CreatedFontTracker;Ljava/io/File;)V
        27: .line 2496
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        28: .line 2507
      StackMap locals: java.awt.FontFormatException
      StackMap stack:
            aload 11 /* e */
            athrow
        end local 11 // java.awt.FontFormatException e
        29: .line 2509
      StackMap locals:
      StackMap stack:
            iload 3 /* isCopy */
            ifeq 43
        30: .line 2510
            aload 6 /* font2D */
            aload 1 /* fontFile */
            aload 4 /* tracker */
            invokevirtual sun.font.FileFont.setFileToRemove:(Ljava/io/File;Lsun/font/CreatedFontTracker;)V
        31: .line 2511
            ldc Lsun/font/FontManager;
            dup
            astore 11
            monitorenter
        32: .line 2513
            aload 0 /* this */
            getfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
            ifnonnull 34
        33: .line 2514
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield sun.font.SunFontManager.tmpFontFiles:Ljava/util/Vector;
        34: .line 2516
      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
        35: .line 2518
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            ifnonnull 39
        36: .line 2519
            new sun.font.SunFontManager$8
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$8.<init>:(Lsun/font/SunFontManager;)V
            astore 12 /* fileCloserRunnable */
        start local 12 // java.lang.Runnable fileCloserRunnable
        37: .line 2551
            aload 0 /* this */
            aload 12 /* 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;
        38: .line 2550
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        end local 12 // java.lang.Runnable fileCloserRunnable
        39: .line 2511
      StackMap locals:
      StackMap stack:
            aload 11
            monitorexit
        40: goto 43
      StackMap locals:
      StackMap stack: java.lang.Throwable
        41: aload 11
            monitorexit
        42: athrow
        43: .line 2565
      StackMap locals:
      StackMap stack:
            aload 6 /* font2D */
            areturn
        end local 10 // int maxStrikes
        end local 9 // boolean weakRefs
        end local 8 // sun.font.CreatedFontTracker _tracker
        end local 7 // java.io.File fFile
        end local 6 // sun.font.FileFont font2D
        end local 5 // java.lang.String fontFilePath
        end local 4 // sun.font.CreatedFontTracker tracker
        end local 3 // boolean isCopy
        end local 2 // int fontFormat
        end local 1 // java.io.File fontFile
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   44     0                this  Lsun/font/SunFontManager;
            0   44     1            fontFile  Ljava/io/File;
            0   44     2          fontFormat  I
            0   44     3              isCopy  Z
            0   44     4             tracker  Lsun/font/CreatedFontTracker;
            1   44     5        fontFilePath  Ljava/lang/String;
            2   44     6              font2D  Lsun/font/FileFont;
            3   44     7               fFile  Ljava/io/File;
            4   44     8            _tracker  Lsun/font/CreatedFontTracker;
            5   44     9            weakRefs  Z
            6   44    10          maxStrikes  I
           25   29    11                   e  Ljava/awt/FontFormatException;
           37   39    12  fileCloserRunnable  Ljava/lang/Runnable;
      Exception table:
        from    to  target  type
           7    13      14  any
          14    15      14  any
          16    24      24  Class java.awt.FontFormatException
          32    40      41  any
          41    42      41  any
    Exceptions:
      throws java.awt.FontFormatException
    MethodParameters:
            Name  Flags
      fontFile    
      fontFormat  
      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 2572
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 2 /* physFonts */
        start local 2 // sun.font.PhysicalFont[] physFonts
         1: .line 2573
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 6
         3: .line 2574
      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 2575
            aload 2 /* physFonts */
            iload 3 /* i */
            aaload
            aconst_null
            invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
            areturn
         5: .line 2573
      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 2578
            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 2594
            aload 1 /* font2D */
            instanceof sun.font.PhysicalFont
            ifne 2
         1: .line 2596
            return
         2: .line 2598
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 5
         3: .line 2599
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         4: .line 2600
            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 2602
      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 2604
            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=5, 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 2613
            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 2615
            return
         2: .line 2621
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
         3: .line 2622
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 6
         4: .line 2623
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         5: .line 2624
            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 2626
      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 2627
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         8: goto 13
         9: .line 2628
      StackMap locals: sun.font.PhysicalFont[] int
      StackMap stack:
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            aload 2 /* newFont */
            if_acmpeq 12
        10: .line 2629
            aload 3 /* physFonts */
            iload 4 /* i */
            aaload
            astore 2 /* newFont */
        11: .line 2630
            goto 14
        12: .line 2627
      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 2633
      StackMap locals:
      StackMap stack:
            aload 1 /* oldFont */
            aload 2 /* newFont */
            if_acmpne 19
        15: .line 2634
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 18
        16: .line 2635
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        17: .line 2636
            ldc "This is bad. No good physicalFonts found."
            invokevirtual sun.util.logging.PlatformLogger.severe:(Ljava/lang/String;)V
        18: .line 2638
      StackMap locals:
      StackMap stack:
            return
        end local 3 // sun.font.PhysicalFont[] physFonts
        19: .line 2646
      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 2647
            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 2648
            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 2649
            aload 1 /* oldFont */
            invokestatic sun.font.FontFamily.remove:(Lsun/font/Font2D;)V
        23: .line 2650
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 36
        24: .line 2652
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
        25: .line 2653
            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 2651
            astore 3 /* mapEntries */
        start local 3 // java.util.Map$Entry[] mapEntries
        27: .line 2657
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        28: goto 35
        29: .line 2658
      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 34
        30: .line 2660
            aload 3 /* mapEntries */
            iload 4 /* i */
            aaload
            aload 2 /* newFont */
            invokeinterface java.util.Map$Entry.setValue:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        31: .line 2661
            goto 34
      StackMap locals:
      StackMap stack: java.lang.Exception
        32: pop
        33: .line 2665
            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
        34: .line 2657
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 4 /* i */
            aload 3 /* mapEntries */
            arraylength
            if_icmplt 29
        end local 4 // int i
        end local 3 // java.util.Map$Entry[] mapEntries
        36: .line 2671
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        37: goto 41
        38: .line 2701
      StackMap locals: int
      StackMap stack:
            aload 2 /* newFont */
            invokevirtual sun.font.PhysicalFont.getRank:()I
            iconst_2
            if_icmple 40
        39: .line 2702
            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
        40: .line 2671
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 3 /* i */
            aload 0 /* this */
            getfield sun.font.SunFontManager.maxCompFont:I
            if_icmplt 38
        end local 3 // int i
        42: .line 2705
            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   43     0        this  Lsun/font/SunFontManager;
            0   43     1     oldFont  Lsun/font/PhysicalFont;
            0   43     2     newFont  Lsun/font/PhysicalFont;
            7   19     3   physFonts  [Lsun/font/PhysicalFont;
            8   14     4           i  I
           27   36     3  mapEntries  [Ljava/util/Map$Entry;
           28   36     4           i  I
           37   42     3           i  I
      Exception table:
        from    to  target  type
          30    31      32  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 2708
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnull 2
         1: .line 2709
            return
         2: .line 2711
      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 2712
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 1 /* fonts */
        start local 1 // sun.font.Font2D[] fonts
         4: .line 2713
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 18
         6: .line 2714
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            instanceof sun.font.TrueTypeFont
            ifeq 17
         7: .line 2715
            aload 1 /* fonts */
            iload 2 /* i */
            aaload
            checkcast sun.font.TrueTypeFont
            astore 3 /* ttf */
        start local 3 // sun.font.TrueTypeFont ttf
         8: .line 2716
            aload 3 /* ttf */
            invokevirtual sun.font.TrueTypeFont.getAllFullNames:()[Ljava/lang/String;
            astore 4 /* fullNames */
        start local 4 // java.lang.String[] fullNames
         9: .line 2717
            iconst_0
            istore 5 /* n */
        start local 5 // int n
        10: goto 13
        11: .line 2718
      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 2717
            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 2720
            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 2721
            aload 5 /* family */
            ifnull 17
        16: .line 2722
            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 2713
      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 2726
            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 2737
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2738
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2739
            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 2746
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.localeFullNamesToFont:Ljava/util/HashMap;
            ifnonnull 5
         4: .line 2747
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadLocaleNames:()V
         5: .line 2749
      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 2750
            aconst_null
            astore 4 /* font */
        start local 4 // sun.font.Font2D font
         7: .line 2753
            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 2754
            aload 5 /* family */
            ifnull 14
         9: .line 2755
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 4 /* font */
        10: .line 2756
            aload 4 /* font */
            ifnonnull 12
        11: .line 2757
            aload 5 /* family */
            iload 2 /* style */
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 4 /* font */
        12: .line 2759
      StackMap locals: java.lang.String sun.font.Font2D sun.font.FontFamily
      StackMap stack:
            aload 4 /* font */
            ifnull 14
        13: .line 2760
            aload 4 /* font */
            areturn
        14: .line 2765
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 6
            monitorenter
        15: .line 2766
            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 2765
            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 2768
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            ifnull 33
        21: .line 2769
            aload 4 /* font */
            getfield sun.font.Font2D.style:I
            iload 2 /* style */
            if_icmpeq 22
            iload 2 /* style */
            ifne 23
        22: .line 2770
      StackMap locals:
      StackMap stack:
            aload 4 /* font */
            areturn
        23: .line 2772
      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 2773
            aload 5 /* family */
            ifnull 33
        25: .line 2774
            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 2776
            aload 6 /* familyFont */
            ifnull 28
        27: .line 2777
            aload 6 /* familyFont */
            areturn
        28: .line 2779
      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 2780
            aload 6 /* familyFont */
            ifnull 33
        30: .line 2789
            aload 6 /* familyFont */
            iload 2 /* style */
            invokevirtual sun.font.Font2D.canDoStyle:(I)Z
            ifne 32
        31: .line 2790
            aconst_null
            astore 6 /* familyFont */
        32: .line 2792
      StackMap locals:
      StackMap stack:
            aload 6 /* familyFont */
            areturn
        end local 6 // sun.font.Font2D familyFont
        33: .line 2798
      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 2877
            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 2881
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingAlternateComposites:Z
            ifne 4
         1: .line 2882
            aload 0 /* this */
            getfield sun.font.SunFontManager._usingPerAppContextComposites:Z
            ifeq 3
         2: .line 2883
            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 2881
      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 2889
            new sun.font.SunFontManager$9
            dup
            invokespecial sun.font.SunFontManager$9.<init>:()V
         1: .line 2888
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
         2: .line 2887
            astore 0 /* appletSM */
        start local 0 // java.lang.Boolean appletSM
         3: .line 2896
            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 2904
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2905
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2906
            ldc "Entered useAlternateFontforJALocales()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2908
      StackMap locals:
      StackMap stack:
            getstatic sun.font.FontUtilities.isWindows:Z
            ifne 5
         4: .line 2909
            return
         5: .line 2912
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 8
         6: .line 2913
            iconst_1
            putstatic sun.font.SunFontManager.gAltJAFont:Z
         7: .line 2914
            goto 10
         8: .line 2915
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
         9: .line 2916
            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 2918
      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 2921
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 2
         1: .line 2922
            getstatic sun.font.SunFontManager.gAltJAFont:Z
            ireturn
         2: .line 2924
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
         3: .line 2925
            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 2930
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 2
         1: .line 2931
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "Entered preferLocaleFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         2: .line 2934
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.willReorderForStartupLocale:()Z
            ifne 4
         3: .line 2935
            return
         4: .line 2938
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 11
         5: .line 2939
            aload 0 /* this */
            getfield sun.font.SunFontManager.gLocalePref:Z
            ifeq 7
         6: .line 2940
            return
         7: .line 2942
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gLocalePref:Z
         8: .line 2943
            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 2944
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        10: .line 2945
            goto 22
        11: .line 2946
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
        12: .line 2947
            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 2948
            return
        14: .line 2950
      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 2952
            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 2951
      StackMap locals:
      StackMap stack: int
            istore 2 /* acPropPref */
        start local 2 // boolean acPropPref
        18: .line 2954
            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 2956
            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 2957
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        21: .line 2958
            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 2960
      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 2963
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 2964
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 2965
            ldc "Entered preferProportionalFonts()."
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 2970
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.FontConfiguration.hasMonoToPropMap:()Z
            ifne 5
         4: .line 2971
            return
         5: .line 2974
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 12
         6: .line 2975
            aload 0 /* this */
            getfield sun.font.SunFontManager.gPropPref:Z
            ifeq 8
         7: .line 2976
            return
         8: .line 2978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.gPropPref:Z
         9: .line 2979
            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 2980
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingAlternateComposites:Z
        11: .line 2981
            goto 23
        12: .line 2982
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 1 /* appContext */
        start local 1 // sun.awt.AppContext appContext
        13: .line 2983
            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 2984
            return
        15: .line 2986
      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 2988
            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 2987
      StackMap locals:
      StackMap stack: int
            istore 2 /* acLocalePref */
        start local 2 // boolean acLocalePref
        19: .line 2990
            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 2992
            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 2993
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager._usingPerAppContextComposites:Z
        22: .line 2994
            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 2996
      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 3000
            getstatic sun.font.SunFontManager.installedNames:Ljava/util/HashSet;
            ifnonnull 18
         1: .line 3001
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 0 /* l */
        start local 0 // java.util.Locale l
         2: .line 3002
            invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
            astore 1 /* fontManager */
        start local 1 // sun.font.SunFontManager fontManager
         3: .line 3004
            aload 1 /* fontManager */
            aload 0 /* l */
            invokevirtual sun.font.SunFontManager.getInstalledFontFamilyNames:(Ljava/util/Locale;)[Ljava/lang/String;
         4: .line 3003
            astore 2 /* installedFamilies */
        start local 2 // java.lang.String[] installedFamilies
         5: .line 3005
            aload 1 /* fontManager */
            invokevirtual sun.font.SunFontManager.getAllInstalledFonts:()[Ljava/awt/Font;
            astore 3 /* installedFonts */
        start local 3 // java.awt.Font[] installedFonts
         6: .line 3006
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* names */
        start local 4 // java.util.HashSet names
         7: .line 3007
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 11
         9: .line 3008
      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 3007
            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 3010
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        13: goto 16
        14: .line 3011
      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 3010
            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 3013
            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 3015
      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 3030
            aload 1 /* font */
            ifnonnull 2
         1: .line 3031
            iconst_0
            ireturn
         2: .line 3035
      StackMap locals:
      StackMap stack:
            getstatic sun.font.SunFontManager.regFamilyKey:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         3: .line 3036
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            ifnonnull 6
         4: .line 3037
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
         5: .line 3038
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
         6: .line 3035
      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 3042
      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 3043
            iconst_0
            ireturn
        12: .line 3063
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.getInstalledNames:()Ljava/util/HashSet;
            astore 2 /* names */
        start local 2 // java.util.HashSet names
        13: .line 3064
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            astore 3 /* l */
        start local 3 // java.util.Locale l
        14: .line 3065
            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 3066
            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 3067
            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 3068
      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 3074
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.SunFontManager.maybeMultiAppContext:()Z
            ifne 23
        19: .line 3075
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 6 /* familyTable */
        start local 6 // java.util.Hashtable familyTable
        20: .line 3076
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 7 /* fullNameTable */
        start local 7 // java.util.Hashtable fullNameTable
        21: .line 3077
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.fontsAreRegistered:Z
        22: .line 3078
            goto 34
        end local 7 // java.util.Hashtable fullNameTable
        end local 6 // java.util.Hashtable familyTable
        23: .line 3079
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 8 /* appContext */
        start local 8 // sun.awt.AppContext appContext
        24: .line 3081
            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 3080
            astore 6 /* familyTable */
        start local 6 // java.util.Hashtable familyTable
        26: .line 3083
            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
        27: .line 3082
            astore 7 /* fullNameTable */
        start local 7 // java.util.Hashtable fullNameTable
        28: .line 3084
            aload 6 /* familyTable */
            ifnonnull 33
        29: .line 3085
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 6 /* familyTable */
        30: .line 3086
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            astore 7 /* fullNameTable */
        31: .line 3087
            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
        32: .line 3088
            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
        33: .line 3090
      StackMap locals: java.util.Hashtable java.util.Hashtable sun.awt.AppContext
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
        end local 8 // sun.awt.AppContext appContext
        34: .line 3093
      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
        35: .line 3094
            aload 8 /* font2D */
            invokevirtual sun.font.Font2D.getStyle:()I
            istore 9 /* style */
        start local 9 // int style
        36: .line 3095
            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
        37: .line 3096
            aload 10 /* family */
            ifnonnull 40
        38: .line 3097
            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 */
        39: .line 3098
            aload 6 /* familyTable */
            aload 4 /* familyName */
            aload 10 /* family */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        40: .line 3106
      StackMap locals: sun.font.Font2D int sun.font.FontFamily
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 46
        41: .line 3107
            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
        42: .line 3108
            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
        43: .line 3109
            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
        44: .line 3110
            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
        45: .line 3111
            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
        46: .line 3113
      StackMap locals:
      StackMap stack:
            aload 10 /* family */
            aload 8 /* font2D */
            iload 9 /* style */
            invokevirtual sun.font.FontFamily.setFont:(Lsun/font/Font2D;I)V
        47: .line 3114
            aload 7 /* fullNameTable */
            aload 5 /* fullName */
            aload 8 /* font2D */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        48: .line 3115
            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   49     0           this  Lsun/font/SunFontManager;
            0   49     1           font  Ljava/awt/Font;
           13   49     2          names  Ljava/util/HashSet<Ljava/lang/String;>;
           14   49     3              l  Ljava/util/Locale;
           15   49     4     familyName  Ljava/lang/String;
           16   49     5       fullName  Ljava/lang/String;
           20   23     6    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           26   49     6    familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
           21   23     7  fullNameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           28   49     7  fullNameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
           24   34     8     appContext  Lsun/awt/AppContext;
           35   49     8         font2D  Lsun/font/Font2D;
           36   49     9          style  I
           37   49    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 3120
            aload 1 /* font */
            ifnonnull 2
         1: .line 3121
            return
         2: .line 3123
      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 3124
            iconst_0
            istore 3 /* k */
        start local 3 // int k
         4: goto 8
         5: .line 3125
      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 3126
            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 3124
      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 3129
            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 3135
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 3136
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFamilyName:Ljava/util/Hashtable;
            astore 1 /* familyTable */
        start local 1 // java.util.Hashtable familyTable
         2: .line 3137
            goto 9
        end local 1 // java.util.Hashtable familyTable
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
            ifeq 8
         4: .line 3138
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 2 /* appContext */
        start local 2 // sun.awt.AppContext appContext
         5: .line 3140
            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 3139
            astore 1 /* familyTable */
        end local 2 // sun.awt.AppContext appContext
        start local 1 // java.util.Hashtable familyTable
         7: .line 3141
            goto 9
        end local 1 // java.util.Hashtable familyTable
         8: .line 3142
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable familyTable
         9: .line 3145
      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
        10: .line 3146
            aload 1 /* familyTable */
            dup
            astore 3
            monitorenter
        11: .line 3147
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 4 /* map */
        start local 4 // java.util.TreeMap map
        12: .line 3148
            aload 1 /* familyTable */
            invokevirtual java.util.Hashtable.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 19
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.util.TreeMap top java.util.Iterator
      StackMap stack:
        13: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.FontFamily
            astore 5 /* f */
        start local 5 // sun.font.FontFamily f
        14: .line 3149
            aload 5 /* f */
            iconst_0
            invokevirtual sun.font.FontFamily.getFont:(I)Lsun/font/Font2D;
            astore 7 /* font2D */
        start local 7 // sun.font.Font2D font2D
        15: .line 3150
            aload 7 /* font2D */
            ifnonnull 17
        16: .line 3151
            aload 5 /* f */
            iconst_0
            invokevirtual sun.font.FontFamily.getClosestStyle:(I)Lsun/font/Font2D;
            astore 7 /* font2D */
        17: .line 3153
      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
        18: .line 3154
            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
        19: .line 3148
      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 13
        20: .line 3156
            aload 4 /* map */
            aload 3
            monitorexit
        21: areturn
        end local 4 // java.util.TreeMap map
        22: .line 3146
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        23: 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   24     0         this  Lsun/font/SunFontManager;
            2    3     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
            7    8     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
            9   24     1  familyTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/FontFamily;>;
            5    7     2   appContext  Lsun/awt/AppContext;
           10   24     2            l  Ljava/util/Locale;
           12   22     4          map  Ljava/util/TreeMap<Ljava/lang/String;Ljava/lang/String;>;
           14   19     5            f  Lsun/font/FontFamily;
           15   19     7       font2D  Lsun/font/Font2D;
           18   19     8         name  Ljava/lang/String;
      Exception table:
        from    to  target  type
          11    21      22  any
          22    23      22  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 3163
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegistered:Z
            ifeq 3
         1: .line 3164
            aload 0 /* this */
            getfield sun.font.SunFontManager.createdByFullName:Ljava/util/Hashtable;
            astore 1 /* nameTable */
        start local 1 // java.util.Hashtable nameTable
         2: .line 3165
            goto 9
        end local 1 // java.util.Hashtable nameTable
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield sun.font.SunFontManager.fontsAreRegisteredPerAppContext:Z
            ifeq 8
         4: .line 3166
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 2 /* appContext */
        start local 2 // sun.awt.AppContext appContext
         5: .line 3168
            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 3167
            astore 1 /* nameTable */
        end local 2 // sun.awt.AppContext appContext
        start local 1 // java.util.Hashtable nameTable
         7: .line 3169
            goto 9
        end local 1 // java.util.Hashtable nameTable
         8: .line 3170
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 1 // java.util.Hashtable nameTable
         9: .line 3173
      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
        10: .line 3174
            aload 1 /* nameTable */
            dup
            astore 3
            monitorenter
        11: .line 3175
            aload 1 /* nameTable */
            invokevirtual java.util.Hashtable.size:()I
            anewarray java.awt.Font
            astore 4 /* fonts */
        start local 4 // java.awt.Font[] fonts
        12: .line 3176
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        13: .line 3177
            aload 1 /* nameTable */
            invokevirtual java.util.Hashtable.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 16
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable java.awt.Font[] int top java.util.Iterator
      StackMap stack:
        14: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.font.Font2D
            astore 6 /* font2D */
        start local 6 // sun.font.Font2D font2D
        15: .line 3178
            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
        16: .line 3177
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        17: .line 3180
            aload 4 /* fonts */
            aload 3
            monitorexit
        18: areturn
        end local 5 // int i
        end local 4 // java.awt.Font[] fonts
        19: .line 3174
      StackMap locals: sun.font.SunFontManager java.util.Hashtable java.util.Locale java.util.Hashtable
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        20: 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   21     0        this  Lsun/font/SunFontManager;
            2    3     1   nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
            7    8     1   nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
            9   21     1   nameTable  Ljava/util/Hashtable<Ljava/lang/String;Lsun/font/Font2D;>;
            5    7     2  appContext  Lsun/awt/AppContext;
           10   21     2           l  Ljava/util/Locale;
           12   19     4       fonts  [Ljava/awt/Font;
           13   19     5           i  I
           15   16     6      font2D  Lsun/font/Font2D;
      Exception table:
        from    to  target  type
          11    18      19  any
          19    20      19  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 3188
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            ifnull 2
         1: .line 3189
            aload 0 /* this */
            getfield sun.font.SunFontManager.pathDirs:[Ljava/lang/String;
            areturn
         2: .line 3192
      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 3194
            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 3193
            astore 3 /* parser */
        start local 3 // java.util.StringTokenizer parser
         5: .line 3195
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* pathList */
        start local 4 // java.util.ArrayList pathList
         6: .line 3197
            goto 8
         7: .line 3198
      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 3197
      StackMap locals:
      StackMap stack:
            aload 3 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 7
         9: .line 3200
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 3202
      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 3203
            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 3222
            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 3223
            aload 9 /* ls */
            ifnull 2
            aload 9 /* ls */
            arraylength
            ifne 3
         2: .line 3224
      StackMap locals: java.lang.String[]
      StackMap stack:
            return
         3: .line 3226
      StackMap locals:
      StackMap stack:
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String
            astore 10 /* fontNames */
        start local 10 // java.lang.String[] fontNames
         4: .line 3227
            aload 9 /* ls */
            arraylength
            anewarray java.lang.String[]
            astore 11 /* nativeNames */
        start local 11 // java.lang.String[][] nativeNames
         5: .line 3228
            iconst_0
            istore 12 /* fontCount */
        start local 12 // int fontCount
         6: .line 3230
            iconst_0
            istore 13 /* i */
        start local 13 // int i
         7: goto 41
         8: .line 3231
      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 3232
            aconst_null
            astore 15 /* fullName */
        start local 15 // java.lang.String fullName
        10: .line 3233
            iload 8 /* resolveSymLinks */
            ifeq 14
        11: .line 3235
            aload 14 /* theFile */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            astore 15 /* fullName */
        12: .line 3236
            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 3239
      StackMap locals:
      StackMap stack:
            aload 15 /* fullName */
            ifnonnull 16
        15: .line 3240
            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 3244
      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 3245
            goto 40
        18: .line 3248
      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 3249
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 40
        20: .line 3250
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        21: .line 3251
            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 3253
            goto 40
        23: .line 3256
      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 3258
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 38
        25: .line 3259
            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 3260
            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 3261
            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 3262
            aload 17 /* natNames */
            ifnonnull 31
        29: .line 3263
            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 3264
            goto 37
        31: .line 3265
      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 3266
            iconst_1
            istore 18 /* nn */
        start local 18 // int nn
        33: goto 36
        34: .line 3267
      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 3266
            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 3270
      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 3272
      StackMap locals:
      StackMap stack:
            aload 10 /* fontNames */
            iload 12 /* fontCount */
            aload 15 /* fullName */
            aastore
        39: .line 3273
            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 3230
      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 3275
            aload 0 /* this */
            aload 10 /* fontNames */
            aload 11 /* nativeNames */
            iload 12 /* fontCount */
            iload 4 /* fontFormat */
        43: .line 3276
            iload 5 /* useJavaRasterizer */
            iload 6 /* fontRank */
            iload 7 /* defer */
        44: .line 3275
            invokevirtual sun.font.SunFontManager.registerFonts:([Ljava/lang/String;[[Ljava/lang/String;IIZIZ)V
        45: .line 3277
            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 3282
            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 3292
            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 3299
            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 3306
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontPath:Ljava/lang/String;
            ifnonnull 2
         1: .line 3307
            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 3309
      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 3313
            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 3317
            aload 0 /* this */
            getfield sun.font.SunFontManager.discoveredAllFonts:Z
            ifeq 2
         1: .line 3318
            return
         2: .line 3321
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         3: .line 3322
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         4: .line 3323
            invokestatic java.lang.Thread.dumpStack:()V
         5: .line 3324
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         6: .line 3325
            ldc "SunGraphicsEnvironment.loadFonts() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 3327
      StackMap locals: sun.font.SunFontManager
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initialiseDeferredFonts:()V
         8: .line 3330
            new sun.font.SunFontManager$10
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$10.<init>:(Lsun/font/SunFontManager;)V
         9: .line 3329
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
        10: .line 3321
            aload 1
            monitorexit
        11: goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: aload 1
            monitorexit
        13: athrow
        14: .line 3353
      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 3356
            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 3363
            new java.util.StringTokenizer
            dup
            aload 1 /* pathName */
         1: .line 3364
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
         2: .line 3363
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 6 /* parser */
        start local 6 // java.util.StringTokenizer parser
         3: .line 3366
            goto 8
         4: .line 3367
      StackMap locals: java.util.StringTokenizer
      StackMap stack:
            aload 0 /* this */
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
         5: .line 3368
            iload 2 /* useJavaRasterizer */
            iload 3 /* fontRank */
         6: .line 3369
            iload 4 /* defer */
            iload 5 /* resolveSymLinks */
         7: .line 3367
            invokevirtual sun.font.SunFontManager.registerFontsInDir:(Ljava/lang/String;ZIZZ)V
         8: .line 3366
      StackMap locals:
      StackMap stack:
            aload 6 /* parser */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 4
         9: .line 3371
            goto 11
      StackMap locals:
      StackMap stack: java.util.NoSuchElementException
        10: pop
        11: .line 3373
      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 3377
            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 3378
            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 3385
            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 3386
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.ttFilter:Ljava/io/FilenameFilter;
         2: .line 3387
            iconst_0
            iload 2 /* useJavaRasterizer */
         3: .line 3388
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 5
         4: .line 3389
            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 3390
      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 3386
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
         8: .line 3391
            aload 0 /* this */
            aload 1 /* dirName */
            aload 6 /* pathFile */
            getstatic sun.font.SunFontManager.t1Filter:Ljava/io/FilenameFilter;
         9: .line 3392
            iconst_1
            iload 2 /* useJavaRasterizer */
        10: .line 3393
            iload 3 /* fontRank */
            bipush 6
            if_icmpne 12
        11: .line 3394
            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 3395
      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 3391
            invokevirtual sun.font.SunFontManager.addDirFonts:(Ljava/lang/String;Ljava/io/File;Ljava/io/FilenameFilter;IZIZZ)V
        15: .line 3396
            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 3399
            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 3406
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultFontFileName:Ljava/lang/String;
            ifnonnull 2
         1: .line 3407
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initDefaultFonts:()V
         2: .line 3409
      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 3413
            invokestatic sun.font.SunFontManager.isOpenJDK:()Z
            ifne 8
         1: .line 3414
            aload 0 /* this */
            ldc "Lucida Sans Regular"
            putfield sun.font.SunFontManager.defaultFontName:Ljava/lang/String;
         2: .line 3415
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.useAbsoluteFontFileNames:()Z
            ifeq 7
         3: .line 3416
            aload 0 /* this */
         4: .line 3417
            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 3416
            putfield sun.font.SunFontManager.defaultFontFileName:Ljava/lang/String;
         6: .line 3418
            goto 8
         7: .line 3419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "LucidaSansRegular.ttf"
            putfield sun.font.SunFontManager.defaultFontFileName:Ljava/lang/String;
         8: .line 3422
      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 3429
            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 3447
            aload 0 /* this */
            getfield sun.font.SunFontManager.defaultFontName:Ljava/lang/String;
            ifnonnull 2
         1: .line 3448
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.initDefaultFonts:()V
         2: .line 3450
      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 3454
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         1: .line 3455
            aload 0 /* this */
            getfield sun.font.SunFontManager.loadedAllFontFiles:Z
            ifeq 3
         2: .line 3456
            return
         3: .line 3459
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         4: .line 3460
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 7
         5: .line 3461
            invokestatic java.lang.Thread.dumpStack:()V
         6: .line 3462
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            ldc "loadAllFontFiles() called"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         7: .line 3465
      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 3464
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         9: .line 3459
            aload 1
            monitorexit
        10: goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: aload 1
            monitorexit
        12: athrow
        13: .line 3483
      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 3496
            invokestatic sun.font.FontUtilities.isLogging:()Z
            ifeq 3
         1: .line 3497
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
         2: .line 3498
            ldc "Initialising composite fonts"
            invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
         3: .line 3501
      StackMap locals:
      StackMap stack:
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getNumberCoreFonts:()I
            istore 3 /* numCoreFonts */
        start local 3 // int numCoreFonts
         4: .line 3502
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.getPlatformFontNames:()[Ljava/lang/String;
            astore 4 /* fcFonts */
        start local 4 // java.lang.String[] fcFonts
         5: .line 3503
            iconst_0
            istore 5 /* f */
        start local 5 // int f
         6: goto 22
         7: .line 3504
      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 3506
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.getFileNameFromPlatformName:(Ljava/lang/String;)Ljava/lang/String;
         9: .line 3505
            astore 7 /* fontFileName */
        start local 7 // java.lang.String fontFileName
        10: .line 3507
            aconst_null
            astore 8 /* nativeNames */
        start local 8 // java.lang.String[] nativeNames
        11: .line 3508
            aload 7 /* fontFileName */
            ifnull 13
        12: .line 3509
            aload 7 /* fontFileName */
            aload 6 /* platformFontName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 3513
      StackMap locals: java.lang.String java.lang.String java.lang.String[]
      StackMap stack:
            aload 6 /* platformFontName */
            astore 7 /* fontFileName */
        14: .line 3514
            goto 18
        15: .line 3515
      StackMap locals:
      StackMap stack:
            iload 5 /* f */
            iload 3 /* numCoreFonts */
            if_icmpge 17
        16: .line 3530
            aload 0 /* this */
            aload 6 /* platformFontName */
            invokevirtual sun.font.SunFontManager.addFontToPlatformFontPath:(Ljava/lang/String;)V
        17: .line 3532
      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 3541
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* fontFileName */
            aload 8 /* nativeNames */
        19: .line 3542
            iconst_2
            iconst_1
        20: .line 3541
            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 3503
            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 3553
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.registerPlatformFontsUsedByFontConfiguration:()V
        24: .line 3556
            aload 1 /* fontConfig */
            invokevirtual sun.awt.FontConfiguration.get2DCompositeFontInfo:()[Lsun/font/CompositeFontDescriptor;
        25: .line 3555
            astore 5 /* compositeFontInfo */
        start local 5 // sun.font.CompositeFontDescriptor[] compositeFontInfo
        26: .line 3557
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        27: goto 60
        28: .line 3558
      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 3559
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFileNames:()[Ljava/lang/String;
            astore 8 /* componentFileNames */
        start local 8 // java.lang.String[] componentFileNames
        30: .line 3560
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFaceNames:()[Ljava/lang/String;
            astore 9 /* componentFaceNames */
        start local 9 // java.lang.String[] componentFaceNames
        31: .line 3565
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnull 39
        32: .line 3566
            iconst_0
            istore 10 /* ii */
        start local 10 // int ii
        33: goto 38
        34: .line 3567
      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 3568
            aload 8 /* componentFileNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFile:()Ljava/lang/String;
            aastore
        36: .line 3569
            aload 9 /* componentFaceNames */
            iload 10 /* ii */
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getDefaultFontFaceName:()Ljava/lang/String;
            aastore
        37: .line 3566
      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 3580
      StackMap locals:
      StackMap stack:
            aload 2 /* altNameCache */
            ifnull 49
        40: .line 3582
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        41: .line 3583
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        42: .line 3584
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        43: .line 3585
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        44: .line 3586
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        45: .line 3587
            iconst_1
        46: .line 3588
            aload 2 /* altNameCache */
        47: .line 3581
            invokestatic sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLjava/util/concurrent/ConcurrentHashMap;)V
        48: .line 3589
            goto 56
        49: .line 3590
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getFaceName:()Ljava/lang/String;
        50: .line 3591
            aload 8 /* componentFileNames */
            aload 9 /* componentFaceNames */
        51: .line 3592
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getCoreComponentCount:()I
        52: .line 3593
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRanges:()[I
        53: .line 3594
            aload 7 /* descriptor */
            invokevirtual sun.font.CompositeFontDescriptor.getExclusionRangeLimits:()[I
        54: .line 3595
            iconst_1
        55: .line 3590
            invokevirtual sun.font.SunFontManager.registerCompositeFont:(Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZ)V
        56: .line 3597
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 59
        57: .line 3598
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
        58: .line 3599
            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 3557
      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 3602
            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 3610
            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 3615
            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 3616
            return
         2: .line 3619
      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 3620
            iconst_0
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         4: .line 3621
            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 3622
            iconst_1
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         7: .line 3623
            goto 9
        end local 5 // int fontFormat
         8: .line 3624
      StackMap locals:
      StackMap stack:
            iconst_5
            istore 5 /* fontFormat */
        start local 5 // int fontFormat
         9: .line 3626
      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 3627
            iload 4 /* defer */
            ifeq 15
        11: .line 3628
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
        12: .line 3629
            iload 5 /* fontFormat */
            iconst_0
            iload 3 /* fontRank */
        13: .line 3628
            invokevirtual sun.font.SunFontManager.registerDeferredFont:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;IZI)V
        14: .line 3630
            goto 18
        15: .line 3631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* fontFileName */
            aload 2 /* nativeNames */
            iload 5 /* fontFormat */
            iconst_0
        16: .line 3632
            iload 3 /* fontRank */
        17: .line 3631
            invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
            pop
        18: .line 3634
      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 3637
            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 3654
            getstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
            ifnonnull 2
         1: .line 3655
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putstatic sun.font.SunFontManager.missingFontFiles:Ljava/util/HashSet;
         2: .line 3657
      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 3658
            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 3679
            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 3680
            aload 2 /* fileName */
            ifnonnull 3
         2: .line 3681
            iconst_0
            ireturn
         3: .line 3683
      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 3697
            aload 0 /* this */
            iload 2 /* preferLocale */
            iload 3 /* preferProportional */
            invokevirtual sun.font.SunFontManager.createFontConfiguration:(ZZ)Lsun/awt/FontConfiguration;
         1: .line 3696
            astore 4 /* fontConfig */
        start local 4 // sun.awt.FontConfiguration fontConfig
         2: .line 3698
            aload 0 /* this */
            aload 4 /* fontConfig */
            aload 1 /* altNameCache */
            invokevirtual sun.font.SunFontManager.initCompositeFonts:(Lsun/awt/FontConfiguration;Ljava/util/concurrent/ConcurrentHashMap;)V
         3: .line 3699
            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 3705
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFonts:[Ljava/awt/Font;
            ifnonnull 39
         1: .line 3706
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFonts:()V
         2: .line 3707
            new java.util.TreeMap
            dup
            invokespecial java.util.TreeMap.<init>:()V
            astore 1 /* fontMapNames */
        start local 1 // java.util.TreeMap fontMapNames
         3: .line 3712
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getRegisteredFonts:()[Lsun/font/Font2D;
            astore 2 /* allfonts */
        start local 2 // sun.font.Font2D[] allfonts
         4: .line 3713
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 11
         6: .line 3714
      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 3715
            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 3716
            aload 2 /* allfonts */
            iload 3 /* i */
            aaload
         9: .line 3715
            invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 3713
      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 3720
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getFontNamesFromPlatform:()[Ljava/lang/String;
            astore 3 /* platformNames */
        start local 3 // java.lang.String[] platformNames
        13: .line 3721
            aload 3 /* platformNames */
            ifnull 20
        14: .line 3722
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        15: goto 19
        16: .line 3723
      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 3724
            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 3722
      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 3729
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* fontNames */
        start local 4 // java.lang.String[] fontNames
        21: .line 3730
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            ifle 29
        22: .line 3731
            aload 1 /* fontMapNames */
            invokevirtual java.util.TreeMap.size:()I
            anewarray java.lang.String
            astore 4 /* fontNames */
        23: .line 3732
            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 3733
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        25: goto 28
        26: .line 3734
      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 3733
            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 3737
      StackMap locals:
      StackMap stack:
            aload 4 /* fontNames */
            arraylength
            anewarray java.awt.Font
            astore 5 /* fonts */
        start local 5 // java.awt.Font[] fonts
        30: .line 3738
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        31: goto 37
        32: .line 3739
      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 3740
            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 3741
            aload 7 /* f2d */
            ifnull 36
        35: .line 3742
            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 3738
      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 3745
            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 3748
      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 3749
            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 3750
            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;
            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 3762
            aload 1 /* requestedLocale */
            ifnonnull 2
         1: .line 3763
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            astore 1 /* requestedLocale */
         2: .line 3765
      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 3766
            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 3767
            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 3768
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            iconst_0
            aload 2 /* copyFamilies */
         6: .line 3769
            iconst_0
            aload 0 /* this */
            getfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
            arraylength
         7: .line 3768
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 3770
            aload 2 /* copyFamilies */
            areturn
        end local 2 // java.lang.String[] copyFamilies
         9: .line 3773
      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 3776
            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 3777
            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 3778
            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 3779
            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 3780
            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 3786
            aload 1 /* requestedLocale */
            invokestatic sun.font.SunFontManager.getSystemStartupLocale:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 20
        17: .line 3787
            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 3789
            aload 0 /* this */
            aload 2 /* familyNames */
            aload 1 /* requestedLocale */
            invokevirtual sun.font.SunFontManager.getJREFontFamilyNames:(Ljava/util/TreeMap;Ljava/util/Locale;)V
        19: .line 3790
            goto 30
        20: .line 3791
      StackMap locals: java.util.TreeMap java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.loadFontFiles:()V
        21: .line 3792
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 4 /* physicalfonts */
        start local 4 // sun.font.Font2D[] physicalfonts
        22: .line 3793
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        23: goto 29
        24: .line 3794
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 28
        25: .line 3796
            aload 4 /* physicalfonts */
            iload 5 /* i */
            aaload
            aload 1 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
        26: .line 3795
            astore 6 /* name */
        start local 6 // java.lang.String name
        27: .line 3797
            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 3793
      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 3803
      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 3805
            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 3806
            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 3807
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        34: goto 37
        35: .line 3808
      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 3807
            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 3810
            aload 1 /* requestedLocale */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokevirtual java.util.Locale.equals:(Ljava/lang/Object;)Z
            ifeq 42
        39: .line 3811
            aload 0 /* this */
            aload 1 /* requestedLocale */
            putfield sun.font.SunFontManager.lastDefaultLocale:Ljava/util/Locale;
        40: .line 3812
            aload 0 /* this */
            aload 4 /* retval */
            arraylength
            anewarray java.lang.String
            putfield sun.font.SunFontManager.allFamilies:[Ljava/lang/String;
        41: .line 3813
            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 3815
      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 3819
            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 3823
            new sun.font.SunFontManager$12
            dup
            aload 0 /* this */
            invokespecial sun.font.SunFontManager$12.<init>:(Lsun/font/SunFontManager;)V
         1: .line 3822
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         2: .line 3831
            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 3839
            aload 0 /* this */
            getstatic sun.font.SunFontManager.jreFontDirName:Ljava/lang/String;
            invokevirtual sun.font.SunFontManager.registerDeferredJREFonts:(Ljava/lang/String;)V
         1: .line 3840
            aload 0 /* this */
            invokevirtual sun.font.SunFontManager.getPhysicalFonts:()[Lsun/font/PhysicalFont;
            astore 3 /* physicalfonts */
        start local 3 // sun.font.Font2D[] physicalfonts
         2: .line 3841
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 9
         4: .line 3842
      StackMap locals: sun.font.Font2D[] int
      StackMap stack:
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            instanceof sun.font.NativeFont
            ifne 8
         5: .line 3844
            aload 3 /* physicalfonts */
            iload 4 /* i */
            aaload
            aload 2 /* requestedLocale */
            invokevirtual sun.font.Font2D.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
         6: .line 3843
            astore 5 /* name */
        start local 5 // java.lang.String name
         7: .line 3845
            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 3841
      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 3848
            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 3862
            getstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
            ifnonnull 4
         1: .line 3865
            new sun.font.SunFontManager$13
            dup
            invokespecial sun.font.SunFontManager$13.<init>:()V
         2: .line 3864
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.util.Locale
         3: .line 3863
            putstatic sun.font.SunFontManager.systemLocale:Ljava/util/Locale;
         4: .line 3890
      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 3895
            aconst_null
            astore 2 /* fontFileToClose */
        start local 2 // sun.font.FileFont fontFileToClose
         1: .line 3896
            iconst_m1
            istore 3 /* freeSlot */
        start local 3 // int freeSlot
         2: .line 3898
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            dup
            astore 4
            monitorenter
         3: .line 3906
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 11
         5: .line 3907
      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 3908
            aload 4
            monitorexit
         7: return
         8: .line 3910
      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 3911
            iload 5 /* i */
            istore 3 /* freeSlot */
        10: .line 3906
      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 3914
            iload 3 /* freeSlot */
            iflt 16
        13: .line 3915
            aload 0 /* this */
            getfield sun.font.SunFontManager.fontFileCache:[Lsun/font/FileFont;
            iload 3 /* freeSlot */
            aload 1 /* font */
            aastore
        14: .line 3916
            aload 4
            monitorexit
        15: return
        16: .line 3919
      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 3920
            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 3924
            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 3898
            aload 4
            monitorexit
        20: goto 23
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: aload 4
            monitorexit
        22: athrow
        23: .line 3937
      StackMap locals:
      StackMap stack:
            aload 2 /* fontFileToClose */
            ifnull 25
        24: .line 3938
            aload 2 /* fontFileToClose */
            invokevirtual sun.font.FileFont.close:()V
        25: .line 3940
      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 3945
            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=5, locals=3, args_size=2
        start local 0 // sun.font.SunFontManager this
         0: .line 2556
            invokestatic sun.misc.ThreadGroupUtils.getRootThreadGroup:()Ljava/lang/ThreadGroup;
            astore 2 /* rootTG */
        start local 2 // java.lang.ThreadGroup rootTG
         1: .line 2557
            aload 0 /* this */
            new java.lang.Thread
            dup
            aload 2 /* rootTG */
            aload 1
            invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;)V
            putfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
         2: .line 2558
            aload 0 /* this */
            getfield sun.font.SunFontManager.fileCloser:Ljava/lang/Thread;
            aconst_null
            invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
         3: .line 2559
            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
         4: .line 2560
            aconst_null
            areturn
        end local 2 // java.lang.ThreadGroup rootTG
        end local 0 // sun.font.SunFontManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lsun/font/SunFontManager;
            1    5     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