final class javax.crypto.JceSecurity
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: javax.crypto.JceSecurity
  super_class: java.lang.Object
{
  private static final sun.security.util.Debug debug;
    descriptor: Lsun/security/util/Debug;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final java.security.SecureRandom RANDOM;
    descriptor: Ljava/security/SecureRandom;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static javax.crypto.CryptoPermissions defaultPolicy;
    descriptor: Ljavax/crypto/CryptoPermissions;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static javax.crypto.CryptoPermissions exemptPolicy;
    descriptor: Ljavax/crypto/CryptoPermissions;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static final java.util.Map<java.security.Provider, java.lang.Object> verificationResults;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/security/Provider;Ljava/lang/Object;>;

  private static final java.util.Map<java.security.Provider, java.lang.Object> verifyingProviders;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/security/Provider;Ljava/lang/Object;>;

  private static final boolean isRestricted;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private static final java.net.URL NULL_URL;
    descriptor: Ljava/net/URL;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.Map<java.lang.Class<?>, java.net.URL> codeBaseCacheRef;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Class<*>;Ljava/net/URL;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 76
            ldc "jca"
            invokestatic sun.security.util.Debug.getInstance:(Ljava/lang/String;)Lsun/security/util/Debug;
            putstatic javax.crypto.JceSecurity.debug:Lsun/security/util/Debug;
         1: .line 78
            new java.security.SecureRandom
            dup
            invokespecial java.security.SecureRandom.<init>:()V
            putstatic javax.crypto.JceSecurity.RANDOM:Ljava/security/SecureRandom;
         2: .line 82
            aconst_null
            putstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
         3: .line 83
            aconst_null
            putstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
         4: .line 89
            new java.util.IdentityHashMap
            dup
            invokespecial java.util.IdentityHashMap.<init>:()V
         5: .line 88
            putstatic javax.crypto.JceSecurity.verificationResults:Ljava/util/Map;
         6: .line 93
            new java.util.IdentityHashMap
            dup
            invokespecial java.util.IdentityHashMap.<init>:()V
         7: .line 92
            putstatic javax.crypto.JceSecurity.verifyingProviders:Ljava/util/Map;
         8: .line 106
            new javax.crypto.JceSecurity$1
            dup
            invokespecial javax.crypto.JceSecurity$1.<init>:()V
         9: .line 105
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            pop
        10: .line 115
            getstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
        11: .line 116
            getstatic javax.crypto.CryptoAllPermission.INSTANCE:Ljavax/crypto/CryptoAllPermission;
        12: .line 115
            invokevirtual javax.crypto.CryptoPermissions.implies:(Ljava/security/Permission;)Z
        13: .line 116
            ifeq 14
            iconst_0
            goto 15
      StackMap locals:
      StackMap stack:
        14: iconst_1
        15: .line 115
      StackMap locals:
      StackMap stack: int
            putstatic javax.crypto.JceSecurity.isRestricted:Z
        16: .line 117
            goto 21
      StackMap locals:
      StackMap stack: java.lang.Exception
        17: astore 0 /* e */
        start local 0 // java.lang.Exception e
        18: .line 118
            new java.lang.SecurityException
            dup
        19: .line 119
            ldc "Can not initialize cryptographic mechanism"
            aload 0 /* e */
        20: .line 118
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.lang.Exception e
        21: .line 192
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            putstatic javax.crypto.JceSecurity.PROVIDER_VERIFIED:Ljava/lang/Object;
        22: .line 237
            new java.net.URL
            dup
            ldc "http://null.oracle.com/"
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            putstatic javax.crypto.JceSecurity.NULL_URL:Ljava/net/URL;
        23: .line 238
            goto 26
      StackMap locals:
      StackMap stack: java.lang.Exception
        24: astore 0 /* e */
        start local 0 // java.lang.Exception e
        25: .line 239
            new java.lang.RuntimeException
            dup
            aload 0 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.lang.Exception e
        26: .line 245
      StackMap locals:
      StackMap stack:
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
        27: .line 244
            putstatic javax.crypto.JceSecurity.codeBaseCacheRef:Ljava/util/Map;
        28: .line 245
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
           18   21     0     e  Ljava/lang/Exception;
           25   26     0     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           8    16      17  Class java.lang.Exception
          22    23      24  Class java.lang.Exception

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.crypto.JceSecurity this
         0: .line 100
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 101
            return
        end local 0 // javax.crypto.JceSecurity this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/crypto/JceSecurity;

  static sun.security.jca.GetInstance$Instance getInstance(java.lang.String, java.lang.Class<?>, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // java.lang.String type
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String algorithm
        start local 3 // java.lang.String provider
         0: .line 126
            aload 0 /* type */
            aload 2 /* algorithm */
            aload 3 /* provider */
            invokestatic sun.security.jca.GetInstance.getService:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/security/Provider$Service;
            astore 4 /* s */
        start local 4 // java.security.Provider$Service s
         1: .line 127
            aload 4 /* s */
            invokevirtual java.security.Provider$Service.getProvider:()Ljava/security/Provider;
            invokestatic javax.crypto.JceSecurity.getVerificationResult:(Ljava/security/Provider;)Ljava/lang/Exception;
            astore 5 /* ve */
        start local 5 // java.lang.Exception ve
         2: .line 128
            aload 5 /* ve */
            ifnull 6
         3: .line 129
            new java.lang.StringBuilder
            dup
            ldc "JCE cannot authenticate the provider "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* provider */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* msg */
        start local 6 // java.lang.String msg
         4: .line 131
            new java.security.NoSuchProviderException
            dup
            aload 6 /* msg */
            invokespecial java.security.NoSuchProviderException.<init>:(Ljava/lang/String;)V
            aload 5 /* ve */
            invokevirtual java.security.NoSuchProviderException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
         5: .line 130
            checkcast java.security.NoSuchProviderException
            athrow
        end local 6 // java.lang.String msg
         6: .line 133
      StackMap locals: java.security.Provider$Service java.lang.Exception
      StackMap stack:
            aload 4 /* s */
            aload 1 /* clazz */
            invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/security/Provider$Service;Ljava/lang/Class;)Lsun/security/jca/GetInstance$Instance;
            areturn
        end local 5 // java.lang.Exception ve
        end local 4 // java.security.Provider$Service s
        end local 3 // java.lang.String provider
        end local 2 // java.lang.String algorithm
        end local 1 // java.lang.Class clazz
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       type  Ljava/lang/String;
            0    7     1      clazz  Ljava/lang/Class<*>;
            0    7     2  algorithm  Ljava/lang/String;
            0    7     3   provider  Ljava/lang/String;
            1    7     4          s  Ljava/security/Provider$Service;
            2    7     5         ve  Ljava/lang/Exception;
            4    6     6        msg  Ljava/lang/String;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance;
    MethodParameters:
           Name  Flags
      type       
      clazz      
      algorithm  
      provider   

  static sun.security.jca.GetInstance$Instance getInstance(java.lang.String, java.lang.Class<?>, java.lang.String, java.security.Provider);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/security/Provider;)Lsun/security/jca/GetInstance$Instance;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // java.lang.String type
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String algorithm
        start local 3 // java.security.Provider provider
         0: .line 138
            aload 0 /* type */
            aload 2 /* algorithm */
            aload 3 /* provider */
            invokestatic sun.security.jca.GetInstance.getService:(Ljava/lang/String;Ljava/lang/String;Ljava/security/Provider;)Ljava/security/Provider$Service;
            astore 4 /* s */
        start local 4 // java.security.Provider$Service s
         1: .line 139
            aload 3 /* provider */
            invokestatic javax.crypto.JceSecurity.getVerificationResult:(Ljava/security/Provider;)Ljava/lang/Exception;
            astore 5 /* ve */
        start local 5 // java.lang.Exception ve
         2: .line 140
            aload 5 /* ve */
            ifnull 7
         3: .line 141
            new java.lang.StringBuilder
            dup
            ldc "JCE cannot authenticate the provider "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 142
            aload 3 /* provider */
            invokevirtual java.security.Provider.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 141
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* msg */
        start local 6 // java.lang.String msg
         6: .line 143
            new java.lang.SecurityException
            dup
            aload 6 /* msg */
            aload 5 /* ve */
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.lang.String msg
         7: .line 145
      StackMap locals: java.security.Provider$Service java.lang.Exception
      StackMap stack:
            aload 4 /* s */
            aload 1 /* clazz */
            invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/security/Provider$Service;Ljava/lang/Class;)Lsun/security/jca/GetInstance$Instance;
            areturn
        end local 5 // java.lang.Exception ve
        end local 4 // java.security.Provider$Service s
        end local 3 // java.security.Provider provider
        end local 2 // java.lang.String algorithm
        end local 1 // java.lang.Class clazz
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       type  Ljava/lang/String;
            0    8     1      clazz  Ljava/lang/Class<*>;
            0    8     2  algorithm  Ljava/lang/String;
            0    8     3   provider  Ljava/security/Provider;
            1    8     4          s  Ljava/security/Provider$Service;
            2    8     5         ve  Ljava/lang/Exception;
            6    7     6        msg  Ljava/lang/String;
    Exceptions:
      throws java.security.NoSuchAlgorithmException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;Ljava/lang/String;Ljava/security/Provider;)Lsun/security/jca/GetInstance$Instance;
    MethodParameters:
           Name  Flags
      type       
      clazz      
      algorithm  
      provider   

  static sun.security.jca.GetInstance$Instance getInstance(java.lang.String, java.lang.Class<?>, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // java.lang.String type
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String algorithm
         0: .line 150
            aload 0 /* type */
            aload 2 /* algorithm */
            invokestatic sun.security.jca.GetInstance.getServices:(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;
            astore 3 /* services */
        start local 3 // java.util.List services
         1: .line 151
            aconst_null
            astore 4 /* failure */
        start local 4 // java.security.NoSuchAlgorithmException failure
         2: .line 152
            aload 3 /* services */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 11
      StackMap locals: java.lang.String java.lang.Class java.lang.String java.util.List java.security.NoSuchAlgorithmException top java.util.Iterator
      StackMap stack:
         3: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.security.Provider$Service
            astore 5 /* s */
        start local 5 // java.security.Provider$Service s
         4: .line 153
            aload 5 /* s */
            invokevirtual java.security.Provider$Service.getProvider:()Ljava/security/Provider;
            invokestatic javax.crypto.JceSecurity.canUseProvider:(Ljava/security/Provider;)Z
            ifne 6
         5: .line 155
            goto 11
         6: .line 158
      StackMap locals: java.lang.String java.lang.Class java.lang.String java.util.List java.security.NoSuchAlgorithmException java.security.Provider$Service java.util.Iterator
      StackMap stack:
            aload 5 /* s */
            aload 1 /* clazz */
            invokestatic sun.security.jca.GetInstance.getInstance:(Ljava/security/Provider$Service;Ljava/lang/Class;)Lsun/security/jca/GetInstance$Instance;
            astore 7 /* instance */
        start local 7 // sun.security.jca.GetInstance$Instance instance
         7: .line 159
            aload 7 /* instance */
         8: areturn
        end local 7 // sun.security.jca.GetInstance$Instance instance
         9: .line 160
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
            astore 7 /* e */
        start local 7 // java.security.NoSuchAlgorithmException e
        10: .line 161
            aload 7 /* e */
            astore 4 /* failure */
        end local 7 // java.security.NoSuchAlgorithmException e
        end local 5 // java.security.Provider$Service s
        11: .line 152
      StackMap locals: java.lang.String java.lang.Class java.lang.String java.util.List java.security.NoSuchAlgorithmException top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        12: .line 164
            new java.security.NoSuchAlgorithmException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Algorithm "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* algorithm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 165
            ldc " not available"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* failure */
        14: .line 164
            invokespecial java.security.NoSuchAlgorithmException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.security.NoSuchAlgorithmException failure
        end local 3 // java.util.List services
        end local 2 // java.lang.String algorithm
        end local 1 // java.lang.Class clazz
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       type  Ljava/lang/String;
            0   15     1      clazz  Ljava/lang/Class<*>;
            0   15     2  algorithm  Ljava/lang/String;
            1   15     3   services  Ljava/util/List<Ljava/security/Provider$Service;>;
            2   15     4    failure  Ljava/security/NoSuchAlgorithmException;
            4   11     5          s  Ljava/security/Provider$Service;
            7    9     7   instance  Lsun/security/jca/GetInstance$Instance;
           10   11     7          e  Ljava/security/NoSuchAlgorithmException;
      Exception table:
        from    to  target  type
           6     8       9  Class java.security.NoSuchAlgorithmException
    Exceptions:
      throws java.security.NoSuchAlgorithmException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance;
    MethodParameters:
           Name  Flags
      type       
      clazz      
      algorithm  

  static javax.crypto.CryptoPermissions verifyExemptJar(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljavax/crypto/CryptoPermissions;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.net.URL codeBase
         0: .line 175
            new javax.crypto.ProviderVerifier
            dup
            aload 0 /* codeBase */
            iconst_1
            invokespecial javax.crypto.ProviderVerifier.<init>:(Ljava/net/URL;Z)V
            astore 1 /* pv */
        start local 1 // javax.crypto.ProviderVerifier pv
         1: .line 176
            aload 1 /* pv */
            invokevirtual javax.crypto.ProviderVerifier.verify:()V
         2: .line 177
            aload 1 /* pv */
            invokevirtual javax.crypto.ProviderVerifier.getPermissions:()Ljavax/crypto/CryptoPermissions;
            areturn
        end local 1 // javax.crypto.ProviderVerifier pv
        end local 0 // java.net.URL codeBase
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  codeBase  Ljava/net/URL;
            1    3     1        pv  Ljavax/crypto/ProviderVerifier;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
          Name  Flags
      codeBase  

  static void verifyProvider(java.net.URL, java.security.Provider);
    descriptor: (Ljava/net/URL;Ljava/security/Provider;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.net.URL codeBase
        start local 1 // java.security.Provider p
         0: .line 188
            new javax.crypto.ProviderVerifier
            dup
            aload 0 /* codeBase */
            aload 1 /* p */
            iconst_0
            invokespecial javax.crypto.ProviderVerifier.<init>:(Ljava/net/URL;Ljava/security/Provider;Z)V
            astore 2 /* pv */
        start local 2 // javax.crypto.ProviderVerifier pv
         1: .line 189
            aload 2 /* pv */
            invokevirtual javax.crypto.ProviderVerifier.verify:()V
         2: .line 190
            return
        end local 2 // javax.crypto.ProviderVerifier pv
        end local 1 // java.security.Provider p
        end local 0 // java.net.URL codeBase
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  codeBase  Ljava/net/URL;
            0    3     1         p  Ljava/security/Provider;
            1    3     2        pv  Ljavax/crypto/ProviderVerifier;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
          Name  Flags
      codeBase  
      p         

  static synchronized java.lang.Exception getVerificationResult(java.security.Provider);
    descriptor: (Ljava/security/Provider;)Ljava/lang/Exception;
    flags: (0x0028) ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.security.Provider p
         0: .line 201
            getstatic javax.crypto.JceSecurity.verificationResults:Ljava/util/Map;
            aload 0 /* p */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 1 /* o */
        start local 1 // java.lang.Object o
         1: .line 202
            aload 1 /* o */
            getstatic javax.crypto.JceSecurity.PROVIDER_VERIFIED:Ljava/lang/Object;
            if_acmpne 3
         2: .line 203
            aconst_null
            areturn
         3: .line 204
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* o */
            ifnull 5
         4: .line 205
            aload 1 /* o */
            checkcast java.lang.Exception
            areturn
         5: .line 207
      StackMap locals:
      StackMap stack:
            getstatic javax.crypto.JceSecurity.verifyingProviders:Ljava/util/Map;
            aload 0 /* p */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 7
         6: .line 210
            new java.security.NoSuchProviderException
            dup
            ldc "Recursion during verification"
            invokespecial java.security.NoSuchProviderException.<init>:(Ljava/lang/String;)V
            areturn
         7: .line 213
      StackMap locals:
      StackMap stack:
            getstatic javax.crypto.JceSecurity.verifyingProviders:Ljava/util/Map;
            aload 0 /* p */
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 214
            aload 0 /* p */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic javax.crypto.JceSecurity.getCodeBase:(Ljava/lang/Class;)Ljava/net/URL;
            astore 2 /* providerURL */
        start local 2 // java.net.URL providerURL
         9: .line 215
            aload 2 /* providerURL */
            aload 0 /* p */
            invokestatic javax.crypto.JceSecurity.verifyProvider:(Ljava/net/URL;Ljava/security/Provider;)V
        10: .line 217
            getstatic javax.crypto.JceSecurity.verificationResults:Ljava/util/Map;
            aload 0 /* p */
            getstatic javax.crypto.JceSecurity.PROVIDER_VERIFIED:Ljava/lang/Object;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 223
            getstatic javax.crypto.JceSecurity.verifyingProviders:Ljava/util/Map;
            aload 0 /* p */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 218
            aconst_null
            areturn
        end local 2 // java.net.URL providerURL
        13: .line 219
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* e */
        start local 2 // java.lang.Exception e
        14: .line 220
            getstatic javax.crypto.JceSecurity.verificationResults:Ljava/util/Map;
            aload 0 /* p */
            aload 2 /* e */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 221
            aload 2 /* e */
            astore 4
        16: .line 223
            getstatic javax.crypto.JceSecurity.verifyingProviders:Ljava/util/Map;
            aload 0 /* p */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 221
            aload 4
            areturn
        end local 2 // java.lang.Exception e
        18: .line 222
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
        19: .line 223
            getstatic javax.crypto.JceSecurity.verifyingProviders:Ljava/util/Map;
            aload 0 /* p */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 224
            aload 3
            athrow
        end local 1 // java.lang.Object o
        end local 0 // java.security.Provider p
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0            p  Ljava/security/Provider;
            1   21     1            o  Ljava/lang/Object;
            9   13     2  providerURL  Ljava/net/URL;
           14   18     2            e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           7    11      13  Class java.lang.Exception
           7    11      18  any
          13    16      18  any
    MethodParameters:
      Name  Flags
      p     

  static boolean canUseProvider(java.security.Provider);
    descriptor: (Ljava/security/Provider;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.security.Provider p
         0: .line 229
            aload 0 /* p */
            invokestatic javax.crypto.JceSecurity.getVerificationResult:(Ljava/security/Provider;)Ljava/lang/Exception;
            ifnonnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.security.Provider p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     p  Ljava/security/Provider;
    MethodParameters:
      Name  Flags
      p     

  static java.net.URL getCodeBase(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/net/URL;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.Class clazz
         0: .line 251
            getstatic javax.crypto.JceSecurity.codeBaseCacheRef:Ljava/util/Map;
            dup
            astore 1
            monitorenter
         1: .line 252
            getstatic javax.crypto.JceSecurity.codeBaseCacheRef:Ljava/util/Map;
            aload 0 /* clazz */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.net.URL
            astore 2 /* url */
        start local 2 // java.net.URL url
         2: .line 253
            aload 2 /* url */
            ifnonnull 6
         3: .line 255
            new javax.crypto.JceSecurity$2
            dup
            aload 0 /* clazz */
            invokespecial javax.crypto.JceSecurity$2.<init>:(Ljava/lang/Class;)V
         4: .line 254
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.net.URL
            astore 2 /* url */
         5: .line 268
            getstatic javax.crypto.JceSecurity.codeBaseCacheRef:Ljava/util/Map;
            aload 0 /* clazz */
            aload 2 /* url */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 270
      StackMap locals: java.util.Map java.net.URL
      StackMap stack:
            aload 2 /* url */
            getstatic javax.crypto.JceSecurity.NULL_URL:Ljava/net/URL;
            if_acmpne 7
            aconst_null
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 2 /* url */
      StackMap locals:
      StackMap stack: java.net.URL
         8: aload 1
            monitorexit
         9: areturn
        end local 2 // java.net.URL url
        10: .line 251
      StackMap locals: java.lang.Class java.util.Map
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
        11: athrow
        end local 0 // java.lang.Class clazz
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0  clazz  Ljava/lang/Class<*>;
            2   10     2    url  Ljava/net/URL;
      Exception table:
        from    to  target  type
           1     9      10  any
          10    11      10  any
    Signature: (Ljava/lang/Class<*>;)Ljava/net/URL;
    MethodParameters:
       Name  Flags
      clazz  final

  private static void setupJurisdictionPolicies();
    descriptor: ()V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=15, args_size=0
         0: .line 280
            ldc "crypto.policy"
            invokestatic java.security.Security.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* cryptoPolicyProperty */
        start local 0 // java.lang.String cryptoPolicyProperty
         1: .line 290
            aload 0 /* cryptoPolicyProperty */
            ifnonnull 9
         2: .line 291
            ldc "unlimited"
            astore 0 /* cryptoPolicyProperty */
         3: .line 292
            getstatic javax.crypto.JceSecurity.debug:Lsun/security/util/Debug;
            ifnull 9
         4: .line 293
            getstatic javax.crypto.JceSecurity.debug:Lsun/security/util/Debug;
         5: .line 294
            new java.lang.StringBuilder
            dup
            ldc "Security Property 'crypto.policy' not found: using '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 295
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "' as fallback"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 294
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 293
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
         9: .line 299
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* cryptoPolicyProperty */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            astore 1 /* cpPath */
        start local 1 // java.nio.file.Path cpPath
        10: .line 301
            aload 1 /* cpPath */
            invokeinterface java.nio.file.Path.getNameCount:()I
            iconst_1
            if_icmpne 12
        11: .line 302
            aload 1 /* cpPath */
            aload 1 /* cpPath */
            invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.compareTo:(Ljava/nio/file/Path;)I
            ifeq 17
        12: .line 303
      StackMap locals: java.nio.file.Path
      StackMap stack:
            new java.lang.SecurityException
            dup
        13: .line 304
            new java.lang.StringBuilder
            dup
            ldc "Invalid policy directory name format: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        14: .line 305
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        15: .line 304
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        16: .line 303
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        17: .line 310
      StackMap locals:
      StackMap stack:
            ldc "java.home"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* javaHomeProperty */
        start local 2 // java.lang.String javaHomeProperty
        18: .line 311
            aload 2 /* javaHomeProperty */
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            ldc "conf"
            aastore
            dup
            iconst_1
        19: .line 312
            ldc "security"
            aastore
            dup
            iconst_2
            ldc "policy"
            aastore
        20: .line 311
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
        21: .line 312
            invokeinterface java.nio.file.Path.normalize:()Ljava/nio/file/Path;
        22: .line 311
            astore 3 /* javaHomePolicyPath */
        start local 3 // java.nio.file.Path javaHomePolicyPath
        23: .line 313
            aload 2 /* javaHomeProperty */
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
            ldc "conf"
            aastore
            dup
            iconst_1
            ldc "security"
            aastore
            dup
            iconst_2
        24: .line 314
            ldc "policy"
            aastore
            dup
            iconst_3
            aload 0 /* cryptoPolicyProperty */
            aastore
        25: .line 313
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
        26: .line 314
            invokeinterface java.nio.file.Path.normalize:()Ljava/nio/file/Path;
        27: .line 313
            astore 4 /* cryptoPolicyPath */
        start local 4 // java.nio.file.Path cryptoPolicyPath
        28: .line 316
            aload 4 /* cryptoPolicyPath */
            invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
            aload 3 /* javaHomePolicyPath */
            invokeinterface java.nio.file.Path.compareTo:(Ljava/nio/file/Path;)I
            ifeq 34
        29: .line 317
            new java.lang.SecurityException
            dup
        30: .line 318
            new java.lang.StringBuilder
            dup
            ldc "Invalid cryptographic jurisdiction policy directory path: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        31: .line 319
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        32: .line 318
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        33: .line 317
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        34: .line 322
      StackMap locals: java.lang.String java.nio.file.Path java.nio.file.Path
      StackMap stack:
            aload 4 /* cryptoPolicyPath */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 36
        35: .line 323
            aload 4 /* cryptoPolicyPath */
            invokestatic java.nio.file.Files.isReadable:(Ljava/nio/file/Path;)Z
            ifne 41
        36: .line 324
      StackMap locals:
      StackMap stack:
            new java.lang.SecurityException
            dup
        37: .line 325
            new java.lang.StringBuilder
            dup
            ldc "Can't read cryptographic policy directory: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        38: .line 326
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        39: .line 325
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        40: .line 324
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        41: .line 329
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5
            aconst_null
            astore 6
        42: .line 330
            aload 4 /* cryptoPolicyPath */
            ldc "{default,exempt}_*.policy"
        43: .line 329
            invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;Ljava/lang/String;)Ljava/nio/file/DirectoryStream;
            astore 7 /* stream */
        start local 7 // java.nio.file.DirectoryStream stream
        44: .line 331
            aload 7 /* stream */
            invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
            astore 9
            goto 80
      StackMap locals: java.lang.String java.nio.file.Path java.lang.String java.nio.file.Path java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
      StackMap stack:
        45: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.nio.file.Path
            astore 8 /* entry */
        start local 8 // java.nio.file.Path entry
        46: .line 332
            aconst_null
            astore 10
            aconst_null
            astore 11
        47: new java.io.BufferedInputStream
            dup
        48: .line 333
            aload 8 /* entry */
            iconst_0
            anewarray java.nio.file.OpenOption
            invokestatic java.nio.file.Files.newInputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/InputStream;
        49: .line 332
            invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
            astore 12 /* is */
        start local 12 // java.io.InputStream is
        50: .line 334
            aload 8 /* entry */
            invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            astore 13 /* filename */
        start local 13 // java.lang.String filename
        51: .line 336
            new javax.crypto.CryptoPermissions
            dup
            invokespecial javax.crypto.CryptoPermissions.<init>:()V
            astore 14 /* tmpPerms */
        start local 14 // javax.crypto.CryptoPermissions tmpPerms
        52: .line 337
            aload 14 /* tmpPerms */
            aload 12 /* is */
            invokevirtual javax.crypto.CryptoPermissions.load:(Ljava/io/InputStream;)V
        53: .line 339
            aload 13 /* filename */
            ldc "default_"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 58
        54: .line 341
            getstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
            ifnonnull 55
            aload 14 /* tmpPerms */
            goto 56
        55: .line 342
      StackMap locals: java.lang.String java.nio.file.Path java.lang.String java.nio.file.Path java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.lang.Throwable java.lang.Throwable java.io.InputStream java.lang.String javax.crypto.CryptoPermissions
      StackMap stack:
            getstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
            aload 14 /* tmpPerms */
            invokevirtual javax.crypto.CryptoPermissions.getMinimum:(Ljavax/crypto/CryptoPermissions;)Ljavax/crypto/CryptoPermissions;
        56: .line 341
      StackMap locals:
      StackMap stack: javax.crypto.CryptoPermissions
            putstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
        57: .line 343
            goto 68
      StackMap locals:
      StackMap stack:
        58: aload 13 /* filename */
            ldc "exempt_"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 63
        59: .line 345
            getstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
            ifnonnull 60
            aload 14 /* tmpPerms */
            goto 61
        60: .line 346
      StackMap locals:
      StackMap stack:
            getstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
            aload 14 /* tmpPerms */
            invokevirtual javax.crypto.CryptoPermissions.getMinimum:(Ljavax/crypto/CryptoPermissions;)Ljavax/crypto/CryptoPermissions;
        61: .line 345
      StackMap locals:
      StackMap stack: javax.crypto.CryptoPermissions
            putstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
        62: .line 347
            goto 68
        63: .line 350
      StackMap locals:
      StackMap stack:
            new java.lang.SecurityException
            dup
        64: .line 351
            new java.lang.StringBuilder
            dup
            ldc "Unexpected jurisdiction policy files in : "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        65: .line 352
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        66: .line 351
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        67: .line 350
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        end local 14 // javax.crypto.CryptoPermissions tmpPerms
        end local 13 // java.lang.String filename
        68: .line 354
      StackMap locals:
      StackMap stack:
            aload 12 /* is */
            ifnull 80
            aload 12 /* is */
            invokevirtual java.io.InputStream.close:()V
            goto 80
      StackMap locals:
      StackMap stack: java.lang.Throwable
        69: astore 10
            aload 12 /* is */
            ifnull 70
            aload 12 /* is */
            invokevirtual java.io.InputStream.close:()V
        end local 12 // java.io.InputStream is
      StackMap locals:
      StackMap stack:
        70: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        71: astore 11
            aload 10
            ifnonnull 72
            aload 11
            astore 10
            goto 73
      StackMap locals:
      StackMap stack:
        72: aload 10
            aload 11
            if_acmpeq 73
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        73: aload 10
            athrow
      StackMap locals: java.lang.String java.nio.file.Path java.lang.String java.nio.file.Path java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator
      StackMap stack: java.lang.Exception
        74: pop
        75: .line 355
            new java.lang.SecurityException
            dup
        76: .line 356
            new java.lang.StringBuilder
            dup
            ldc "Couldn't parse jurisdiction policy files in: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        77: .line 357
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        78: .line 356
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        79: .line 355
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // java.nio.file.Path entry
        80: .line 331
      StackMap locals: java.lang.String java.nio.file.Path java.lang.String java.nio.file.Path java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 45
        81: .line 360
            aload 7 /* stream */
            ifnull 93
            aload 7 /* stream */
            invokeinterface java.nio.file.DirectoryStream.close:()V
            goto 93
      StackMap locals: java.lang.String java.nio.file.Path java.lang.String java.nio.file.Path java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
      StackMap stack: java.lang.Throwable
        82: astore 5
            aload 7 /* stream */
            ifnull 83
            aload 7 /* stream */
            invokeinterface java.nio.file.DirectoryStream.close:()V
        end local 7 // java.nio.file.DirectoryStream stream
      StackMap locals:
      StackMap stack:
        83: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        84: astore 6
            aload 5
            ifnonnull 85
            aload 6
            astore 5
            goto 86
      StackMap locals:
      StackMap stack:
        85: aload 5
            aload 6
            if_acmpeq 86
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        86: aload 5
            athrow
      StackMap locals: java.lang.String java.nio.file.Path java.lang.String java.nio.file.Path java.nio.file.Path
      StackMap stack: java.nio.file.DirectoryIteratorException
        87: pop
        88: .line 363
            new java.lang.SecurityException
            dup
        89: .line 364
            new java.lang.StringBuilder
            dup
            ldc "Couldn't iterate through the jurisdiction policy files: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        90: .line 365
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        91: .line 364
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        92: .line 363
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        93: .line 369
      StackMap locals:
      StackMap stack:
            getstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
            ifnull 94
            getstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
            invokevirtual javax.crypto.CryptoPermissions.isEmpty:()Z
            ifeq 99
        94: .line 370
      StackMap locals:
      StackMap stack:
            new java.lang.SecurityException
            dup
        95: .line 371
            new java.lang.StringBuilder
            dup
            ldc "Missing mandatory jurisdiction policy files: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        96: .line 372
            aload 0 /* cryptoPolicyProperty */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        97: .line 371
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        98: .line 370
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
        99: .line 376
      StackMap locals:
      StackMap stack:
            getstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
            ifnull 101
            getstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
            invokevirtual javax.crypto.CryptoPermissions.isEmpty:()Z
            ifeq 101
       100: .line 377
            aconst_null
            putstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
       101: .line 379
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.nio.file.Path cryptoPolicyPath
        end local 3 // java.nio.file.Path javaHomePolicyPath
        end local 2 // java.lang.String javaHomeProperty
        end local 1 // java.nio.file.Path cpPath
        end local 0 // java.lang.String cryptoPolicyProperty
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            1  102     0  cryptoPolicyProperty  Ljava/lang/String;
           10  102     1                cpPath  Ljava/nio/file/Path;
           18  102     2      javaHomeProperty  Ljava/lang/String;
           23  102     3    javaHomePolicyPath  Ljava/nio/file/Path;
           28  102     4      cryptoPolicyPath  Ljava/nio/file/Path;
           44   83     7                stream  Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
           46   80     8                 entry  Ljava/nio/file/Path;
           50   70    12                    is  Ljava/io/InputStream;
           51   68    13              filename  Ljava/lang/String;
           52   68    14              tmpPerms  Ljavax/crypto/CryptoPermissions;
      Exception table:
        from    to  target  type
          50    68      69  any
          47    71      71  any
          46    74      74  Class java.lang.Exception
          44    81      82  any
          42    84      84  any
          41    87      87  Class java.nio.file.DirectoryIteratorException
    Exceptions:
      throws java.lang.Exception

  static javax.crypto.CryptoPermissions getDefaultPolicy();
    descriptor: ()Ljavax/crypto/CryptoPermissions;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 382
            getstatic javax.crypto.JceSecurity.defaultPolicy:Ljavax/crypto/CryptoPermissions;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static javax.crypto.CryptoPermissions getExemptPolicy();
    descriptor: ()Ljavax/crypto/CryptoPermissions;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 386
            getstatic javax.crypto.JceSecurity.exemptPolicy:Ljavax/crypto/CryptoPermissions;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static boolean isRestricted();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 390
            getstatic javax.crypto.JceSecurity.isRestricted:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "JceSecurity.java"
NestMembers:
  javax.crypto.JceSecurity$1  javax.crypto.JceSecurity$2
InnerClasses:
  public Service = java.security.Provider$Service of java.security.Provider
  javax.crypto.JceSecurity$1
  javax.crypto.JceSecurity$2
  public final Instance = sun.security.jca.GetInstance$Instance of sun.security.jca.GetInstance