class sun.security.ssl.DHCrypt$ParametersHolder
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.security.ssl.DHCrypt$ParametersHolder
  super_class: java.lang.Object
{
  private static final boolean debugIsOn;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger g2;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p512;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p768;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p1024;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p1536;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p2048;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p3072;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p4096;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p6144;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger p8192;
    descriptor: Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.math.BigInteger[] supportedPrimes;
    descriptor: [Ljava/math/BigInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int PRIME_CERTAINTY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 120

  private static final java.lang.String PROPERTY_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.tls.server.defaultDHEParameters"

  private static final java.util.regex.Pattern spacesPattern;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern syntaxPattern;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern paramsPattern;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.Map<java.lang.Integer, javax.crypto.spec.DHParameterSpec> definedParams;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Integer;Ljavax/crypto/spec/DHParameterSpec;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=10, args_size=0
         0: .line 281
            ldc "ssl"
            invokestatic sun.security.ssl.Debug.getInstance:(Ljava/lang/String;)Lsun/security/ssl/Debug;
            ifnull 2
            ldc "sslctx"
            invokestatic sun.security.ssl.Debug.isOn:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 280
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: putstatic sun.security.ssl.DHCrypt$ParametersHolder.debugIsOn:Z
         4: .line 286
            ldc 2
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.g2:Ljava/math/BigInteger;
         5: .line 288
            new java.math.BigInteger
            dup
         6: .line 289
            ldc "D87780E15FF50B4ABBE89870188B049406B5BEA98AB23A0241D88EA75B7755E669C08093D3F0CA7FC3A5A25CF067DCB9A43DD89D1D90921C6328884461E0B6D3"
         7: .line 291
            bipush 16
         8: .line 288
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p512:Ljava/math/BigInteger;
         9: .line 292
            new java.math.BigInteger
            dup
        10: .line 293
            ldc "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A63A3620FFFFFFFFFFFFFFFF"
        11: .line 296
            bipush 16
        12: .line 292
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p768:Ljava/math/BigInteger;
        13: .line 298
            new java.math.BigInteger
            dup
        14: .line 299
            ldc "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE65381FFFFFFFFFFFFFFFF"
        15: .line 304
            bipush 16
        16: .line 298
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p1024:Ljava/math/BigInteger;
        17: .line 305
            new java.math.BigInteger
            dup
        18: .line 306
            ldc "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA237327FFFFFFFFFFFFFFFF"
        19: .line 313
            bipush 16
        20: .line 305
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p1536:Ljava/math/BigInteger;
        21: .line 314
            new java.math.BigInteger
            dup
        22: .line 315
            ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B423861285C97FFFFFFFFFFFFFFFF"
        23: .line 325
            bipush 16
        24: .line 314
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p2048:Ljava/math/BigInteger;
        25: .line 326
            new java.math.BigInteger
            dup
        26: .line 327
            ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B66C62E37FFFFFFFFFFFFFFFF"
        27: .line 342
            bipush 16
        28: .line 326
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p3072:Ljava/math/BigInteger;
        29: .line 343
            new java.math.BigInteger
            dup
        30: .line 344
            ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E655F6AFFFFFFFFFFFFFFFF"
        31: .line 365
            bipush 16
        32: .line 343
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p4096:Ljava/math/BigInteger;
        33: .line 366
            new java.math.BigInteger
            dup
        34: .line 367
            ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD9020BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA63BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3ACDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477A52471F7A9A96910B855322EDB6340D8A00EF092350511E30ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538CD72B03746AE77F5E62292C311562A846505DC82DB854338AE49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B045B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1A41D570D7938DAD4A40E329CD0E40E65FFFFFFFFFFFFFFFF"
        35: .line 398
            bipush 16
        36: .line 366
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p6144:Ljava/math/BigInteger;
        37: .line 399
            new java.math.BigInteger
            dup
        38: .line 400
            ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD9020BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA63BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3ACDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477A52471F7A9A96910B855322EDB6340D8A00EF092350511E30ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538CD72B03746AE77F5E62292C311562A846505DC82DB854338AE49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B045B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1A41D570D7938DAD4A40E329CCFF46AAA36AD004CF600C8381E425A31D951AE64FDB23FCEC9509D43687FEB69EDD1CC5E0B8CC3BDF64B10EF86B63142A3AB8829555B2F747C932665CB2C0F1CC01BD70229388839D2AF05E454504AC78B7582822846C0BA35C35F5C59160CC046FD8251541FC68C9C86B022BB7099876A460E7451A8A93109703FEE1C217E6C3826E52C51AA691E0E423CFC99E9E31650C1217B624816CDAD9A95F9D5B8019488D9C0A0A1FE3075A577E23183F81D4A3F2FA4571EFC8CE0BA8A4FE8B6855DFE72B0A66EDED2FBABFBE58A30FAFABE1C5D71A87E2F741EF8C1FE86FEA6BBFDE530677F0D97D11D49F7A8443D0822E506A9F4614E011E2A94838FF88CD68C8BB7C5C6424CFFFFFFFFFFFFFFFF"
        39: .line 442
            bipush 16
        40: .line 399
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.p8192:Ljava/math/BigInteger;
        41: .line 444
            bipush 9
            anewarray java.math.BigInteger
            dup
            iconst_0
        42: .line 445
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p512:Ljava/math/BigInteger;
            aastore
            dup
            iconst_1
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p768:Ljava/math/BigInteger;
            aastore
            dup
            iconst_2
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p1024:Ljava/math/BigInteger;
            aastore
            dup
            iconst_3
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p1536:Ljava/math/BigInteger;
            aastore
            dup
            iconst_4
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p2048:Ljava/math/BigInteger;
            aastore
            dup
            iconst_5
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p3072:Ljava/math/BigInteger;
            aastore
            dup
            bipush 6
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p4096:Ljava/math/BigInteger;
            aastore
            dup
            bipush 7
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p6144:Ljava/math/BigInteger;
            aastore
            dup
            bipush 8
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.p8192:Ljava/math/BigInteger;
            aastore
        43: .line 444
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.supportedPrimes:[Ljava/math/BigInteger;
        44: .line 456
            ldc "\\s+"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.spacesPattern:Ljava/util/regex/Pattern;
        45: .line 459
            ldc "(\\{[0-9A-Fa-f]+,[0-9A-Fa-f]+\\})(,\\{[0-9A-Fa-f]+,[0-9A-Fa-f]+\\})*"
        46: .line 458
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.syntaxPattern:Ljava/util/regex/Pattern;
        47: .line 463
            ldc "\\{([0-9A-Fa-f]+),([0-9A-Fa-f]+)\\}"
        48: .line 462
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.paramsPattern:Ljava/util/regex/Pattern;
        49: .line 470
            new sun.security.ssl.DHCrypt$ParametersHolder$1
            dup
            invokespecial sun.security.ssl.DHCrypt$ParametersHolder$1.<init>:()V
        50: .line 469
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 0 /* property */
        start local 0 // java.lang.String property
        51: .line 476
            aload 0 /* property */
            ifnull 56
            aload 0 /* property */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 56
        52: .line 478
            aload 0 /* property */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmplt 55
            aload 0 /* property */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 55
        53: .line 479
            aload 0 /* property */
            aload 0 /* property */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 55
        54: .line 480
            aload 0 /* property */
            iconst_1
            aload 0 /* property */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 0 /* property */
        55: .line 483
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* property */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 0 /* property */
        56: .line 486
      StackMap locals:
      StackMap stack:
            aload 0 /* property */
            ifnull 63
            aload 0 /* property */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 63
        57: .line 487
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.spacesPattern:Ljava/util/regex/Pattern;
            aload 0 /* property */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 1 /* spacesMatcher */
        start local 1 // java.util.regex.Matcher spacesMatcher
        58: .line 488
            aload 1 /* spacesMatcher */
            ldc ""
            invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* property */
        59: .line 490
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.debugIsOn:Z
            ifeq 63
        60: .line 491
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "The Security Property jdk.tls.server.defaultDHEParameters: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        61: .line 492
            aload 0 /* property */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        62: .line 491
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 1 // java.util.regex.Matcher spacesMatcher
        63: .line 496
      StackMap locals:
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 1 /* defaultParams */
        start local 1 // java.util.Map defaultParams
        64: .line 497
            aload 0 /* property */
            ifnull 88
            aload 0 /* property */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 88
        65: .line 498
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.syntaxPattern:Ljava/util/regex/Pattern;
            aload 0 /* property */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 2 /* syntaxMatcher */
        start local 2 // java.util.regex.Matcher syntaxMatcher
        66: .line 499
            aload 2 /* syntaxMatcher */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 86
        67: .line 500
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.paramsPattern:Ljava/util/regex/Pattern;
            aload 0 /* property */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 3 /* paramsFinder */
        start local 3 // java.util.regex.Matcher paramsFinder
        68: .line 501
            goto 84
        69: .line 502
      StackMap locals: java.util.Map java.util.regex.Matcher java.util.regex.Matcher
      StackMap stack:
            aload 3 /* paramsFinder */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 4 /* primeModulus */
        start local 4 // java.lang.String primeModulus
        70: .line 503
            new java.math.BigInteger
            dup
            aload 4 /* primeModulus */
            bipush 16
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            astore 5 /* p */
        start local 5 // java.math.BigInteger p
        71: .line 504
            aload 5 /* p */
            bipush 120
            invokevirtual java.math.BigInteger.isProbablePrime:(I)Z
            ifne 79
        72: .line 505
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.debugIsOn:Z
            ifeq 84
        73: .line 506
            getstatic java.lang.System.out:Ljava/io/PrintStream;
        74: .line 507
            new java.lang.StringBuilder
            dup
            ldc "Prime modulus p in Security Property, jdk.tls.server.defaultDHEParameters, is not a prime: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        75: .line 509
            aload 4 /* primeModulus */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        76: .line 507
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        77: .line 506
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        78: .line 512
            goto 84
        79: .line 515
      StackMap locals: java.lang.String java.math.BigInteger
      StackMap stack:
            aload 3 /* paramsFinder */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 6 /* baseGenerator */
        start local 6 // java.lang.String baseGenerator
        80: .line 516
            new java.math.BigInteger
            dup
            aload 6 /* baseGenerator */
            bipush 16
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
            astore 7 /* g */
        start local 7 // java.math.BigInteger g
        81: .line 518
            new javax.crypto.spec.DHParameterSpec
            dup
            aload 5 /* p */
            aload 7 /* g */
            invokespecial javax.crypto.spec.DHParameterSpec.<init>:(Ljava/math/BigInteger;Ljava/math/BigInteger;)V
            astore 8 /* spec */
        start local 8 // javax.crypto.spec.DHParameterSpec spec
        82: .line 519
            aload 5 /* p */
            invokevirtual java.math.BigInteger.bitLength:()I
            istore 9 /* primeLen */
        start local 9 // int primeLen
        83: .line 520
            aload 1 /* defaultParams */
            iload 9 /* primeLen */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 8 /* spec */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 9 // int primeLen
        end local 8 // javax.crypto.spec.DHParameterSpec spec
        end local 7 // java.math.BigInteger g
        end local 6 // java.lang.String baseGenerator
        end local 5 // java.math.BigInteger p
        end local 4 // java.lang.String primeModulus
        84: .line 501
      StackMap locals:
      StackMap stack:
            aload 3 /* paramsFinder */
            invokevirtual java.util.regex.Matcher.find:()Z
            ifne 69
        end local 3 // java.util.regex.Matcher paramsFinder
        85: .line 522
            goto 88
      StackMap locals:
      StackMap stack:
        86: getstatic sun.security.ssl.DHCrypt$ParametersHolder.debugIsOn:Z
            ifeq 88
        87: .line 523
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Invalid Security Property, jdk.tls.server.defaultDHEParameters, definition"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 2 // java.util.regex.Matcher syntaxMatcher
        88: .line 528
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.supportedPrimes:[Ljava/math/BigInteger;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 95
      StackMap locals: java.lang.String java.util.Map top int int java.math.BigInteger[]
      StackMap stack:
        89: aload 5
            iload 3
            aaload
            astore 2 /* p */
        start local 2 // java.math.BigInteger p
        90: .line 529
            aload 2 /* p */
            invokevirtual java.math.BigInteger.bitLength:()I
            istore 6 /* primeLen */
        start local 6 // int primeLen
        91: .line 530
            aload 1 /* defaultParams */
            iload 6 /* primeLen */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.crypto.spec.DHParameterSpec
            astore 7 /* value */
        start local 7 // javax.crypto.spec.DHParameterSpec value
        92: .line 531
            aload 7 /* value */
            ifnonnull 94
        93: .line 532
            aload 1 /* defaultParams */
            iload 6 /* primeLen */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            new javax.crypto.spec.DHParameterSpec
            dup
            aload 2 /* p */
            getstatic sun.security.ssl.DHCrypt$ParametersHolder.g2:Ljava/math/BigInteger;
            invokespecial javax.crypto.spec.DHParameterSpec.<init>:(Ljava/math/BigInteger;Ljava/math/BigInteger;)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // javax.crypto.spec.DHParameterSpec value
        end local 6 // int primeLen
        end local 2 // java.math.BigInteger p
        94: .line 528
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        95: iload 3
            iload 4
            if_icmplt 89
        96: .line 538
            aload 1 /* defaultParams */
        97: .line 537
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
        98: .line 536
            putstatic sun.security.ssl.DHCrypt$ParametersHolder.definedParams:Ljava/util/Map;
        end local 1 // java.util.Map defaultParams
        end local 0 // java.lang.String property
        99: .line 539
            return
      LocalVariableTable:
        Start  End  Slot           Name  Signature
           51   99     0       property  Ljava/lang/String;
           58   63     1  spacesMatcher  Ljava/util/regex/Matcher;
           64   99     1  defaultParams  Ljava/util/Map<Ljava/lang/Integer;Ljavax/crypto/spec/DHParameterSpec;>;
           66   88     2  syntaxMatcher  Ljava/util/regex/Matcher;
           68   85     3   paramsFinder  Ljava/util/regex/Matcher;
           70   84     4   primeModulus  Ljava/lang/String;
           71   84     5              p  Ljava/math/BigInteger;
           80   84     6  baseGenerator  Ljava/lang/String;
           81   84     7              g  Ljava/math/BigInteger;
           82   84     8           spec  Ljavax/crypto/spec/DHParameterSpec;
           83   84     9       primeLen  I
           90   94     2              p  Ljava/math/BigInteger;
           91   94     6       primeLen  I
           92   94     7          value  Ljavax/crypto/spec/DHParameterSpec;

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.DHCrypt$ParametersHolder this
         0: .line 279
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.security.ssl.DHCrypt$ParametersHolder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/DHCrypt$ParametersHolder;
}
SourceFile: "DHCrypt.java"
NestHost: sun.security.ssl.DHCrypt
InnerClasses:
  private ParametersHolder = sun.security.ssl.DHCrypt$ParametersHolder of sun.security.ssl.DHCrypt
  sun.security.ssl.DHCrypt$ParametersHolder$1