final class sun.security.ssl.SignatureScheme extends java.lang.Enum<sun.security.ssl.SignatureScheme>
  minor version: 0
  major version: 59
  flags: flags: (0x4030) ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
  this_class: sun.security.ssl.SignatureScheme
  super_class: java.lang.Enum
{
  public static final sun.security.ssl.SignatureScheme ED25519;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme ED448;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme ECDSA_SECP256R1_SHA256;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme ECDSA_SECP384R1_SHA384;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme ECDSA_SECP521R1_SHA512;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PSS_RSAE_SHA256;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PSS_RSAE_SHA384;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PSS_RSAE_SHA512;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PSS_PSS_SHA256;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PSS_PSS_SHA384;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PSS_PSS_SHA512;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PKCS1_SHA256;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PKCS1_SHA384;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PKCS1_SHA512;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme DSA_SHA256;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme ECDSA_SHA224;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_SHA224;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme DSA_SHA224;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme ECDSA_SHA1;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_PKCS1_SHA1;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme DSA_SHA1;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final sun.security.ssl.SignatureScheme RSA_MD5;
    descriptor: Lsun/security/ssl/SignatureScheme;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  final int id;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  private final java.lang.String algorithm;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final java.lang.String keyAlgorithm;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  private final java.security.spec.AlgorithmParameterSpec signAlgParameter;
    descriptor: Ljava/security/spec/AlgorithmParameterSpec;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.security.ssl.SupportedGroupsExtension$NamedGroup namedGroup;
    descriptor: Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final int minimalKeySize;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final java.util.List<sun.security.ssl.ProtocolVersion> supportedProtocols;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Lsun/security/ssl/ProtocolVersion;>;

  final java.util.List<sun.security.ssl.ProtocolVersion> handshakeSupportedProtocols;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Lsun/security/ssl/ProtocolVersion;>;

  final boolean isAvailable;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

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

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

  private static final java.util.Set<java.security.CryptoPrimitive> SIGNATURE_PRIMITIVE_SET;
    descriptor: Ljava/util/Set;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/security/CryptoPrimitive;>;

  private static final sun.security.ssl.SignatureScheme[] ENUM$VALUES;
    descriptor: [Lsun/security/ssl/SignatureScheme;
    flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=13, locals=0, args_size=0
         0: .line 48
            new sun.security.ssl.SignatureScheme
            dup
            ldc "ED25519"
            iconst_0
            sipush 2055
            ldc "ed25519"
            ldc "ed25519"
         1: .line 49
            ldc "ed25519"
         2: .line 50
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_OF_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
         3: .line 48
            putstatic sun.security.ssl.SignatureScheme.ED25519:Lsun/security/ssl/SignatureScheme;
         4: .line 51
            new sun.security.ssl.SignatureScheme
            dup
            ldc "ED448"
            iconst_1
            sipush 2056
            ldc "ed448"
            ldc "ed448"
         5: .line 52
            ldc "ed448"
         6: .line 53
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_OF_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
         7: .line 51
            putstatic sun.security.ssl.SignatureScheme.ED448:Lsun/security/ssl/SignatureScheme;
         8: .line 56
            new sun.security.ssl.SignatureScheme
            dup
            ldc "ECDSA_SECP256R1_SHA256"
            iconst_2
            sipush 1027
            ldc "ecdsa_secp256r1_sha256"
         9: .line 57
            ldc "SHA256withECDSA"
        10: .line 58
            ldc "EC"
        11: .line 59
            getstatic sun.security.ssl.SupportedGroupsExtension$NamedGroup.SECP256_R1:Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
        12: .line 60
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;[Lsun/security/ssl/ProtocolVersion;)V
        13: .line 56
            putstatic sun.security.ssl.SignatureScheme.ECDSA_SECP256R1_SHA256:Lsun/security/ssl/SignatureScheme;
        14: .line 61
            new sun.security.ssl.SignatureScheme
            dup
            ldc "ECDSA_SECP384R1_SHA384"
            iconst_3
            sipush 1283
            ldc "ecdsa_secp384r1_sha384"
        15: .line 62
            ldc "SHA384withECDSA"
        16: .line 63
            ldc "EC"
        17: .line 64
            getstatic sun.security.ssl.SupportedGroupsExtension$NamedGroup.SECP384_R1:Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
        18: .line 65
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;[Lsun/security/ssl/ProtocolVersion;)V
        19: .line 61
            putstatic sun.security.ssl.SignatureScheme.ECDSA_SECP384R1_SHA384:Lsun/security/ssl/SignatureScheme;
        20: .line 66
            new sun.security.ssl.SignatureScheme
            dup
            ldc "ECDSA_SECP521R1_SHA512"
            iconst_4
            sipush 1539
            ldc "ecdsa_secp521r1_sha512"
        21: .line 67
            ldc "SHA512withECDSA"
        22: .line 68
            ldc "EC"
        23: .line 69
            getstatic sun.security.ssl.SupportedGroupsExtension$NamedGroup.SECP521_R1:Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
        24: .line 70
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;[Lsun/security/ssl/ProtocolVersion;)V
        25: .line 66
            putstatic sun.security.ssl.SignatureScheme.ECDSA_SECP521R1_SHA512:Lsun/security/ssl/SignatureScheme;
        26: .line 76
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PSS_RSAE_SHA256"
            iconst_5
            sipush 2052
            ldc "rsa_pss_rsae_sha256"
        27: .line 77
            ldc "RSASSA-PSS"
            ldc "RSA"
        28: .line 78
            getstatic sun.security.ssl.SignatureScheme$SigAlgParamSpec.RSA_PSS_SHA256:Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            sipush 528
        29: .line 79
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_12_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
        30: .line 76
            putstatic sun.security.ssl.SignatureScheme.RSA_PSS_RSAE_SHA256:Lsun/security/ssl/SignatureScheme;
        31: .line 80
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PSS_RSAE_SHA384"
            bipush 6
            sipush 2053
            ldc "rsa_pss_rsae_sha384"
        32: .line 81
            ldc "RSASSA-PSS"
            ldc "RSA"
        33: .line 82
            getstatic sun.security.ssl.SignatureScheme$SigAlgParamSpec.RSA_PSS_SHA384:Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            sipush 784
        34: .line 83
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_12_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
        35: .line 80
            putstatic sun.security.ssl.SignatureScheme.RSA_PSS_RSAE_SHA384:Lsun/security/ssl/SignatureScheme;
        36: .line 84
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PSS_RSAE_SHA512"
            bipush 7
            sipush 2054
            ldc "rsa_pss_rsae_sha512"
        37: .line 85
            ldc "RSASSA-PSS"
            ldc "RSA"
        38: .line 86
            getstatic sun.security.ssl.SignatureScheme$SigAlgParamSpec.RSA_PSS_SHA512:Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            sipush 1040
        39: .line 87
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_12_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
        40: .line 84
            putstatic sun.security.ssl.SignatureScheme.RSA_PSS_RSAE_SHA512:Lsun/security/ssl/SignatureScheme;
        41: .line 93
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PSS_PSS_SHA256"
            bipush 8
            sipush 2057
            ldc "rsa_pss_pss_sha256"
        42: .line 94
            ldc "RSASSA-PSS"
            ldc "RSASSA-PSS"
        43: .line 95
            getstatic sun.security.ssl.SignatureScheme$SigAlgParamSpec.RSA_PSS_SHA256:Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            sipush 528
        44: .line 96
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_12_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
        45: .line 93
            putstatic sun.security.ssl.SignatureScheme.RSA_PSS_PSS_SHA256:Lsun/security/ssl/SignatureScheme;
        46: .line 97
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PSS_PSS_SHA384"
            bipush 9
            sipush 2058
            ldc "rsa_pss_pss_sha384"
        47: .line 98
            ldc "RSASSA-PSS"
            ldc "RSASSA-PSS"
        48: .line 99
            getstatic sun.security.ssl.SignatureScheme$SigAlgParamSpec.RSA_PSS_SHA384:Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            sipush 784
        49: .line 100
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_12_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
        50: .line 97
            putstatic sun.security.ssl.SignatureScheme.RSA_PSS_PSS_SHA384:Lsun/security/ssl/SignatureScheme;
        51: .line 101
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PSS_PSS_SHA512"
            bipush 10
            sipush 2059
            ldc "rsa_pss_pss_sha512"
        52: .line 102
            ldc "RSASSA-PSS"
            ldc "RSASSA-PSS"
        53: .line 103
            getstatic sun.security.ssl.SignatureScheme$SigAlgParamSpec.RSA_PSS_SHA512:Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            sipush 1040
        54: .line 104
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_12_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
        55: .line 101
            putstatic sun.security.ssl.SignatureScheme.RSA_PSS_PSS_SHA512:Lsun/security/ssl/SignatureScheme;
        56: .line 107
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PKCS1_SHA256"
            bipush 11
            sipush 1025
            ldc "rsa_pkcs1_sha256"
            ldc "SHA256withRSA"
        57: .line 108
            ldc "RSA"
            aconst_null
            aconst_null
            sipush 511
        58: .line 109
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
        59: .line 110
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;I[Lsun/security/ssl/ProtocolVersion;[Lsun/security/ssl/ProtocolVersion;)V
        60: .line 107
            putstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA256:Lsun/security/ssl/SignatureScheme;
        61: .line 111
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PKCS1_SHA384"
            bipush 12
            sipush 1281
            ldc "rsa_pkcs1_sha384"
            ldc "SHA384withRSA"
        62: .line 112
            ldc "RSA"
            aconst_null
            aconst_null
            sipush 768
        63: .line 113
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
        64: .line 114
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;I[Lsun/security/ssl/ProtocolVersion;[Lsun/security/ssl/ProtocolVersion;)V
        65: .line 111
            putstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA384:Lsun/security/ssl/SignatureScheme;
        66: .line 115
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PKCS1_SHA512"
            bipush 13
            sipush 1537
            ldc "rsa_pkcs1_sha512"
            ldc "SHA512withRSA"
        67: .line 116
            ldc "RSA"
            aconst_null
            aconst_null
            sipush 768
        68: .line 117
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
        69: .line 118
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;I[Lsun/security/ssl/ProtocolVersion;[Lsun/security/ssl/ProtocolVersion;)V
        70: .line 115
            putstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA512:Lsun/security/ssl/SignatureScheme;
        71: .line 121
            new sun.security.ssl.SignatureScheme
            dup
            ldc "DSA_SHA256"
            bipush 14
            sipush 1026
            ldc "dsa_sha256"
            ldc "SHA256withDSA"
        72: .line 122
            ldc "DSA"
        73: .line 123
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
        74: .line 121
            putstatic sun.security.ssl.SignatureScheme.DSA_SHA256:Lsun/security/ssl/SignatureScheme;
        75: .line 124
            new sun.security.ssl.SignatureScheme
            dup
            ldc "ECDSA_SHA224"
            bipush 15
            sipush 771
            ldc "ecdsa_sha224"
            ldc "SHA224withECDSA"
        76: .line 125
            ldc "EC"
        77: .line 126
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
        78: .line 124
            putstatic sun.security.ssl.SignatureScheme.ECDSA_SHA224:Lsun/security/ssl/SignatureScheme;
        79: .line 127
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_SHA224"
            bipush 16
            sipush 769
            ldc "rsa_sha224"
            ldc "SHA224withRSA"
        80: .line 128
            ldc "RSA"
            sipush 511
        81: .line 129
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I[Lsun/security/ssl/ProtocolVersion;)V
        82: .line 127
            putstatic sun.security.ssl.SignatureScheme.RSA_SHA224:Lsun/security/ssl/SignatureScheme;
        83: .line 130
            new sun.security.ssl.SignatureScheme
            dup
            ldc "DSA_SHA224"
            bipush 17
            sipush 770
            ldc "dsa_sha224"
            ldc "SHA224withDSA"
        84: .line 131
            ldc "DSA"
        85: .line 132
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
        86: .line 130
            putstatic sun.security.ssl.SignatureScheme.DSA_SHA224:Lsun/security/ssl/SignatureScheme;
        87: .line 133
            new sun.security.ssl.SignatureScheme
            dup
            ldc "ECDSA_SHA1"
            bipush 18
            sipush 515
            ldc "ecdsa_sha1"
            ldc "SHA1withECDSA"
        88: .line 134
            ldc "EC"
        89: .line 135
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
        90: .line 133
            putstatic sun.security.ssl.SignatureScheme.ECDSA_SHA1:Lsun/security/ssl/SignatureScheme;
        91: .line 136
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_PKCS1_SHA1"
            bipush 19
            sipush 513
            ldc "rsa_pkcs1_sha1"
            ldc "SHA1withRSA"
        92: .line 137
            ldc "RSA"
            aconst_null
            aconst_null
            sipush 511
        93: .line 138
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_13:[Lsun/security/ssl/ProtocolVersion;
        94: .line 139
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;I[Lsun/security/ssl/ProtocolVersion;[Lsun/security/ssl/ProtocolVersion;)V
        95: .line 136
            putstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA1:Lsun/security/ssl/SignatureScheme;
        96: .line 140
            new sun.security.ssl.SignatureScheme
            dup
            ldc "DSA_SHA1"
            bipush 20
            sipush 514
            ldc "dsa_sha1"
            ldc "SHA1withDSA"
        97: .line 141
            ldc "DSA"
        98: .line 142
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
        99: .line 140
            putstatic sun.security.ssl.SignatureScheme.DSA_SHA1:Lsun/security/ssl/SignatureScheme;
       100: .line 143
            new sun.security.ssl.SignatureScheme
            dup
            ldc "RSA_MD5"
            bipush 21
            sipush 257
            ldc "rsa_md5"
            ldc "MD5withRSA"
       101: .line 144
            ldc "RSA"
            sipush 511
       102: .line 145
            getstatic sun.security.ssl.ProtocolVersion.PROTOCOLS_TO_12:[Lsun/security/ssl/ProtocolVersion;
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I[Lsun/security/ssl/ProtocolVersion;)V
       103: .line 143
            putstatic sun.security.ssl.SignatureScheme.RSA_MD5:Lsun/security/ssl/SignatureScheme;
            bipush 22
            anewarray sun.security.ssl.SignatureScheme
            dup
            iconst_0
            getstatic sun.security.ssl.SignatureScheme.ED25519:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            iconst_1
            getstatic sun.security.ssl.SignatureScheme.ED448:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            iconst_2
            getstatic sun.security.ssl.SignatureScheme.ECDSA_SECP256R1_SHA256:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            iconst_3
            getstatic sun.security.ssl.SignatureScheme.ECDSA_SECP384R1_SHA384:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            iconst_4
            getstatic sun.security.ssl.SignatureScheme.ECDSA_SECP521R1_SHA512:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            iconst_5
            getstatic sun.security.ssl.SignatureScheme.RSA_PSS_RSAE_SHA256:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 6
            getstatic sun.security.ssl.SignatureScheme.RSA_PSS_RSAE_SHA384:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 7
            getstatic sun.security.ssl.SignatureScheme.RSA_PSS_RSAE_SHA512:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 8
            getstatic sun.security.ssl.SignatureScheme.RSA_PSS_PSS_SHA256:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 9
            getstatic sun.security.ssl.SignatureScheme.RSA_PSS_PSS_SHA384:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 10
            getstatic sun.security.ssl.SignatureScheme.RSA_PSS_PSS_SHA512:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 11
            getstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA256:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 12
            getstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA384:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 13
            getstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA512:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 14
            getstatic sun.security.ssl.SignatureScheme.DSA_SHA256:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 15
            getstatic sun.security.ssl.SignatureScheme.ECDSA_SHA224:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 16
            getstatic sun.security.ssl.SignatureScheme.RSA_SHA224:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 17
            getstatic sun.security.ssl.SignatureScheme.DSA_SHA224:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 18
            getstatic sun.security.ssl.SignatureScheme.ECDSA_SHA1:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 19
            getstatic sun.security.ssl.SignatureScheme.RSA_PKCS1_SHA1:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 20
            getstatic sun.security.ssl.SignatureScheme.DSA_SHA1:Lsun/security/ssl/SignatureScheme;
            aastore
            dup
            bipush 21
            getstatic sun.security.ssl.SignatureScheme.RSA_MD5:Lsun/security/ssl/SignatureScheme;
            aastore
            putstatic sun.security.ssl.SignatureScheme.ENUM$VALUES:[Lsun/security/ssl/SignatureScheme;
       104: .line 172
            bipush 7
            anewarray java.lang.String
            dup
            iconst_0
       105: .line 173
            ldc "none"
            aastore
            dup
            iconst_1
            ldc "md5"
            aastore
            dup
            iconst_2
            ldc "sha1"
            aastore
            dup
            iconst_3
            ldc "sha224"
            aastore
            dup
            iconst_4
       106: .line 174
            ldc "sha256"
            aastore
            dup
            iconst_5
            ldc "sha384"
            aastore
            dup
            bipush 6
            ldc "sha512"
            aastore
       107: .line 172
            putstatic sun.security.ssl.SignatureScheme.hashAlgorithms:[Ljava/lang/String;
       108: .line 177
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
       109: .line 178
            ldc "anonymous"
            aastore
            dup
            iconst_1
            ldc "rsa"
            aastore
            dup
            iconst_2
            ldc "dsa"
            aastore
            dup
            iconst_3
            ldc "ecdsa"
            aastore
       110: .line 177
            putstatic sun.security.ssl.SignatureScheme.signatureAlgorithms:[Ljava/lang/String;
       111: .line 220
            getstatic java.security.CryptoPrimitive.SIGNATURE:Ljava/security/CryptoPrimitive;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
            invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
       112: .line 219
            putstatic sun.security.ssl.SignatureScheme.SIGNATURE_PRIMITIVE_SET:Ljava/util/Set;
       113: .line 220
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.lang.String, int, int, java.lang.String, java.lang.String, java.lang.String, sun.security.ssl.ProtocolVersion[]);
    descriptor: (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Lsun/security/ssl/ProtocolVersion;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=8, args_size=8
        start local 0 // sun.security.ssl.SignatureScheme this
        start local 3 // int id
        start local 4 // java.lang.String name
        start local 5 // java.lang.String algorithm
        start local 6 // java.lang.String keyAlgorithm
        start local 7 // sun.security.ssl.ProtocolVersion[] supportedProtocols
         0: .line 226
            aload 0 /* this */
            aload 1
            iload 2
            iload 3 /* id */
            aload 4 /* name */
            aload 5 /* algorithm */
            aload 6 /* keyAlgorithm */
            iconst_m1
            aload 7 /* supportedProtocols */
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I[Lsun/security/ssl/ProtocolVersion;)V
         1: .line 227
            return
        end local 7 // sun.security.ssl.ProtocolVersion[] supportedProtocols
        end local 6 // java.lang.String keyAlgorithm
        end local 5 // java.lang.String algorithm
        end local 4 // java.lang.String name
        end local 3 // int id
        end local 0 // sun.security.ssl.SignatureScheme this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lsun/security/ssl/SignatureScheme;
            0    2     3                  id  I
            0    2     4                name  Ljava/lang/String;
            0    2     5           algorithm  Ljava/lang/String;
            0    2     6        keyAlgorithm  Ljava/lang/String;
            0    2     7  supportedProtocols  [Lsun/security/ssl/ProtocolVersion;
    MethodParameters:
                    Name  Flags
      $enum$name          
      $enum$ordinal       
      id                  
      name                
      algorithm           
      keyAlgorithm        
      supportedProtocols  

  private void <init>(java.lang.String, int, int, java.lang.String, java.lang.String, java.lang.String, int, sun.security.ssl.ProtocolVersion[]);
    descriptor: (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I[Lsun/security/ssl/ProtocolVersion;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=9, args_size=9
        start local 0 // sun.security.ssl.SignatureScheme this
        start local 3 // int id
        start local 4 // java.lang.String name
        start local 5 // java.lang.String algorithm
        start local 6 // java.lang.String keyAlgorithm
        start local 7 // int minimalKeySize
        start local 8 // sun.security.ssl.ProtocolVersion[] supportedProtocols
         0: .line 233
            aload 0 /* this */
            aload 1
            iload 2
            iload 3 /* id */
            aload 4 /* name */
            aload 5 /* algorithm */
            aload 6 /* keyAlgorithm */
         1: .line 234
            aconst_null
            iload 7 /* minimalKeySize */
            aload 8 /* supportedProtocols */
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
         2: .line 235
            return
        end local 8 // sun.security.ssl.ProtocolVersion[] supportedProtocols
        end local 7 // int minimalKeySize
        end local 6 // java.lang.String keyAlgorithm
        end local 5 // java.lang.String algorithm
        end local 4 // java.lang.String name
        end local 3 // int id
        end local 0 // sun.security.ssl.SignatureScheme this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0                this  Lsun/security/ssl/SignatureScheme;
            0    3     3                  id  I
            0    3     4                name  Ljava/lang/String;
            0    3     5           algorithm  Ljava/lang/String;
            0    3     6        keyAlgorithm  Ljava/lang/String;
            0    3     7      minimalKeySize  I
            0    3     8  supportedProtocols  [Lsun/security/ssl/ProtocolVersion;
    MethodParameters:
                    Name  Flags
      $enum$name          
      $enum$ordinal       
      id                  
      name                
      algorithm           
      keyAlgorithm        
      minimalKeySize      
      supportedProtocols  

  private void <init>(java.lang.String, int, int, java.lang.String, java.lang.String, java.lang.String, sun.security.ssl.SignatureScheme$SigAlgParamSpec, int, sun.security.ssl.ProtocolVersion[]);
    descriptor: (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;I[Lsun/security/ssl/ProtocolVersion;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=10, args_size=10
        start local 0 // sun.security.ssl.SignatureScheme this
        start local 3 // int id
        start local 4 // java.lang.String name
        start local 5 // java.lang.String algorithm
        start local 6 // java.lang.String keyAlgorithm
        start local 7 // sun.security.ssl.SignatureScheme$SigAlgParamSpec signAlgParamSpec
        start local 8 // int minimalKeySize
        start local 9 // sun.security.ssl.ProtocolVersion[] supportedProtocols
         0: .line 241
            aload 0 /* this */
            aload 1
            iload 2
            iload 3 /* id */
            aload 4 /* name */
            aload 5 /* algorithm */
            aload 6 /* keyAlgorithm */
         1: .line 242
            aload 7 /* signAlgParamSpec */
            aconst_null
            iload 8 /* minimalKeySize */
         2: .line 243
            aload 9 /* supportedProtocols */
            aload 9 /* supportedProtocols */
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;I[Lsun/security/ssl/ProtocolVersion;[Lsun/security/ssl/ProtocolVersion;)V
         3: .line 244
            return
        end local 9 // sun.security.ssl.ProtocolVersion[] supportedProtocols
        end local 8 // int minimalKeySize
        end local 7 // sun.security.ssl.SignatureScheme$SigAlgParamSpec signAlgParamSpec
        end local 6 // java.lang.String keyAlgorithm
        end local 5 // java.lang.String algorithm
        end local 4 // java.lang.String name
        end local 3 // int id
        end local 0 // sun.security.ssl.SignatureScheme this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lsun/security/ssl/SignatureScheme;
            0    4     3                  id  I
            0    4     4                name  Ljava/lang/String;
            0    4     5           algorithm  Ljava/lang/String;
            0    4     6        keyAlgorithm  Ljava/lang/String;
            0    4     7    signAlgParamSpec  Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            0    4     8      minimalKeySize  I
            0    4     9  supportedProtocols  [Lsun/security/ssl/ProtocolVersion;
    MethodParameters:
                    Name  Flags
      $enum$name          
      $enum$ordinal       
      id                  
      name                
      algorithm           
      keyAlgorithm        
      signAlgParamSpec    
      minimalKeySize      
      supportedProtocols  

  private void <init>(java.lang.String, int, int, java.lang.String, java.lang.String, java.lang.String, sun.security.ssl.SupportedGroupsExtension$NamedGroup, sun.security.ssl.ProtocolVersion[]);
    descriptor: (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;[Lsun/security/ssl/ProtocolVersion;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=9, args_size=9
        start local 0 // sun.security.ssl.SignatureScheme this
        start local 3 // int id
        start local 4 // java.lang.String name
        start local 5 // java.lang.String algorithm
        start local 6 // java.lang.String keyAlgorithm
        start local 7 // sun.security.ssl.SupportedGroupsExtension$NamedGroup namedGroup
        start local 8 // sun.security.ssl.ProtocolVersion[] supportedProtocols
         0: .line 250
            aload 0 /* this */
            aload 1
            iload 2
            iload 3 /* id */
            aload 4 /* name */
            aload 5 /* algorithm */
            aload 6 /* keyAlgorithm */
         1: .line 251
            aconst_null
            aload 7 /* namedGroup */
            iconst_m1
         2: .line 252
            aload 8 /* supportedProtocols */
            aload 8 /* supportedProtocols */
            invokespecial sun.security.ssl.SignatureScheme.<init>:(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;I[Lsun/security/ssl/ProtocolVersion;[Lsun/security/ssl/ProtocolVersion;)V
         3: .line 253
            return
        end local 8 // sun.security.ssl.ProtocolVersion[] supportedProtocols
        end local 7 // sun.security.ssl.SupportedGroupsExtension$NamedGroup namedGroup
        end local 6 // java.lang.String keyAlgorithm
        end local 5 // java.lang.String algorithm
        end local 4 // java.lang.String name
        end local 3 // int id
        end local 0 // sun.security.ssl.SignatureScheme this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Lsun/security/ssl/SignatureScheme;
            0    4     3                  id  I
            0    4     4                name  Ljava/lang/String;
            0    4     5           algorithm  Ljava/lang/String;
            0    4     6        keyAlgorithm  Ljava/lang/String;
            0    4     7          namedGroup  Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
            0    4     8  supportedProtocols  [Lsun/security/ssl/ProtocolVersion;
    MethodParameters:
                    Name  Flags
      $enum$name          
      $enum$ordinal       
      id                  
      name                
      algorithm           
      keyAlgorithm        
      namedGroup          
      supportedProtocols  

  private void <init>(java.lang.String, int, int, java.lang.String, java.lang.String, java.lang.String, sun.security.ssl.SignatureScheme$SigAlgParamSpec, sun.security.ssl.SupportedGroupsExtension$NamedGroup, int, sun.security.ssl.ProtocolVersion[], sun.security.ssl.ProtocolVersion[]);
    descriptor: (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;I[Lsun/security/ssl/ProtocolVersion;[Lsun/security/ssl/ProtocolVersion;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=13, args_size=12
        start local 0 // sun.security.ssl.SignatureScheme this
        start local 3 // int id
        start local 4 // java.lang.String name
        start local 5 // java.lang.String algorithm
        start local 6 // java.lang.String keyAlgorithm
        start local 7 // sun.security.ssl.SignatureScheme$SigAlgParamSpec signAlgParamSpec
        start local 8 // sun.security.ssl.SupportedGroupsExtension$NamedGroup namedGroup
        start local 9 // int minimalKeySize
        start local 10 // sun.security.ssl.ProtocolVersion[] supportedProtocols
        start local 11 // sun.security.ssl.ProtocolVersion[] handshakeSupportedProtocols
         0: .line 255
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
         1: .line 261
            aload 0 /* this */
            iload 3 /* id */
            putfield sun.security.ssl.SignatureScheme.id:I
         2: .line 262
            aload 0 /* this */
            aload 4 /* name */
            putfield sun.security.ssl.SignatureScheme.name:Ljava/lang/String;
         3: .line 263
            aload 0 /* this */
            aload 5 /* algorithm */
            putfield sun.security.ssl.SignatureScheme.algorithm:Ljava/lang/String;
         4: .line 264
            aload 0 /* this */
            aload 6 /* keyAlgorithm */
            putfield sun.security.ssl.SignatureScheme.keyAlgorithm:Ljava/lang/String;
         5: .line 265
            aload 0 /* this */
         6: .line 266
            aload 7 /* signAlgParamSpec */
            ifnull 7
            aload 7 /* signAlgParamSpec */
            getfield sun.security.ssl.SignatureScheme$SigAlgParamSpec.parameterSpec:Ljava/security/spec/AlgorithmParameterSpec;
            goto 8
      StackMap locals: sun.security.ssl.SignatureScheme java.lang.String int int java.lang.String java.lang.String java.lang.String sun.security.ssl.SignatureScheme$SigAlgParamSpec sun.security.ssl.SupportedGroupsExtension$NamedGroup int sun.security.ssl.ProtocolVersion[] sun.security.ssl.ProtocolVersion[]
      StackMap stack: sun.security.ssl.SignatureScheme
         7: aconst_null
         8: .line 265
      StackMap locals: sun.security.ssl.SignatureScheme java.lang.String int int java.lang.String java.lang.String java.lang.String sun.security.ssl.SignatureScheme$SigAlgParamSpec sun.security.ssl.SupportedGroupsExtension$NamedGroup int sun.security.ssl.ProtocolVersion[] sun.security.ssl.ProtocolVersion[]
      StackMap stack: sun.security.ssl.SignatureScheme java.security.spec.AlgorithmParameterSpec
            putfield sun.security.ssl.SignatureScheme.signAlgParameter:Ljava/security/spec/AlgorithmParameterSpec;
         9: .line 267
            aload 0 /* this */
            aload 8 /* namedGroup */
            putfield sun.security.ssl.SignatureScheme.namedGroup:Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
        10: .line 268
            aload 0 /* this */
            iload 9 /* minimalKeySize */
            putfield sun.security.ssl.SignatureScheme.minimalKeySize:I
        11: .line 269
            aload 0 /* this */
            aload 10 /* supportedProtocols */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            putfield sun.security.ssl.SignatureScheme.supportedProtocols:Ljava/util/List;
        12: .line 270
            aload 0 /* this */
        13: .line 271
            aload 11 /* handshakeSupportedProtocols */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
        14: .line 270
            putfield sun.security.ssl.SignatureScheme.handshakeSupportedProtocols:Ljava/util/List;
        15: .line 273
            iconst_1
            istore 12 /* mediator */
        start local 12 // boolean mediator
        16: .line 274
            aload 7 /* signAlgParamSpec */
            ifnull 19
        17: .line 275
            aload 7 /* signAlgParamSpec */
            getfield sun.security.ssl.SignatureScheme$SigAlgParamSpec.isAvailable:Z
            istore 12 /* mediator */
        18: .line 276
            goto 28
        19: .line 278
      StackMap locals: int
      StackMap stack:
            aload 5 /* algorithm */
            invokestatic sun.security.ssl.JsseJce.getSignature:(Ljava/lang/String;)Ljava/security/Signature;
            pop
        20: .line 279
            goto 28
      StackMap locals:
      StackMap stack: java.lang.Exception
        21: pop
        22: .line 280
            iconst_0
            istore 12 /* mediator */
        23: .line 281
            getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 28
            ldc "ssl,handshake"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 28
        24: .line 283
            new java.lang.StringBuilder
            dup
            ldc "Signature algorithm, "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* algorithm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        25: .line 284
            ldc ", is not supported by the underlying providers"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 283
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
        27: .line 282
            invokestatic sun.security.ssl.SSLLogger.warning:(Ljava/lang/String;[Ljava/lang/Object;)V
        28: .line 289
      StackMap locals:
      StackMap stack:
            iload 12 /* mediator */
            ifeq 31
            iload 3 /* id */
            bipush 8
            ishr
            sipush 255
            iand
            iconst_3
            if_icmpne 31
        29: .line 291
            ldc "SunMSCAPI"
            invokestatic java.security.Security.getProvider:(Ljava/lang/String;)Ljava/security/Provider;
            ifnull 31
        30: .line 292
            iconst_0
            istore 12 /* mediator */
        31: .line 296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 12 /* mediator */
            putfield sun.security.ssl.SignatureScheme.isAvailable:Z
        32: .line 297
            return
        end local 12 // boolean mediator
        end local 11 // sun.security.ssl.ProtocolVersion[] handshakeSupportedProtocols
        end local 10 // sun.security.ssl.ProtocolVersion[] supportedProtocols
        end local 9 // int minimalKeySize
        end local 8 // sun.security.ssl.SupportedGroupsExtension$NamedGroup namedGroup
        end local 7 // sun.security.ssl.SignatureScheme$SigAlgParamSpec signAlgParamSpec
        end local 6 // java.lang.String keyAlgorithm
        end local 5 // java.lang.String algorithm
        end local 4 // java.lang.String name
        end local 3 // int id
        end local 0 // sun.security.ssl.SignatureScheme this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0   33     0                         this  Lsun/security/ssl/SignatureScheme;
            0   33     3                           id  I
            0   33     4                         name  Ljava/lang/String;
            0   33     5                    algorithm  Ljava/lang/String;
            0   33     6                 keyAlgorithm  Ljava/lang/String;
            0   33     7             signAlgParamSpec  Lsun/security/ssl/SignatureScheme$SigAlgParamSpec;
            0   33     8                   namedGroup  Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
            0   33     9               minimalKeySize  I
            0   33    10           supportedProtocols  [Lsun/security/ssl/ProtocolVersion;
            0   33    11  handshakeSupportedProtocols  [Lsun/security/ssl/ProtocolVersion;
           16   33    12                     mediator  Z
      Exception table:
        from    to  target  type
          19    20      21  Class java.lang.Exception
    MethodParameters:
                             Name  Flags
      $enum$name                   
      $enum$ordinal                
      id                           
      name                         
      algorithm                    
      keyAlgorithm                 
      signAlgParamSpec             
      namedGroup                   
      minimalKeySize               
      supportedProtocols           
      handshakeSupportedProtocols  

  static sun.security.ssl.SignatureScheme valueOf(int);
    descriptor: (I)Lsun/security/ssl/SignatureScheme;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // int id
         0: .line 300
            invokestatic sun.security.ssl.SignatureScheme.values:()[Lsun/security/ssl/SignatureScheme;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: int top int int sun.security.ssl.SignatureScheme[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* ss */
        start local 1 // sun.security.ssl.SignatureScheme ss
         2: .line 301
            aload 1 /* ss */
            getfield sun.security.ssl.SignatureScheme.id:I
            iload 0 /* id */
            if_icmpne 4
         3: .line 302
            aload 1 /* ss */
            areturn
        end local 1 // sun.security.ssl.SignatureScheme ss
         4: .line 300
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 306
            aconst_null
            areturn
        end local 0 // int id
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0    id  I
            2    4     1    ss  Lsun/security/ssl/SignatureScheme;
    MethodParameters:
      Name  Flags
      id    

  static java.lang.String nameOf(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // int id
         0: .line 310
            invokestatic sun.security.ssl.SignatureScheme.values:()[Lsun/security/ssl/SignatureScheme;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: int top int int sun.security.ssl.SignatureScheme[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* ss */
        start local 1 // sun.security.ssl.SignatureScheme ss
         2: .line 311
            aload 1 /* ss */
            getfield sun.security.ssl.SignatureScheme.id:I
            iload 0 /* id */
            if_icmpne 4
         3: .line 312
            aload 1 /* ss */
            getfield sun.security.ssl.SignatureScheme.name:Ljava/lang/String;
            areturn
        end local 1 // sun.security.ssl.SignatureScheme ss
         4: .line 310
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 317
            iload 0 /* id */
            bipush 8
            ishr
            sipush 255
            iand
            istore 1 /* hashId */
        start local 1 // int hashId
         7: .line 318
            iload 0 /* id */
            sipush 255
            iand
            istore 2 /* signId */
        start local 2 // int signId
         8: .line 319
            iload 1 /* hashId */
            getstatic sun.security.ssl.SignatureScheme.hashAlgorithms:[Ljava/lang/String;
            arraylength
            if_icmplt 10
         9: .line 320
            new java.lang.StringBuilder
            dup
            ldc "UNDEFINED-HASH("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* hashId */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 11
      StackMap locals: int int int
      StackMap stack:
        10: getstatic sun.security.ssl.SignatureScheme.hashAlgorithms:[Ljava/lang/String;
            iload 1 /* hashId */
            aaload
        11: .line 319
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* hashName */
        start local 3 // java.lang.String hashName
        12: .line 321
            iload 2 /* signId */
            getstatic sun.security.ssl.SignatureScheme.signatureAlgorithms:[Ljava/lang/String;
            arraylength
            if_icmplt 14
        13: .line 322
            new java.lang.StringBuilder
            dup
            ldc "UNDEFINED-SIGNATURE("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* signId */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 15
        14: .line 323
      StackMap locals: java.lang.String
      StackMap stack:
            getstatic sun.security.ssl.SignatureScheme.signatureAlgorithms:[Ljava/lang/String;
            iload 2 /* signId */
            aaload
        15: .line 321
      StackMap locals:
      StackMap stack: java.lang.String
            astore 4 /* signName */
        start local 4 // java.lang.String signName
        16: .line 325
            new java.lang.StringBuilder
            dup
            aload 4 /* signName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* hashName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.String signName
        end local 3 // java.lang.String hashName
        end local 2 // int signId
        end local 1 // int hashId
        end local 0 // int id
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0        id  I
            2    4     1        ss  Lsun/security/ssl/SignatureScheme;
            7   17     1    hashId  I
            8   17     2    signId  I
           12   17     3  hashName  Ljava/lang/String;
           16   17     4  signName  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      id    

  static int sizeInRecord();
    descriptor: ()I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 330
            iconst_2
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static java.util.List<sun.security.ssl.SignatureScheme> getSupportedAlgorithms(java.security.AlgorithmConstraints, java.util.List<sun.security.ssl.ProtocolVersion>);
    descriptor: (Ljava/security/AlgorithmConstraints;Ljava/util/List;)Ljava/util/List;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=10, args_size=2
        start local 0 // java.security.AlgorithmConstraints constraints
        start local 1 // java.util.List activeProtocols
         0: .line 338
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            astore 2 /* supported */
        start local 2 // java.util.List supported
         1: .line 339
            invokestatic sun.security.ssl.SignatureScheme.values:()[Lsun/security/ssl/SignatureScheme;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 29
      StackMap locals: java.security.AlgorithmConstraints java.util.List java.util.List top int int sun.security.ssl.SignatureScheme[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* ss */
        start local 3 // sun.security.ssl.SignatureScheme ss
         3: .line 340
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.isAvailable:Z
            ifne 5
         4: .line 341
            goto 28
         5: .line 344
      StackMap locals: java.security.AlgorithmConstraints java.util.List java.util.List sun.security.ssl.SignatureScheme int int sun.security.ssl.SignatureScheme[]
      StackMap stack:
            iconst_0
            istore 7 /* isMatch */
        start local 7 // boolean isMatch
         6: .line 345
            aload 1 /* activeProtocols */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 11
      StackMap locals: java.security.AlgorithmConstraints java.util.List java.util.List sun.security.ssl.SignatureScheme int int sun.security.ssl.SignatureScheme[] int top java.util.Iterator
      StackMap stack:
         7: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.ssl.ProtocolVersion
            astore 8 /* pv */
        start local 8 // sun.security.ssl.ProtocolVersion pv
         8: .line 346
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.supportedProtocols:Ljava/util/List;
            aload 8 /* pv */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 11
         9: .line 347
            iconst_1
            istore 7 /* isMatch */
        10: .line 348
            goto 12
        end local 8 // sun.security.ssl.ProtocolVersion pv
        11: .line 345
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        12: .line 352
      StackMap locals: java.security.AlgorithmConstraints java.util.List java.util.List sun.security.ssl.SignatureScheme int int sun.security.ssl.SignatureScheme[] int
      StackMap stack:
            iload 7 /* isMatch */
            ifeq 24
        13: .line 353
            aload 0 /* constraints */
        14: .line 354
            getstatic sun.security.ssl.SignatureScheme.SIGNATURE_PRIMITIVE_SET:Ljava/util/Set;
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.algorithm:Ljava/lang/String;
            aconst_null
        15: .line 353
            invokeinterface java.security.AlgorithmConstraints.permits:(Ljava/util/Set;Ljava/lang/String;Ljava/security/AlgorithmParameters;)Z
        16: .line 354
            ifeq 19
        17: .line 355
            aload 2 /* supported */
            aload 3 /* ss */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 356
            goto 28
      StackMap locals:
      StackMap stack:
        19: getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 28
        20: .line 357
            ldc "ssl,handshake,verbose"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 28
        21: .line 359
            new java.lang.StringBuilder
            dup
            ldc "Ignore disabled signature scheme: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
        22: .line 358
            invokestatic sun.security.ssl.SSLLogger.finest:(Ljava/lang/String;[Ljava/lang/Object;)V
        23: .line 361
            goto 28
      StackMap locals:
      StackMap stack:
        24: getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 28
        25: .line 362
            ldc "ssl,handshake,verbose"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 28
        26: .line 364
            new java.lang.StringBuilder
            dup
            ldc "Ignore inactive signature scheme: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
        27: .line 363
            invokestatic sun.security.ssl.SSLLogger.finest:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 7 // boolean isMatch
        end local 3 // sun.security.ssl.SignatureScheme ss
        28: .line 339
      StackMap locals: java.security.AlgorithmConstraints java.util.List java.util.List top int int sun.security.ssl.SignatureScheme[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        29: iload 4
            iload 5
            if_icmplt 2
        30: .line 368
            aload 2 /* supported */
            areturn
        end local 2 // java.util.List supported
        end local 1 // java.util.List activeProtocols
        end local 0 // java.security.AlgorithmConstraints constraints
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   31     0      constraints  Ljava/security/AlgorithmConstraints;
            0   31     1  activeProtocols  Ljava/util/List<Lsun/security/ssl/ProtocolVersion;>;
            1   31     2        supported  Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;
            3   28     3               ss  Lsun/security/ssl/SignatureScheme;
            6   28     7          isMatch  Z
            8   11     8               pv  Lsun/security/ssl/ProtocolVersion;
    Signature: (Ljava/security/AlgorithmConstraints;Ljava/util/List<Lsun/security/ssl/ProtocolVersion;>;)Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;
    MethodParameters:
                 Name  Flags
      constraints      
      activeProtocols  

  static java.util.List<sun.security.ssl.SignatureScheme> getSupportedAlgorithms(java.security.AlgorithmConstraints, sun.security.ssl.ProtocolVersion, int[]);
    descriptor: (Ljava/security/AlgorithmConstraints;Lsun/security/ssl/ProtocolVersion;[I)Ljava/util/List;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // java.security.AlgorithmConstraints constraints
        start local 1 // sun.security.ssl.ProtocolVersion protocolVersion
        start local 2 // int[] algorithmIds
         0: .line 374
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            astore 3 /* supported */
        start local 3 // java.util.List supported
         1: .line 375
            aload 2 /* algorithmIds */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 23
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.ProtocolVersion int[] java.util.List top int int int[]
      StackMap stack:
         2: aload 7
            iload 5
            iaload
            istore 4 /* ssid */
        start local 4 // int ssid
         3: .line 376
            iload 4 /* ssid */
            invokestatic sun.security.ssl.SignatureScheme.valueOf:(I)Lsun/security/ssl/SignatureScheme;
            astore 8 /* ss */
        start local 8 // sun.security.ssl.SignatureScheme ss
         4: .line 377
            aload 8 /* ss */
            ifnonnull 11
         5: .line 378
            getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 22
            ldc "ssl,handshake"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 22
         6: .line 380
            new java.lang.StringBuilder
            dup
            ldc "Unsupported signature scheme: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         7: .line 381
            iload 4 /* ssid */
            invokestatic sun.security.ssl.SignatureScheme.nameOf:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 380
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
         9: .line 379
            invokestatic sun.security.ssl.SSLLogger.warning:(Ljava/lang/String;[Ljava/lang/Object;)V
        10: .line 383
            goto 22
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.ProtocolVersion int[] java.util.List int int int int[] sun.security.ssl.SignatureScheme
      StackMap stack:
        11: aload 8 /* ss */
            getfield sun.security.ssl.SignatureScheme.isAvailable:Z
            ifeq 19
        12: .line 384
            aload 8 /* ss */
            getfield sun.security.ssl.SignatureScheme.supportedProtocols:Ljava/util/List;
            aload 1 /* protocolVersion */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 19
        13: .line 385
            aload 0 /* constraints */
            getstatic sun.security.ssl.SignatureScheme.SIGNATURE_PRIMITIVE_SET:Ljava/util/Set;
        14: .line 386
            aload 8 /* ss */
            getfield sun.security.ssl.SignatureScheme.algorithm:Ljava/lang/String;
            aconst_null
        15: .line 385
            invokeinterface java.security.AlgorithmConstraints.permits:(Ljava/util/Set;Ljava/lang/String;Ljava/security/AlgorithmParameters;)Z
        16: .line 386
            ifeq 19
        17: .line 387
            aload 3 /* supported */
            aload 8 /* ss */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 388
            goto 22
        19: .line 389
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 22
            ldc "ssl,handshake"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 22
        20: .line 391
            new java.lang.StringBuilder
            dup
            ldc "Unsupported signature scheme: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* ss */
            getfield sun.security.ssl.SignatureScheme.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
        21: .line 390
            invokestatic sun.security.ssl.SSLLogger.warning:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 8 // sun.security.ssl.SignatureScheme ss
        end local 4 // int ssid
        22: .line 375
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.ProtocolVersion int[] java.util.List top int int int[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        23: iload 5
            iload 6
            if_icmplt 2
        24: .line 396
            aload 3 /* supported */
            areturn
        end local 3 // java.util.List supported
        end local 2 // int[] algorithmIds
        end local 1 // sun.security.ssl.ProtocolVersion protocolVersion
        end local 0 // java.security.AlgorithmConstraints constraints
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   25     0      constraints  Ljava/security/AlgorithmConstraints;
            0   25     1  protocolVersion  Lsun/security/ssl/ProtocolVersion;
            0   25     2     algorithmIds  [I
            1   25     3        supported  Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;
            3   22     4             ssid  I
            4   22     8               ss  Lsun/security/ssl/SignatureScheme;
    Signature: (Ljava/security/AlgorithmConstraints;Lsun/security/ssl/ProtocolVersion;[I)Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;
    MethodParameters:
                 Name  Flags
      constraints      
      protocolVersion  
      algorithmIds     

  static sun.security.ssl.SignatureScheme getPreferableAlgorithm(java.util.List<sun.security.ssl.SignatureScheme>, sun.security.ssl.SignatureScheme, sun.security.ssl.ProtocolVersion);
    descriptor: (Ljava/util/List;Lsun/security/ssl/SignatureScheme;Lsun/security/ssl/ProtocolVersion;)Lsun/security/ssl/SignatureScheme;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.util.List schemes
        start local 1 // sun.security.ssl.SignatureScheme certScheme
        start local 2 // sun.security.ssl.ProtocolVersion version
         0: .line 404
            aload 0 /* schemes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: java.util.List sun.security.ssl.SignatureScheme sun.security.ssl.ProtocolVersion top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.ssl.SignatureScheme
            astore 3 /* ss */
        start local 3 // sun.security.ssl.SignatureScheme ss
         2: .line 405
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.isAvailable:Z
            ifeq 6
         3: .line 406
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.handshakeSupportedProtocols:Ljava/util/List;
            aload 2 /* version */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 6
         4: .line 407
            aload 1 /* certScheme */
            getfield sun.security.ssl.SignatureScheme.keyAlgorithm:Ljava/lang/String;
            aload 3 /* ss */
            getfield sun.security.ssl.SignatureScheme.keyAlgorithm:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 409
            aload 3 /* ss */
            areturn
        end local 3 // sun.security.ssl.SignatureScheme ss
         6: .line 404
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         7: .line 413
            aconst_null
            areturn
        end local 2 // sun.security.ssl.ProtocolVersion version
        end local 1 // sun.security.ssl.SignatureScheme certScheme
        end local 0 // java.util.List schemes
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0     schemes  Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;
            0    8     1  certScheme  Lsun/security/ssl/SignatureScheme;
            0    8     2     version  Lsun/security/ssl/ProtocolVersion;
            2    6     3          ss  Lsun/security/ssl/SignatureScheme;
    Signature: (Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;Lsun/security/ssl/SignatureScheme;Lsun/security/ssl/ProtocolVersion;)Lsun/security/ssl/SignatureScheme;
    MethodParameters:
            Name  Flags
      schemes     
      certScheme  
      version     

  static sun.security.ssl.SignatureScheme getPreferableAlgorithm(java.util.List<sun.security.ssl.SignatureScheme>, java.security.PrivateKey, sun.security.ssl.ProtocolVersion);
    descriptor: (Ljava/util/List;Ljava/security/PrivateKey;Lsun/security/ssl/ProtocolVersion;)Lsun/security/ssl/SignatureScheme;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=8, args_size=3
        start local 0 // java.util.List schemes
        start local 1 // java.security.PrivateKey signingKey
        start local 2 // sun.security.ssl.ProtocolVersion version
         0: .line 421
            aload 1 /* signingKey */
            invokeinterface java.security.PrivateKey.getAlgorithm:()Ljava/lang/String;
            astore 3 /* keyAlgorithm */
        start local 3 // java.lang.String keyAlgorithm
         1: .line 424
            aload 3 /* keyAlgorithm */
            ldc "RSA"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 3
         2: .line 425
            aload 3 /* keyAlgorithm */
            ldc "RSASSA-PSS"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 5
         3: .line 426
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* signingKey */
            invokestatic sun.security.util.KeyUtil.getKeySize:(Ljava/security/Key;)I
            istore 4 /* keySize */
        start local 4 // int keySize
         4: .line 427
            goto 6
        end local 4 // int keySize
         5: .line 428
      StackMap locals:
      StackMap stack:
            ldc 2147483647
            istore 4 /* keySize */
        start local 4 // int keySize
         6: .line 430
      StackMap locals: int
      StackMap stack:
            aload 0 /* schemes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 18
      StackMap locals: java.util.List java.security.PrivateKey sun.security.ssl.ProtocolVersion java.lang.String int top java.util.Iterator
      StackMap stack:
         7: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.ssl.SignatureScheme
            astore 5 /* ss */
        start local 5 // sun.security.ssl.SignatureScheme ss
         8: .line 431
            aload 5 /* ss */
            getfield sun.security.ssl.SignatureScheme.isAvailable:Z
            ifeq 18
            iload 4 /* keySize */
            aload 5 /* ss */
            getfield sun.security.ssl.SignatureScheme.minimalKeySize:I
            if_icmplt 18
         9: .line 432
            aload 5 /* ss */
            getfield sun.security.ssl.SignatureScheme.handshakeSupportedProtocols:Ljava/util/List;
            aload 2 /* version */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 18
        10: .line 433
            aload 3 /* keyAlgorithm */
            aload 5 /* ss */
            getfield sun.security.ssl.SignatureScheme.keyAlgorithm:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 18
        11: .line 434
            aload 5 /* ss */
            getfield sun.security.ssl.SignatureScheme.namedGroup:Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
            ifnull 17
        12: .line 435
            aload 5 /* ss */
            getfield sun.security.ssl.SignatureScheme.namedGroup:Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
            getfield sun.security.ssl.SupportedGroupsExtension$NamedGroup.type:Lsun/security/ssl/SupportedGroupsExtension$NamedGroupType;
            getstatic sun.security.ssl.SupportedGroupsExtension$NamedGroupType.NAMED_GROUP_ECDHE:Lsun/security/ssl/SupportedGroupsExtension$NamedGroupType;
            if_acmpne 17
        13: .line 437
            aload 1 /* signingKey */
            checkcast java.security.interfaces.ECPrivateKey
            invokeinterface java.security.interfaces.ECPrivateKey.getParams:()Ljava/security/spec/ECParameterSpec;
        14: .line 436
            astore 7 /* params */
        start local 7 // java.security.spec.ECParameterSpec params
        15: .line 438
            aload 5 /* ss */
            getfield sun.security.ssl.SignatureScheme.namedGroup:Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
            aload 7 /* params */
            invokestatic sun.security.ssl.SupportedGroupsExtension$NamedGroup.valueOf:(Ljava/security/spec/ECParameterSpec;)Lsun/security/ssl/SupportedGroupsExtension$NamedGroup;
            if_acmpne 18
        16: .line 439
            aload 5 /* ss */
            areturn
        end local 7 // java.security.spec.ECParameterSpec params
        17: .line 442
      StackMap locals: java.util.List java.security.PrivateKey sun.security.ssl.ProtocolVersion java.lang.String int sun.security.ssl.SignatureScheme java.util.Iterator
      StackMap stack:
            aload 5 /* ss */
            areturn
        end local 5 // sun.security.ssl.SignatureScheme ss
        18: .line 430
      StackMap locals: java.util.List java.security.PrivateKey sun.security.ssl.ProtocolVersion java.lang.String int top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        19: .line 447
            aconst_null
            areturn
        end local 4 // int keySize
        end local 3 // java.lang.String keyAlgorithm
        end local 2 // sun.security.ssl.ProtocolVersion version
        end local 1 // java.security.PrivateKey signingKey
        end local 0 // java.util.List schemes
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0       schemes  Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;
            0   20     1    signingKey  Ljava/security/PrivateKey;
            0   20     2       version  Lsun/security/ssl/ProtocolVersion;
            1   20     3  keyAlgorithm  Ljava/lang/String;
            4    5     4       keySize  I
            6   20     4       keySize  I
            8   18     5            ss  Lsun/security/ssl/SignatureScheme;
           15   17     7        params  Ljava/security/spec/ECParameterSpec;
    Signature: (Ljava/util/List<Lsun/security/ssl/SignatureScheme;>;Ljava/security/PrivateKey;Lsun/security/ssl/ProtocolVersion;)Lsun/security/ssl/SignatureScheme;
    MethodParameters:
            Name  Flags
      schemes     
      signingKey  
      version     

  static java.lang.String[] getAlgorithmNames(java.util.Collection<sun.security.ssl.SignatureScheme>);
    descriptor: (Ljava/util/Collection;)[Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.util.Collection schemes
         0: .line 451
            aload 0 /* schemes */
            ifnull 7
         1: .line 452
            new java.util.ArrayList
            dup
            aload 0 /* schemes */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* names */
        start local 1 // java.util.ArrayList names
         2: .line 453
            aload 0 /* schemes */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: java.util.Collection java.util.ArrayList top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.ssl.SignatureScheme
            astore 2 /* scheme */
        start local 2 // sun.security.ssl.SignatureScheme scheme
         4: .line 454
            aload 1 /* names */
            aload 2 /* scheme */
            getfield sun.security.ssl.SignatureScheme.algorithm:Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // sun.security.ssl.SignatureScheme scheme
         5: .line 453
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 457
            aload 1 /* names */
            iconst_0
            anewarray java.lang.String
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
        end local 1 // java.util.ArrayList names
         7: .line 460
      StackMap locals: java.util.Collection
      StackMap stack:
            iconst_0
            anewarray java.lang.String
            areturn
        end local 0 // java.util.Collection schemes
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0  schemes  Ljava/util/Collection<Lsun/security/ssl/SignatureScheme;>;
            2    7     1    names  Ljava/util/ArrayList<Ljava/lang/String;>;
            4    5     2   scheme  Lsun/security/ssl/SignatureScheme;
    Signature: (Ljava/util/Collection<Lsun/security/ssl/SignatureScheme;>;)[Ljava/lang/String;
    MethodParameters:
         Name  Flags
      schemes  

  java.security.Signature getSignature(java.security.Key);
    descriptor: (Ljava/security/Key;)Ljava/security/Signature;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.security.ssl.SignatureScheme this
        start local 1 // java.security.Key key
         0: .line 465
            aload 0 /* this */
            getfield sun.security.ssl.SignatureScheme.isAvailable:Z
            ifne 2
         1: .line 466
            aconst_null
            areturn
         2: .line 469
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SignatureScheme.algorithm:Ljava/lang/String;
            invokestatic sun.security.ssl.JsseJce.getSignature:(Ljava/lang/String;)Ljava/security/Signature;
            astore 2 /* signer */
        start local 2 // java.security.Signature signer
         3: .line 470
            aload 1 /* key */
            instanceof java.security.PublicKey
            ifeq 6
         4: .line 471
            aload 2 /* signer */
            aload 1 /* key */
            checkcast java.security.PublicKey
            invokevirtual java.security.Signature.initVerify:(Ljava/security/PublicKey;)V
         5: .line 472
            goto 7
         6: .line 473
      StackMap locals: java.security.Signature
      StackMap stack:
            aload 2 /* signer */
            aload 1 /* key */
            checkcast java.security.PrivateKey
            invokevirtual java.security.Signature.initSign:(Ljava/security/PrivateKey;)V
         7: .line 479
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SignatureScheme.signAlgParameter:Ljava/security/spec/AlgorithmParameterSpec;
            ifnull 9
         8: .line 480
            aload 2 /* signer */
            aload 0 /* this */
            getfield sun.security.ssl.SignatureScheme.signAlgParameter:Ljava/security/spec/AlgorithmParameterSpec;
            invokevirtual java.security.Signature.setParameter:(Ljava/security/spec/AlgorithmParameterSpec;)V
         9: .line 483
      StackMap locals:
      StackMap stack:
            aload 2 /* signer */
            areturn
        end local 2 // java.security.Signature signer
        end local 1 // java.security.Key key
        end local 0 // sun.security.ssl.SignatureScheme this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lsun/security/ssl/SignatureScheme;
            0   10     1     key  Ljava/security/Key;
            3   10     2  signer  Ljava/security/Signature;
    Exceptions:
      throws java.security.NoSuchAlgorithmException, java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException
    MethodParameters:
      Name  Flags
      key   

  public static sun.security.ssl.SignatureScheme[] values();
    descriptor: ()[Lsun/security/ssl/SignatureScheme;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 1
            getstatic sun.security.ssl.SignatureScheme.ENUM$VALUES:[Lsun/security/ssl/SignatureScheme;
            dup
            astore 0
            iconst_0
            aload 0
            arraylength
            dup
            istore 1
            anewarray sun.security.ssl.SignatureScheme
            dup
            astore 2
            iconst_0
            iload 1
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            aload 2
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static sun.security.ssl.SignatureScheme valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Lsun/security/ssl/SignatureScheme;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            ldc Lsun/security/ssl/SignatureScheme;
            aload 0
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast sun.security.ssl.SignatureScheme
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      name  
}
Signature: Ljava/lang/Enum<Lsun/security/ssl/SignatureScheme;>;
SourceFile: "SignatureScheme.java"
NestMembers:
  sun.security.ssl.SignatureScheme$SigAlgParamSpec
InnerClasses:
  final SigAlgParamSpec = sun.security.ssl.SignatureScheme$SigAlgParamSpec of sun.security.ssl.SignatureScheme
  final NamedGroup = sun.security.ssl.SupportedGroupsExtension$NamedGroup of sun.security.ssl.SupportedGroupsExtension
  final NamedGroupType = sun.security.ssl.SupportedGroupsExtension$NamedGroupType of sun.security.ssl.SupportedGroupsExtension