final class sun.security.ssl.SupportedGroupsExtension extends sun.security.ssl.HelloExtension
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: sun.security.ssl.SupportedGroupsExtension
  super_class: sun.security.ssl.HelloExtension
{
  private static final sun.security.ssl.Debug debug;
    descriptor: Lsun/security/ssl/Debug;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

  private static final java.util.Map<sun.security.ssl.NamedGroup, java.security.AlgorithmParameters> namedGroupParams;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Lsun/security/ssl/NamedGroup;Ljava/security/AlgorithmParameters;>;

  private static final sun.security.ssl.NamedGroup[] supportedNamedGroups;
    descriptor: [Lsun/security/ssl/NamedGroup;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final int[] requestedNamedGroupIds;
    descriptor: [I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$sun$security$ssl$NamedGroup;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=9, args_size=0
         0: .line 54
            ldc "ssl"
            invokestatic sun.security.ssl.Debug.getInstance:(Ljava/lang/String;)Lsun/security/ssl/Debug;
            putstatic sun.security.ssl.SupportedGroupsExtension.debug:Lsun/security/ssl/Debug;
         1: .line 61
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
         2: .line 70
            invokestatic sun.security.ssl.SunJSSE.isFIPS:()Z
            istore 0 /* requireFips */
        start local 0 // boolean requireFips
         3: .line 80
            new sun.security.action.GetPropertyAction
            dup
            ldc "jdk.tls.namedGroups"
            invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;)V
         4: .line 79
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 1 /* property */
        start local 1 // java.lang.String property
         5: .line 81
            aload 1 /* property */
            ifnull 9
            aload 1 /* property */
            invokevirtual java.lang.String.length:()I
            ifeq 9
         6: .line 83
            aload 1 /* property */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmple 9
            aload 1 /* property */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 9
         7: .line 84
            aload 1 /* property */
            aload 1 /* property */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 34
            if_icmpne 9
         8: .line 85
            aload 1 /* property */
            iconst_1
            aload 1 /* property */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 1 /* property */
         9: .line 90
      StackMap locals: int java.lang.String
      StackMap stack:
            aload 1 /* property */
            ifnull 29
            aload 1 /* property */
            invokevirtual java.lang.String.length:()I
            ifeq 29
        10: .line 91
            aload 1 /* property */
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* groups */
        start local 3 // java.lang.String[] groups
        11: .line 92
            new java.util.ArrayList
            dup
            aload 3 /* groups */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* groupList */
        start local 2 // java.util.ArrayList groupList
        12: .line 93
            aload 3 /* groups */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 22
      StackMap locals: int java.lang.String java.util.ArrayList java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        13: aload 7
            iload 5
            aaload
            astore 4 /* group */
        start local 4 // java.lang.String group
        14: .line 94
            aload 4 /* group */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 4 /* group */
        15: .line 95
            aload 4 /* group */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 21
        16: .line 96
            aload 4 /* group */
            invokestatic sun.security.ssl.NamedGroup.nameOf:(Ljava/lang/String;)Lsun/security/ssl/NamedGroup;
            astore 8 /* namedGroup */
        start local 8 // sun.security.ssl.NamedGroup namedGroup
        17: .line 97
            aload 8 /* namedGroup */
            ifnull 21
        18: .line 98
            iload 0 /* requireFips */
            ifeq 19
            aload 8 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.isFips:Z
            ifeq 21
        19: .line 99
      StackMap locals: int java.lang.String java.util.ArrayList java.lang.String[] java.lang.String int int java.lang.String[] sun.security.ssl.NamedGroup
      StackMap stack:
            aload 8 /* namedGroup */
            invokestatic sun.security.ssl.SupportedGroupsExtension.isAvailableGroup:(Lsun/security/ssl/NamedGroup;)Z
            ifeq 21
        20: .line 100
            aload 2 /* groupList */
            aload 8 /* namedGroup */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // sun.security.ssl.NamedGroup namedGroup
        end local 4 // java.lang.String group
        21: .line 93
      StackMap locals: int java.lang.String java.util.ArrayList java.lang.String[] top int int java.lang.String[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        22: iload 5
            iload 6
            if_icmplt 13
        23: .line 106
            aload 2 /* groupList */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifeq 71
            invokestatic sun.security.ssl.JsseJce.isEcAvailable:()Z
            ifeq 71
        24: .line 107
            new java.lang.IllegalArgumentException
            dup
        25: .line 108
            new java.lang.StringBuilder
            dup
            ldc "System property jdk.tls.namedGroups("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* property */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ") "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 109
            ldc "contains no supported elliptic curves"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        27: .line 108
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        28: .line 107
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.String[] groups
        end local 2 // java.util.ArrayList groupList
        29: .line 113
      StackMap locals: int java.lang.String
      StackMap stack:
            iload 0 /* requireFips */
            ifeq 47
        30: .line 114
            bipush 14
            anewarray sun.security.ssl.NamedGroup
            dup
            iconst_0
        31: .line 116
            getstatic sun.security.ssl.NamedGroup.SECP256_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_1
        32: .line 117
            getstatic sun.security.ssl.NamedGroup.SECP384_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_2
        33: .line 118
            getstatic sun.security.ssl.NamedGroup.SECP521_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_3
        34: .line 119
            getstatic sun.security.ssl.NamedGroup.SECT283_K1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_4
        35: .line 120
            getstatic sun.security.ssl.NamedGroup.SECT283_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_5
        36: .line 121
            getstatic sun.security.ssl.NamedGroup.SECT409_K1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 6
        37: .line 122
            getstatic sun.security.ssl.NamedGroup.SECT409_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 7
        38: .line 123
            getstatic sun.security.ssl.NamedGroup.SECT571_K1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 8
        39: .line 124
            getstatic sun.security.ssl.NamedGroup.SECT571_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 9
        40: .line 127
            getstatic sun.security.ssl.NamedGroup.FFDHE_2048:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 10
        41: .line 128
            getstatic sun.security.ssl.NamedGroup.FFDHE_3072:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 11
        42: .line 129
            getstatic sun.security.ssl.NamedGroup.FFDHE_4096:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 12
        43: .line 130
            getstatic sun.security.ssl.NamedGroup.FFDHE_6144:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 13
        44: .line 131
            getstatic sun.security.ssl.NamedGroup.FFDHE_8192:Lsun/security/ssl/NamedGroup;
            aastore
        45: .line 114
            astore 3 /* groups */
        start local 3 // sun.security.ssl.NamedGroup[] groups
        46: .line 133
            goto 64
        end local 3 // sun.security.ssl.NamedGroup[] groups
        47: .line 134
      StackMap locals:
      StackMap stack:
            bipush 15
            anewarray sun.security.ssl.NamedGroup
            dup
            iconst_0
        48: .line 136
            getstatic sun.security.ssl.NamedGroup.SECP256_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_1
        49: .line 137
            getstatic sun.security.ssl.NamedGroup.SECP384_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_2
        50: .line 138
            getstatic sun.security.ssl.NamedGroup.SECP521_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_3
        51: .line 139
            getstatic sun.security.ssl.NamedGroup.SECT283_K1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_4
        52: .line 140
            getstatic sun.security.ssl.NamedGroup.SECT283_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            iconst_5
        53: .line 141
            getstatic sun.security.ssl.NamedGroup.SECT409_K1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 6
        54: .line 142
            getstatic sun.security.ssl.NamedGroup.SECT409_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 7
        55: .line 143
            getstatic sun.security.ssl.NamedGroup.SECT571_K1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 8
        56: .line 144
            getstatic sun.security.ssl.NamedGroup.SECT571_R1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 9
        57: .line 147
            getstatic sun.security.ssl.NamedGroup.SECP256_K1:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 10
        58: .line 150
            getstatic sun.security.ssl.NamedGroup.FFDHE_2048:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 11
        59: .line 151
            getstatic sun.security.ssl.NamedGroup.FFDHE_3072:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 12
        60: .line 152
            getstatic sun.security.ssl.NamedGroup.FFDHE_4096:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 13
        61: .line 153
            getstatic sun.security.ssl.NamedGroup.FFDHE_6144:Lsun/security/ssl/NamedGroup;
            aastore
            dup
            bipush 14
        62: .line 154
            getstatic sun.security.ssl.NamedGroup.FFDHE_8192:Lsun/security/ssl/NamedGroup;
            aastore
        63: .line 134
            astore 3 /* groups */
        start local 3 // sun.security.ssl.NamedGroup[] groups
        64: .line 158
      StackMap locals: int java.lang.String top sun.security.ssl.NamedGroup[]
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 3 /* groups */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* groupList */
        start local 2 // java.util.ArrayList groupList
        65: .line 159
            aload 3 /* groups */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 70
      StackMap locals: int java.lang.String java.util.ArrayList sun.security.ssl.NamedGroup[] top int int sun.security.ssl.NamedGroup[]
      StackMap stack:
        66: aload 7
            iload 5
            aaload
            astore 4 /* group */
        start local 4 // sun.security.ssl.NamedGroup group
        67: .line 160
            aload 4 /* group */
            invokestatic sun.security.ssl.SupportedGroupsExtension.isAvailableGroup:(Lsun/security/ssl/NamedGroup;)Z
            ifeq 69
        68: .line 161
            aload 2 /* groupList */
            aload 4 /* group */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // sun.security.ssl.NamedGroup group
        69: .line 159
      StackMap locals:
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        70: iload 5
            iload 6
            if_icmplt 66
        end local 3 // sun.security.ssl.NamedGroup[] groups
        71: .line 166
      StackMap locals: int java.lang.String java.util.ArrayList
      StackMap stack:
            getstatic sun.security.ssl.SupportedGroupsExtension.debug:Lsun/security/ssl/Debug;
            ifnull 78
            aload 2 /* groupList */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifeq 78
        72: .line 168
            new java.lang.StringBuilder
            dup
            ldc "Initialized [jdk.tls.namedGroups|default] list contains no available elliptic curves. "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        73: .line 170
            aload 1 /* property */
            ifnull 74
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* property */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 75
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        74: ldc "[Default]"
      StackMap locals: int java.lang.String java.util.ArrayList
      StackMap stack: java.lang.StringBuilder java.lang.String
        75: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        76: .line 168
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        77: .line 167
            invokestatic sun.security.ssl.Debug.log:(Ljava/lang/String;)V
        78: .line 173
      StackMap locals:
      StackMap stack:
            aload 2 /* groupList */
            invokevirtual java.util.ArrayList.size:()I
            anewarray sun.security.ssl.NamedGroup
            putstatic sun.security.ssl.SupportedGroupsExtension.supportedNamedGroups:[Lsun/security/ssl/NamedGroup;
        79: .line 174
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        80: .line 175
            aload 2 /* groupList */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 5
            goto 83
      StackMap locals: int java.lang.String java.util.ArrayList int top java.util.Iterator
      StackMap stack:
        81: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.ssl.NamedGroup
            astore 4 /* namedGroup */
        start local 4 // sun.security.ssl.NamedGroup namedGroup
        82: .line 176
            getstatic sun.security.ssl.SupportedGroupsExtension.supportedNamedGroups:[Lsun/security/ssl/NamedGroup;
            iload 3 /* i */
            iinc 3 /* i */ 1
            aload 4 /* namedGroup */
            aastore
        end local 4 // sun.security.ssl.NamedGroup namedGroup
        83: .line 175
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 81
        end local 3 // int i
        end local 2 // java.util.ArrayList groupList
        end local 1 // java.lang.String property
        end local 0 // boolean requireFips
        84: .line 178
            return
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            3   84     0  requireFips  Z
            5   84     1     property  Ljava/lang/String;
           12   29     2    groupList  Ljava/util/ArrayList<Lsun/security/ssl/NamedGroup;>;
           65   84     2    groupList  Ljava/util/ArrayList<Lsun/security/ssl/NamedGroup;>;
           11   29     3       groups  [Ljava/lang/String;
           14   21     4        group  Ljava/lang/String;
           17   21     8   namedGroup  Lsun/security/ssl/NamedGroup;
           46   47     3       groups  [Lsun/security/ssl/NamedGroup;
           64   71     3       groups  [Lsun/security/ssl/NamedGroup;
           67   69     4        group  Lsun/security/ssl/NamedGroup;
           80   84     3            i  I
           82   83     4   namedGroup  Lsun/security/ssl/NamedGroup;

  private static boolean isAvailableGroup(sun.security.ssl.NamedGroup);
    descriptor: (Lsun/security/ssl/NamedGroup;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // sun.security.ssl.NamedGroup namedGroup
         0: .line 182
            aconst_null
            astore 1 /* params */
        start local 1 // java.security.AlgorithmParameters params
         1: .line 183
            aconst_null
            astore 2 /* spec */
        start local 2 // java.security.spec.AlgorithmParameterSpec spec
         2: .line 184
            ldc "EC"
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.algorithm:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         3: .line 185
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.oid:Ljava/lang/String;
            ifnull 15
         4: .line 187
            ldc "EC"
            invokestatic sun.security.ssl.JsseJce.getAlgorithmParameters:(Ljava/lang/String;)Ljava/security/AlgorithmParameters;
            astore 1 /* params */
         5: .line 188
            new java.security.spec.ECGenParameterSpec
            dup
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.oid:Ljava/lang/String;
            invokespecial java.security.spec.ECGenParameterSpec.<init>:(Ljava/lang/String;)V
            astore 2 /* spec */
         6: .line 189
            goto 15
      StackMap locals: sun.security.ssl.NamedGroup java.security.AlgorithmParameters java.security.spec.AlgorithmParameterSpec
      StackMap stack: java.lang.Exception
         7: pop
         8: .line 190
            iconst_0
            ireturn
         9: .line 193
      StackMap locals:
      StackMap stack:
            ldc "DiffieHellman"
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.algorithm:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        10: .line 195
            ldc "DiffieHellman"
            invokestatic sun.security.ssl.JsseJce.getAlgorithmParameters:(Ljava/lang/String;)Ljava/security/AlgorithmParameters;
            astore 1 /* params */
        11: .line 196
            aload 0 /* namedGroup */
            invokestatic sun.security.ssl.SupportedGroupsExtension.getFFDHEDHParameterSpec:(Lsun/security/ssl/NamedGroup;)Ljavax/crypto/spec/DHParameterSpec;
            astore 2 /* spec */
        12: .line 197
            goto 15
      StackMap locals:
      StackMap stack: java.lang.Exception
        13: pop
        14: .line 198
            iconst_0
            ireturn
        15: .line 202
      StackMap locals:
      StackMap stack:
            aload 1 /* params */
            ifnull 22
            aload 2 /* spec */
            ifnull 22
        16: .line 204
            aload 1 /* params */
            aload 2 /* spec */
            invokevirtual java.security.AlgorithmParameters.init:(Ljava/security/spec/AlgorithmParameterSpec;)V
        17: .line 205
            goto 20
      StackMap locals:
      StackMap stack: java.lang.Exception
        18: pop
        19: .line 206
            iconst_0
            ireturn
        20: .line 210
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
            aload 0 /* namedGroup */
            aload 1 /* params */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 212
            iconst_1
            ireturn
        22: .line 215
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.security.spec.AlgorithmParameterSpec spec
        end local 1 // java.security.AlgorithmParameters params
        end local 0 // sun.security.ssl.NamedGroup namedGroup
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   23     0  namedGroup  Lsun/security/ssl/NamedGroup;
            1   23     1      params  Ljava/security/AlgorithmParameters;
            2   23     2        spec  Ljava/security/spec/AlgorithmParameterSpec;
      Exception table:
        from    to  target  type
           4     6       7  Class java.lang.Exception
          10    12      13  Class java.lang.Exception
          16    17      18  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      namedGroup  

  private static javax.crypto.spec.DHParameterSpec getFFDHEDHParameterSpec(sun.security.ssl.NamedGroup);
    descriptor: (Lsun/security/ssl/NamedGroup;)Ljavax/crypto/spec/DHParameterSpec;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.security.ssl.NamedGroup namedGroup
         0: .line 220
            aconst_null
            astore 1 /* spec */
        start local 1 // javax.crypto.spec.DHParameterSpec spec
         1: .line 221
            invokestatic sun.security.ssl.SupportedGroupsExtension.$SWITCH_TABLE$sun$security$ssl$NamedGroup:()[I
            aload 0 /* namedGroup */
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            iaload
            tableswitch { // 26 - 30
                   26: 2
                   27: 4
                   28: 6
                   29: 8
                   30: 10
              default: 11
          }
         2: .line 223
      StackMap locals: javax.crypto.spec.DHParameterSpec
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdheParams:Ljava/util/Map;
            sipush 2048
            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 1 /* spec */
         3: .line 224
            goto 11
         4: .line 226
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdheParams:Ljava/util/Map;
            sipush 3072
            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 1 /* spec */
         5: .line 227
            goto 11
         6: .line 229
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdheParams:Ljava/util/Map;
            sipush 4096
            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 1 /* spec */
         7: .line 230
            goto 11
         8: .line 232
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdheParams:Ljava/util/Map;
            sipush 6144
            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 1 /* spec */
         9: .line 233
            goto 11
        10: .line 235
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdheParams:Ljava/util/Map;
            sipush 8192
            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 1 /* spec */
        11: .line 238
      StackMap locals:
      StackMap stack:
            aload 1 /* spec */
            areturn
        end local 1 // javax.crypto.spec.DHParameterSpec spec
        end local 0 // sun.security.ssl.NamedGroup namedGroup
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0  namedGroup  Lsun/security/ssl/NamedGroup;
            1   12     1        spec  Ljavax/crypto/spec/DHParameterSpec;
    MethodParameters:
            Name  Flags
      namedGroup  

  private static javax.crypto.spec.DHParameterSpec getPredefinedDHParameterSpec(sun.security.ssl.NamedGroup);
    descriptor: (Lsun/security/ssl/NamedGroup;)Ljavax/crypto/spec/DHParameterSpec;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.security.ssl.NamedGroup namedGroup
         0: .line 243
            aconst_null
            astore 1 /* spec */
        start local 1 // javax.crypto.spec.DHParameterSpec spec
         1: .line 244
            invokestatic sun.security.ssl.SupportedGroupsExtension.$SWITCH_TABLE$sun$security$ssl$NamedGroup:()[I
            aload 0 /* namedGroup */
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            iaload
            tableswitch { // 26 - 30
                   26: 2
                   27: 4
                   28: 6
                   29: 8
                   30: 10
              default: 11
          }
         2: .line 246
      StackMap locals: javax.crypto.spec.DHParameterSpec
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.definedParams:Ljava/util/Map;
            sipush 2048
            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 1 /* spec */
         3: .line 247
            goto 11
         4: .line 249
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.definedParams:Ljava/util/Map;
            sipush 3072
            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 1 /* spec */
         5: .line 250
            goto 11
         6: .line 252
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.definedParams:Ljava/util/Map;
            sipush 4096
            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 1 /* spec */
         7: .line 253
            goto 11
         8: .line 255
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.definedParams:Ljava/util/Map;
            sipush 6144
            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 1 /* spec */
         9: .line 256
            goto 11
        10: .line 258
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.PredefinedDHParameterSpecs.definedParams:Ljava/util/Map;
            sipush 8192
            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 1 /* spec */
        11: .line 261
      StackMap locals:
      StackMap stack:
            aload 1 /* spec */
            areturn
        end local 1 // javax.crypto.spec.DHParameterSpec spec
        end local 0 // sun.security.ssl.NamedGroup namedGroup
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0  namedGroup  Lsun/security/ssl/NamedGroup;
            1   12     1        spec  Ljavax/crypto/spec/DHParameterSpec;
    MethodParameters:
            Name  Flags
      namedGroup  

  private void <init>(int[]);
    descriptor: ([I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
        start local 1 // int[] requestedNamedGroupIds
         0: .line 265
            aload 0 /* this */
            getstatic sun.security.ssl.ExtensionType.EXT_SUPPORTED_GROUPS:Lsun/security/ssl/ExtensionType;
            invokespecial sun.security.ssl.HelloExtension.<init>:(Lsun/security/ssl/ExtensionType;)V
         1: .line 267
            aload 0 /* this */
            aload 1 /* requestedNamedGroupIds */
            putfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
         2: .line 268
            return
        end local 1 // int[] requestedNamedGroupIds
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    3     0                    this  Lsun/security/ssl/SupportedGroupsExtension;
            0    3     1  requestedNamedGroupIds  [I
    MethodParameters:
                        Name  Flags
      requestedNamedGroupIds  

  void <init>(sun.security.ssl.HandshakeInStream, int);
    descriptor: (Lsun/security/ssl/HandshakeInStream;I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
        start local 1 // sun.security.ssl.HandshakeInStream s
        start local 2 // int len
         0: .line 271
            aload 0 /* this */
            getstatic sun.security.ssl.ExtensionType.EXT_SUPPORTED_GROUPS:Lsun/security/ssl/ExtensionType;
            invokespecial sun.security.ssl.HelloExtension.<init>:(Lsun/security/ssl/ExtensionType;)V
         1: .line 273
            aload 1 /* s */
            invokevirtual sun.security.ssl.HandshakeInStream.getInt16:()I
            istore 3 /* k */
        start local 3 // int k
         2: .line 274
            iload 2 /* len */
            iconst_1
            iand
            ifne 3
            iload 3 /* k */
            ifeq 3
            iload 3 /* k */
            iconst_2
            iadd
            iload 2 /* len */
            if_icmpeq 4
         3: .line 275
      StackMap locals: sun.security.ssl.SupportedGroupsExtension sun.security.ssl.HandshakeInStream int int
      StackMap stack:
            new javax.net.ssl.SSLProtocolException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.type:Lsun/security/ssl/ExtensionType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " extension"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.net.ssl.SSLProtocolException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* k */
            iconst_1
            ishr
            newarray 10
            putfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
         5: .line 280
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 281
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            iload 4 /* i */
            aload 1 /* s */
            invokevirtual sun.security.ssl.HandshakeInStream.getInt16:()I
            iastore
         8: .line 280
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            arraylength
            if_icmplt 7
        end local 4 // int i
        10: .line 283
            return
        end local 3 // int k
        end local 2 // int len
        end local 1 // sun.security.ssl.HandshakeInStream s
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/security/ssl/SupportedGroupsExtension;
            0   11     1     s  Lsun/security/ssl/HandshakeInStream;
            0   11     2   len  I
            2   11     3     k  I
            6   10     4     i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     
      len   

  static sun.security.ssl.NamedGroup getPreferredECGroup(java.security.AlgorithmConstraints);
    descriptor: (Ljava/security/AlgorithmConstraints;)Lsun/security/ssl/NamedGroup;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.security.AlgorithmConstraints constraints
         0: .line 287
            getstatic sun.security.ssl.SupportedGroupsExtension.supportedNamedGroups:[Lsun/security/ssl/NamedGroup;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 9
      StackMap locals: java.security.AlgorithmConstraints top int int sun.security.ssl.NamedGroup[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* namedGroup */
        start local 1 // sun.security.ssl.NamedGroup namedGroup
         2: .line 288
            aload 1 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.type:Lsun/security/ssl/NamedGroupType;
            getstatic sun.security.ssl.NamedGroupType.NAMED_GROUP_ECDHE:Lsun/security/ssl/NamedGroupType;
            if_acmpne 8
         3: .line 289
            aload 0 /* constraints */
            getstatic java.security.CryptoPrimitive.KEY_AGREEMENT:Ljava/security/CryptoPrimitive;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
         4: .line 290
            aload 1 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.algorithm:Ljava/lang/String;
            getstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
            aload 1 /* namedGroup */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.AlgorithmParameters
         5: .line 289
            invokeinterface java.security.AlgorithmConstraints.permits:(Ljava/util/Set;Ljava/lang/String;Ljava/security/AlgorithmParameters;)Z
         6: .line 290
            ifeq 8
         7: .line 292
            aload 1 /* namedGroup */
            areturn
        end local 1 // sun.security.ssl.NamedGroup namedGroup
         8: .line 287
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         9: iload 2
            iload 3
            if_icmplt 1
        10: .line 296
            aconst_null
            areturn
        end local 0 // java.security.AlgorithmConstraints constraints
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0  constraints  Ljava/security/AlgorithmConstraints;
            2    8     1   namedGroup  Lsun/security/ssl/NamedGroup;
    MethodParameters:
             Name  Flags
      constraints  

  static boolean isActivatable(java.security.AlgorithmConstraints, sun.security.ssl.NamedGroupType);
    descriptor: (Ljava/security/AlgorithmConstraints;Lsun/security/ssl/NamedGroupType;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // java.security.AlgorithmConstraints constraints
        start local 1 // sun.security.ssl.NamedGroupType type
         0: .line 303
            iconst_0
            istore 2 /* hasFFDHEGroups */
        start local 2 // boolean hasFFDHEGroups
         1: .line 304
            getstatic sun.security.ssl.SupportedGroupsExtension.supportedNamedGroups:[Lsun/security/ssl/NamedGroup;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 15
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.NamedGroupType int top int int sun.security.ssl.NamedGroup[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* namedGroup */
        start local 3 // sun.security.ssl.NamedGroup namedGroup
         3: .line 305
            aload 3 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.type:Lsun/security/ssl/NamedGroupType;
            aload 1 /* type */
            if_acmpne 14
         4: .line 306
            aload 0 /* constraints */
         5: .line 307
            getstatic java.security.CryptoPrimitive.KEY_AGREEMENT:Ljava/security/CryptoPrimitive;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
         6: .line 308
            aload 3 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.algorithm:Ljava/lang/String;
         7: .line 309
            getstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
            aload 3 /* namedGroup */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.AlgorithmParameters
         8: .line 306
            invokeinterface java.security.AlgorithmConstraints.permits:(Ljava/util/Set;Ljava/lang/String;Ljava/security/AlgorithmParameters;)Z
         9: .line 309
            ifeq 11
        10: .line 311
            iconst_1
            ireturn
        11: .line 314
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.NamedGroupType int sun.security.ssl.NamedGroup int int sun.security.ssl.NamedGroup[]
      StackMap stack:
            iload 2 /* hasFFDHEGroups */
            ifne 14
        12: .line 315
            aload 1 /* type */
            getstatic sun.security.ssl.NamedGroupType.NAMED_GROUP_FFDHE:Lsun/security/ssl/NamedGroupType;
            if_acmpne 14
        13: .line 317
            iconst_1
            istore 2 /* hasFFDHEGroups */
        end local 3 // sun.security.ssl.NamedGroup namedGroup
        14: .line 304
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.NamedGroupType int top int int sun.security.ssl.NamedGroup[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        15: iload 4
            iload 5
            if_icmplt 2
        16: .line 328
            iload 2 /* hasFFDHEGroups */
            ifne 18
            aload 1 /* type */
            getstatic sun.security.ssl.NamedGroupType.NAMED_GROUP_FFDHE:Lsun/security/ssl/NamedGroupType;
            if_acmpne 18
        17: .line 329
            iconst_1
            ireturn
        18: .line 332
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.NamedGroupType int
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // boolean hasFFDHEGroups
        end local 1 // sun.security.ssl.NamedGroupType type
        end local 0 // java.security.AlgorithmConstraints constraints
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   19     0     constraints  Ljava/security/AlgorithmConstraints;
            0   19     1            type  Lsun/security/ssl/NamedGroupType;
            1   19     2  hasFFDHEGroups  Z
            3   14     3      namedGroup  Lsun/security/ssl/NamedGroup;
    MethodParameters:
             Name  Flags
      constraints  
      type         

  static sun.security.ssl.SupportedGroupsExtension createExtension(java.security.AlgorithmConstraints, sun.security.ssl.CipherSuiteList, boolean);
    descriptor: (Ljava/security/AlgorithmConstraints;Lsun/security/ssl/CipherSuiteList;Z)Lsun/security/ssl/SupportedGroupsExtension;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // java.security.AlgorithmConstraints constraints
        start local 1 // sun.security.ssl.CipherSuiteList cipherSuites
        start local 2 // boolean enableFFDHE
         0: .line 341
            new java.util.ArrayList
            dup
            getstatic sun.security.ssl.SupportedGroupsExtension.supportedNamedGroups:[Lsun/security/ssl/NamedGroup;
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
         1: .line 340
            astore 3 /* groupList */
        start local 3 // java.util.ArrayList groupList
         2: .line 342
            getstatic sun.security.ssl.SupportedGroupsExtension.supportedNamedGroups:[Lsun/security/ssl/NamedGroup;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 14
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.CipherSuiteList int java.util.ArrayList top int int sun.security.ssl.NamedGroup[]
      StackMap stack:
         3: aload 7
            iload 5
            aaload
            astore 4 /* namedGroup */
        start local 4 // sun.security.ssl.NamedGroup namedGroup
         4: .line 343
            iload 2 /* enableFFDHE */
            ifne 7
         5: .line 344
            aload 4 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.type:Lsun/security/ssl/NamedGroupType;
            getstatic sun.security.ssl.NamedGroupType.NAMED_GROUP_FFDHE:Lsun/security/ssl/NamedGroupType;
            if_acmpne 7
         6: .line 345
            goto 13
         7: .line 348
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.CipherSuiteList int java.util.ArrayList sun.security.ssl.NamedGroup int int sun.security.ssl.NamedGroup[]
      StackMap stack:
            aload 1 /* cipherSuites */
            aload 4 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.type:Lsun/security/ssl/NamedGroupType;
            invokevirtual sun.security.ssl.CipherSuiteList.contains:(Lsun/security/ssl/NamedGroupType;)Z
            ifeq 13
         8: .line 349
            aload 0 /* constraints */
            getstatic java.security.CryptoPrimitive.KEY_AGREEMENT:Ljava/security/CryptoPrimitive;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
         9: .line 350
            aload 4 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.algorithm:Ljava/lang/String;
            getstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
            aload 4 /* namedGroup */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.AlgorithmParameters
        10: .line 349
            invokeinterface java.security.AlgorithmConstraints.permits:(Ljava/util/Set;Ljava/lang/String;Ljava/security/AlgorithmParameters;)Z
        11: .line 350
            ifeq 13
        12: .line 352
            aload 3 /* groupList */
            aload 4 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.id:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // sun.security.ssl.NamedGroup namedGroup
        13: .line 342
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.CipherSuiteList int java.util.ArrayList top int int sun.security.ssl.NamedGroup[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        14: iload 5
            iload 6
            if_icmplt 3
        15: .line 356
            aload 3 /* groupList */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifne 23
        16: .line 357
            aload 3 /* groupList */
            invokevirtual java.util.ArrayList.size:()I
            newarray 10
            astore 4 /* ids */
        start local 4 // int[] ids
        17: .line 358
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        18: .line 359
            aload 3 /* groupList */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 7
            goto 21
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.CipherSuiteList int java.util.ArrayList int[] int top java.util.Iterator
      StackMap stack:
        19: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 6 /* id */
        start local 6 // java.lang.Integer id
        20: .line 360
            aload 4 /* ids */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aload 6 /* id */
            invokevirtual java.lang.Integer.intValue:()I
            iastore
        end local 6 // java.lang.Integer id
        21: .line 359
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        22: .line 363
            new sun.security.ssl.SupportedGroupsExtension
            dup
            aload 4 /* ids */
            invokespecial sun.security.ssl.SupportedGroupsExtension.<init>:([I)V
            areturn
        end local 5 // int i
        end local 4 // int[] ids
        23: .line 366
      StackMap locals: java.security.AlgorithmConstraints sun.security.ssl.CipherSuiteList int java.util.ArrayList
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.util.ArrayList groupList
        end local 2 // boolean enableFFDHE
        end local 1 // sun.security.ssl.CipherSuiteList cipherSuites
        end local 0 // java.security.AlgorithmConstraints constraints
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   24     0   constraints  Ljava/security/AlgorithmConstraints;
            0   24     1  cipherSuites  Lsun/security/ssl/CipherSuiteList;
            0   24     2   enableFFDHE  Z
            2   24     3     groupList  Ljava/util/ArrayList<Ljava/lang/Integer;>;
            4   13     4    namedGroup  Lsun/security/ssl/NamedGroup;
           17   23     4           ids  [I
           18   23     5             i  I
           20   21     6            id  Ljava/lang/Integer;
    MethodParameters:
              Name  Flags
      constraints   
      cipherSuites  
      enableFFDHE   

  sun.security.ssl.NamedGroup getPreferredGroup(java.security.AlgorithmConstraints, sun.security.ssl.NamedGroupType);
    descriptor: (Ljava/security/AlgorithmConstraints;Lsun/security/ssl/NamedGroupType;)Lsun/security/ssl/NamedGroup;
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
        start local 1 // java.security.AlgorithmConstraints constraints
        start local 2 // sun.security.ssl.NamedGroupType type
         0: .line 373
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 11
      StackMap locals: sun.security.ssl.SupportedGroupsExtension java.security.AlgorithmConstraints sun.security.ssl.NamedGroupType top int int int[]
      StackMap stack:
         1: aload 6
            iload 4
            iaload
            istore 3 /* groupId */
        start local 3 // int groupId
         2: .line 374
            iload 3 /* groupId */
            invokestatic sun.security.ssl.NamedGroup.valueOf:(I)Lsun/security/ssl/NamedGroup;
            astore 7 /* namedGroup */
        start local 7 // sun.security.ssl.NamedGroup namedGroup
         3: .line 375
            aload 7 /* namedGroup */
            ifnull 10
            aload 7 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.type:Lsun/security/ssl/NamedGroupType;
            aload 2 /* type */
            if_acmpne 10
         4: .line 376
            aload 7 /* namedGroup */
            invokestatic sun.security.ssl.SupportedGroupsExtension.supports:(Lsun/security/ssl/NamedGroup;)Z
            ifeq 10
         5: .line 377
            aload 1 /* constraints */
            getstatic java.security.CryptoPrimitive.KEY_AGREEMENT:Ljava/security/CryptoPrimitive;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
         6: .line 378
            aload 7 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.algorithm:Ljava/lang/String;
            getstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
            aload 7 /* namedGroup */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.AlgorithmParameters
         7: .line 377
            invokeinterface java.security.AlgorithmConstraints.permits:(Ljava/util/Set;Ljava/lang/String;Ljava/security/AlgorithmParameters;)Z
         8: .line 378
            ifeq 10
         9: .line 380
            aload 7 /* namedGroup */
            areturn
        end local 7 // sun.security.ssl.NamedGroup namedGroup
        end local 3 // int groupId
        10: .line 373
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        11: iload 4
            iload 5
            if_icmplt 1
        12: .line 384
            aconst_null
            areturn
        end local 2 // sun.security.ssl.NamedGroupType type
        end local 1 // java.security.AlgorithmConstraints constraints
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lsun/security/ssl/SupportedGroupsExtension;
            0   13     1  constraints  Ljava/security/AlgorithmConstraints;
            0   13     2         type  Lsun/security/ssl/NamedGroupType;
            2   10     3      groupId  I
            3   10     7   namedGroup  Lsun/security/ssl/NamedGroup;
    MethodParameters:
             Name  Flags
      constraints  
      type         

  boolean hasFFDHEGroup();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
         0: .line 388
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: sun.security.ssl.SupportedGroupsExtension top int int int[]
      StackMap stack:
         1: aload 4
            iload 2
            iaload
            istore 1 /* groupId */
        start local 1 // int groupId
         2: .line 394
            iload 1 /* groupId */
            sipush 256
            if_icmplt 4
            iload 1 /* groupId */
            sipush 511
            if_icmpgt 4
         3: .line 395
            iconst_1
            ireturn
        end local 1 // int groupId
         4: .line 388
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 399
            iconst_0
            ireturn
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lsun/security/ssl/SupportedGroupsExtension;
            2    4     1  groupId  I

  boolean contains(int);
    descriptor: (I)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
        start local 1 // int index
         0: .line 403
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 5
      StackMap locals: sun.security.ssl.SupportedGroupsExtension int top int int int[]
      StackMap stack:
         1: aload 5
            iload 3
            iaload
            istore 2 /* groupId */
        start local 2 // int groupId
         2: .line 404
            iload 1 /* index */
            iload 2 /* groupId */
            if_icmpne 4
         3: .line 405
            iconst_1
            ireturn
        end local 2 // int groupId
         4: .line 403
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         5: iload 3
            iload 4
            if_icmplt 1
         6: .line 408
            iconst_0
            ireturn
        end local 1 // int index
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lsun/security/ssl/SupportedGroupsExtension;
            0    7     1    index  I
            2    4     2  groupId  I
    MethodParameters:
       Name  Flags
      index  

  int length();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
         0: .line 413
            bipush 6
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            arraylength
            iconst_1
            ishl
            iadd
            ireturn
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SupportedGroupsExtension;

  void send(sun.security.ssl.HandshakeOutStream);
    descriptor: (Lsun/security/ssl/HandshakeOutStream;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
        start local 1 // sun.security.ssl.HandshakeOutStream s
         0: .line 418
            aload 1 /* s */
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.type:Lsun/security/ssl/ExtensionType;
            getfield sun.security.ssl.ExtensionType.id:I
            invokevirtual sun.security.ssl.HandshakeOutStream.putInt16:(I)V
         1: .line 419
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            arraylength
            iconst_1
            ishl
            istore 2 /* k */
        start local 2 // int k
         2: .line 420
            aload 1 /* s */
            iload 2 /* k */
            iconst_2
            iadd
            invokevirtual sun.security.ssl.HandshakeOutStream.putInt16:(I)V
         3: .line 421
            aload 1 /* s */
            iload 2 /* k */
            invokevirtual sun.security.ssl.HandshakeOutStream.putInt16:(I)V
         4: .line 422
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 8
      StackMap locals: sun.security.ssl.SupportedGroupsExtension sun.security.ssl.HandshakeOutStream int top int int int[]
      StackMap stack:
         5: aload 6
            iload 4
            iaload
            istore 3 /* groupId */
        start local 3 // int groupId
         6: .line 423
            aload 1 /* s */
            iload 3 /* groupId */
            invokevirtual sun.security.ssl.HandshakeOutStream.putInt16:(I)V
        end local 3 // int groupId
         7: .line 422
            iinc 4 1
      StackMap locals:
      StackMap stack:
         8: iload 4
            iload 5
            if_icmplt 5
         9: .line 425
            return
        end local 2 // int k
        end local 1 // sun.security.ssl.HandshakeOutStream s
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lsun/security/ssl/SupportedGroupsExtension;
            0   10     1        s  Lsun/security/ssl/HandshakeOutStream;
            2   10     2        k  I
            6    7     3  groupId  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // sun.security.ssl.SupportedGroupsExtension this
         0: .line 429
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 430
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "Extension "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.type:Lsun/security/ssl/ExtensionType;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", group names: {"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 431
            iconst_1
            istore 2 /* first */
        start local 2 // boolean first
         3: .line 432
            aload 0 /* this */
            getfield sun.security.ssl.SupportedGroupsExtension.requestedNamedGroupIds:[I
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 21
      StackMap locals: sun.security.ssl.SupportedGroupsExtension java.lang.StringBuilder int top int int int[]
      StackMap stack:
         4: aload 6
            iload 4
            iaload
            istore 3 /* groupId */
        start local 3 // int groupId
         5: .line 433
            iload 2 /* first */
            ifeq 8
         6: .line 434
            iconst_0
            istore 2 /* first */
         7: .line 435
            goto 9
         8: .line 436
      StackMap locals: sun.security.ssl.SupportedGroupsExtension java.lang.StringBuilder int int int int int[]
      StackMap stack:
            aload 1 /* sb */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 439
      StackMap locals:
      StackMap stack:
            iload 3 /* groupId */
            invokestatic sun.security.ssl.NamedGroup.valueOf:(I)Lsun/security/ssl/NamedGroup;
            astore 7 /* namedGroup */
        start local 7 // sun.security.ssl.NamedGroup namedGroup
        10: .line 440
            aload 7 /* namedGroup */
            ifnull 13
        11: .line 441
            aload 1 /* sb */
            aload 7 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 442
            goto 20
      StackMap locals: sun.security.ssl.NamedGroup
      StackMap stack:
        13: iload 3 /* groupId */
            ldc 65281
            if_icmpne 16
        14: .line 443
            aload 1 /* sb */
            ldc "arbitrary_explicit_prime_curves"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 444
            goto 20
      StackMap locals:
      StackMap stack:
        16: iload 3 /* groupId */
            ldc 65282
            if_icmpne 19
        17: .line 445
            aload 1 /* sb */
            ldc "arbitrary_explicit_char2_curves"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 446
            goto 20
        19: .line 447
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            new java.lang.StringBuilder
            dup
            ldc "unknown named group "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* groupId */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 7 // sun.security.ssl.NamedGroup namedGroup
        end local 3 // int groupId
        20: .line 432
      StackMap locals: sun.security.ssl.SupportedGroupsExtension java.lang.StringBuilder int top int int int[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        21: iload 4
            iload 5
            if_icmplt 4
        22: .line 450
            aload 1 /* sb */
            ldc "}"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 451
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // boolean first
        end local 1 // java.lang.StringBuilder sb
        end local 0 // sun.security.ssl.SupportedGroupsExtension this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   24     0        this  Lsun/security/ssl/SupportedGroupsExtension;
            1   24     1          sb  Ljava/lang/StringBuilder;
            3   24     2       first  Z
            5   20     3     groupId  I
           10   20     7  namedGroup  Lsun/security/ssl/NamedGroup;

  static boolean supports(sun.security.ssl.NamedGroup);
    descriptor: (Lsun/security/ssl/NamedGroup;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // sun.security.ssl.NamedGroup namedGroup
         0: .line 455
            getstatic sun.security.ssl.SupportedGroupsExtension.supportedNamedGroups:[Lsun/security/ssl/NamedGroup;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: sun.security.ssl.NamedGroup top int int sun.security.ssl.NamedGroup[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* group */
        start local 1 // sun.security.ssl.NamedGroup group
         2: .line 456
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.id:I
            aload 1 /* group */
            getfield sun.security.ssl.NamedGroup.id:I
            if_icmpne 4
         3: .line 457
            iconst_1
            ireturn
        end local 1 // sun.security.ssl.NamedGroup group
         4: .line 455
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 461
            iconst_0
            ireturn
        end local 0 // sun.security.ssl.NamedGroup namedGroup
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0  namedGroup  Lsun/security/ssl/NamedGroup;
            2    4     1       group  Lsun/security/ssl/NamedGroup;
    MethodParameters:
            Name  Flags
      namedGroup  

  static java.security.spec.ECGenParameterSpec getECGenParamSpec(sun.security.ssl.NamedGroup);
    descriptor: (Lsun/security/ssl/NamedGroup;)Ljava/security/spec/ECGenParameterSpec;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // sun.security.ssl.NamedGroup namedGroup
         0: .line 465
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.type:Lsun/security/ssl/NamedGroupType;
            getstatic sun.security.ssl.NamedGroupType.NAMED_GROUP_ECDHE:Lsun/security/ssl/NamedGroupType;
            if_acmpeq 2
         1: .line 466
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Not a named EC group: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* namedGroup */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 469
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
            aload 0 /* namedGroup */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.AlgorithmParameters
            astore 1 /* params */
        start local 1 // java.security.AlgorithmParameters params
         3: .line 471
            aload 1 /* params */
            ldc Ljava/security/spec/ECGenParameterSpec;
            invokevirtual java.security.AlgorithmParameters.getParameterSpec:(Ljava/lang/Class;)Ljava/security/spec/AlgorithmParameterSpec;
            checkcast java.security.spec.ECGenParameterSpec
         4: areturn
         5: .line 472
      StackMap locals: sun.security.ssl.NamedGroup java.security.AlgorithmParameters
      StackMap stack: java.security.spec.InvalidParameterSpecException
            pop
         6: .line 474
            new java.security.spec.ECGenParameterSpec
            dup
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.oid:Ljava/lang/String;
            invokespecial java.security.spec.ECGenParameterSpec.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // java.security.AlgorithmParameters params
        end local 0 // sun.security.ssl.NamedGroup namedGroup
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0  namedGroup  Lsun/security/ssl/NamedGroup;
            3    7     1      params  Ljava/security/AlgorithmParameters;
      Exception table:
        from    to  target  type
           3     4       5  Class java.security.spec.InvalidParameterSpecException
    MethodParameters:
            Name  Flags
      namedGroup  

  static javax.crypto.spec.DHParameterSpec getDHParameterSpec(sun.security.ssl.NamedGroup);
    descriptor: (Lsun/security/ssl/NamedGroup;)Ljavax/crypto/spec/DHParameterSpec;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // sun.security.ssl.NamedGroup namedGroup
         0: .line 479
            aload 0 /* namedGroup */
            getfield sun.security.ssl.NamedGroup.type:Lsun/security/ssl/NamedGroupType;
            getstatic sun.security.ssl.NamedGroupType.NAMED_GROUP_FFDHE:Lsun/security/ssl/NamedGroupType;
            if_acmpeq 2
         1: .line 480
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Not a named DH group: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* namedGroup */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 483
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.SupportedGroupsExtension.namedGroupParams:Ljava/util/Map;
            aload 0 /* namedGroup */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.security.AlgorithmParameters
            astore 1 /* params */
        start local 1 // java.security.AlgorithmParameters params
         3: .line 485
            aload 1 /* params */
            ldc Ljavax/crypto/spec/DHParameterSpec;
            invokevirtual java.security.AlgorithmParameters.getParameterSpec:(Ljava/lang/Class;)Ljava/security/spec/AlgorithmParameterSpec;
            checkcast javax.crypto.spec.DHParameterSpec
         4: areturn
         5: .line 486
      StackMap locals: sun.security.ssl.NamedGroup java.security.AlgorithmParameters
      StackMap stack: java.security.spec.InvalidParameterSpecException
            pop
         6: .line 488
            aload 0 /* namedGroup */
            invokestatic sun.security.ssl.SupportedGroupsExtension.getPredefinedDHParameterSpec:(Lsun/security/ssl/NamedGroup;)Ljavax/crypto/spec/DHParameterSpec;
            areturn
        end local 1 // java.security.AlgorithmParameters params
        end local 0 // sun.security.ssl.NamedGroup namedGroup
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0  namedGroup  Lsun/security/ssl/NamedGroup;
            3    7     1      params  Ljava/security/AlgorithmParameters;
      Exception table:
        from    to  target  type
           3     4       5  Class java.security.spec.InvalidParameterSpecException
    MethodParameters:
            Name  Flags
      namedGroup  

  static int[] $SWITCH_TABLE$sun$security$ssl$NamedGroup();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 51
            getstatic sun.security.ssl.SupportedGroupsExtension.$SWITCH_TABLE$sun$security$ssl$NamedGroup:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic sun.security.ssl.NamedGroup.values:()[Lsun/security/ssl/NamedGroup;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic sun.security.ssl.NamedGroup.FFDHE_2048:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 26
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic sun.security.ssl.NamedGroup.FFDHE_3072:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 27
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic sun.security.ssl.NamedGroup.FFDHE_4096:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 28
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic sun.security.ssl.NamedGroup.FFDHE_6144:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 29
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic sun.security.ssl.NamedGroup.FFDHE_8192:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 30
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP160_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 15
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP160_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 16
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP160_R2:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 17
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP192_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 18
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP192_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 19
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP224_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 20
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP224_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 21
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP256_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 22
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP256_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 23
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP384_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 24
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic sun.security.ssl.NamedGroup.SECP521_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 25
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT163_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            iconst_1
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT163_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            iconst_2
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT163_R2:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            iconst_3
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT193_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            iconst_4
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT193_R2:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            iconst_5
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT233_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 6
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT233_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 7
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT239_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 8
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT283_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 9
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT283_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 10
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT409_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 11
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT409_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 12
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT571_K1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 13
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic sun.security.ssl.NamedGroup.SECT571_R1:Lsun/security/ssl/NamedGroup;
            invokevirtual sun.security.ssl.NamedGroup.ordinal:()I
            bipush 14
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            dup
            putstatic sun.security.ssl.SupportedGroupsExtension.$SWITCH_TABLE$sun$security$ssl$NamedGroup:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
          77    78      79  Class java.lang.NoSuchFieldError
          80    81      82  Class java.lang.NoSuchFieldError
          83    84      85  Class java.lang.NoSuchFieldError
          86    87      88  Class java.lang.NoSuchFieldError
          89    90      91  Class java.lang.NoSuchFieldError
}
SourceFile: "SupportedGroupsExtension.java"