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
{
  static sun.security.ec.ParametersMap<sun.security.ec.XECParameters> namedParams;
    descriptor: Lsun/security/ec/ParametersMap;
    flags: (0x0008) ACC_STATIC
    Signature: Lsun/security/ec/ParametersMap<Lsun/security/ec/XECParameters;>;

  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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=10, locals=5, args_size=0
         0: .line 42
            new sun.security.ec.ParametersMap
            dup
            invokespecial sun.security.ec.ParametersMap.<init>:()V
            putstatic sun.security.ec.XECParameters.namedParams:Lsun/security/ec/ParametersMap;
         1: .line 110
            ldc 2
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            astore 0 /* TWO */
        start local 0 // java.math.BigInteger TWO
         2: .line 112
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 1 /* bySize */
        start local 1 // java.util.Map bySize
         3: .line 113
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* byOid */
        start local 2 // java.util.Map byOid
         4: .line 114
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* byName */
        start local 3 // java.util.Map byName
         5: .line 118
            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
         6: .line 119
            sipush 255
            aload 4 /* p */
            ldc 121665
            bipush 9
            iconst_3
         7: .line 120
            getstatic sun.security.util.KnownOIDs.X25519:Lsun/security/util/KnownOIDs;
            invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
            getstatic java.security.spec.NamedParameterSpec.X25519:Ljava/security/spec/NamedParameterSpec;
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
         8: .line 121
            aload 1 /* bySize */
            aload 2 /* byOid */
            aload 3 /* byName */
         9: .line 119
            invokestatic sun.security.ec.XECParameters.addParameters:(ILjava/math/BigInteger;IBILjava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V
        end local 4 // java.math.BigInteger p
        10: .line 123
            goto 12
      StackMap locals: java.math.BigInteger java.util.Map java.util.Map java.util.Map
      StackMap stack: java.io.IOException
        11: pop
        12: .line 129
      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;
        13: .line 130
            getstatic java.math.BigInteger.ONE:Ljava/math/BigInteger;
            invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
        14: .line 129
            astore 4 /* p */
        start local 4 // java.math.BigInteger p
        15: .line 131
            sipush 448
            aload 4 /* p */
            ldc 39081
            iconst_5
            iconst_2
        16: .line 132
            getstatic sun.security.util.KnownOIDs.X448:Lsun/security/util/KnownOIDs;
            invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
            getstatic java.security.spec.NamedParameterSpec.X448:Ljava/security/spec/NamedParameterSpec;
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
        17: .line 133
            aload 1 /* bySize */
            aload 2 /* byOid */
            aload 3 /* byName */
        18: .line 131
            invokestatic sun.security.ec.XECParameters.addParameters:(ILjava/math/BigInteger;IBILjava/lang/String;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V
        end local 4 // java.math.BigInteger p
        19: .line 135
            goto 21
      StackMap locals:
      StackMap stack: java.io.IOException
        20: pop
        21: .line 139
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ec.XECParameters.namedParams:Lsun/security/ec/ParametersMap;
            invokevirtual sun.security.ec.ParametersMap.fix:()V
        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
        22: .line 140
            return
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            2   22     0     TWO  Ljava/math/BigInteger;
            3   22     1  bySize  Ljava/util/Map<Ljava/lang/Integer;Lsun/security/ec/XECParameters;>;
            4   22     2   byOid  Ljava/util/Map<Lsun/security/util/ObjectIdentifier;Lsun/security/ec/XECParameters;>;
            5   22     3  byName  Ljava/util/Map<Ljava/lang/String;Lsun/security/ec/XECParameters;>;
            6   10     4       p  Ljava/math/BigInteger;
           15   19     4       p  Ljava/math/BigInteger;
      Exception table:
        from    to  target  type
           5    10      11  Class java.io.IOException
          12    19      20  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, java.lang.String, 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;IBILjava/lang/String;Ljava/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 // java.lang.String objectId
        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 148
            aload 5 /* objectId */
            invokestatic sun.security.util.ObjectIdentifier.of:(Ljava/lang/String;)Lsun/security/util/ObjectIdentifier;
            astore 10 /* oid */
        start local 10 // sun.security.util.ObjectIdentifier oid
         1: .line 150
            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 149
            astore 11 /* params */
        start local 11 // sun.security.ec.XECParameters params
         3: .line 151
            getstatic sun.security.ec.XECParameters.namedParams:Lsun/security/ec/ParametersMap;
            aload 6 /* name */
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            aload 10 /* oid */
            iload 0 /* bits */
            aload 11 /* params */
            invokevirtual sun.security.ec.ParametersMap.put:(Ljava/lang/String;Lsun/security/util/ObjectIdentifier;ILjava/lang/Object;)V
         4: .line 152
            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 // java.lang.String objectId
        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    5     0         bits  I
            0    5     1            p  Ljava/math/BigInteger;
            0    5     2          a24  I
            0    5     3    basePoint  B
            0    5     4  logCofactor  I
            0    5     5     objectId  Ljava/lang/String;
            0    5     6         name  Ljava/lang/String;
            0    5     7       bySize  Ljava/util/Map<Ljava/lang/Integer;Lsun/security/ec/XECParameters;>;
            0    5     8        byOid  Ljava/util/Map<Lsun/security/util/ObjectIdentifier;Lsun/security/ec/XECParameters;>;
            0    5     9       byName  Ljava/util/Map<Ljava/lang/String;Lsun/security/ec/XECParameters;>;
            1    5    10          oid  Lsun/security/util/ObjectIdentifier;
            3    5    11       params  Lsun/security/ec/XECParameters;
    Exceptions:
      throws java.io.IOException
    Signature: (ILjava/math/BigInteger;IBILjava/lang/String;Ljava/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  
      objectId     
      name         
      bySize       
      byOid        
      byName       

  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 155
            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  

  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=3, locals=2, args_size=2
        start local 0 // java.util.function.Function exception
        start local 1 // int size
         0: .line 164
            getstatic sun.security.ec.XECParameters.namedParams:Lsun/security/ec/ParametersMap;
            aload 0 /* exception */
            iload 1 /* size */
            invokevirtual sun.security.ec.ParametersMap.getBySize:(Ljava/util/function/Function;I)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            areturn
        end local 1 // int size
        end local 0 // java.util.function.Function exception
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  exception  Ljava/util/function/Function<Ljava/lang/String;TT;>;
            0    1     1       size  I
    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=3, locals=2, args_size=2
        start local 0 // java.util.function.Function exception
        start local 1 // sun.security.x509.AlgorithmId algId
         0: .line 172
            getstatic sun.security.ec.XECParameters.namedParams:Lsun/security/ec/ParametersMap;
            aload 0 /* exception */
            aload 1 /* algId */
            invokevirtual sun.security.ec.ParametersMap.get:(Ljava/util/function/Function;Lsun/security/x509/AlgorithmId;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            areturn
        end local 1 // sun.security.x509.AlgorithmId algId
        end local 0 // java.util.function.Function exception
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  exception  Ljava/util/function/Function<Ljava/lang/String;TT;>;
            0    1     1      algId  Lsun/security/x509/AlgorithmId;
    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=3, locals=2, args_size=2
        start local 0 // java.util.function.Function exception
        start local 1 // java.security.spec.AlgorithmParameterSpec params
         0: .line 180
            getstatic sun.security.ec.XECParameters.namedParams:Lsun/security/ec/ParametersMap;
            aload 0 /* exception */
            aload 1 /* params */
            invokevirtual sun.security.ec.ParametersMap.get:(Ljava/util/function/Function;Ljava/security/spec/AlgorithmParameterSpec;)Ljava/lang/Object;
            checkcast sun.security.ec.XECParameters
            areturn
        end local 1 // java.security.spec.AlgorithmParameterSpec params
        end local 0 // java.util.function.Function exception
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  exception  Ljava/util/function/Function<Ljava/lang/String;TT;>;
            0    1     1     params  Ljava/security/spec/AlgorithmParameterSpec;
    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"