abstract class sun.security.provider.DomainKeyStore extends java.security.KeyStoreSpi
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: sun.security.provider.DomainKeyStore
  super_class: java.security.KeyStoreSpi
{
  private static final java.lang.String ENTRY_NAME_SEPARATOR;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "entrynameseparator"

  private static final java.lang.String KEYSTORE_PROVIDER_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "keystoreprovidername"

  private static final java.lang.String KEYSTORE_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "keystoretype"

  private static final java.lang.String KEYSTORE_URI;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "keystoreuri"

  private static final java.lang.String KEYSTORE_PASSWORD_ENV;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "keystorepasswordenv"

  private static final java.lang.String REGEX_META;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: ".$|()[{^?*+\\"

  private static final java.lang.String DEFAULT_STREAM_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "iostream"

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

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

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

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

  private final java.util.Map<java.lang.String, java.security.KeyStore> keystores;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/security/KeyStore;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 92
            invokestatic java.security.KeyStore.getDefaultType:()Ljava/lang/String;
         1: .line 91
            putstatic sun.security.provider.DomainKeyStore.DEFAULT_KEYSTORE_TYPE:Ljava/lang/String;
         2: .line 92
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.security.provider.DomainKeyStore this
         0: .line 97
            aload 0 /* this */
            invokespecial java.security.KeyStoreSpi.<init>:()V
         1: .line 86
            aload 0 /* this */
            iconst_1
            putfield sun.security.provider.DomainKeyStore.streamCounter:I
         2: .line 87
            aload 0 /* this */
            ldc " "
            putfield sun.security.provider.DomainKeyStore.entryNameSeparator:Ljava/lang/String;
         3: .line 88
            aload 0 /* this */
            ldc " "
            putfield sun.security.provider.DomainKeyStore.entryNameSeparatorRegEx:Ljava/lang/String;
         4: .line 95
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
         5: .line 98
            return
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/security/provider/DomainKeyStore;

  abstract java.lang.String convertAlias(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      alias  

  public java.security.Key engineGetKey(java.lang.String, char[]);
    descriptor: (Ljava/lang/String;[C)Ljava/security/Key;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
        start local 2 // char[] password
         0: .line 123
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoresForReading:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 122
            astore 3 /* pair */
        start local 3 // java.util.AbstractMap$SimpleEntry pair
         2: .line 124
            aconst_null
            astore 4 /* key */
        start local 4 // java.security.Key key
         3: .line 127
            aload 3 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* entryAlias */
        start local 5 // java.lang.String entryAlias
         4: .line 128
            aload 3 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 9
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String char[] java.util.AbstractMap$SimpleEntry java.security.Key java.lang.String top java.util.Iterator
      StackMap stack:
         5: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 6 /* keystore */
        start local 6 // java.security.KeyStore keystore
         6: .line 129
            aload 6 /* keystore */
            aload 5 /* entryAlias */
            aload 2 /* password */
            invokevirtual java.security.KeyStore.getKey:(Ljava/lang/String;[C)Ljava/security/Key;
            astore 4 /* key */
         7: .line 130
            aload 4 /* key */
            ifnull 9
         8: .line 131
            goto 13
        end local 6 // java.security.KeyStore keystore
         9: .line 128
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 5 // java.lang.String entryAlias
        10: .line 134
            goto 13
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String char[] java.util.AbstractMap$SimpleEntry java.security.Key
      StackMap stack: java.security.KeyStoreException
        11: astore 5 /* e */
        start local 5 // java.security.KeyStoreException e
        12: .line 135
            new java.lang.IllegalStateException
            dup
            aload 5 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.security.KeyStoreException e
        13: .line 138
      StackMap locals:
      StackMap stack:
            aload 4 /* key */
            areturn
        end local 4 // java.security.Key key
        end local 3 // java.util.AbstractMap$SimpleEntry pair
        end local 2 // char[] password
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lsun/security/provider/DomainKeyStore;
            0   14     1       alias  Ljava/lang/String;
            0   14     2    password  [C
            2   14     3        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
            3   14     4         key  Ljava/security/Key;
            4   10     5  entryAlias  Ljava/lang/String;
            6    9     6    keystore  Ljava/security/KeyStore;
           12   13     5           e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           3    10      11  Class java.security.KeyStoreException
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
    MethodParameters:
          Name  Flags
      alias     
      password  

  public java.security.cert.Certificate[] engineGetCertificateChain(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/security/cert/Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 155
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoresForReading:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 154
            astore 2 /* pair */
        start local 2 // java.util.AbstractMap$SimpleEntry pair
         2: .line 156
            aconst_null
            astore 3 /* chain */
        start local 3 // java.security.cert.Certificate[] chain
         3: .line 159
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* entryAlias */
        start local 4 // java.lang.String entryAlias
         4: .line 160
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 9
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.security.cert.Certificate[] java.lang.String top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 5 /* keystore */
        start local 5 // java.security.KeyStore keystore
         6: .line 161
            aload 5 /* keystore */
            aload 4 /* entryAlias */
            invokevirtual java.security.KeyStore.getCertificateChain:(Ljava/lang/String;)[Ljava/security/cert/Certificate;
            astore 3 /* chain */
         7: .line 162
            aload 3 /* chain */
            ifnull 9
         8: .line 163
            goto 13
        end local 5 // java.security.KeyStore keystore
         9: .line 160
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // java.lang.String entryAlias
        10: .line 166
            goto 13
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.security.cert.Certificate[]
      StackMap stack: java.security.KeyStoreException
        11: astore 4 /* e */
        start local 4 // java.security.KeyStoreException e
        12: .line 167
            new java.lang.IllegalStateException
            dup
            aload 4 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.security.KeyStoreException e
        13: .line 170
      StackMap locals:
      StackMap stack:
            aload 3 /* chain */
            areturn
        end local 3 // java.security.cert.Certificate[] chain
        end local 2 // java.util.AbstractMap$SimpleEntry pair
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lsun/security/provider/DomainKeyStore;
            0   14     1       alias  Ljava/lang/String;
            2   14     2        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
            3   14     3       chain  [Ljava/security/cert/Certificate;
            4   10     4  entryAlias  Ljava/lang/String;
            6    9     5    keystore  Ljava/security/KeyStore;
           12   13     4           e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           3    10      11  Class java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  

  public java.security.cert.Certificate engineGetCertificate(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/security/cert/Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 191
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoresForReading:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 190
            astore 2 /* pair */
        start local 2 // java.util.AbstractMap$SimpleEntry pair
         2: .line 192
            aconst_null
            astore 3 /* cert */
        start local 3 // java.security.cert.Certificate cert
         3: .line 195
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* entryAlias */
        start local 4 // java.lang.String entryAlias
         4: .line 196
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 9
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.security.cert.Certificate java.lang.String top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 5 /* keystore */
        start local 5 // java.security.KeyStore keystore
         6: .line 197
            aload 5 /* keystore */
            aload 4 /* entryAlias */
            invokevirtual java.security.KeyStore.getCertificate:(Ljava/lang/String;)Ljava/security/cert/Certificate;
            astore 3 /* cert */
         7: .line 198
            aload 3 /* cert */
            ifnull 9
         8: .line 199
            goto 13
        end local 5 // java.security.KeyStore keystore
         9: .line 196
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // java.lang.String entryAlias
        10: .line 202
            goto 13
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.security.cert.Certificate
      StackMap stack: java.security.KeyStoreException
        11: astore 4 /* e */
        start local 4 // java.security.KeyStoreException e
        12: .line 203
            new java.lang.IllegalStateException
            dup
            aload 4 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.security.KeyStoreException e
        13: .line 206
      StackMap locals:
      StackMap stack:
            aload 3 /* cert */
            areturn
        end local 3 // java.security.cert.Certificate cert
        end local 2 // java.util.AbstractMap$SimpleEntry pair
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lsun/security/provider/DomainKeyStore;
            0   14     1       alias  Ljava/lang/String;
            2   14     2        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
            3   14     3        cert  Ljava/security/cert/Certificate;
            4   10     4  entryAlias  Ljava/lang/String;
            6    9     5    keystore  Ljava/security/KeyStore;
           12   13     4           e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           3    10      11  Class java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  

  public java.util.Date engineGetCreationDate(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Date;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 220
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoresForReading:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 219
            astore 2 /* pair */
        start local 2 // java.util.AbstractMap$SimpleEntry pair
         2: .line 221
            aconst_null
            astore 3 /* date */
        start local 3 // java.util.Date date
         3: .line 224
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* entryAlias */
        start local 4 // java.lang.String entryAlias
         4: .line 225
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 9
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.util.Date java.lang.String top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 5 /* keystore */
        start local 5 // java.security.KeyStore keystore
         6: .line 226
            aload 5 /* keystore */
            aload 4 /* entryAlias */
            invokevirtual java.security.KeyStore.getCreationDate:(Ljava/lang/String;)Ljava/util/Date;
            astore 3 /* date */
         7: .line 227
            aload 3 /* date */
            ifnull 9
         8: .line 228
            goto 13
        end local 5 // java.security.KeyStore keystore
         9: .line 225
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        end local 4 // java.lang.String entryAlias
        10: .line 231
            goto 13
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.util.Date
      StackMap stack: java.security.KeyStoreException
        11: astore 4 /* e */
        start local 4 // java.security.KeyStoreException e
        12: .line 232
            new java.lang.IllegalStateException
            dup
            aload 4 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.security.KeyStoreException e
        13: .line 235
      StackMap locals:
      StackMap stack:
            aload 3 /* date */
            areturn
        end local 3 // java.util.Date date
        end local 2 // java.util.AbstractMap$SimpleEntry pair
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lsun/security/provider/DomainKeyStore;
            0   14     1       alias  Ljava/lang/String;
            2   14     2        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
            3   14     3        date  Ljava/util/Date;
            4   10     4  entryAlias  Ljava/lang/String;
            6    9     5    keystore  Ljava/security/KeyStore;
           12   13     4           e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           3    10      11  Class java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  

  public void engineSetKeyEntry(java.lang.String, java.security.Key, char[], java.security.cert.Certificate[]);
    descriptor: (Ljava/lang/String;Ljava/security/Key;[C[Ljava/security/cert/Certificate;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
        start local 2 // java.security.Key key
        start local 3 // char[] password
        start local 4 // java.security.cert.Certificate[] chain
         0: .line 266
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoreForWriting:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 265
            astore 5 /* pair */
        start local 5 // java.util.AbstractMap$SimpleEntry pair
         2: .line 268
            aload 5 /* pair */
            ifnonnull 6
         3: .line 269
            new java.security.KeyStoreException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error setting key entry for '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 270
            aload 1 /* alias */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 269
            invokespecial java.security.KeyStoreException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 272
      StackMap locals: java.util.AbstractMap$SimpleEntry
      StackMap stack:
            aload 5 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* entryAlias */
        start local 6 // java.lang.String entryAlias
         7: .line 273
            aload 5 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 7 /* keystore */
        start local 7 // java.util.Map$Entry keystore
         8: .line 274
            aload 7 /* keystore */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            aload 6 /* entryAlias */
            aload 2 /* key */
            aload 3 /* password */
            aload 4 /* chain */
            invokevirtual java.security.KeyStore.setKeyEntry:(Ljava/lang/String;Ljava/security/Key;[C[Ljava/security/cert/Certificate;)V
         9: .line 275
            return
        end local 7 // java.util.Map$Entry keystore
        end local 6 // java.lang.String entryAlias
        end local 5 // java.util.AbstractMap$SimpleEntry pair
        end local 4 // java.security.cert.Certificate[] chain
        end local 3 // char[] password
        end local 2 // java.security.Key key
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lsun/security/provider/DomainKeyStore;
            0   10     1       alias  Ljava/lang/String;
            0   10     2         key  Ljava/security/Key;
            0   10     3    password  [C
            0   10     4       chain  [Ljava/security/cert/Certificate;
            2   10     5        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/security/KeyStore;>;>;
            7   10     6  entryAlias  Ljava/lang/String;
            8   10     7    keystore  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/security/KeyStore;>;
    Exceptions:
      throws java.security.KeyStoreException
    MethodParameters:
          Name  Flags
      alias     
      key       
      password  
      chain     

  public void engineSetKeyEntry(java.lang.String, byte[], java.security.cert.Certificate[]);
    descriptor: (Ljava/lang/String;[B[Ljava/security/cert/Certificate;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
        start local 2 // byte[] key
        start local 3 // java.security.cert.Certificate[] chain
         0: .line 306
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoreForWriting:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 305
            astore 4 /* pair */
        start local 4 // java.util.AbstractMap$SimpleEntry pair
         2: .line 308
            aload 4 /* pair */
            ifnonnull 6
         3: .line 309
            new java.security.KeyStoreException
            dup
         4: .line 310
            new java.lang.StringBuilder
            dup
            ldc "Error setting protected key entry for '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* alias */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 309
            invokespecial java.security.KeyStoreException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 312
      StackMap locals: java.util.AbstractMap$SimpleEntry
      StackMap stack:
            aload 4 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* entryAlias */
        start local 5 // java.lang.String entryAlias
         7: .line 313
            aload 4 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 6 /* keystore */
        start local 6 // java.util.Map$Entry keystore
         8: .line 314
            aload 6 /* keystore */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            aload 5 /* entryAlias */
            aload 2 /* key */
            aload 3 /* chain */
            invokevirtual java.security.KeyStore.setKeyEntry:(Ljava/lang/String;[B[Ljava/security/cert/Certificate;)V
         9: .line 315
            return
        end local 6 // java.util.Map$Entry keystore
        end local 5 // java.lang.String entryAlias
        end local 4 // java.util.AbstractMap$SimpleEntry pair
        end local 3 // java.security.cert.Certificate[] chain
        end local 2 // byte[] key
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lsun/security/provider/DomainKeyStore;
            0   10     1       alias  Ljava/lang/String;
            0   10     2         key  [B
            0   10     3       chain  [Ljava/security/cert/Certificate;
            2   10     4        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/security/KeyStore;>;>;
            7   10     5  entryAlias  Ljava/lang/String;
            8   10     6    keystore  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/security/KeyStore;>;
    Exceptions:
      throws java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  
      key    
      chain  

  public void engineSetCertificateEntry(java.lang.String, java.security.cert.Certificate);
    descriptor: (Ljava/lang/String;Ljava/security/cert/Certificate;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
        start local 2 // java.security.cert.Certificate cert
         0: .line 336
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoreForWriting:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 335
            astore 3 /* pair */
        start local 3 // java.util.AbstractMap$SimpleEntry pair
         2: .line 338
            aload 3 /* pair */
            ifnonnull 6
         3: .line 339
            new java.security.KeyStoreException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error setting certificate entry for '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 340
            aload 1 /* alias */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 339
            invokespecial java.security.KeyStoreException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 342
      StackMap locals: java.util.AbstractMap$SimpleEntry
      StackMap stack:
            aload 3 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* entryAlias */
        start local 4 // java.lang.String entryAlias
         7: .line 343
            aload 3 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* keystore */
        start local 5 // java.util.Map$Entry keystore
         8: .line 344
            aload 5 /* keystore */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            aload 4 /* entryAlias */
            aload 2 /* cert */
            invokevirtual java.security.KeyStore.setCertificateEntry:(Ljava/lang/String;Ljava/security/cert/Certificate;)V
         9: .line 345
            return
        end local 5 // java.util.Map$Entry keystore
        end local 4 // java.lang.String entryAlias
        end local 3 // java.util.AbstractMap$SimpleEntry pair
        end local 2 // java.security.cert.Certificate cert
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lsun/security/provider/DomainKeyStore;
            0   10     1       alias  Ljava/lang/String;
            0   10     2        cert  Ljava/security/cert/Certificate;
            2   10     3        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/security/KeyStore;>;>;
            7   10     4  entryAlias  Ljava/lang/String;
            8   10     5    keystore  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/security/KeyStore;>;
    Exceptions:
      throws java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  
      cert   

  public void engineDeleteEntry(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 358
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoreForWriting:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 357
            astore 2 /* pair */
        start local 2 // java.util.AbstractMap$SimpleEntry pair
         2: .line 360
            aload 2 /* pair */
            ifnonnull 6
         3: .line 361
            new java.security.KeyStoreException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error deleting entry for '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* alias */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 362
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 361
            invokespecial java.security.KeyStoreException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 364
      StackMap locals: java.util.AbstractMap$SimpleEntry
      StackMap stack:
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* entryAlias */
        start local 3 // java.lang.String entryAlias
         7: .line 365
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* keystore */
        start local 4 // java.util.Map$Entry keystore
         8: .line 366
            aload 4 /* keystore */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            aload 3 /* entryAlias */
            invokevirtual java.security.KeyStore.deleteEntry:(Ljava/lang/String;)V
         9: .line 367
            return
        end local 4 // java.util.Map$Entry keystore
        end local 3 // java.lang.String entryAlias
        end local 2 // java.util.AbstractMap$SimpleEntry pair
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lsun/security/provider/DomainKeyStore;
            0   10     1       alias  Ljava/lang/String;
            2   10     2        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/security/KeyStore;>;>;
            7   10     3  entryAlias  Ljava/lang/String;
            8   10     4    keystore  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/security/KeyStore;>;
    Exceptions:
      throws java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  

  public java.util.Enumeration<java.lang.String> engineAliases();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // sun.security.provider.DomainKeyStore this
         0: .line 376
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
         1: .line 375
            astore 1 /* iterator */
        start local 1 // java.util.Iterator iterator
         2: .line 378
            new sun.security.provider.DomainKeyStore$1
            dup
            aload 0 /* this */
            aload 1 /* iterator */
            invokespecial sun.security.provider.DomainKeyStore$1.<init>:(Lsun/security/provider/DomainKeyStore;Ljava/util/Iterator;)V
            areturn
        end local 1 // java.util.Iterator iterator
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lsun/security/provider/DomainKeyStore;
            2    3     1  iterator  Ljava/util/Iterator<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/security/KeyStore;>;>;
    Signature: ()Ljava/util/Enumeration<Ljava/lang/String;>;

  public boolean engineContainsAlias(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 434
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoresForReading:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 433
            astore 2 /* pair */
        start local 2 // java.util.AbstractMap$SimpleEntry pair
         2: .line 437
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* entryAlias */
        start local 3 // java.lang.String entryAlias
         3: .line 438
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.lang.String top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 4 /* keystore */
        start local 4 // java.security.KeyStore keystore
         5: .line 439
            aload 4 /* keystore */
            aload 3 /* entryAlias */
            invokevirtual java.security.KeyStore.containsAlias:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 440
            iconst_1
            ireturn
        end local 4 // java.security.KeyStore keystore
         7: .line 438
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 3 // java.lang.String entryAlias
         8: .line 443
            goto 11
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry
      StackMap stack: java.security.KeyStoreException
         9: astore 3 /* e */
        start local 3 // java.security.KeyStoreException e
        10: .line 444
            new java.lang.IllegalStateException
            dup
            aload 3 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.security.KeyStoreException e
        11: .line 447
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.util.AbstractMap$SimpleEntry pair
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lsun/security/provider/DomainKeyStore;
            0   12     1       alias  Ljava/lang/String;
            2   12     2        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
            3    8     3  entryAlias  Ljava/lang/String;
            5    7     4    keystore  Ljava/security/KeyStore;
           10   11     3           e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           2     6       9  Class java.security.KeyStoreException
           7     8       9  Class java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  

  public int engineSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // sun.security.provider.DomainKeyStore this
         0: .line 457
            iconst_0
            istore 1 /* size */
        start local 1 // int size
         1: .line 459
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: sun.security.provider.DomainKeyStore int top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 2 /* keystore */
        start local 2 // java.security.KeyStore keystore
         3: .line 460
            iload 1 /* size */
            aload 2 /* keystore */
            invokevirtual java.security.KeyStore.size:()I
            iadd
            istore 1 /* size */
        end local 2 // java.security.KeyStore keystore
         4: .line 459
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 462
            goto 8
      StackMap locals: sun.security.provider.DomainKeyStore int
      StackMap stack: java.security.KeyStoreException
         6: astore 2 /* e */
        start local 2 // java.security.KeyStoreException e
         7: .line 463
            new java.lang.IllegalStateException
            dup
            aload 2 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.security.KeyStoreException e
         8: .line 466
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            ireturn
        end local 1 // int size
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lsun/security/provider/DomainKeyStore;
            1    9     1      size  I
            3    4     2  keystore  Ljava/security/KeyStore;
            7    8     2         e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           1     5       6  Class java.security.KeyStoreException

  public boolean engineIsKeyEntry(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 479
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoresForReading:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 478
            astore 2 /* pair */
        start local 2 // java.util.AbstractMap$SimpleEntry pair
         2: .line 482
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* entryAlias */
        start local 3 // java.lang.String entryAlias
         3: .line 483
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.lang.String top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 4 /* keystore */
        start local 4 // java.security.KeyStore keystore
         5: .line 484
            aload 4 /* keystore */
            aload 3 /* entryAlias */
            invokevirtual java.security.KeyStore.isKeyEntry:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 485
            iconst_1
            ireturn
        end local 4 // java.security.KeyStore keystore
         7: .line 483
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 3 // java.lang.String entryAlias
         8: .line 488
            goto 11
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry
      StackMap stack: java.security.KeyStoreException
         9: astore 3 /* e */
        start local 3 // java.security.KeyStoreException e
        10: .line 489
            new java.lang.IllegalStateException
            dup
            aload 3 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.security.KeyStoreException e
        11: .line 492
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.util.AbstractMap$SimpleEntry pair
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lsun/security/provider/DomainKeyStore;
            0   12     1       alias  Ljava/lang/String;
            2   12     2        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
            3    8     3  entryAlias  Ljava/lang/String;
            5    7     4    keystore  Ljava/security/KeyStore;
           10   11     3           e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           2     6       9  Class java.security.KeyStoreException
           7     8       9  Class java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  

  public boolean engineIsCertificateEntry(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 505
            aload 0 /* this */
            aload 1 /* alias */
            invokevirtual sun.security.provider.DomainKeyStore.getKeystoresForReading:(Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
         1: .line 504
            astore 2 /* pair */
        start local 2 // java.util.AbstractMap$SimpleEntry pair
         2: .line 508
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* entryAlias */
        start local 3 // java.lang.String entryAlias
         3: .line 509
            aload 2 /* pair */
            invokevirtual java.util.AbstractMap$SimpleEntry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry java.lang.String top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 4 /* keystore */
        start local 4 // java.security.KeyStore keystore
         5: .line 510
            aload 4 /* keystore */
            aload 3 /* entryAlias */
            invokevirtual java.security.KeyStore.isCertificateEntry:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 511
            iconst_1
            ireturn
        end local 4 // java.security.KeyStore keystore
         7: .line 509
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 3 // java.lang.String entryAlias
         8: .line 514
            goto 11
      StackMap locals: sun.security.provider.DomainKeyStore java.lang.String java.util.AbstractMap$SimpleEntry
      StackMap stack: java.security.KeyStoreException
         9: astore 3 /* e */
        start local 3 // java.security.KeyStoreException e
        10: .line 515
            new java.lang.IllegalStateException
            dup
            aload 3 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.security.KeyStoreException e
        11: .line 518
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.util.AbstractMap$SimpleEntry pair
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lsun/security/provider/DomainKeyStore;
            0   12     1       alias  Ljava/lang/String;
            2   12     2        pair  Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
            3    8     3  entryAlias  Ljava/lang/String;
            5    7     4    keystore  Ljava/security/KeyStore;
           10   11     3           e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           2     6       9  Class java.security.KeyStoreException
           7     8       9  Class java.security.KeyStoreException
    MethodParameters:
       Name  Flags
      alias  

  private java.util.AbstractMap$SimpleEntry<java.lang.String, java.util.Collection<java.security.KeyStore>> getKeystoresForReading(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 530
            aload 1 /* alias */
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.entryNameSeparatorRegEx:Ljava/lang/String;
            iconst_2
            invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
            astore 2 /* splits */
        start local 2 // java.lang.String[] splits
         1: .line 531
            aload 2 /* splits */
            arraylength
            iconst_2
            if_icmpne 7
         2: .line 532
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            aload 2 /* splits */
            iconst_0
            aaload
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 3 /* keystore */
        start local 3 // java.security.KeyStore keystore
         3: .line 533
            aload 3 /* keystore */
            ifnull 9
         4: .line 534
            new java.util.AbstractMap$SimpleEntry
            dup
            aload 2 /* splits */
            iconst_1
            aaload
         5: .line 535
            aload 3 /* keystore */
            invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
         6: .line 534
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 3 // java.security.KeyStore keystore
         7: .line 537
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 2 /* splits */
            arraylength
            iconst_1
            if_icmpne 9
         8: .line 539
            new java.util.AbstractMap$SimpleEntry
            dup
            aload 1 /* alias */
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
         9: .line 541
      StackMap locals:
      StackMap stack:
            new java.util.AbstractMap$SimpleEntry
            dup
            ldc ""
        10: .line 542
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
        11: .line 541
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 2 // java.lang.String[] splits
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lsun/security/provider/DomainKeyStore;
            0   12     1     alias  Ljava/lang/String;
            1   12     2    splits  [Ljava/lang/String;
            3    7     3  keystore  Ljava/security/KeyStore;
    Signature: (Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/Collection<Ljava/security/KeyStore;>;>;
    MethodParameters:
       Name  Flags
      alias  

  private java.util.AbstractMap$SimpleEntry<java.lang.String, java.util.AbstractMap$SimpleEntry<java.lang.String, java.security.KeyStore>> getKeystoreForWriting(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.lang.String alias
         0: .line 553
            aload 1 /* alias */
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.entryNameSeparator:Ljava/lang/String;
            iconst_2
            invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
            astore 2 /* splits */
        start local 2 // java.lang.String[] splits
         1: .line 554
            aload 2 /* splits */
            arraylength
            iconst_2
            if_icmpne 7
         2: .line 555
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            aload 2 /* splits */
            iconst_0
            aaload
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 3 /* keystore */
        start local 3 // java.security.KeyStore keystore
         3: .line 556
            aload 3 /* keystore */
            ifnull 7
         4: .line 557
            new java.util.AbstractMap$SimpleEntry
            dup
            aload 2 /* splits */
            iconst_1
            aaload
         5: .line 558
            new java.util.AbstractMap$SimpleEntry
            dup
            aload 2 /* splits */
            iconst_0
            aaload
            aload 3 /* keystore */
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 557
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 3 // java.security.KeyStore keystore
         7: .line 561
      StackMap locals: java.lang.String[]
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.String[] splits
        end local 1 // java.lang.String alias
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lsun/security/provider/DomainKeyStore;
            0    8     1     alias  Ljava/lang/String;
            1    8     2    splits  [Ljava/lang/String;
            3    7     3  keystore  Ljava/security/KeyStore;
    Signature: (Ljava/lang/String;)Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/util/AbstractMap$SimpleEntry<Ljava/lang/String;Ljava/security/KeyStore;>;>;
    MethodParameters:
       Name  Flags
      alias  

  public java.lang.String engineGetCertificateAlias(java.security.cert.Certificate);
    descriptor: (Ljava/security/cert/Certificate;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.security.cert.Certificate cert
         0: .line 584
            aconst_null
            astore 2 /* alias */
        start local 2 // java.lang.String alias
         1: .line 585
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: sun.security.provider.DomainKeyStore java.security.cert.Certificate java.lang.String top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 3 /* keystore */
        start local 3 // java.security.KeyStore keystore
         3: .line 586
            aload 3 /* keystore */
            aload 1 /* cert */
            invokevirtual java.security.KeyStore.getCertificateAlias:(Ljava/security/cert/Certificate;)Ljava/lang/String;
            dup
            astore 2 /* alias */
            ifnull 5
         4: .line 587
            goto 6
        end local 3 // java.security.KeyStore keystore
         5: .line 585
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 590
      StackMap locals: sun.security.provider.DomainKeyStore java.security.cert.Certificate java.lang.String
      StackMap stack:
            aload 2 /* alias */
         7: areturn
        end local 2 // java.lang.String alias
         8: .line 592
      StackMap locals: sun.security.provider.DomainKeyStore java.security.cert.Certificate
      StackMap stack: java.security.KeyStoreException
            astore 2 /* e */
        start local 2 // java.security.KeyStoreException e
         9: .line 593
            new java.lang.IllegalStateException
            dup
            aload 2 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.security.KeyStoreException e
        end local 1 // java.security.cert.Certificate cert
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lsun/security/provider/DomainKeyStore;
            0   10     1      cert  Ljava/security/cert/Certificate;
            1    8     2     alias  Ljava/lang/String;
            3    5     3  keystore  Ljava/security/KeyStore;
            9   10     2         e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           0     7       8  Class java.security.KeyStoreException
    MethodParameters:
      Name  Flags
      cert  

  public void engineStore(java.io.OutputStream, char[]);
    descriptor: (Ljava/io/OutputStream;[C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.io.OutputStream stream
        start local 2 // char[] password
         0: .line 616
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            iconst_1
            if_icmpne 5
         1: .line 617
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.KeyStore
            aload 1 /* stream */
            aload 2 /* password */
            invokevirtual java.security.KeyStore.store:(Ljava/io/OutputStream;[C)V
         2: .line 618
            return
         3: .line 620
      StackMap locals:
      StackMap stack: java.security.KeyStoreException
            astore 3 /* e */
        start local 3 // java.security.KeyStoreException e
         4: .line 621
            new java.lang.IllegalStateException
            dup
            aload 3 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.security.KeyStoreException e
         5: .line 624
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
         6: .line 625
            ldc "This keystore must be stored using a DomainLoadStoreParameter"
         7: .line 624
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // char[] password
        end local 1 // java.io.OutputStream stream
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lsun/security/provider/DomainKeyStore;
            0    8     1    stream  Ljava/io/OutputStream;
            0    8     2  password  [C
            4    5     3         e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.security.KeyStoreException
    Exceptions:
      throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException
    MethodParameters:
          Name  Flags
      stream    
      password  

  public void engineStore(java.security.KeyStore$LoadStoreParameter);
    descriptor: (Ljava/security/KeyStore$LoadStoreParameter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.security.KeyStore$LoadStoreParameter param
         0: .line 632
            aload 1 /* param */
            instanceof java.security.DomainLoadStoreParameter
            ifeq 32
         1: .line 634
            aload 1 /* param */
            checkcast java.security.DomainLoadStoreParameter
         2: .line 633
            astore 2 /* domainParameter */
        start local 2 // java.security.DomainLoadStoreParameter domainParameter
         3: .line 635
            aload 0 /* this */
         4: .line 636
            aload 2 /* domainParameter */
            invokevirtual java.security.DomainLoadStoreParameter.getConfiguration:()Ljava/net/URI;
         5: .line 637
            aload 2 /* domainParameter */
            invokevirtual java.security.DomainLoadStoreParameter.getProtectionParams:()Ljava/util/Map;
         6: .line 635
            invokevirtual sun.security.provider.DomainKeyStore.getBuilders:(Ljava/net/URI;Ljava/util/Map;)Ljava/util/List;
            astore 3 /* builders */
        start local 3 // java.util.List builders
         7: .line 639
            aload 3 /* builders */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 30
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List top java.util.Iterator
      StackMap stack:
         8: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents
            astore 4 /* builder */
        start local 4 // sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents builder
         9: .line 643
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.protection:Ljava/security/KeyStore$ProtectionParameter;
            astore 6 /* pp */
        start local 6 // java.security.KeyStore$ProtectionParameter pp
        10: .line 644
            aload 6 /* pp */
            instanceof java.security.KeyStore$PasswordProtection
            ifne 14
        11: .line 645
            new java.security.KeyStoreException
            dup
        12: .line 646
            new java.lang.IllegalArgumentException
            dup
            ldc "ProtectionParameter must be a KeyStore.PasswordProtection"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
        13: .line 645
            invokespecial java.security.KeyStoreException.<init>:(Ljava/lang/Throwable;)V
            athrow
        14: .line 650
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents java.util.Iterator java.security.KeyStore$ProtectionParameter
      StackMap stack:
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.protection:Ljava/security/KeyStore$ProtectionParameter;
            checkcast java.security.KeyStore$PasswordProtection
        15: .line 651
            invokevirtual java.security.KeyStore$PasswordProtection.getPassword:()[C
        16: .line 649
            astore 7 /* password */
        start local 7 // char[] password
        17: .line 654
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.name:Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.KeyStore
            astore 8 /* keystore */
        start local 8 // java.security.KeyStore keystore
        18: .line 656
            aconst_null
            astore 9
            aconst_null
            astore 10
        19: .line 657
            new java.io.FileOutputStream
            dup
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.file:Ljava/io/File;
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
        20: .line 656
            astore 11 /* stream */
        start local 11 // java.io.FileOutputStream stream
        21: .line 659
            aload 8 /* keystore */
            aload 11 /* stream */
            aload 7 /* password */
            invokevirtual java.security.KeyStore.store:(Ljava/io/OutputStream;[C)V
        22: .line 660
            aload 11 /* stream */
            ifnull 30
            aload 11 /* stream */
            invokevirtual java.io.FileOutputStream.close:()V
            goto 30
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents java.util.Iterator java.security.KeyStore$ProtectionParameter char[] java.security.KeyStore java.lang.Throwable java.lang.Throwable java.io.FileOutputStream
      StackMap stack: java.lang.Throwable
        23: astore 9
            aload 11 /* stream */
            ifnull 24
            aload 11 /* stream */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 11 // java.io.FileOutputStream stream
      StackMap locals:
      StackMap stack:
        24: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        25: astore 10
            aload 9
            ifnonnull 26
            aload 10
            astore 9
            goto 27
      StackMap locals:
      StackMap stack:
        26: aload 9
            aload 10
            if_acmpeq 27
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        27: aload 9
            athrow
        end local 8 // java.security.KeyStore keystore
        end local 7 // char[] password
        end local 6 // java.security.KeyStore$ProtectionParameter pp
        28: .line 661
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents java.util.Iterator
      StackMap stack: java.security.KeyStoreException
            astore 6 /* e */
        start local 6 // java.security.KeyStoreException e
        29: .line 662
            new java.io.IOException
            dup
            aload 6 /* e */
            invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.security.KeyStoreException e
        end local 4 // sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents builder
        30: .line 639
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 3 // java.util.List builders
        end local 2 // java.security.DomainLoadStoreParameter domainParameter
        31: .line 665
            goto 35
        32: .line 666
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
        33: .line 667
            ldc "This keystore must be stored using a DomainLoadStoreParameter"
        34: .line 666
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        35: .line 670
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.security.KeyStore$LoadStoreParameter param
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   36     0             this  Lsun/security/provider/DomainKeyStore;
            0   36     1            param  Ljava/security/KeyStore$LoadStoreParameter;
            3   31     2  domainParameter  Ljava/security/DomainLoadStoreParameter;
            7   31     3         builders  Ljava/util/List<Lsun/security/provider/DomainKeyStore$KeyStoreBuilderComponents;>;
            9   30     4          builder  Lsun/security/provider/DomainKeyStore$KeyStoreBuilderComponents;
           10   28     6               pp  Ljava/security/KeyStore$ProtectionParameter;
           17   28     7         password  [C
           18   28     8         keystore  Ljava/security/KeyStore;
           21   24    11           stream  Ljava/io/FileOutputStream;
           29   30     6                e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
          21    22      23  any
          19    25      25  any
           9    28      28  Class java.security.KeyStoreException
    Exceptions:
      throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException
    MethodParameters:
       Name  Flags
      param  

  public void engineLoad(java.io.InputStream, char[]);
    descriptor: (Ljava/io/InputStream;[C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.io.InputStream stream
        start local 2 // char[] password
         0: .line 694
            aconst_null
            astore 3 /* keystore */
        start local 3 // java.security.KeyStore keystore
         1: .line 697
            ldc "JKS"
            invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
            astore 3 /* keystore */
         2: .line 698
            aload 3 /* keystore */
            aload 1 /* stream */
            aload 2 /* password */
            invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
         3: .line 700
            goto 10
      StackMap locals: sun.security.provider.DomainKeyStore java.io.InputStream char[] java.security.KeyStore
      StackMap stack: java.lang.Exception
         4: astore 4 /* e */
        start local 4 // java.lang.Exception e
         5: .line 702
            ldc "JKS"
            getstatic sun.security.provider.DomainKeyStore.DEFAULT_KEYSTORE_TYPE:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 9
         6: .line 703
            getstatic sun.security.provider.DomainKeyStore.DEFAULT_KEYSTORE_TYPE:Ljava/lang/String;
            invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
            astore 3 /* keystore */
         7: .line 704
            aload 3 /* keystore */
            aload 1 /* stream */
            aload 2 /* password */
            invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
         8: .line 705
            goto 10
         9: .line 706
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 4 /* e */
            athrow
        end local 4 // java.lang.Exception e
        10: .line 709
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "iostream"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            dup
            getfield sun.security.provider.DomainKeyStore.streamCounter:I
            dup_x1
            iconst_1
            iadd
            putfield sun.security.provider.DomainKeyStore.streamCounter:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* keystoreName */
        start local 4 // java.lang.String keystoreName
        11: .line 710
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            aload 4 /* keystoreName */
            aload 3 /* keystore */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.String keystoreName
        end local 3 // java.security.KeyStore keystore
        12: .line 712
            goto 17
      StackMap locals: sun.security.provider.DomainKeyStore java.io.InputStream char[]
      StackMap stack: java.lang.Exception
        13: pop
        14: .line 713
            new java.lang.UnsupportedOperationException
            dup
        15: .line 714
            ldc "This keystore must be loaded using a DomainLoadStoreParameter"
        16: .line 713
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        17: .line 717
      StackMap locals:
      StackMap stack:
            return
        end local 2 // char[] password
        end local 1 // java.io.InputStream stream
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lsun/security/provider/DomainKeyStore;
            0   18     1        stream  Ljava/io/InputStream;
            0   18     2      password  [C
            1   12     3      keystore  Ljava/security/KeyStore;
            5   10     4             e  Ljava/lang/Exception;
           11   12     4  keystoreName  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     3       4  Class java.lang.Exception
           0    12      13  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException
    MethodParameters:
          Name  Flags
      stream    
      password  

  public void engineLoad(java.security.KeyStore$LoadStoreParameter);
    descriptor: (Ljava/security/KeyStore$LoadStoreParameter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.security.KeyStore$LoadStoreParameter param
         0: .line 723
            aload 1 /* param */
            instanceof java.security.DomainLoadStoreParameter
            ifeq 29
         1: .line 725
            aload 1 /* param */
            checkcast java.security.DomainLoadStoreParameter
         2: .line 724
            astore 2 /* domainParameter */
        start local 2 // java.security.DomainLoadStoreParameter domainParameter
         3: .line 726
            aload 0 /* this */
         4: .line 727
            aload 2 /* domainParameter */
            invokevirtual java.security.DomainLoadStoreParameter.getConfiguration:()Ljava/net/URI;
         5: .line 728
            aload 2 /* domainParameter */
            invokevirtual java.security.DomainLoadStoreParameter.getProtectionParams:()Ljava/util/Map;
         6: .line 726
            invokevirtual sun.security.provider.DomainKeyStore.getBuilders:(Ljava/net/URI;Ljava/util/Map;)Ljava/util/List;
            astore 3 /* builders */
        start local 3 // java.util.List builders
         7: .line 730
            aload 3 /* builders */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 27
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List top java.util.Iterator
      StackMap stack:
         8: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents
            astore 4 /* builder */
        start local 4 // sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents builder
         9: .line 734
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.file:Ljava/io/File;
            ifnull 18
        10: .line 735
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.name:Ljava/lang/String;
        11: .line 736
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.type:Ljava/lang/String;
        12: .line 737
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.provider:Ljava/security/Provider;
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.file:Ljava/io/File;
        13: .line 738
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.protection:Ljava/security/KeyStore$ProtectionParameter;
        14: .line 736
            invokestatic java.security.KeyStore$Builder.newInstance:(Ljava/lang/String;Ljava/security/Provider;Ljava/io/File;Ljava/security/KeyStore$ProtectionParameter;)Ljava/security/KeyStore$Builder;
        15: .line 739
            invokevirtual java.security.KeyStore$Builder.getKeyStore:()Ljava/security/KeyStore;
        16: .line 735
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 740
            goto 27
        18: .line 741
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.keystores:Ljava/util/Map;
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.name:Ljava/lang/String;
        19: .line 742
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.type:Ljava/lang/String;
        20: .line 743
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.provider:Ljava/security/Provider;
            aload 4 /* builder */
            getfield sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.protection:Ljava/security/KeyStore$ProtectionParameter;
        21: .line 742
            invokestatic java.security.KeyStore$Builder.newInstance:(Ljava/lang/String;Ljava/security/Provider;Ljava/security/KeyStore$ProtectionParameter;)Ljava/security/KeyStore$Builder;
        22: .line 744
            invokevirtual java.security.KeyStore$Builder.getKeyStore:()Ljava/security/KeyStore;
        23: .line 741
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 746
            goto 27
      StackMap locals:
      StackMap stack: java.security.KeyStoreException
        25: astore 6 /* e */
        start local 6 // java.security.KeyStoreException e
        26: .line 747
            new java.io.IOException
            dup
            aload 6 /* e */
            invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.security.KeyStoreException e
        end local 4 // sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents builder
        27: .line 730
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter java.security.DomainLoadStoreParameter java.util.List top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 3 // java.util.List builders
        end local 2 // java.security.DomainLoadStoreParameter domainParameter
        28: .line 750
            goto 32
        29: .line 751
      StackMap locals: sun.security.provider.DomainKeyStore java.security.KeyStore$LoadStoreParameter
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
        30: .line 752
            ldc "This keystore must be loaded using a DomainLoadStoreParameter"
        31: .line 751
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        32: .line 755
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.security.KeyStore$LoadStoreParameter param
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   33     0             this  Lsun/security/provider/DomainKeyStore;
            0   33     1            param  Ljava/security/KeyStore$LoadStoreParameter;
            3   28     2  domainParameter  Ljava/security/DomainLoadStoreParameter;
            7   28     3         builders  Ljava/util/List<Lsun/security/provider/DomainKeyStore$KeyStoreBuilderComponents;>;
            9   27     4          builder  Lsun/security/provider/DomainKeyStore$KeyStoreBuilderComponents;
           26   27     6                e  Ljava/security/KeyStoreException;
      Exception table:
        from    to  target  type
           9    24      25  Class java.security.KeyStoreException
    Exceptions:
      throws java.io.IOException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException
    MethodParameters:
       Name  Flags
      param  

  private java.util.List<sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents> getBuilders(java.net.URI, java.util.Map<java.lang.String, java.security.KeyStore$ProtectionParameter>);
    descriptor: (Ljava/net/URI;Ljava/util/Map;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=21, args_size=3
        start local 0 // sun.security.provider.DomainKeyStore this
        start local 1 // java.net.URI configuration
        start local 2 // java.util.Map passwords
         0: .line 765
            new sun.security.provider.PolicyParser
            dup
            iconst_1
            invokespecial sun.security.provider.PolicyParser.<init>:(Z)V
            astore 3 /* parser */
        start local 3 // sun.security.provider.PolicyParser parser
         1: .line 766
            aconst_null
            astore 4 /* domains */
        start local 4 // java.util.Collection domains
         2: .line 767
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* builders */
        start local 5 // java.util.List builders
         3: .line 768
            aload 1 /* configuration */
            invokevirtual java.net.URI.getFragment:()Ljava/lang/String;
            astore 6 /* uriDomain */
        start local 6 // java.lang.String uriDomain
         4: .line 770
            aconst_null
            astore 7
            aconst_null
            astore 8
         5: .line 771
            new java.io.InputStreamReader
            dup
         6: .line 772
            aload 1 /* configuration */
            invokevirtual java.net.URI.toURL:()Ljava/net/URL;
            invokestatic sun.security.util.PolicyUtil.getInputStream:(Ljava/net/URL;)Ljava/io/InputStream;
            ldc "UTF-8"
         7: .line 771
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
         8: .line 770
            astore 9 /* configurationReader */
        start local 9 // java.io.InputStreamReader configurationReader
         9: .line 773
            aload 3 /* parser */
            aload 9 /* configurationReader */
            invokevirtual sun.security.provider.PolicyParser.read:(Ljava/io/Reader;)V
        10: .line 774
            aload 3 /* parser */
            invokevirtual sun.security.provider.PolicyParser.getDomainEntries:()Ljava/util/Collection;
            astore 4 /* domains */
        11: .line 776
            aload 9 /* configurationReader */
            ifnull 21
            aload 9 /* configurationReader */
            invokevirtual java.io.InputStreamReader.close:()V
            goto 21
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String java.lang.Throwable java.lang.Throwable java.io.InputStreamReader
      StackMap stack: java.lang.Throwable
        12: astore 7
            aload 9 /* configurationReader */
            ifnull 13
            aload 9 /* configurationReader */
            invokevirtual java.io.InputStreamReader.close:()V
        end local 9 // java.io.InputStreamReader configurationReader
      StackMap locals:
      StackMap stack:
        13: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: astore 8
            aload 7
            ifnonnull 15
            aload 8
            astore 7
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 7
            aload 8
            if_acmpeq 16
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        16: aload 7
            athrow
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String
      StackMap stack: java.net.MalformedURLException
        17: astore 7 /* mue */
        start local 7 // java.net.MalformedURLException mue
        18: .line 777
            new java.io.IOException
            dup
            aload 7 /* mue */
            invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 7 // java.net.MalformedURLException mue
        19: .line 779
      StackMap locals:
      StackMap stack: sun.security.provider.PolicyParser$ParsingException
            astore 7 /* pe */
        start local 7 // sun.security.provider.PolicyParser$ParsingException pe
        20: .line 780
            new java.io.IOException
            dup
            aload 7 /* pe */
            invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 7 // sun.security.provider.PolicyParser$ParsingException pe
        21: .line 783
      StackMap locals:
      StackMap stack:
            aload 4 /* domains */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 8
            goto 101
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String top java.util.Iterator
      StackMap stack:
        22: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.provider.PolicyParser$DomainEntry
            astore 7 /* domain */
        start local 7 // sun.security.provider.PolicyParser$DomainEntry domain
        23: .line 784
            aload 7 /* domain */
            invokevirtual sun.security.provider.PolicyParser$DomainEntry.getProperties:()Ljava/util/Map;
            astore 9 /* domainProperties */
        start local 9 // java.util.Map domainProperties
        24: .line 786
            aload 6 /* uriDomain */
            ifnull 27
        25: .line 787
            aload 6 /* uriDomain */
            aload 7 /* domain */
            invokevirtual sun.security.provider.PolicyParser$DomainEntry.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 27
        26: .line 788
            goto 101
        27: .line 791
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String sun.security.provider.PolicyParser$DomainEntry java.util.Iterator java.util.Map
      StackMap stack:
            aload 9 /* domainProperties */
            ldc "entrynameseparator"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 42
        28: .line 792
            aload 0 /* this */
        29: .line 793
            aload 9 /* domainProperties */
            ldc "entrynameseparator"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
        30: .line 792
            putfield sun.security.provider.DomainKeyStore.entryNameSeparator:Ljava/lang/String;
        31: .line 795
            iconst_0
            istore 10 /* ch */
        start local 10 // char ch
        32: .line 796
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 11 /* s */
        start local 11 // java.lang.StringBuilder s
        33: .line 797
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        34: goto 40
        35: .line 798
      StackMap locals: int java.lang.StringBuilder int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.entryNameSeparator:Ljava/lang/String;
            iload 12 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 10 /* ch */
        36: .line 799
            ldc ".$|()[{^?*+\\"
            iload 10 /* ch */
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 38
        37: .line 800
            aload 11 /* s */
            bipush 92
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        38: .line 802
      StackMap locals:
      StackMap stack:
            aload 11 /* s */
            iload 10 /* ch */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        39: .line 797
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 12 /* i */
            aload 0 /* this */
            getfield sun.security.provider.DomainKeyStore.entryNameSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            if_icmplt 35
        end local 12 // int i
        41: .line 804
            aload 0 /* this */
            aload 11 /* s */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.security.provider.DomainKeyStore.entryNameSeparatorRegEx:Ljava/lang/String;
        end local 11 // java.lang.StringBuilder s
        end local 10 // char ch
        42: .line 808
      StackMap locals:
      StackMap stack:
            aload 7 /* domain */
            invokevirtual sun.security.provider.PolicyParser$DomainEntry.getEntries:()Ljava/util/Collection;
        43: .line 807
            astore 10 /* keystores */
        start local 10 // java.util.Collection keystores
        44: .line 809
            aload 10 /* keystores */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 12
            goto 99
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String sun.security.provider.PolicyParser$DomainEntry java.util.Iterator java.util.Map java.util.Collection top java.util.Iterator
      StackMap stack:
        45: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.provider.PolicyParser$KeyStoreEntry
            astore 11 /* keystore */
        start local 11 // sun.security.provider.PolicyParser$KeyStoreEntry keystore
        46: .line 810
            aload 11 /* keystore */
            invokevirtual sun.security.provider.PolicyParser$KeyStoreEntry.getName:()Ljava/lang/String;
            astore 13 /* keystoreName */
        start local 13 // java.lang.String keystoreName
        47: .line 812
            new java.util.HashMap
            dup
            aload 9 /* domainProperties */
            invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
        48: .line 811
            astore 14 /* properties */
        start local 14 // java.util.Map properties
        49: .line 813
            aload 14 /* properties */
            aload 11 /* keystore */
            invokevirtual sun.security.provider.PolicyParser$KeyStoreEntry.getProperties:()Ljava/util/Map;
            invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
        50: .line 815
            getstatic sun.security.provider.DomainKeyStore.DEFAULT_KEYSTORE_TYPE:Ljava/lang/String;
            astore 15 /* keystoreType */
        start local 15 // java.lang.String keystoreType
        51: .line 816
            aload 14 /* properties */
            ldc "keystoretype"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 53
        52: .line 817
            aload 14 /* properties */
            ldc "keystoretype"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 15 /* keystoreType */
        53: .line 820
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String sun.security.provider.PolicyParser$DomainEntry java.util.Iterator java.util.Map java.util.Collection sun.security.provider.PolicyParser$KeyStoreEntry java.util.Iterator java.lang.String java.util.Map java.lang.String
      StackMap stack:
            aconst_null
            astore 16 /* keystoreProvider */
        start local 16 // java.security.Provider keystoreProvider
        54: .line 821
            aload 14 /* properties */
            ldc "keystoreprovidername"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 63
        55: .line 823
            aload 14 /* properties */
            ldc "keystoreprovidername"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
        56: .line 822
            astore 17 /* keystoreProviderName */
        start local 17 // java.lang.String keystoreProviderName
        57: .line 825
            aload 17 /* keystoreProviderName */
            invokestatic java.security.Security.getProvider:(Ljava/lang/String;)Ljava/security/Provider;
        58: .line 824
            astore 16 /* keystoreProvider */
        59: .line 826
            aload 16 /* keystoreProvider */
            ifnonnull 63
        60: .line 827
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error locating JCE provider: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        61: .line 828
            aload 17 /* keystoreProviderName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        62: .line 827
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 17 // java.lang.String keystoreProviderName
        63: .line 832
      StackMap locals: java.security.Provider
      StackMap stack:
            aconst_null
            astore 17 /* keystoreFile */
        start local 17 // java.io.File keystoreFile
        64: .line 833
            aload 14 /* properties */
            ldc "keystoreuri"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 78
        65: .line 834
            aload 14 /* properties */
            ldc "keystoreuri"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 18 /* uri */
        start local 18 // java.lang.String uri
        66: .line 837
            aload 18 /* uri */
            ldc "file://"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 69
        67: .line 838
            new java.io.File
            dup
            new java.net.URI
            dup
            aload 18 /* uri */
            invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
            invokespecial java.io.File.<init>:(Ljava/net/URI;)V
            astore 17 /* keystoreFile */
        68: .line 839
            goto 78
        69: .line 840
      StackMap locals: java.io.File java.lang.String
      StackMap stack:
            new java.io.File
            dup
            aload 18 /* uri */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 17 /* keystoreFile */
        70: .line 843
            goto 78
      StackMap locals:
      StackMap stack: java.lang.Exception
        71: astore 19 /* e */
        start local 19 // java.lang.Exception e
        72: .line 844
            new java.io.IOException
            dup
        73: .line 845
            new java.lang.StringBuilder
            dup
            ldc "Error processing keystore property: keystoreURI=\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        74: .line 846
            aload 18 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        75: .line 845
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        76: .line 846
            aload 19 /* e */
        77: .line 844
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 19 // java.lang.Exception e
        end local 18 // java.lang.String uri
        78: .line 850
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 18 /* keystoreProtection */
        start local 18 // java.security.KeyStore$ProtectionParameter keystoreProtection
        79: .line 851
            aload 2 /* passwords */
            aload 13 /* keystoreName */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 82
        80: .line 852
            aload 2 /* passwords */
            aload 13 /* keystoreName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.KeyStore$ProtectionParameter
            astore 18 /* keystoreProtection */
        81: .line 854
            goto 95
      StackMap locals: java.security.KeyStore$ProtectionParameter
      StackMap stack:
        82: aload 14 /* properties */
            ldc "keystorepasswordenv"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 94
        83: .line 855
            aload 14 /* properties */
            ldc "keystorepasswordenv"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 19 /* env */
        start local 19 // java.lang.String env
        84: .line 856
            aload 19 /* env */
            invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
            astore 20 /* pwd */
        start local 20 // java.lang.String pwd
        85: .line 857
            aload 20 /* pwd */
            ifnull 89
        86: .line 859
            new java.security.KeyStore$PasswordProtection
            dup
            aload 20 /* pwd */
            invokevirtual java.lang.String.toCharArray:()[C
            invokespecial java.security.KeyStore$PasswordProtection.<init>:([C)V
        87: .line 858
            astore 18 /* keystoreProtection */
        88: .line 860
            goto 95
        89: .line 861
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            new java.io.IOException
            dup
        90: .line 862
            new java.lang.StringBuilder
            dup
            ldc "Error processing keystore property: keystorePasswordEnv=\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        91: .line 863
            aload 19 /* env */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        92: .line 862
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        93: .line 861
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 20 // java.lang.String pwd
        end local 19 // java.lang.String env
        94: .line 866
      StackMap locals:
      StackMap stack:
            new java.security.KeyStore$PasswordProtection
            dup
            aconst_null
            invokespecial java.security.KeyStore$PasswordProtection.<init>:([C)V
            astore 18 /* keystoreProtection */
        95: .line 869
      StackMap locals:
      StackMap stack:
            aload 5 /* builders */
            new sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents
            dup
            aload 0 /* this */
            aload 13 /* keystoreName */
        96: .line 870
            aload 15 /* keystoreType */
            aload 16 /* keystoreProvider */
            aload 17 /* keystoreFile */
        97: .line 871
            aload 18 /* keystoreProtection */
            invokespecial sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents.<init>:(Lsun/security/provider/DomainKeyStore;Ljava/lang/String;Ljava/lang/String;Ljava/security/Provider;Ljava/io/File;Ljava/security/KeyStore$ProtectionParameter;)V
        98: .line 869
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 18 // java.security.KeyStore$ProtectionParameter keystoreProtection
        end local 17 // java.io.File keystoreFile
        end local 16 // java.security.Provider keystoreProvider
        end local 15 // java.lang.String keystoreType
        end local 14 // java.util.Map properties
        end local 13 // java.lang.String keystoreName
        end local 11 // sun.security.provider.PolicyParser$KeyStoreEntry keystore
        99: .line 809
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String sun.security.provider.PolicyParser$DomainEntry java.util.Iterator java.util.Map java.util.Collection top java.util.Iterator
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 45
       100: .line 873
            goto 102
        end local 10 // java.util.Collection keystores
        end local 9 // java.util.Map domainProperties
        end local 7 // sun.security.provider.PolicyParser$DomainEntry domain
       101: .line 783
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
       102: .line 875
      StackMap locals: sun.security.provider.DomainKeyStore java.net.URI java.util.Map sun.security.provider.PolicyParser java.util.Collection java.util.List java.lang.String
      StackMap stack:
            aload 5 /* builders */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 106
       103: .line 876
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error locating domain configuration data for: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       104: .line 877
            aload 1 /* configuration */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       105: .line 876
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
       106: .line 880
      StackMap locals:
      StackMap stack:
            aload 5 /* builders */
            areturn
        end local 6 // java.lang.String uriDomain
        end local 5 // java.util.List builders
        end local 4 // java.util.Collection domains
        end local 3 // sun.security.provider.PolicyParser parser
        end local 2 // java.util.Map passwords
        end local 1 // java.net.URI configuration
        end local 0 // sun.security.provider.DomainKeyStore this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0  107     0                  this  Lsun/security/provider/DomainKeyStore;
            0  107     1         configuration  Ljava/net/URI;
            0  107     2             passwords  Ljava/util/Map<Ljava/lang/String;Ljava/security/KeyStore$ProtectionParameter;>;
            1  107     3                parser  Lsun/security/provider/PolicyParser;
            2  107     4               domains  Ljava/util/Collection<Lsun/security/provider/PolicyParser$DomainEntry;>;
            3  107     5              builders  Ljava/util/List<Lsun/security/provider/DomainKeyStore$KeyStoreBuilderComponents;>;
            4  107     6             uriDomain  Ljava/lang/String;
            9   13     9   configurationReader  Ljava/io/InputStreamReader;
           18   19     7                   mue  Ljava/net/MalformedURLException;
           20   21     7                    pe  Lsun/security/provider/PolicyParser$ParsingException;
           23  101     7                domain  Lsun/security/provider/PolicyParser$DomainEntry;
           24  101     9      domainProperties  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           32   42    10                    ch  C
           33   42    11                     s  Ljava/lang/StringBuilder;
           34   41    12                     i  I
           44  101    10             keystores  Ljava/util/Collection<Lsun/security/provider/PolicyParser$KeyStoreEntry;>;
           46   99    11              keystore  Lsun/security/provider/PolicyParser$KeyStoreEntry;
           47   99    13          keystoreName  Ljava/lang/String;
           49   99    14            properties  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           51   99    15          keystoreType  Ljava/lang/String;
           54   99    16      keystoreProvider  Ljava/security/Provider;
           57   63    17  keystoreProviderName  Ljava/lang/String;
           64   99    17          keystoreFile  Ljava/io/File;
           66   78    18                   uri  Ljava/lang/String;
           72   78    19                     e  Ljava/lang/Exception;
           79   99    18    keystoreProtection  Ljava/security/KeyStore$ProtectionParameter;
           84   94    19                   env  Ljava/lang/String;
           85   94    20                   pwd  Ljava/lang/String;
      Exception table:
        from    to  target  type
           9    11      12  any
           5    14      14  any
           4    17      17  Class java.net.MalformedURLException
           4    17      19  Class sun.security.provider.PolicyParser$ParsingException
          66    70      71  Class java.net.URISyntaxException
          66    70      71  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/net/URI;Ljava/util/Map<Ljava/lang/String;Ljava/security/KeyStore$ProtectionParameter;>;)Ljava/util/List<Lsun/security/provider/DomainKeyStore$KeyStoreBuilderComponents;>;
    MethodParameters:
               Name  Flags
      configuration  
      passwords      
}
SourceFile: "DomainKeyStore.java"
NestMembers:
  sun.security.provider.DomainKeyStore$1  sun.security.provider.DomainKeyStore$DKS  sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents
InnerClasses:
  public abstract Builder = java.security.KeyStore$Builder of java.security.KeyStore
  public abstract LoadStoreParameter = java.security.KeyStore$LoadStoreParameter of java.security.KeyStore
  public PasswordProtection = java.security.KeyStore$PasswordProtection of java.security.KeyStore
  public abstract ProtectionParameter = java.security.KeyStore$ProtectionParameter of java.security.KeyStore
  public SimpleEntry = java.util.AbstractMap$SimpleEntry of java.util.AbstractMap
  public abstract Entry = java.util.Map$Entry of java.util.Map
  sun.security.provider.DomainKeyStore$1
  public final DKS = sun.security.provider.DomainKeyStore$DKS of sun.security.provider.DomainKeyStore
  KeyStoreBuilderComponents = sun.security.provider.DomainKeyStore$KeyStoreBuilderComponents of sun.security.provider.DomainKeyStore
  DomainEntry = sun.security.provider.PolicyParser$DomainEntry of sun.security.provider.PolicyParser
  KeyStoreEntry = sun.security.provider.PolicyParser$KeyStoreEntry of sun.security.provider.PolicyParser
  public ParsingException = sun.security.provider.PolicyParser$ParsingException of sun.security.provider.PolicyParser