public class sun.font.FcFontConfiguration extends sun.awt.FontConfiguration
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.font.FcFontConfiguration
  super_class: sun.awt.FontConfiguration
{
  private static final java.lang.String fileVersion;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "1"

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

  private sun.font.FontConfigManager$FcCompFont[] fcCompFonts;
    descriptor: [Lsun/font/FontConfigManager$FcCompFont;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(sun.font.SunFontManager);
    descriptor: (Lsun/font/SunFontManager;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // sun.font.SunFontManager fm
         0: .line 73
            aload 0 /* this */
            aload 1 /* fm */
            invokespecial sun.awt.FontConfiguration.<init>:(Lsun/font/SunFontManager;)V
         1: .line 68
            aload 0 /* this */
            aconst_null
            putfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
         2: .line 70
            aload 0 /* this */
            aconst_null
            putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
         3: .line 74
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.init:()Z
            pop
         4: .line 75
            return
        end local 1 // sun.font.SunFontManager fm
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/font/FcFontConfiguration;
            0    5     1    fm  Lsun/font/SunFontManager;
    MethodParameters:
      Name  Flags
      fm    

  public void <init>(sun.font.SunFontManager, boolean, boolean);
    descriptor: (Lsun/font/SunFontManager;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // sun.font.SunFontManager fm
        start local 2 // boolean preferLocaleFonts
        start local 3 // boolean preferPropFonts
         0: .line 81
            aload 0 /* this */
            aload 1 /* fm */
            iload 2 /* preferLocaleFonts */
            iload 3 /* preferPropFonts */
            invokespecial sun.awt.FontConfiguration.<init>:(Lsun/font/SunFontManager;ZZ)V
         1: .line 68
            aload 0 /* this */
            aconst_null
            putfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
         2: .line 70
            aload 0 /* this */
            aconst_null
            putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
         3: .line 82
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.init:()Z
            pop
         4: .line 83
            return
        end local 3 // boolean preferPropFonts
        end local 2 // boolean preferLocaleFonts
        end local 1 // sun.font.SunFontManager fm
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lsun/font/FcFontConfiguration;
            0    5     1                 fm  Lsun/font/SunFontManager;
            0    5     2  preferLocaleFonts  Z
            0    5     3    preferPropFonts  Z
    MethodParameters:
                   Name  Flags
      fm                 
      preferLocaleFonts  
      preferPropFonts    

  public synchronized boolean init();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 87
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
            ifnull 2
         1: .line 88
            iconst_1
            ireturn
         2: .line 91
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.setFontConfiguration:()V
         3: .line 92
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.readFcInfo:()V
         4: .line 93
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
            checkcast sun.awt.FcFontManager
            astore 1 /* fm */
        start local 1 // sun.awt.FcFontManager fm
         5: .line 94
            aload 1 /* fm */
            invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
            astore 2 /* fcm */
        start local 2 // sun.font.FontConfigManager fcm
         6: .line 95
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
            ifnonnull 18
         7: .line 96
            aload 0 /* this */
            aload 2 /* fcm */
            invokevirtual sun.font.FontConfigManager.loadFontConfig:()[Lsun/font/FontConfigManager$FcCompFont;
            putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
         8: .line 97
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
            ifnull 15
         9: .line 99
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.writeFcInfo:()V
        10: .line 100
            goto 19
      StackMap locals: sun.font.FcFontConfiguration sun.awt.FcFontManager sun.font.FontConfigManager
      StackMap stack: java.lang.Exception
        11: astore 3 /* e */
        start local 3 // java.lang.Exception e
        12: .line 101
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 19
        13: .line 102
            new java.lang.StringBuilder
            dup
            ldc "Exception writing fcInfo "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        end local 3 // java.lang.Exception e
        14: .line 105
            goto 19
      StackMap locals:
      StackMap stack:
        15: invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 19
        16: .line 106
            ldc "Failed to get info from libfontconfig"
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        17: .line 108
            goto 19
        18: .line 109
      StackMap locals:
      StackMap stack:
            aload 2 /* fcm */
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
            invokevirtual sun.font.FontConfigManager.populateFontConfig:([Lsun/font/FontConfigManager$FcCompFont;)V
        19: .line 112
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
            ifnonnull 21
        20: .line 113
            iconst_0
            ireturn
        21: .line 117
      StackMap locals:
      StackMap stack:
            ldc "java.home"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* javaHome */
        start local 3 // java.lang.String javaHome
        22: .line 118
            aload 3 /* javaHome */
            ifnonnull 24
        23: .line 119
            new java.lang.Error
            dup
            ldc "java.home property not set"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        24: .line 121
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 3 /* javaHome */
            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 "lib"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* javaLib */
        start local 4 // java.lang.String javaLib
        25: .line 122
            aload 0 /* this */
            aload 4 /* javaLib */
            invokevirtual sun.font.FcFontConfiguration.getInstalledFallbackFonts:(Ljava/lang/String;)V
        26: .line 124
            iconst_1
            ireturn
        end local 4 // java.lang.String javaLib
        end local 3 // java.lang.String javaHome
        end local 2 // sun.font.FontConfigManager fcm
        end local 1 // sun.awt.FcFontManager fm
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   27     0      this  Lsun/font/FcFontConfiguration;
            5   27     1        fm  Lsun/awt/FcFontManager;
            6   27     2       fcm  Lsun/font/FontConfigManager;
           12   14     3         e  Ljava/lang/Exception;
           22   27     3  javaHome  Ljava/lang/String;
           25   27     4   javaLib  Ljava/lang/String;
      Exception table:
        from    to  target  type
           9    10      11  Class java.lang.Exception

  public java.lang.String getFallbackFamilyName(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // java.lang.String fontName
        start local 2 // java.lang.String defaultFallback
         0: .line 132
            aload 0 /* this */
            aload 1 /* fontName */
            invokevirtual sun.font.FcFontConfiguration.getCompatibilityFamilyName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* compatibilityName */
        start local 3 // java.lang.String compatibilityName
         1: .line 133
            aload 3 /* compatibilityName */
            ifnull 3
         2: .line 134
            aload 3 /* compatibilityName */
            areturn
         3: .line 136
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* defaultFallback */
            areturn
        end local 3 // java.lang.String compatibilityName
        end local 2 // java.lang.String defaultFallback
        end local 1 // java.lang.String fontName
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lsun/font/FcFontConfiguration;
            0    4     1           fontName  Ljava/lang/String;
            0    4     2    defaultFallback  Ljava/lang/String;
            1    4     3  compatibilityName  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      fontName         
      defaultFallback  

  protected java.lang.String getFaceNameFromComponentFontName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // java.lang.String componentFontName
         0: .line 142
            aconst_null
            areturn
        end local 1 // java.lang.String componentFontName
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0               this  Lsun/font/FcFontConfiguration;
            0    1     1  componentFontName  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      componentFontName  

  protected java.lang.String getFileNameFromComponentFontName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // java.lang.String componentFontName
         0: .line 148
            aconst_null
            areturn
        end local 1 // java.lang.String componentFontName
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0               this  Lsun/font/FcFontConfiguration;
            0    1     1  componentFontName  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      componentFontName  

  public java.lang.String getFileNameFromPlatformName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // java.lang.String platformName
         0: .line 155
            aconst_null
            areturn
        end local 1 // java.lang.String platformName
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lsun/font/FcFontConfiguration;
            0    1     1  platformName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      platformName  

  protected java.nio.charset.Charset getDefaultFontCharset(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/nio/charset/Charset;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // java.lang.String fontName
         0: .line 160
            ldc "ISO8859_1"
            invokestatic java.nio.charset.Charset.forName:(Ljava/lang/String;)Ljava/nio/charset/Charset;
            areturn
        end local 1 // java.lang.String fontName
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lsun/font/FcFontConfiguration;
            0    1     1  fontName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fontName  

  protected java.lang.String getEncoding(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.FcFontConfiguration this
        start local 1 // java.lang.String awtFontName
        start local 2 // java.lang.String characterSubsetName
         0: .line 166
            ldc "default"
            areturn
        end local 2 // java.lang.String characterSubsetName
        end local 1 // java.lang.String awtFontName
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lsun/font/FcFontConfiguration;
            0    1     1          awtFontName  Ljava/lang/String;
            0    1     2  characterSubsetName  Ljava/lang/String;
    MethodParameters:
                     Name  Flags
      awtFontName          
      characterSubsetName  

  protected void initReorderMap();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 171
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield sun.font.FcFontConfiguration.reorderMap:Ljava/util/HashMap;
         1: .line 172
            return
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/font/FcFontConfiguration;

  protected sun.awt.FontDescriptor[] buildFontDescriptors(int, int);
    descriptor: (II)[Lsun/awt/FontDescriptor;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=8, args_size=3
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // int fontIndex
        start local 2 // int styleIndex
         0: .line 176
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.get2DCompositeFontInfo:()[Lsun/font/CompositeFontDescriptor;
            astore 3 /* cfi */
        start local 3 // sun.font.CompositeFontDescriptor[] cfi
         1: .line 177
            iload 1 /* fontIndex */
            iconst_4
            imul
            iload 2 /* styleIndex */
            iadd
            istore 4 /* idx */
        start local 4 // int idx
         2: .line 178
            aload 3 /* cfi */
            iload 4 /* idx */
            aaload
            invokevirtual sun.font.CompositeFontDescriptor.getComponentFaceNames:()[Ljava/lang/String;
            astore 5 /* componentFaceNames */
        start local 5 // java.lang.String[] componentFaceNames
         3: .line 179
            aload 5 /* componentFaceNames */
            arraylength
            anewarray sun.awt.FontDescriptor
            astore 6 /* ret */
        start local 6 // sun.awt.FontDescriptor[] ret
         4: .line 180
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 8
         6: .line 181
      StackMap locals: sun.font.FcFontConfiguration int int sun.font.CompositeFontDescriptor[] int java.lang.String[] sun.awt.FontDescriptor[] int
      StackMap stack:
            aload 6 /* ret */
            iload 7 /* i */
            new sun.awt.FontDescriptor
            dup
            aload 5 /* componentFaceNames */
            iload 7 /* i */
            aaload
            getstatic java.nio.charset.StandardCharsets.ISO_8859_1:Ljava/nio/charset/Charset;
            invokevirtual java.nio.charset.Charset.newEncoder:()Ljava/nio/charset/CharsetEncoder;
            iconst_0
            newarray 10
            invokespecial sun.awt.FontDescriptor.<init>:(Ljava/lang/String;Ljava/nio/charset/CharsetEncoder;[I)V
            aastore
         7: .line 180
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 7 /* i */
            aload 5 /* componentFaceNames */
            arraylength
            if_icmplt 6
        end local 7 // int i
         9: .line 184
            aload 6 /* ret */
            areturn
        end local 6 // sun.awt.FontDescriptor[] ret
        end local 5 // java.lang.String[] componentFaceNames
        end local 4 // int idx
        end local 3 // sun.font.CompositeFontDescriptor[] cfi
        end local 2 // int styleIndex
        end local 1 // int fontIndex
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   10     0                this  Lsun/font/FcFontConfiguration;
            0   10     1           fontIndex  I
            0   10     2          styleIndex  I
            1   10     3                 cfi  [Lsun/font/CompositeFontDescriptor;
            2   10     4                 idx  I
            3   10     5  componentFaceNames  [Ljava/lang/String;
            4   10     6                 ret  [Lsun/awt/FontDescriptor;
            5    9     7                   i  I
    MethodParameters:
            Name  Flags
      fontIndex   
      styleIndex  

  public int getNumberCoreFonts();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 189
            iconst_1
            ireturn
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/FcFontConfiguration;

  public java.lang.String[] getPlatformFontNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 194
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* nameSet */
        start local 1 // java.util.HashSet nameSet
         1: .line 195
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
            checkcast sun.awt.FcFontManager
            astore 2 /* fm */
        start local 2 // sun.awt.FcFontManager fm
         2: .line 196
            aload 2 /* fm */
            invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
            astore 3 /* fcm */
        start local 3 // sun.font.FontConfigManager fcm
         3: .line 197
            aload 3 /* fcm */
            invokevirtual sun.font.FontConfigManager.loadFontConfig:()[Lsun/font/FontConfigManager$FcCompFont;
            astore 4 /* fcCompFonts */
        start local 4 // sun.font.FontConfigManager$FcCompFont[] fcCompFonts
         4: .line 198
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 12
         6: .line 199
      StackMap locals: sun.font.FcFontConfiguration java.util.HashSet sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FcCompFont[] int
      StackMap stack:
            iconst_0
            istore 6 /* j */
        start local 6 // int j
         7: goto 10
         8: .line 200
      StackMap locals: int
      StackMap stack:
            aload 1 /* nameSet */
            aload 4 /* fcCompFonts */
            iload 5 /* i */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iload 6 /* j */
            aaload
            getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
         9: .line 199
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
        10: iload 6 /* j */
            aload 4 /* fcCompFonts */
            iload 5 /* i */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            arraylength
            if_icmplt 8
        end local 6 // int j
        11: .line 198
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            aload 4 /* fcCompFonts */
            arraylength
            if_icmplt 6
        end local 5 // int i
        13: .line 203
            aload 1 /* nameSet */
            iconst_0
            anewarray java.lang.String
            invokevirtual java.util.HashSet.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 4 // sun.font.FontConfigManager$FcCompFont[] fcCompFonts
        end local 3 // sun.font.FontConfigManager fcm
        end local 2 // sun.awt.FcFontManager fm
        end local 1 // java.util.HashSet nameSet
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lsun/font/FcFontConfiguration;
            1   14     1      nameSet  Ljava/util/HashSet<Ljava/lang/String;>;
            2   14     2           fm  Lsun/awt/FcFontManager;
            3   14     3          fcm  Lsun/font/FontConfigManager;
            4   14     4  fcCompFonts  [Lsun/font/FontConfigManager$FcCompFont;
            5   13     5            i  I
            7   11     6            j  I

  public java.lang.String getExtraFontPath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 208
            aconst_null
            areturn
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/FcFontConfiguration;

  public boolean needToSearchForFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // java.lang.String fileName
         0: .line 213
            iconst_0
            ireturn
        end local 1 // java.lang.String fileName
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lsun/font/FcFontConfiguration;
            0    1     1  fileName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fileName  

  private sun.font.FontConfigManager$FontConfigFont[] getFcFontList(sun.font.FontConfigManager$FcCompFont[], java.lang.String, int);
    descriptor: ([Lsun/font/FontConfigManager$FcCompFont;Ljava/lang/String;I)[Lsun/font/FontConfigManager$FontConfigFont;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // sun.font.FontConfigManager$FcCompFont[] fcFonts
        start local 2 // java.lang.String fontname
        start local 3 // int style
         0: .line 219
            aload 2 /* fontname */
            ldc "dialog"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 220
            ldc "sansserif"
            astore 2 /* fontname */
         2: .line 221
            goto 5
      StackMap locals:
      StackMap stack:
         3: aload 2 /* fontname */
            ldc "dialoginput"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 222
            ldc "monospaced"
            astore 2 /* fontname */
         5: .line 224
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 11
         7: .line 225
      StackMap locals: int
      StackMap stack:
            aload 2 /* fontname */
            aload 1 /* fcFonts */
            iload 4 /* i */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         8: .line 226
            iload 3 /* style */
            aload 1 /* fcFonts */
            iload 4 /* i */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.style:I
            if_icmpne 10
         9: .line 227
            aload 1 /* fcFonts */
            iload 4 /* i */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            areturn
        10: .line 224
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            aload 1 /* fcFonts */
            arraylength
            if_icmplt 7
        end local 4 // int i
        12: .line 230
            aload 1 /* fcFonts */
            iconst_0
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            areturn
        end local 3 // int style
        end local 2 // java.lang.String fontname
        end local 1 // sun.font.FontConfigManager$FcCompFont[] fcFonts
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lsun/font/FcFontConfiguration;
            0   13     1   fcFonts  [Lsun/font/FontConfigManager$FcCompFont;
            0   13     2  fontname  Ljava/lang/String;
            0   13     3     style  I
            6   12     4         i  I
    MethodParameters:
          Name  Flags
      fcFonts   
      fontname  
      style     

  public sun.font.CompositeFontDescriptor[] get2DCompositeFontInfo();
    descriptor: ()[Lsun/font/CompositeFontDescriptor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=14, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 236
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
            checkcast sun.awt.FcFontManager
            astore 1 /* fm */
        start local 1 // sun.awt.FcFontManager fm
         1: .line 237
            aload 1 /* fm */
            invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
            astore 2 /* fcm */
        start local 2 // sun.font.FontConfigManager fcm
         2: .line 238
            aload 2 /* fcm */
            invokevirtual sun.font.FontConfigManager.loadFontConfig:()[Lsun/font/FontConfigManager$FcCompFont;
            astore 3 /* fcCompFonts */
        start local 3 // sun.font.FontConfigManager$FcCompFont[] fcCompFonts
         3: .line 241
            bipush 20
            anewarray sun.font.CompositeFontDescriptor
         4: .line 240
            astore 4 /* result */
        start local 4 // sun.font.CompositeFontDescriptor[] result
         5: .line 243
            iconst_0
            istore 5 /* fontIndex */
        start local 5 // int fontIndex
         6: goto 43
         7: .line 244
      StackMap locals: sun.font.FcFontConfiguration sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FcCompFont[] sun.font.CompositeFontDescriptor[] int
      StackMap stack:
            getstatic sun.font.FcFontConfiguration.publicFontNames:[Ljava/lang/String;
            iload 5 /* fontIndex */
            aaload
            astore 6 /* fontName */
        start local 6 // java.lang.String fontName
         8: .line 246
            iconst_0
            istore 7 /* styleIndex */
        start local 7 // int styleIndex
         9: goto 41
        10: .line 248
      StackMap locals: java.lang.String int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* fontName */
            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;
            getstatic sun.font.FcFontConfiguration.styleNames:[Ljava/lang/String;
            iload 7 /* styleIndex */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* faceName */
        start local 8 // java.lang.String faceName
        11: .line 250
            aload 0 /* this */
            aload 3 /* fcCompFonts */
        12: .line 251
            getstatic sun.font.FcFontConfiguration.fontNames:[Ljava/lang/String;
            iload 5 /* fontIndex */
            aaload
            iload 7 /* styleIndex */
        13: .line 250
            invokevirtual sun.font.FcFontConfiguration.getFcFontList:([Lsun/font/FontConfigManager$FcCompFont;Ljava/lang/String;I)[Lsun/font/FontConfigManager$FontConfigFont;
        14: .line 249
            astore 9 /* fcFonts */
        start local 9 // sun.font.FontConfigManager$FontConfigFont[] fcFonts
        15: .line 253
            aload 9 /* fcFonts */
            arraylength
            istore 10 /* numFonts */
        start local 10 // int numFonts
        16: .line 255
            getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
            ifnull 18
        17: .line 256
            iload 10 /* numFonts */
            getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
            arraylength
            iadd
            istore 10 /* numFonts */
        18: .line 259
      StackMap locals: java.lang.String sun.font.FontConfigManager$FontConfigFont[] int
      StackMap stack:
            iload 10 /* numFonts */
            anewarray java.lang.String
            astore 11 /* fileNames */
        start local 11 // java.lang.String[] fileNames
        19: .line 260
            iload 10 /* numFonts */
            anewarray java.lang.String
            astore 12 /* faceNames */
        start local 12 // java.lang.String[] faceNames
        20: .line 263
            iconst_0
            istore 13 /* index */
        start local 13 // int index
        21: goto 25
        22: .line 264
      StackMap locals: java.lang.String[] java.lang.String[] int
      StackMap stack:
            aload 11 /* fileNames */
            iload 13 /* index */
            aload 9 /* fcFonts */
            iload 13 /* index */
            aaload
            getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
            aastore
        23: .line 265
            aload 12 /* faceNames */
            iload 13 /* index */
            aload 9 /* fcFonts */
            iload 13 /* index */
            aaload
            getfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
            aastore
        24: .line 263
            iinc 13 /* index */ 1
      StackMap locals:
      StackMap stack:
        25: iload 13 /* index */
            aload 9 /* fcFonts */
            arraylength
            if_icmplt 22
        26: .line 268
            getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
            ifnull 31
        27: .line 269
            getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
            iconst_0
        28: .line 270
            aload 11 /* fileNames */
            aload 9 /* fcFonts */
            arraylength
        29: .line 271
            getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
            arraylength
        30: .line 269
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        31: .line 274
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            iload 5 /* fontIndex */
            iconst_4
            imul
            iload 7 /* styleIndex */
            iadd
        32: .line 275
            new sun.font.CompositeFontDescriptor
            dup
        33: .line 276
            aload 8 /* faceName */
        34: .line 277
            iconst_1
        35: .line 278
            aload 12 /* faceNames */
        36: .line 279
            aload 11 /* fileNames */
        37: .line 280
            aconst_null
            aconst_null
        38: .line 275
            invokespecial sun.font.CompositeFontDescriptor.<init>:(Ljava/lang/String;I[Ljava/lang/String;[Ljava/lang/String;[I[I)V
        39: .line 274
            aastore
        end local 13 // int index
        end local 12 // java.lang.String[] faceNames
        end local 11 // java.lang.String[] fileNames
        end local 10 // int numFonts
        end local 9 // sun.font.FontConfigManager$FontConfigFont[] fcFonts
        end local 8 // java.lang.String faceName
        40: .line 246
            iinc 7 /* styleIndex */ 1
      StackMap locals: sun.font.FcFontConfiguration sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FcCompFont[] sun.font.CompositeFontDescriptor[] int java.lang.String int
      StackMap stack:
        41: iload 7 /* styleIndex */
            iconst_4
            if_icmplt 10
        end local 7 // int styleIndex
        end local 6 // java.lang.String fontName
        42: .line 243
            iinc 5 /* fontIndex */ 1
      StackMap locals:
      StackMap stack:
        43: iload 5 /* fontIndex */
            iconst_5
            if_icmplt 7
        end local 5 // int fontIndex
        44: .line 283
            aload 4 /* result */
            areturn
        end local 4 // sun.font.CompositeFontDescriptor[] result
        end local 3 // sun.font.FontConfigManager$FcCompFont[] fcCompFonts
        end local 2 // sun.font.FontConfigManager fcm
        end local 1 // sun.awt.FcFontManager fm
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   45     0         this  Lsun/font/FcFontConfiguration;
            1   45     1           fm  Lsun/awt/FcFontManager;
            2   45     2          fcm  Lsun/font/FontConfigManager;
            3   45     3  fcCompFonts  [Lsun/font/FontConfigManager$FcCompFont;
            5   45     4       result  [Lsun/font/CompositeFontDescriptor;
            6   44     5    fontIndex  I
            8   42     6     fontName  Ljava/lang/String;
            9   42     7   styleIndex  I
           11   40     8     faceName  Ljava/lang/String;
           15   40     9      fcFonts  [Lsun/font/FontConfigManager$FontConfigFont;
           16   40    10     numFonts  I
           19   40    11    fileNames  [Ljava/lang/String;
           20   40    12    faceNames  [Ljava/lang/String;
           21   40    13        index  I

  private java.lang.String getVersionString(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.font.FcFontConfiguration this
        start local 1 // java.io.File f
         0: .line 290
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: new java.util.Scanner
            dup
            aload 1 /* f */
            invokespecial java.util.Scanner.<init>:(Ljava/io/File;)V
            astore 4 /* sc */
        start local 4 // java.util.Scanner sc
         2: .line 291
            aload 4 /* sc */
            ldc "(\\d)+((\\.)(\\d)+)*"
            invokevirtual java.util.Scanner.findInLine:(Ljava/lang/String;)Ljava/lang/String;
         3: .line 292
            aload 4 /* sc */
            ifnull 4
            aload 4 /* sc */
            invokevirtual java.util.Scanner.close:()V
         4: .line 291
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.lang.Throwable java.lang.Throwable java.util.Scanner
      StackMap stack: java.lang.String
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
         5: astore 2
         6: .line 292
            aload 4 /* sc */
            ifnull 7
            aload 4 /* sc */
            invokevirtual java.util.Scanner.close:()V
        end local 4 // java.util.Scanner sc
      StackMap locals:
      StackMap stack:
         7: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: astore 3
            aload 2
            ifnonnull 9
            aload 3
            astore 2
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 2
            aload 3
            if_acmpeq 10
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals: sun.font.FcFontConfiguration java.io.File
      StackMap stack: java.lang.Exception
        11: pop
        12: .line 294
            aconst_null
            areturn
        end local 1 // java.io.File f
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lsun/font/FcFontConfiguration;
            0   13     1     f  Ljava/io/File;
            2    7     4    sc  Ljava/util/Scanner;
      Exception table:
        from    to  target  type
           2     3       5  any
           1     4       8  any
           5     8       8  any
           0     4      11  Class java.lang.Exception
           5    11      11  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      f     

  protected void setOsNameAndVersion();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 303
            aload 0 /* this */
            invokespecial sun.awt.FontConfiguration.setOsNameAndVersion:()V
         1: .line 305
            getstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
            ldc "Linux"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
         2: .line 306
            return
         3: .line 310
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            ldc "/etc/lsb-release"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            dup
            astore 1 /* f */
        start local 1 // java.io.File f
         4: invokevirtual java.io.File.canRead:()Z
            ifeq 10
         5: .line 315
            new java.util.Properties
            dup
            invokespecial java.util.Properties.<init>:()V
            astore 2 /* props */
        start local 2 // java.util.Properties props
         6: .line 316
            aload 2 /* props */
            new java.io.FileInputStream
            dup
            aload 1 /* f */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
         7: .line 317
            aload 2 /* props */
            ldc "DISTRIB_ID"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
         8: .line 318
            aload 2 /* props */
            ldc "DISTRIB_RELEASE"
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
        end local 2 // java.util.Properties props
         9: .line 319
            goto 29
      StackMap locals: java.io.File
      StackMap stack:
        10: new java.io.File
            dup
            ldc "/etc/redhat-release"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            dup
            astore 1 /* f */
            invokevirtual java.io.File.canRead:()Z
            ifeq 14
        11: .line 320
            ldc "RedHat"
            putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
        12: .line 321
            aload 0 /* this */
            aload 1 /* f */
            invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
            putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
        13: .line 322
            goto 29
      StackMap locals:
      StackMap stack:
        14: new java.io.File
            dup
            ldc "/etc/SuSE-release"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            dup
            astore 1 /* f */
            invokevirtual java.io.File.canRead:()Z
            ifeq 18
        15: .line 323
            ldc "SuSE"
            putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
        16: .line 324
            aload 0 /* this */
            aload 1 /* f */
            invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
            putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
        17: .line 325
            goto 29
      StackMap locals:
      StackMap stack:
        18: new java.io.File
            dup
            ldc "/etc/turbolinux-release"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            dup
            astore 1 /* f */
            invokevirtual java.io.File.canRead:()Z
            ifeq 22
        19: .line 326
            ldc "Turbo"
            putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
        20: .line 327
            aload 0 /* this */
            aload 1 /* f */
            invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
            putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
        21: .line 328
            goto 29
      StackMap locals:
      StackMap stack:
        22: new java.io.File
            dup
            ldc "/etc/fedora-release"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            dup
            astore 1 /* f */
            invokevirtual java.io.File.canRead:()Z
            ifeq 29
        23: .line 329
            ldc "Fedora"
            putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
        24: .line 330
            aload 0 /* this */
            aload 1 /* f */
            invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
            putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
        end local 1 // java.io.File f
        25: .line 332
            goto 29
      StackMap locals: sun.font.FcFontConfiguration
      StackMap stack: java.lang.Exception
        26: pop
        27: .line 333
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 29
        28: .line 334
            ldc "Exception identifying Linux distro."
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        29: .line 337
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   30     0   this  Lsun/font/FcFontConfiguration;
            4   25     1      f  Ljava/io/File;
            6    9     2  props  Ljava/util/Properties;
      Exception table:
        from    to  target  type
           3    25      26  Class java.lang.Exception

  private java.io.File getFcInfoFile();
    descriptor: ()Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 340
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
            ifnonnull 16
         1: .line 348
            invokestatic java.net.InetAddress.getLocalHost:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.getHostName:()Ljava/lang/String;
            astore 1 /* hostname */
        start local 1 // java.lang.String hostname
         2: .line 349
            goto 5
        end local 1 // java.lang.String hostname
      StackMap locals:
      StackMap stack: java.net.UnknownHostException
         3: pop
         4: .line 350
            ldc "localhost"
            astore 1 /* hostname */
        start local 1 // java.lang.String hostname
         5: .line 352
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "user.home"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* userDir */
        start local 2 // java.lang.String userDir
         6: .line 353
            ldc "java.version"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* version */
        start local 3 // java.lang.String version
         7: .line 354
            getstatic java.io.File.separator:Ljava/lang/String;
            astore 4 /* fs */
        start local 4 // java.lang.String fs
         8: .line 355
            new java.lang.StringBuilder
            dup
            aload 2 /* userDir */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* fs */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".java"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* fs */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "fonts"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* fs */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* version */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* dir */
        start local 5 // java.lang.String dir
         9: .line 356
            invokestatic sun.awt.SunToolkit.getStartupLocale:()Ljava/util/Locale;
            astore 6 /* locale */
        start local 6 // java.util.Locale locale
        10: .line 357
            aload 6 /* locale */
            invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
            astore 7 /* lang */
        start local 7 // java.lang.String lang
        11: .line 358
            aload 6 /* locale */
            invokevirtual java.util.Locale.getCountry:()Ljava/lang/String;
            astore 8 /* country */
        start local 8 // java.lang.String country
        12: .line 359
            new java.lang.StringBuilder
            dup
            ldc "fcinfo-1-"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* hostname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 360
            getstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* lang */
            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 /* country */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".properties"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        14: .line 359
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 9 /* name */
        start local 9 // java.lang.String name
        15: .line 361
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 5 /* dir */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* fs */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 9 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
        end local 9 // java.lang.String name
        end local 8 // java.lang.String country
        end local 7 // java.lang.String lang
        end local 6 // java.util.Locale locale
        end local 5 // java.lang.String dir
        end local 4 // java.lang.String fs
        end local 3 // java.lang.String version
        end local 2 // java.lang.String userDir
        end local 1 // java.lang.String hostname
        16: .line 363
      StackMap locals:
      StackMap stack:
            new java.io.File
            dup
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0      this  Lsun/font/FcFontConfiguration;
            2    3     1  hostname  Ljava/lang/String;
            5   16     1  hostname  Ljava/lang/String;
            6   16     2   userDir  Ljava/lang/String;
            7   16     3   version  Ljava/lang/String;
            8   16     4        fs  Ljava/lang/String;
            9   16     5       dir  Ljava/lang/String;
           10   16     6    locale  Ljava/util/Locale;
           11   16     7      lang  Ljava/lang/String;
           12   16     8   country  Ljava/lang/String;
           15   16     9      name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     2       3  Class java.net.UnknownHostException

  private void writeFcInfo();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 367
            new java.util.Properties
            dup
            invokespecial java.util.Properties.<init>:()V
            astore 1 /* props */
        start local 1 // java.util.Properties props
         1: .line 368
            aload 1 /* props */
            ldc "version"
            ldc "1"
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 369
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
            checkcast sun.awt.FcFontManager
            astore 2 /* fm */
        start local 2 // sun.awt.FcFontManager fm
         3: .line 370
            aload 2 /* fm */
            invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
            astore 3 /* fcm */
        start local 3 // sun.font.FontConfigManager fcm
         4: .line 371
            aload 3 /* fcm */
            invokevirtual sun.font.FontConfigManager.getFontConfigInfo:()Lsun/font/FontConfigManager$FontConfigInfo;
            astore 4 /* fcInfo */
        start local 4 // sun.font.FontConfigManager$FontConfigInfo fcInfo
         5: .line 372
            aload 1 /* props */
            ldc "fcversion"
            aload 4 /* fcInfo */
            getfield sun.font.FontConfigManager$FontConfigInfo.fcVersion:I
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
         6: .line 373
            aload 4 /* fcInfo */
            getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
            ifnull 13
         7: .line 374
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 12
         9: .line 375
      StackMap locals: sun.font.FcFontConfiguration java.util.Properties sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FontConfigInfo int
      StackMap stack:
            aload 4 /* fcInfo */
            getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
            iload 5 /* i */
            aaload
            ifnull 11
        10: .line 376
            aload 1 /* props */
            new java.lang.StringBuilder
            dup
            ldc "cachedir."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* fcInfo */
            getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
            iload 5 /* i */
            aaload
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
        11: .line 374
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            aload 4 /* fcInfo */
            getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
            arraylength
            if_icmplt 9
        end local 5 // int i
        13: .line 380
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        14: goto 32
        15: .line 381
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
            iload 5 /* i */
            aaload
            astore 6 /* fci */
        start local 6 // sun.font.FontConfigManager$FcCompFont fci
        16: .line 382
            new java.lang.StringBuilder
            dup
            aload 6 /* fci */
            getfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
            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 6 /* fci */
            getfield sun.font.FontConfigManager$FcCompFont.style:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* styleKey */
        start local 7 // java.lang.String styleKey
        17: .line 383
            aload 1 /* props */
            new java.lang.StringBuilder
            dup
            aload 7 /* styleKey */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".length"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 384
            aload 6 /* fci */
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            arraylength
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
        19: .line 383
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
        20: .line 385
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        21: goto 30
        22: .line 386
      StackMap locals: sun.font.FontConfigManager$FcCompFont java.lang.String int
      StackMap stack:
            aload 1 /* props */
            new java.lang.StringBuilder
            dup
            aload 7 /* styleKey */
            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;
            iload 8 /* j */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ".file"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        23: .line 387
            aload 6 /* fci */
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iload 8 /* j */
            aaload
            getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
        24: .line 386
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
        25: .line 388
            aload 6 /* fci */
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iload 8 /* j */
            aaload
            getfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
            ifnull 29
        26: .line 389
            aload 1 /* props */
            new java.lang.StringBuilder
            dup
            aload 7 /* styleKey */
            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;
            iload 8 /* j */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ".fullName"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 390
            aload 6 /* fci */
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iload 8 /* j */
            aaload
            getfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
        28: .line 389
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
        29: .line 385
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        30: iload 8 /* j */
            aload 6 /* fci */
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            arraylength
            if_icmplt 22
        end local 8 // int j
        end local 7 // java.lang.String styleKey
        end local 6 // sun.font.FontConfigManager$FcCompFont fci
        31: .line 380
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 5 /* i */
            aload 0 /* this */
            getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
            arraylength
            if_icmplt 15
        end local 5 // int i
        33: .line 399
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
            astore 5 /* fcInfoFile */
        start local 5 // java.io.File fcInfoFile
        34: .line 400
            aload 5 /* fcInfoFile */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            astore 6 /* dir */
        start local 6 // java.io.File dir
        35: .line 401
            aload 6 /* dir */
            invokevirtual java.io.File.mkdirs:()Z
            pop
        36: .line 402
            aload 6 /* dir */
            invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
            ldc "fcinfo"
            aconst_null
            iconst_0
            anewarray java.nio.file.attribute.FileAttribute
            invokestatic java.nio.file.Files.createTempFile:(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
            astore 7 /* tempFile */
        start local 7 // java.io.File tempFile
        37: .line 403
            new java.io.FileOutputStream
            dup
            aload 7 /* tempFile */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            astore 8 /* fos */
        start local 8 // java.io.FileOutputStream fos
        38: .line 404
            aload 1 /* props */
            aload 8 /* fos */
        39: .line 405
            ldc "JDK Font Configuration Generated File: *Do Not Edit*"
        40: .line 404
            invokevirtual java.util.Properties.store:(Ljava/io/OutputStream;Ljava/lang/String;)V
        41: .line 406
            aload 8 /* fos */
            invokevirtual java.io.FileOutputStream.close:()V
        42: .line 407
            aload 7 /* tempFile */
            aload 5 /* fcInfoFile */
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            istore 9 /* renamed */
        start local 9 // boolean renamed
        43: .line 408
            iload 9 /* renamed */
            ifne 50
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 50
        44: .line 409
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "rename failed"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        45: .line 410
            new java.lang.StringBuilder
            dup
            ldc "Failed renaming file to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        end local 9 // boolean renamed
        end local 8 // java.io.FileOutputStream fos
        end local 7 // java.io.File tempFile
        end local 6 // java.io.File dir
        end local 5 // java.io.File fcInfoFile
        46: .line 412
            goto 50
      StackMap locals: sun.font.FcFontConfiguration java.util.Properties sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FontConfigInfo
      StackMap stack: java.lang.Exception
        47: pop
        48: .line 413
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 50
        49: .line 414
            new java.lang.StringBuilder
            dup
            ldc "IOException writing to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        50: .line 417
      StackMap locals:
      StackMap stack:
            return
        end local 4 // sun.font.FontConfigManager$FontConfigInfo fcInfo
        end local 3 // sun.font.FontConfigManager fcm
        end local 2 // sun.awt.FcFontManager fm
        end local 1 // java.util.Properties props
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   51     0        this  Lsun/font/FcFontConfiguration;
            1   51     1       props  Ljava/util/Properties;
            3   51     2          fm  Lsun/awt/FcFontManager;
            4   51     3         fcm  Lsun/font/FontConfigManager;
            5   51     4      fcInfo  Lsun/font/FontConfigManager$FontConfigInfo;
            8   13     5           i  I
           14   33     5           i  I
           16   31     6         fci  Lsun/font/FontConfigManager$FcCompFont;
           17   31     7    styleKey  Ljava/lang/String;
           21   31     8           j  I
           34   46     5  fcInfoFile  Ljava/io/File;
           35   46     6         dir  Ljava/io/File;
           37   46     7    tempFile  Ljava/io/File;
           38   46     8         fos  Ljava/io/FileOutputStream;
           43   46     9     renamed  Z
      Exception table:
        from    to  target  type
          33    46      47  Class java.lang.Exception

  private void readFcInfo();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=23, args_size=1
        start local 0 // sun.font.FcFontConfiguration this
         0: .line 425
            aload 0 /* this */
            invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
            astore 1 /* fcFile */
        start local 1 // java.io.File fcFile
         1: .line 426
            aload 1 /* fcFile */
            invokevirtual java.io.File.exists:()Z
            ifne 5
         2: .line 427
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 4
         3: .line 428
            new java.lang.StringBuilder
            dup
            ldc "fontconfig info file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fcFile */
            invokevirtual java.io.File.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " does not exist"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
         4: .line 430
      StackMap locals: java.io.File
      StackMap stack:
            return
         5: .line 432
      StackMap locals:
      StackMap stack:
            new java.util.Properties
            dup
            invokespecial java.util.Properties.<init>:()V
            astore 2 /* props */
        start local 2 // java.util.Properties props
         6: .line 433
            aconst_null
            astore 3
            aconst_null
            astore 4
         7: new java.io.FileInputStream
            dup
            aload 1 /* fcFile */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 5 /* fis */
        start local 5 // java.io.FileInputStream fis
         8: .line 434
            aload 2 /* props */
            aload 5 /* fis */
            invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
         9: .line 435
            aload 5 /* fis */
            ifnull 19
            aload 5 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
            goto 19
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.Throwable java.lang.Throwable java.io.FileInputStream
      StackMap stack: java.lang.Throwable
        10: astore 3
            aload 5 /* fis */
            ifnull 11
            aload 5 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        end local 5 // java.io.FileInputStream fis
      StackMap locals:
      StackMap stack:
        11: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: astore 4
            aload 3
            ifnonnull 13
            aload 4
            astore 3
            goto 14
      StackMap locals:
      StackMap stack:
        13: aload 3
            aload 4
            if_acmpeq 14
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        14: aload 3
            athrow
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties
      StackMap stack: java.io.IOException
        15: astore 3 /* e */
        start local 3 // java.io.IOException e
        16: .line 436
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 18
        17: .line 437
            new java.lang.StringBuilder
            dup
            ldc "IOException ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* e */
            invokevirtual java.io.IOException.getCause:()Ljava/lang/Throwable;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ") reading from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* fcFile */
            invokevirtual java.io.File.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        18: .line 439
      StackMap locals: java.io.IOException
      StackMap stack:
            return
        end local 3 // java.io.IOException e
        19: .line 441
      StackMap locals:
      StackMap stack:
            aload 2 /* props */
            ldc "version"
            invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* version */
        start local 3 // java.lang.String version
        20: .line 442
            aload 3 /* version */
            ifnull 21
            aload 3 /* version */
            ldc "1"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 26
        21: .line 443
      StackMap locals: java.lang.String
      StackMap stack:
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 25
        22: .line 444
            new java.lang.StringBuilder
            dup
            ldc "fontconfig info file version mismatch (found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* version */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 445
            ldc ", expected: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "1"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        24: .line 444
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        25: .line 447
      StackMap locals:
      StackMap stack:
            return
        26: .line 452
      StackMap locals:
      StackMap stack:
            aload 2 /* props */
            ldc "fcversion"
            invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* fcVersionStr */
        start local 4 // java.lang.String fcVersionStr
        27: .line 453
            aload 4 /* fcVersionStr */
            ifnull 38
        28: .line 456
            aload 4 /* fcVersionStr */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 5 /* fcVersion */
        start local 5 // int fcVersion
        29: .line 457
            iload 5 /* fcVersion */
            ifeq 38
        30: .line 458
            iload 5 /* fcVersion */
            invokestatic sun.font.FontConfigManager.getFontConfigVersion:()I
            if_icmpeq 38
        31: .line 459
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 33
        32: .line 460
            ldc "new, different fontconfig detected"
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        33: .line 462
      StackMap locals: java.lang.String int
      StackMap stack:
            return
        end local 5 // int fcVersion
        34: .line 464
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String
      StackMap stack: java.lang.Exception
            pop
        35: .line 465
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 37
        36: .line 466
            new java.lang.StringBuilder
            dup
            ldc "Exception parsing version "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* fcVersionStr */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        37: .line 468
      StackMap locals:
      StackMap stack:
            return
        38: .line 475
      StackMap locals:
      StackMap stack:
            aload 1 /* fcFile */
            invokevirtual java.io.File.lastModified:()J
            lstore 5 /* lastModified */
        start local 5 // long lastModified
        39: .line 476
            iconst_0
            istore 7 /* cacheDirIndex */
        start local 7 // int cacheDirIndex
        40: .line 477
            goto 50
        41: .line 478
      StackMap locals: long int
      StackMap stack:
            aload 2 /* props */
            new java.lang.StringBuilder
            dup
            ldc "cachedir."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 7 /* cacheDirIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* dir */
        start local 8 // java.lang.String dir
        42: .line 479
            aload 8 /* dir */
            ifnonnull 44
        43: .line 480
            goto 51
        44: .line 482
      StackMap locals: java.lang.String
      StackMap stack:
            new java.io.File
            dup
            aload 8 /* dir */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 9 /* dirFile */
        start local 9 // java.io.File dirFile
        45: .line 483
            aload 9 /* dirFile */
            invokevirtual java.io.File.exists:()Z
            ifeq 49
            aload 9 /* dirFile */
            invokevirtual java.io.File.lastModified:()J
            lload 5 /* lastModified */
            lcmp
            ifle 49
        46: .line 484
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 48
        47: .line 485
            ldc "out of date cache directories detected"
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        48: .line 487
      StackMap locals: java.io.File
      StackMap stack:
            return
        49: .line 489
      StackMap locals:
      StackMap stack:
            iinc 7 /* cacheDirIndex */ 1
        end local 9 // java.io.File dirFile
        end local 8 // java.lang.String dir
        50: .line 477
      StackMap locals:
      StackMap stack:
            iload 7 /* cacheDirIndex */
            iconst_4
            if_icmplt 41
        51: .line 492
      StackMap locals:
      StackMap stack:
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "sansserif"
            aastore
            dup
            iconst_1
            ldc "serif"
            aastore
            dup
            iconst_2
            ldc "monospaced"
            aastore
            astore 8 /* names */
        start local 8 // java.lang.String[] names
        52: .line 493
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "sans"
            aastore
            dup
            iconst_1
            ldc "serif"
            aastore
            dup
            iconst_2
            ldc "monospace"
            aastore
            astore 9 /* fcnames */
        start local 9 // java.lang.String[] fcnames
        53: .line 494
            aload 8 /* names */
            arraylength
            istore 10 /* namesLen */
        start local 10 // int namesLen
        54: .line 495
            iconst_4
            istore 11 /* numStyles */
        start local 11 // int numStyles
        55: .line 496
            iload 10 /* namesLen */
            iload 11 /* numStyles */
            imul
            anewarray sun.font.FontConfigManager$FcCompFont
            astore 12 /* fci */
        start local 12 // sun.font.FontConfigManager$FcCompFont[] fci
        56: .line 499
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        57: goto 92
        58: .line 500
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[] int
      StackMap stack:
            iconst_0
            istore 14 /* s */
        start local 14 // int s
        59: goto 90
        60: .line 501
      StackMap locals: int
      StackMap stack:
            iload 13 /* i */
            iload 11 /* numStyles */
            imul
            iload 14 /* s */
            iadd
            istore 15 /* index */
        start local 15 // int index
        61: .line 502
            aload 12 /* fci */
            iload 15 /* index */
            new sun.font.FontConfigManager$FcCompFont
            dup
            invokespecial sun.font.FontConfigManager$FcCompFont.<init>:()V
            aastore
        62: .line 503
            new java.lang.StringBuilder
            dup
            aload 8 /* names */
            iload 13 /* i */
            aaload
            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;
            iload 14 /* s */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 16 /* key */
        start local 16 // java.lang.String key
        63: .line 504
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            aload 8 /* names */
            iload 13 /* i */
            aaload
            putfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
        64: .line 505
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            aload 9 /* fcnames */
            iload 13 /* i */
            aaload
            putfield sun.font.FontConfigManager$FcCompFont.fcFamily:Ljava/lang/String;
        65: .line 506
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            iload 14 /* s */
            putfield sun.font.FontConfigManager$FcCompFont.style:I
        66: .line 507
            aload 2 /* props */
            new java.lang.StringBuilder
            dup
            aload 16 /* key */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".length"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 17 /* lenStr */
        start local 17 // java.lang.String lenStr
        67: .line 508
            aload 17 /* lenStr */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 18 /* nfonts */
        start local 18 // int nfonts
        68: .line 509
            iload 18 /* nfonts */
            ifgt 72
        69: .line 510
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 71
        70: .line 511
            new java.lang.StringBuilder
            dup
            ldc "bad non-positive .length entry in fontconfig file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fcFile */
            invokevirtual java.io.File.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        71: .line 513
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[] int int int java.lang.String java.lang.String int
      StackMap stack:
            return
        72: .line 515
      StackMap locals:
      StackMap stack:
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            iload 18 /* nfonts */
            anewarray sun.font.FontConfigManager$FontConfigFont
            putfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
        73: .line 516
            iconst_0
            istore 19 /* f */
        start local 19 // int f
        74: goto 87
        75: .line 517
      StackMap locals: int
      StackMap stack:
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iload 19 /* f */
            new sun.font.FontConfigManager$FontConfigFont
            dup
            invokespecial sun.font.FontConfigManager$FontConfigFont.<init>:()V
            aastore
        76: .line 518
            new java.lang.StringBuilder
            dup
            aload 16 /* key */
            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;
            iload 19 /* f */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ".fullName"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 20 /* fkey */
        start local 20 // java.lang.String fkey
        77: .line 519
            aload 2 /* props */
            aload 20 /* fkey */
            invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 21 /* fullName */
        start local 21 // java.lang.String fullName
        78: .line 520
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iload 19 /* f */
            aaload
            aload 21 /* fullName */
            putfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
        79: .line 521
            new java.lang.StringBuilder
            dup
            aload 16 /* key */
            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;
            iload 19 /* f */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ".file"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 20 /* fkey */
        80: .line 522
            aload 2 /* props */
            aload 20 /* fkey */
            invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 22 /* file */
        start local 22 // java.lang.String file
        81: .line 523
            aload 22 /* file */
            ifnonnull 85
        82: .line 524
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 84
        83: .line 525
            new java.lang.StringBuilder
            dup
            ldc "missing file value for key "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 20 /* fkey */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in fontconfig file "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* fcFile */
            invokevirtual java.io.File.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        84: .line 527
      StackMap locals: java.lang.String java.lang.String java.lang.String
      StackMap stack:
            return
        85: .line 529
      StackMap locals:
      StackMap stack:
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iload 19 /* f */
            aaload
            aload 22 /* file */
            putfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
        end local 22 // java.lang.String file
        end local 21 // java.lang.String fullName
        end local 20 // java.lang.String fkey
        86: .line 516
            iinc 19 /* f */ 1
      StackMap locals:
      StackMap stack:
        87: iload 19 /* f */
            iload 18 /* nfonts */
            if_icmplt 75
        end local 19 // int f
        88: .line 531
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            aload 12 /* fci */
            iload 15 /* index */
            aaload
            getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
            iconst_0
            aaload
            putfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
        end local 18 // int nfonts
        end local 17 // java.lang.String lenStr
        end local 16 // java.lang.String key
        end local 15 // int index
        89: .line 500
            iinc 14 /* s */ 1
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[] int int
      StackMap stack:
        90: iload 14 /* s */
            iload 11 /* numStyles */
            if_icmplt 60
        end local 14 // int s
        91: .line 499
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        92: iload 13 /* i */
            iload 10 /* namesLen */
            if_icmplt 58
        end local 13 // int i
        93: .line 535
            aload 0 /* this */
            aload 12 /* fci */
            putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
        94: .line 536
            goto 98
      StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[]
      StackMap stack: java.lang.Throwable
        95: astore 13 /* t */
        start local 13 // java.lang.Throwable t
        96: .line 537
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 98
        97: .line 538
            aload 13 /* t */
            invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
            invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
        end local 13 // java.lang.Throwable t
        98: .line 542
      StackMap locals:
      StackMap stack:
            invokestatic sun.font.FontUtilities.debugFonts:()Z
            ifeq 101
        99: .line 543
            invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
            astore 13 /* logger */
        start local 13 // sun.util.logging.PlatformLogger logger
       100: .line 544
            aload 13 /* logger */
            new java.lang.StringBuilder
            dup
            ldc "successfully parsed the fontconfig file at "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fcFile */
            invokevirtual java.io.File.toString:()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 13 // sun.util.logging.PlatformLogger logger
       101: .line 546
      StackMap locals:
      StackMap stack:
            return
        end local 12 // sun.font.FontConfigManager$FcCompFont[] fci
        end local 11 // int numStyles
        end local 10 // int namesLen
        end local 9 // java.lang.String[] fcnames
        end local 8 // java.lang.String[] names
        end local 7 // int cacheDirIndex
        end local 5 // long lastModified
        end local 4 // java.lang.String fcVersionStr
        end local 3 // java.lang.String version
        end local 2 // java.util.Properties props
        end local 1 // java.io.File fcFile
        end local 0 // sun.font.FcFontConfiguration this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0  102     0           this  Lsun/font/FcFontConfiguration;
            1  102     1         fcFile  Ljava/io/File;
            6  102     2          props  Ljava/util/Properties;
            8   11     5            fis  Ljava/io/FileInputStream;
           16   19     3              e  Ljava/io/IOException;
           20  102     3        version  Ljava/lang/String;
           27  102     4   fcVersionStr  Ljava/lang/String;
           29   34     5      fcVersion  I
           39  102     5   lastModified  J
           40  102     7  cacheDirIndex  I
           42   50     8            dir  Ljava/lang/String;
           45   50     9        dirFile  Ljava/io/File;
           52  102     8          names  [Ljava/lang/String;
           53  102     9        fcnames  [Ljava/lang/String;
           54  102    10       namesLen  I
           55  102    11      numStyles  I
           56  102    12            fci  [Lsun/font/FontConfigManager$FcCompFont;
           57   93    13              i  I
           59   91    14              s  I
           61   89    15          index  I
           63   89    16            key  Ljava/lang/String;
           67   89    17         lenStr  Ljava/lang/String;
           68   89    18         nfonts  I
           74   88    19              f  I
           77   86    20           fkey  Ljava/lang/String;
           78   86    21       fullName  Ljava/lang/String;
           81   86    22           file  Ljava/lang/String;
           96   98    13              t  Ljava/lang/Throwable;
          100  101    13         logger  Lsun/util/logging/PlatformLogger;
      Exception table:
        from    to  target  type
           8     9      10  any
           7    12      12  any
           6    15      15  Class java.io.IOException
          28    33      34  Class java.lang.Exception
          56    71      95  Class java.lang.Throwable
          72    84      95  Class java.lang.Throwable
          85    94      95  Class java.lang.Throwable

  private static void warning(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String msg
         0: .line 549
            ldc "sun.awt.FontConfiguration"
            invokestatic sun.util.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lsun/util/logging/PlatformLogger;
            astore 1 /* logger */
        start local 1 // sun.util.logging.PlatformLogger logger
         1: .line 550
            aload 1 /* logger */
            aload 0 /* msg */
            invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
         2: .line 551
            return
        end local 1 // sun.util.logging.PlatformLogger logger
        end local 0 // java.lang.String msg
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0     msg  Ljava/lang/String;
            1    3     1  logger  Lsun/util/logging/PlatformLogger;
    MethodParameters:
      Name  Flags
      msg   
}
SourceFile: "FcFontConfiguration.java"
InnerClasses:
  public FcCompFont = sun.font.FontConfigManager$FcCompFont of sun.font.FontConfigManager
  public FontConfigFont = sun.font.FontConfigManager$FontConfigFont of sun.font.FontConfigManager
  public FontConfigInfo = sun.font.FontConfigManager$FontConfigInfo of sun.font.FontConfigManager