public class sun.security.ec.XECParameters
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.ec.XECParameters
  super_class: java.lang.Object
{
  private final sun.security.util.ObjectIdentifier oid;
    descriptor: Lsun/security/util/ObjectIdentifier;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final int bits;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.math.BigInteger p;
    descriptor: Ljava/math/BigInteger;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int logCofactor;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int a24;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final byte basePoint;
    descriptor: B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final java.util.Map<java.lang.Integer, sun.security.ec.XECParameters> SIZE_MAP;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/Integer;Lsun/security/ec/XECParameters;>;

  private static final java.util.Map<sun.security.util.ObjectIdentifier, sun.security.ec.XECParameters> OID_MAP;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Lsun/security/util/ObjectIdentifier;Lsun/security/ec/XECParameters;>;

  private static final java.util.Map<java.lang.String, sun.security.ec.XECParameters> NAME_MAP;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lsun/security/ec/XECParameters;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=10, locals=5, args_size=0
         0: .line 114
            ldc 2
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            astore 0 /* TWO */
        start local 0 // java.math.BigInteger TWO
         1: .line 116
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 1 /* bySize */
        start local 1 // java.util.Map bySize
         2: .line 117
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* byOid */
        start local 2 // java.util.Map byOid
         3: .line 118
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* byName */
        start local 3 // java.util.Map byName
         4: .line 122
            aload 0 /* TWO */
            sipush 255
            invokevirtual java.math.BigInteger.pow:(I)Ljava/math/BigInteger;
            ldc 19
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            astore 4 /* p */
        start local 4 // java.math.BigInteger p
         5: .line 123
            sipush 255
            aload 4 /* p */
            ldc 121665
            bipush 9
            iconst_3
         6: .line 124
            iconst_4
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iconst_3
            iastore
            dup
            iconst_2
            bipush 101
            iastore
            dup
            iconst_3
            bipush 110
            iastore
            getstatic java.security.spec.NamedParameterSpec.X25519:Ljava/security/spec/NamedParameterSpec;
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
         7: .line 125
            aload 1 /* bySize */
            aload 2 /* byOid */
            aload 3 /* byName */
         8: .line 123
            invokestatic sun.security.ec.XECParameters.addParameters:(ILjava/math/BigInteger;IBI[ILjava/lang/String;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V
        end local 4 // java.math.BigInteger p
         9: .line 127
            goto 11
      StackMap locals: java.math.BigInteger java.util.Map java.util.Map java.util.Map
      StackMap stack: java.io.IOException
        10: pop
        11: .line 133
      StackMap locals:
      StackMap stack:
            aload 0 /* TWO */
            sipush 448
            invokevirtual java.math.BigInteger.pow:(I)Ljava/math/BigInteger;
            aload 0 /* TWO */
            sipush 224
            invokevirtual java.math.BigInteger.pow:(I)Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
        12: .line 134
            getstatic java.math.BigInteger.ONE:Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
        13: .line 133
            astore 4 /* p */
        start local 4 // java.math.BigInteger p
        14: .line 135
            sipush 448
            aload 4 /* p */
            ldc 39081
            iconst_5
            iconst_2
        15: .line 136
            iconst_4
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iconst_3
            iastore
            dup
            iconst_2
            bipush 101
            iastore
            dup
            iconst_3
            bipush 111
            iastore
            getstatic java.security.spec.NamedParameterSpec.X448:Ljava/security/spec/NamedParameterSpec;
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
        16: .line 137
            aload 1 /* bySize */
            aload 2 /* byOid */
            aload 3 /* byName */
        17: .line 135
            invokestatic sun.security.ec.XECParameters.addParameters:(ILjava/math/BigInteger;IBI[ILjava/lang/String;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V
        end local 4 // java.math.BigInteger p
        18: .line 139
            goto 20
      StackMap locals:
      StackMap stack: java.io.IOException
        19: pop
        20: .line 143
      StackMap locals:
      StackMap stack:
            aload 1 /* bySize */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic sun.security.ec.XECParameters.SIZE_MAP:Ljava/util/Map;
        21: .line 144
            aload 2 /* byOid */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic sun.security.ec.XECParameters.OID_MAP:Ljava/util/Map;
        22: .line 145
            aload 3 /* byName */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic sun.security.ec.XECParameters.NAME_MAP:Ljava/util/Map;
        end local 3 // java.util.Map byName
        end local 2 // java.util.Map byOid
        end local 1 // java.util.Map bySize
        end local 0 // java.math.BigInteger TWO
        23: .line 146
            return
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1   23     0     TWO  Ljava/math/BigInteger;
            2   23     1  bySize  Ljava/util/Map<Ljava/lang/Integer;Lsun/security/ec/XECParameters;>;
            3   23     2   byOid  Ljava/util/Map<Lsun/security/util/ObjectIdentifier;Lsun/security/ec/XECParameters;>;
            4   23     3  byName  Ljava/util/Map<Ljava/lang/String;Lsun/security/ec/XECParameters;>;
            5    9     4       p  Ljava/math/BigInteger;
           14   18     4       p  Ljava/math/BigInteger;
      Exception table:
        from    to  target  type
           4     9      10  Class java.io.IOException
          11    18      19  Class java.io.IOException

  public void <init>(int, java.math.BigInteger, int, byte, int, sun.security.util.ObjectIdentifier, java.lang.String);
    descriptor: (ILjava/math/BigInteger;IBILsun/security/util/ObjectIdentifier;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=8, args_size=8
        start local 0 // sun.security.ec.XECParameters this
        start local 1 // int bits
        start local 2 // java.math.BigInteger p
        start local 3 // int a24
        start local 4 // byte basePoint
        start local 5 // int logCofactor
        start local 6 // sun.security.util.ObjectIdentifier oid
        start local 7 // java.lang.String name
         0: .line 70
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 74
            aload 0 /* this */
            iload 1 /* bits */
            putfield sun.security.ec.XECParameters.bits:I
         2: .line 75
            aload 0 /* this */
            iload 5 /* logCofactor */
            putfield sun.security.ec.XECParameters.logCofactor:I
         3: .line 76
            aload 0 /* this */
            aload 2 /* p */
            putfield sun.security.ec.XECParameters.p:Ljava/math/BigInteger;
         4: .line 77
            aload 0 /* this */
            iload 3 /* a24 */
            putfield sun.security.ec.XECParameters.a24:I
         5: .line 78
            aload 0 /* this */
            iload 4 /* basePoint */
            putfield sun.security.ec.XECParameters.basePoint:B
         6: .line 79
            aload 0 /* this */
            aload 6 /* oid */
            putfield sun.security.ec.XECParameters.oid:Lsun/security/util/ObjectIdentifier;
         7: .line 80
            aload 0 /* this */
            aload 7 /* name */
            putfield sun.security.ec.XECParameters.name:Ljava/lang/String;
         8: .line 82
            return
        end local 7 // java.lang.String name
        end local 6 // sun.security.util.ObjectIdentifier oid
        end local 5 // int logCofactor
        end local 4 // byte basePoint
        end local 3 // int a24
        end local 2 // java.math.BigInteger p
        end local 1 // int bits
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lsun/security/ec/XECParameters;
            0    9     1         bits  I
            0    9     2            p  Ljava/math/BigInteger;
            0    9     3          a24  I
            0    9     4    basePoint  B
            0    9     5  logCofactor  I
            0    9     6          oid  Lsun/security/util/ObjectIdentifier;
            0    9     7         name  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      bits         
      p            
      a24          
      basePoint    
      logCofactor  
      oid          
      name         

  public int getBits();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 85
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.bits:I
            ireturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  public int getBytes();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 88
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.bits:I
            bipush 7
            iadd
            bipush 8
            idiv
            ireturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  public int getLogCofactor();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 91
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.logCofactor:I
            ireturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  public java.math.BigInteger getP();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 94
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.p:Ljava/math/BigInteger;
            areturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  public int getA24();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 97
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.a24:I
            ireturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  public byte getBasePoint();
    descriptor: ()B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 100
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.basePoint:B
            ireturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  public sun.security.util.ObjectIdentifier getOid();
    descriptor: ()Lsun/security/util/ObjectIdentifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 103
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.oid:Lsun/security/util/ObjectIdentifier;
            areturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.XECParameters this
         0: .line 106
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.name:Ljava/lang/String;
            areturn
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/XECParameters;

  private static void addParameters(int, java.math.BigInteger, int, byte, int, int[], java.lang.String, java.util.Map<java.lang.Integer, sun.security.ec.XECParameters>, java.util.Map<sun.security.util.ObjectIdentifier, sun.security.ec.XECParameters>, java.util.Map<java.lang.String, sun.security.ec.XECParameters>);
    descriptor: (ILjava/math/BigInteger;IBI[ILjava/lang/String;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=12, args_size=10
        start local 0 // int bits
        start local 1 // java.math.BigInteger p
        start local 2 // int a24
        start local 3 // byte basePoint
        start local 4 // int logCofactor
        start local 5 // int[] oidBytes
        start local 6 // java.lang.String name
        start local 7 // java.util.Map bySize
        start local 8 // java.util.Map byOid
        start local 9 // java.util.Map byName
         0: .line 154
            new sun.security.util.ObjectIdentifier
            dup
            aload 5 /* oidBytes */
            invokespecial sun.security.util.ObjectIdentifier.<init>:([I)V
            astore 10 /* oid */
        start local 10 // sun.security.util.ObjectIdentifier oid
         1: .line 156
            new sun.security.ec.XECParameters
            dup
            iload 0 /* bits */
            aload 1 /* p */
            iload 2 /* a24 */
            iload 3 /* basePoint */
            iload 4 /* logCofactor */
            aload 10 /* oid */
            aload 6 /* name */
            invokespecial sun.security.ec.XECParameters.<init>:(ILjava/math/BigInteger;IBILsun/security/util/ObjectIdentifier;Ljava/lang/String;)V
         2: .line 155
            astore 11 /* params */
        start local 11 // sun.security.ec.XECParameters params
         3: .line 157
            aload 7 /* bySize */
            iload 0 /* bits */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 11 /* params */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 158
            aload 8 /* byOid */
            aload 10 /* oid */
            aload 11 /* params */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 159
            aload 9 /* byName */
            aload 6 /* name */
            aload 11 /* params */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 160
            return
        end local 11 // sun.security.ec.XECParameters params
        end local 10 // sun.security.util.ObjectIdentifier oid
        end local 9 // java.util.Map byName
        end local 8 // java.util.Map byOid
        end local 7 // java.util.Map bySize
        end local 6 // java.lang.String name
        end local 5 // int[] oidBytes
        end local 4 // int logCofactor
        end local 3 // byte basePoint
        end local 2 // int a24
        end local 1 // java.math.BigInteger p
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         bits  I
            0    7     1            p  Ljava/math/BigInteger;
            0    7     2          a24  I
            0    7     3    basePoint  B
            0    7     4  logCofactor  I
            0    7     5     oidBytes  [I
            0    7     6         name  Ljava/lang/String;
            0    7     7       bySize  Ljava/util/Map<Ljava/lang/Integer;Lsun/security/ec/XECParameters;>;
            0    7     8        byOid  Ljava/util/Map<Lsun/security/util/ObjectIdentifier;Lsun/security/ec/XECParameters;>;
            0    7     9       byName  Ljava/util/Map<Ljava/lang/String;Lsun/security/ec/XECParameters;>;
            1    7    10          oid  Lsun/security/util/ObjectIdentifier;
            3    7    11       params  Lsun/security/ec/XECParameters;
    Exceptions:
      throws java.io.IOException
    Signature: (ILjava/math/BigInteger;IBI[ILjava/lang/String;Ljava/util/Map<Ljava/lang/Integer;Lsun/security/ec/XECParameters;>;Ljava/util/Map<Lsun/security/util/ObjectIdentifier;Lsun/security/ec/XECParameters;>;Ljava/util/Map<Ljava/lang/String;Lsun/security/ec/XECParameters;>;)V
    MethodParameters:
             Name  Flags
      bits         
      p            
      a24          
      basePoint    
      logCofactor  
      oidBytes     
      name         
      bySize       
      byOid        
      byName       

  public static java.util.Optional<sun.security.ec.XECParameters> getByOid(sun.security.util.ObjectIdentifier);
    descriptor: (Lsun/security/util/ObjectIdentifier;)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.util.ObjectIdentifier id
         0: .line 163
            getstatic sun.security.ec.XECParameters.OID_MAP:Ljava/util/Map;
            aload 0 /* id */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 0 // sun.security.util.ObjectIdentifier id
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    id  Lsun/security/util/ObjectIdentifier;
    Signature: (Lsun/security/util/ObjectIdentifier;)Ljava/util/Optional<Lsun/security/ec/XECParameters;>;
    MethodParameters:
      Name  Flags
      id    

  public static java.util.Optional<sun.security.ec.XECParameters> getBySize(int);
    descriptor: (I)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int size
         0: .line 166
            getstatic sun.security.ec.XECParameters.SIZE_MAP:Ljava/util/Map;
            iload 0 /* size */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 0 // int size
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  size  I
    Signature: (I)Ljava/util/Optional<Lsun/security/ec/XECParameters;>;
    MethodParameters:
      Name  Flags
      size  

  public static java.util.Optional<sun.security.ec.XECParameters> getByName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Optional;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 169
            getstatic sun.security.ec.XECParameters.NAME_MAP:Ljava/util/Map;
            aload 0 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Ljava/util/Optional<Lsun/security/ec/XECParameters;>;
    MethodParameters:
      Name  Flags
      name  

  boolean oidEquals(sun.security.ec.XECParameters);
    descriptor: (Lsun/security/ec/XECParameters;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ec.XECParameters this
        start local 1 // sun.security.ec.XECParameters other
         0: .line 173
            aload 0 /* this */
            getfield sun.security.ec.XECParameters.oid:Lsun/security/util/ObjectIdentifier;
            aload 1 /* other */
            invokevirtual sun.security.ec.XECParameters.getOid:()Lsun/security/util/ObjectIdentifier;
            invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // sun.security.ec.XECParameters other
        end local 0 // sun.security.ec.XECParameters this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lsun/security/ec/XECParameters;
            0    1     1  other  Lsun/security/ec/XECParameters;
    MethodParameters:
       Name  Flags
      other  

  private static <A, B> java.util.function.Supplier<B> apply(java.util.function.Function<A, B>, A);
    descriptor: (Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/function/Supplier;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.function.Function func
        start local 1 // java.lang.Object a
         0: .line 180
            new sun.security.ec.XECParameters$1
            dup
            aload 0 /* func */
            aload 1 /* a */
            invokespecial sun.security.ec.XECParameters$1.<init>:(Ljava/util/function/Function;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object a
        end local 0 // java.util.function.Function func
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  func  Ljava/util/function/Function<TA;TB;>;
            0    1     1     a  TA;
    Signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;>(Ljava/util/function/Function<TA;TB;>;TA;)Ljava/util/function/Supplier<TB;>;
    MethodParameters:
      Name  Flags
      func  final
      a     final

  public static <T extends java.lang.Throwable> sun.security.ec.XECParameters getBySize(java.util.function.Function<java.lang.String, T>, int) throws T;
    descriptor: (Ljava/util/function/Function;I)Lsun/security/ec/XECParameters;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.util.function.Function exception
        start local 1 // int size
         0: .line 206
            iload 1 /* size */
            invokestatic sun.security.ec.XECParameters.getBySize:(I)Ljava/util/Optional;
            astore 2 /* xecParams */
        start local 2 // java.util.Optional xecParams
         1: .line 207
            aload 2 /* xecParams */
         2: .line 208
            aload 0 /* exception */
            new java.lang.StringBuilder
            dup
            ldc "Unsupported size: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* size */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.security.ec.XECParameters.apply:(Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/function/Supplier;
         3: .line 207
            invokevirtual java.util.Optional.orElseThrow:(Ljava/util/function/Supplier;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            areturn
        end local 2 // java.util.Optional xecParams
        end local 1 // int size
        end local 0 // java.util.function.Function exception
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  exception  Ljava/util/function/Function<Ljava/lang/String;TT;>;
            0    4     1       size  I
            1    4     2  xecParams  Ljava/util/Optional<Lsun/security/ec/XECParameters;>;
    Exceptions:
      throws java.lang.Throwable
    Signature: <T:Ljava/lang/Throwable;>(Ljava/util/function/Function<Ljava/lang/String;TT;>;I)Lsun/security/ec/XECParameters;^TT;
    MethodParameters:
           Name  Flags
      exception  
      size       

  public static <T extends java.lang.Throwable> sun.security.ec.XECParameters get(java.util.function.Function<java.lang.String, T>, sun.security.x509.AlgorithmId) throws T;
    descriptor: (Ljava/util/function/Function;Lsun/security/x509/AlgorithmId;)Lsun/security/ec/XECParameters;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.util.function.Function exception
        start local 1 // sun.security.x509.AlgorithmId algId
         0: .line 229
            aload 1 /* algId */
            invokevirtual sun.security.x509.AlgorithmId.getOID:()Lsun/security/util/ObjectIdentifier;
            invokestatic sun.security.ec.XECParameters.getByOid:(Lsun/security/util/ObjectIdentifier;)Ljava/util/Optional;
            astore 2 /* xecParams */
        start local 2 // java.util.Optional xecParams
         1: .line 230
            aload 2 /* xecParams */
         2: .line 231
            aload 0 /* exception */
            new java.lang.StringBuilder
            dup
            ldc "Unsupported OID: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* algId */
            invokevirtual sun.security.x509.AlgorithmId.getOID:()Lsun/security/util/ObjectIdentifier;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.security.ec.XECParameters.apply:(Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/function/Supplier;
         3: .line 230
            invokevirtual java.util.Optional.orElseThrow:(Ljava/util/function/Supplier;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            areturn
        end local 2 // java.util.Optional xecParams
        end local 1 // sun.security.x509.AlgorithmId algId
        end local 0 // java.util.function.Function exception
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  exception  Ljava/util/function/Function<Ljava/lang/String;TT;>;
            0    4     1      algId  Lsun/security/x509/AlgorithmId;
            1    4     2  xecParams  Ljava/util/Optional<Lsun/security/ec/XECParameters;>;
    Exceptions:
      throws java.lang.Throwable
    Signature: <T:Ljava/lang/Throwable;>(Ljava/util/function/Function<Ljava/lang/String;TT;>;Lsun/security/x509/AlgorithmId;)Lsun/security/ec/XECParameters;^TT;
    MethodParameters:
           Name  Flags
      exception  
      algId      

  public static <T extends java.lang.Throwable> sun.security.ec.XECParameters get(java.util.function.Function<java.lang.String, T>, java.security.spec.AlgorithmParameterSpec) throws T;
    descriptor: (Ljava/util/function/Function;Ljava/security/spec/AlgorithmParameterSpec;)Lsun/security/ec/XECParameters;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // java.util.function.Function exception
        start local 1 // java.security.spec.AlgorithmParameterSpec params
         0: .line 252
            aload 1 /* params */
            instanceof java.security.spec.NamedParameterSpec
            ifeq 7
         1: .line 253
            aload 1 /* params */
            checkcast java.security.spec.NamedParameterSpec
            astore 2 /* namedParams */
        start local 2 // java.security.spec.NamedParameterSpec namedParams
         2: .line 255
            aload 2 /* namedParams */
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
            invokestatic sun.security.ec.XECParameters.getByName:(Ljava/lang/String;)Ljava/util/Optional;
         3: .line 254
            astore 3 /* xecParams */
        start local 3 // java.util.Optional xecParams
         4: .line 256
            aload 3 /* xecParams */
         5: .line 257
            aload 0 /* exception */
            new java.lang.StringBuilder
            dup
            ldc "Unsupported name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* namedParams */
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic sun.security.ec.XECParameters.apply:(Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/function/Supplier;
         6: .line 256
            invokevirtual java.util.Optional.orElseThrow:(Ljava/util/function/Supplier;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            areturn
        end local 3 // java.util.Optional xecParams
        end local 2 // java.security.spec.NamedParameterSpec namedParams
         7: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* exception */
            ldc "Only NamedParameterSpec is supported."
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Throwable
            athrow
        end local 1 // java.security.spec.AlgorithmParameterSpec params
        end local 0 // java.util.function.Function exception
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0    exception  Ljava/util/function/Function<Ljava/lang/String;TT;>;
            0    8     1       params  Ljava/security/spec/AlgorithmParameterSpec;
            2    7     2  namedParams  Ljava/security/spec/NamedParameterSpec;
            4    7     3    xecParams  Ljava/util/Optional<Lsun/security/ec/XECParameters;>;
    Exceptions:
      throws java.lang.Throwable
    Signature: <T:Ljava/lang/Throwable;>(Ljava/util/function/Function<Ljava/lang/String;TT;>;Ljava/security/spec/AlgorithmParameterSpec;)Lsun/security/ec/XECParameters;^TT;
    MethodParameters:
           Name  Flags
      exception  
      params     
}
SourceFile: "XECParameters.java"
NestMembers:
  sun.security.ec.XECParameters$1
InnerClasses:
  sun.security.ec.XECParameters$1