public class sun.security.ec.ed.EdDSAParameters
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.ec.ed.EdDSAParameters
  super_class: java.lang.Object
{
  static sun.security.ec.ParametersMap<sun.security.ec.ed.EdDSAParameters> namedParams;
    descriptor: Lsun/security/ec/ParametersMap;
    flags: (0x0008) ACC_STATIC
    Signature: Lsun/security/ec/ParametersMap<Lsun/security/ec/ed/EdDSAParameters;>;

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

  private final sun.security.util.ObjectIdentifier oid;
    descriptor: Lsun/security/util/ObjectIdentifier;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.security.util.math.IntegerFieldModuloP field;
    descriptor: Lsun/security/util/math/IntegerFieldModuloP;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.security.util.math.IntegerFieldModuloP orderField;
    descriptor: Lsun/security/util/math/IntegerFieldModuloP;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.security.util.math.ImmutableIntegerModuloP d;
    descriptor: Lsun/security/util/math/ImmutableIntegerModuloP;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.security.ec.ed.EdECOperations edOperations;
    descriptor: Lsun/security/ec/ed/EdECOperations;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.security.ec.ed.EdDSAParameters$DigesterFactory digester;
    descriptor: Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

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

  private final java.util.function.Function<java.security.spec.EdDSAParameterSpec, byte[]> dom;
    descriptor: Ljava/util/function/Function;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/function/Function<Ljava/security/spec/EdDSAParameterSpec;[B>;

  private static final java.lang.String prefixStr25519;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SigEd25519 no Ed25519 collisions"

  private static final java.lang.String prefixStr448;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SigEd448"

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=13, locals=14, args_size=0
         0: .line 142
            new sun.security.ec.ParametersMap
            dup
            invokespecial sun.security.ec.ParametersMap.<init>:()V
            putstatic sun.security.ec.ed.EdDSAParameters.namedParams:Lsun/security/ec/ParametersMap;
         1: .line 254
            new sun.security.util.math.intpoly.IntegerPolynomial25519
            dup
            invokespecial sun.security.util.math.intpoly.IntegerPolynomial25519.<init>:()V
            astore 0 /* ed25519Field */
        start local 0 // sun.security.util.math.IntegerFieldModuloP ed25519Field
         2: .line 255
            new sun.security.util.math.intpoly.Curve25519OrderField
            dup
            invokespecial sun.security.util.math.intpoly.Curve25519OrderField.<init>:()V
            astore 1 /* ed25519OrderField */
        start local 1 // sun.security.util.math.IntegerFieldModuloP ed25519OrderField
         3: .line 256
            new java.math.BigInteger
            dup
            ldc "37095705934669439343138083508754565189542113879843219016388785533085940283555"
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
            astore 2 /* biD */
        start local 2 // java.math.BigInteger biD
         4: .line 258
            aload 0 /* ed25519Field */
            aload 2 /* biD */
            invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:(Ljava/math/BigInteger;)Lsun/security/util/math/ImmutableIntegerModuloP;
            astore 3 /* d */
        start local 3 // sun.security.util.math.ImmutableIntegerModuloP d
         5: .line 259
            new java.math.BigInteger
            dup
            ldc "15112221349535400772501151409588531511454012693041857206046113283949847762202"
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
            astore 4 /* baseX */
        start local 4 // java.math.BigInteger baseX
         6: .line 261
            new java.math.BigInteger
            dup
            ldc "46316835694926478169428394003475163141307993866256225615783033603165251855960"
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
            astore 5 /* baseY */
        start local 5 // java.math.BigInteger baseY
         7: .line 263
            new sun.security.ec.ed.Ed25519Operations
            dup
            aload 3 /* d */
            aload 4 /* baseX */
            aload 5 /* baseY */
            invokespecial sun.security.ec.ed.Ed25519Operations.<init>:(Lsun/security/util/math/ImmutableIntegerModuloP;Ljava/math/BigInteger;Ljava/math/BigInteger;)V
            astore 6 /* edOps */
        start local 6 // sun.security.ec.ed.EdECOperations edOps
         8: .line 264
            getstatic java.security.spec.NamedParameterSpec.ED25519:Ljava/security/spec/NamedParameterSpec;
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
         9: .line 265
            getstatic sun.security.util.KnownOIDs.Ed25519:Lsun/security/util/KnownOIDs;
            invokestatic sun.security.util.ObjectIdentifier.of:(Lsun/security/util/KnownOIDs;)Lsun/security/util/ObjectIdentifier;
            astore 8 /* oid */
        start local 8 // sun.security.util.ObjectIdentifier oid
        10: .line 266
            sipush 255
            istore 9 /* bits */
        start local 9 // int bits
        11: .line 267
            new sun.security.ec.ed.EdDSAParameters$SHA512DigesterFactory
            dup
            invokespecial sun.security.ec.ed.EdDSAParameters$SHA512DigesterFactory.<init>:()V
            astore 10 /* digester */
        start local 10 // sun.security.ec.ed.EdDSAParameters$DigesterFactory digester
        12: .line 268
            new sun.security.ec.ed.EdDSAParameters
            dup
            aload 7 /* name */
            aload 8 /* oid */
        13: .line 269
            aload 0 /* ed25519Field */
            aload 1 /* ed25519OrderField */
            aload 3 /* d */
            aload 6 /* edOps */
        14: .line 270
            aload 10 /* digester */
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  sun/security/ec/ed/EdDSAParameters.dom2(Ljava/security/spec/EdDSAParameterSpec;)[B (6)
                  (Ljava/security/spec/EdDSAParameterSpec;)[B
            bipush 32
            iload 9 /* bits */
            iconst_3
        15: .line 268
            invokespecial sun.security.ec.ed.EdDSAParameters.<init>:(Ljava/lang/String;Lsun/security/util/ObjectIdentifier;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/ImmutableIntegerModuloP;Lsun/security/ec/ed/EdECOperations;Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;Ljava/util/function/Function;III)V
            astore 11 /* params */
        start local 11 // sun.security.ec.ed.EdDSAParameters params
        16: .line 272
            getstatic sun.security.ec.ed.EdDSAParameters.namedParams:Lsun/security/ec/ParametersMap;
            aload 7 /* name */
            aload 8 /* oid */
            iload 9 /* bits */
            aload 11 /* params */
            invokevirtual sun.security.ec.ParametersMap.put:(Ljava/lang/String;Lsun/security/util/ObjectIdentifier;ILjava/lang/Object;)V
        17: .line 275
            new sun.security.util.math.intpoly.IntegerPolynomial448
            dup
            invokespecial sun.security.util.math.intpoly.IntegerPolynomial448.<init>:()V
            astore 12 /* ed448Field */
        start local 12 // sun.security.util.math.IntegerFieldModuloP ed448Field
        18: .line 276
            new sun.security.util.math.intpoly.Curve448OrderField
            dup
            invokespecial sun.security.util.math.intpoly.Curve448OrderField.<init>:()V
            astore 13 /* ed448OrderField */
        start local 13 // sun.security.util.math.IntegerFieldModuloP ed448OrderField
        19: .line 277
            aload 12 /* ed448Field */
            invokeinterface sun.security.util.math.IntegerFieldModuloP.getSize:()Ljava/math/BigInteger;
            new java.math.BigInteger
            dup
            ldc "39081"
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
            invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
            astore 2 /* biD */
        20: .line 278
            aload 12 /* ed448Field */
            aload 2 /* biD */
            invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:(Ljava/math/BigInteger;)Lsun/security/util/math/ImmutableIntegerModuloP;
            astore 3 /* d */
        21: .line 279
            new java.math.BigInteger
            dup
            ldc "224580040295924300187604334099896036246789641632564134246125461686950415467406032909029192869357953282578032075146446173674602635247710"
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
            astore 4 /* baseX */
        22: .line 282
            new java.math.BigInteger
            dup
            ldc "298819210078481492676017930443930673437544040154080242095928241372331506189835876003536878655418784733982303233503462500531545062832660"
            invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
            astore 5 /* baseY */
        23: .line 285
            new sun.security.ec.ed.Ed448Operations
            dup
            aload 3 /* d */
            aload 4 /* baseX */
            aload 5 /* baseY */
            invokespecial sun.security.ec.ed.Ed448Operations.<init>:(Lsun/security/util/math/ImmutableIntegerModuloP;Ljava/math/BigInteger;Ljava/math/BigInteger;)V
            astore 6 /* edOps */
        24: .line 286
            getstatic java.security.spec.NamedParameterSpec.ED448:Ljava/security/spec/NamedParameterSpec;
            invokevirtual java.security.spec.NamedParameterSpec.getName:()Ljava/lang/String;
            astore 7 /* name */
        25: .line 287
            getstatic sun.security.util.KnownOIDs.Ed448:Lsun/security/util/KnownOIDs;
            invokestatic sun.security.util.ObjectIdentifier.of:(Lsun/security/util/KnownOIDs;)Lsun/security/util/ObjectIdentifier;
            astore 8 /* oid */
        26: .line 288
            sipush 448
            istore 9 /* bits */
        27: .line 289
            new sun.security.ec.ed.EdDSAParameters$SHAKE256DigesterFactory
            dup
            invokespecial sun.security.ec.ed.EdDSAParameters$SHAKE256DigesterFactory.<init>:()V
            astore 10 /* digester */
        28: .line 290
            new sun.security.ec.ed.EdDSAParameters
            dup
            aload 7 /* name */
            aload 8 /* oid */
        29: .line 291
            aload 12 /* ed448Field */
            aload 13 /* ed448OrderField */
            aload 3 /* d */
            aload 6 /* edOps */
        30: .line 292
            aload 10 /* digester */
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  sun/security/ec/ed/EdDSAParameters.dom4(Ljava/security/spec/EdDSAParameterSpec;)[B (6)
                  (Ljava/security/spec/EdDSAParameterSpec;)[B
            bipush 57
            iload 9 /* bits */
            iconst_2
        31: .line 290
            invokespecial sun.security.ec.ed.EdDSAParameters.<init>:(Ljava/lang/String;Lsun/security/util/ObjectIdentifier;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/ImmutableIntegerModuloP;Lsun/security/ec/ed/EdECOperations;Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;Ljava/util/function/Function;III)V
            astore 11 /* params */
        32: .line 294
            getstatic sun.security.ec.ed.EdDSAParameters.namedParams:Lsun/security/ec/ParametersMap;
            aload 7 /* name */
            aload 8 /* oid */
            iload 9 /* bits */
            aload 11 /* params */
            invokevirtual sun.security.ec.ParametersMap.put:(Ljava/lang/String;Lsun/security/util/ObjectIdentifier;ILjava/lang/Object;)V
        33: .line 296
            getstatic sun.security.ec.ed.EdDSAParameters.namedParams:Lsun/security/ec/ParametersMap;
            invokevirtual sun.security.ec.ParametersMap.fix:()V
        end local 13 // sun.security.util.math.IntegerFieldModuloP ed448OrderField
        end local 12 // sun.security.util.math.IntegerFieldModuloP ed448Field
        end local 11 // sun.security.ec.ed.EdDSAParameters params
        end local 10 // sun.security.ec.ed.EdDSAParameters$DigesterFactory digester
        end local 9 // int bits
        end local 8 // sun.security.util.ObjectIdentifier oid
        end local 7 // java.lang.String name
        end local 6 // sun.security.ec.ed.EdECOperations edOps
        end local 5 // java.math.BigInteger baseY
        end local 4 // java.math.BigInteger baseX
        end local 3 // sun.security.util.math.ImmutableIntegerModuloP d
        end local 2 // java.math.BigInteger biD
        end local 1 // sun.security.util.math.IntegerFieldModuloP ed25519OrderField
        end local 0 // sun.security.util.math.IntegerFieldModuloP ed25519Field
        34: .line 297
            return
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            2   34     0       ed25519Field  Lsun/security/util/math/IntegerFieldModuloP;
            3   34     1  ed25519OrderField  Lsun/security/util/math/IntegerFieldModuloP;
            4   34     2                biD  Ljava/math/BigInteger;
            5   34     3                  d  Lsun/security/util/math/ImmutableIntegerModuloP;
            6   34     4              baseX  Ljava/math/BigInteger;
            7   34     5              baseY  Ljava/math/BigInteger;
            8   34     6              edOps  Lsun/security/ec/ed/EdECOperations;
            9   34     7               name  Ljava/lang/String;
           10   34     8                oid  Lsun/security/util/ObjectIdentifier;
           11   34     9               bits  I
           12   34    10           digester  Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;
           16   34    11             params  Lsun/security/ec/ed/EdDSAParameters;
           18   34    12         ed448Field  Lsun/security/util/math/IntegerFieldModuloP;
           19   34    13    ed448OrderField  Lsun/security/util/math/IntegerFieldModuloP;

  public void <init>(java.lang.String, sun.security.util.ObjectIdentifier, sun.security.util.math.IntegerFieldModuloP, sun.security.util.math.IntegerFieldModuloP, sun.security.util.math.ImmutableIntegerModuloP, sun.security.ec.ed.EdECOperations, sun.security.ec.ed.EdDSAParameters$DigesterFactory, java.util.function.Function<java.security.spec.EdDSAParameterSpec, byte[]>, int, int, );
    descriptor: (Ljava/lang/String;Lsun/security/util/ObjectIdentifier;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/ImmutableIntegerModuloP;Lsun/security/ec/ed/EdECOperations;Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;Ljava/util/function/Function;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=12, args_size=12
        start local 0 // sun.security.ec.ed.EdDSAParameters this
        start local 1 // java.lang.String name
        start local 2 // sun.security.util.ObjectIdentifier oid
        start local 3 // sun.security.util.math.IntegerFieldModuloP field
        start local 4 // sun.security.util.math.IntegerFieldModuloP orderField
        start local 5 // sun.security.util.math.ImmutableIntegerModuloP d
        start local 6 // sun.security.ec.ed.EdECOperations edOps
        start local 7 // sun.security.ec.ed.EdDSAParameters$DigesterFactory digester
        start local 8 // java.util.function.Function dom
        start local 9 // int keyLength
        start local 10 // int bits
        start local 11 // int logCofactor
         0: .line 156
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 164
            aload 0 /* this */
            aload 2 /* oid */
            putfield sun.security.ec.ed.EdDSAParameters.oid:Lsun/security/util/ObjectIdentifier;
         2: .line 165
            aload 0 /* this */
            aload 1 /* name */
            putfield sun.security.ec.ed.EdDSAParameters.name:Ljava/lang/String;
         3: .line 166
            aload 0 /* this */
            aload 3 /* field */
            putfield sun.security.ec.ed.EdDSAParameters.field:Lsun/security/util/math/IntegerFieldModuloP;
         4: .line 167
            aload 0 /* this */
            aload 4 /* orderField */
            putfield sun.security.ec.ed.EdDSAParameters.orderField:Lsun/security/util/math/IntegerFieldModuloP;
         5: .line 168
            aload 0 /* this */
            aload 5 /* d */
            putfield sun.security.ec.ed.EdDSAParameters.d:Lsun/security/util/math/ImmutableIntegerModuloP;
         6: .line 169
            aload 0 /* this */
            aload 6 /* edOps */
            putfield sun.security.ec.ed.EdDSAParameters.edOperations:Lsun/security/ec/ed/EdECOperations;
         7: .line 170
            aload 0 /* this */
            aload 7 /* digester */
            putfield sun.security.ec.ed.EdDSAParameters.digester:Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;
         8: .line 171
            aload 0 /* this */
            iload 9 /* keyLength */
            putfield sun.security.ec.ed.EdDSAParameters.keyLength:I
         9: .line 172
            aload 0 /* this */
            iload 10 /* bits */
            putfield sun.security.ec.ed.EdDSAParameters.bits:I
        10: .line 173
            aload 0 /* this */
            iload 11 /* logCofactor */
            putfield sun.security.ec.ed.EdDSAParameters.logCofactor:I
        11: .line 174
            aload 0 /* this */
            aload 8 /* dom */
            putfield sun.security.ec.ed.EdDSAParameters.dom:Ljava/util/function/Function;
        12: .line 175
            return
        end local 11 // int logCofactor
        end local 10 // int bits
        end local 9 // int keyLength
        end local 8 // java.util.function.Function dom
        end local 7 // sun.security.ec.ed.EdDSAParameters$DigesterFactory digester
        end local 6 // sun.security.ec.ed.EdECOperations edOps
        end local 5 // sun.security.util.math.ImmutableIntegerModuloP d
        end local 4 // sun.security.util.math.IntegerFieldModuloP orderField
        end local 3 // sun.security.util.math.IntegerFieldModuloP field
        end local 2 // sun.security.util.ObjectIdentifier oid
        end local 1 // java.lang.String name
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lsun/security/ec/ed/EdDSAParameters;
            0   13     1         name  Ljava/lang/String;
            0   13     2          oid  Lsun/security/util/ObjectIdentifier;
            0   13     3        field  Lsun/security/util/math/IntegerFieldModuloP;
            0   13     4   orderField  Lsun/security/util/math/IntegerFieldModuloP;
            0   13     5            d  Lsun/security/util/math/ImmutableIntegerModuloP;
            0   13     6        edOps  Lsun/security/ec/ed/EdECOperations;
            0   13     7     digester  Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;
            0   13     8          dom  Ljava/util/function/Function<Ljava/security/spec/EdDSAParameterSpec;[B>;
            0   13     9    keyLength  I
            0   13    10         bits  I
            0   13    11  logCofactor  I
    Signature: (Ljava/lang/String;Lsun/security/util/ObjectIdentifier;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/IntegerFieldModuloP;Lsun/security/util/math/ImmutableIntegerModuloP;Lsun/security/ec/ed/EdECOperations;Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;Ljava/util/function/Function<Ljava/security/spec/EdDSAParameterSpec;[B>;III)V
    MethodParameters:
             Name  Flags
      name         
      oid          
      field        
      orderField   
      d            
      edOps        
      digester     
      dom          
      keyLength    
      bits         
      logCofactor  

  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.ed.EdDSAParameters this
         0: .line 178
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.name:Ljava/lang/String;
            areturn
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;

  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.ed.EdDSAParameters this
         0: .line 181
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.oid:Lsun/security/util/ObjectIdentifier;
            areturn
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;

  public sun.security.util.math.IntegerFieldModuloP getField();
    descriptor: ()Lsun/security/util/math/IntegerFieldModuloP;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.ed.EdDSAParameters this
         0: .line 184
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.field:Lsun/security/util/math/IntegerFieldModuloP;
            areturn
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;

  public sun.security.util.math.IntegerFieldModuloP getOrderField();
    descriptor: ()Lsun/security/util/math/IntegerFieldModuloP;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.ed.EdDSAParameters this
         0: .line 187
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.orderField:Lsun/security/util/math/IntegerFieldModuloP;
            areturn
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;

  public sun.security.util.math.ImmutableIntegerModuloP getD();
    descriptor: ()Lsun/security/util/math/ImmutableIntegerModuloP;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.ed.EdDSAParameters this
         0: .line 190
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.d:Lsun/security/util/math/ImmutableIntegerModuloP;
            areturn
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;

  public sun.security.ec.ed.EdECOperations getEdOperations();
    descriptor: ()Lsun/security/ec/ed/EdECOperations;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.ed.EdDSAParameters this
         0: .line 193
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.edOperations:Lsun/security/ec/ed/EdECOperations;
            areturn
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;

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

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

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

  public sun.security.ec.ed.EdDSAParameters$Digester createDigester();
    descriptor: ()Lsun/security/ec/ed/EdDSAParameters$Digester;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ec.ed.EdDSAParameters this
         0: .line 206
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.digester:Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;
            invokeinterface sun.security.ec.ed.EdDSAParameters$DigesterFactory.createDigester:()Lsun/security/ec/ed/EdDSAParameters$Digester;
            areturn
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;

  public sun.security.ec.ed.EdDSAParameters$Digester createDigester(int);
    descriptor: (I)Lsun/security/ec/ed/EdDSAParameters$Digester;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ec.ed.EdDSAParameters this
        start local 1 // int len
         0: .line 210
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.digester:Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;
            iload 1 /* len */
            invokeinterface sun.security.ec.ed.EdDSAParameters$DigesterFactory.createDigester:(I)Lsun/security/ec/ed/EdDSAParameters$Digester;
            areturn
        end local 1 // int len
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;
            0    1     1   len  I
    MethodParameters:
      Name  Flags
      len   

  public byte[] digest(byte[][]);
    descriptor: ([[B)[B
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ec.ed.EdDSAParameters this
        start local 1 // byte[][] data
         0: .line 214
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.digester:Lsun/security/ec/ed/EdDSAParameters$DigesterFactory;
            aload 1 /* data */
            invokeinterface sun.security.ec.ed.EdDSAParameters$DigesterFactory.digest:([[B)[B
            areturn
        end local 1 // byte[][] data
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ec/ed/EdDSAParameters;
            0    1     1  data  [[B
    MethodParameters:
      Name  Flags
      data  

  public byte[] dom(java.security.spec.EdDSAParameterSpec);
    descriptor: (Ljava/security/spec/EdDSAParameterSpec;)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ec.ed.EdDSAParameters this
        start local 1 // java.security.spec.EdDSAParameterSpec sigParams
         0: .line 218
            aload 0 /* this */
            getfield sun.security.ec.ed.EdDSAParameters.dom:Ljava/util/function/Function;
            aload 1 /* sigParams */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast byte[]
            areturn
        end local 1 // java.security.spec.EdDSAParameterSpec sigParams
        end local 0 // sun.security.ec.ed.EdDSAParameters this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lsun/security/ec/ed/EdDSAParameters;
            0    1     1  sigParams  Ljava/security/spec/EdDSAParameterSpec;
    MethodParameters:
           Name  Flags
      sigParams  

  static byte[] dom2(java.security.spec.EdDSAParameterSpec);
    descriptor: (Ljava/security/spec/EdDSAParameterSpec;)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.security.spec.EdDSAParameterSpec sigParams
         0: .line 227
            aload 0 /* sigParams */
            invokevirtual java.security.spec.EdDSAParameterSpec.isPrehash:()Z
            ifne 2
            aload 0 /* sigParams */
            invokevirtual java.security.spec.EdDSAParameterSpec.getContext:()Ljava/util/Optional;
            invokevirtual java.util.Optional.isPresent:()Z
            ifne 2
         1: .line 228
            iconst_0
            newarray 8
            areturn
         2: .line 230
      StackMap locals:
      StackMap stack:
            ldc "SigEd25519 no Ed25519 collisions"
            aload 0 /* sigParams */
            invokestatic sun.security.ec.ed.EdDSAParameters.domImpl:(Ljava/lang/String;Ljava/security/spec/EdDSAParameterSpec;)[B
            areturn
        end local 0 // java.security.spec.EdDSAParameterSpec sigParams
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0  sigParams  Ljava/security/spec/EdDSAParameterSpec;
    MethodParameters:
           Name  Flags
      sigParams  

  static byte[] dom4(java.security.spec.EdDSAParameterSpec);
    descriptor: (Ljava/security/spec/EdDSAParameterSpec;)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.security.spec.EdDSAParameterSpec sigParams
         0: .line 235
            ldc "SigEd448"
            aload 0 /* sigParams */
            invokestatic sun.security.ec.ed.EdDSAParameters.domImpl:(Ljava/lang/String;Ljava/security/spec/EdDSAParameterSpec;)[B
            areturn
        end local 0 // java.security.spec.EdDSAParameterSpec sigParams
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  sigParams  Ljava/security/spec/EdDSAParameterSpec;
    MethodParameters:
           Name  Flags
      sigParams  

  static byte[] domImpl(java.lang.String, java.security.spec.EdDSAParameterSpec);
    descriptor: (Ljava/lang/String;Ljava/security/spec/EdDSAParameterSpec;)[B
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // java.lang.String prefixStr
        start local 1 // java.security.spec.EdDSAParameterSpec sigParams
         0: .line 239
            aload 0 /* prefixStr */
            getstatic java.nio.charset.StandardCharsets.US_ASCII:Ljava/nio/charset/Charset;
            invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
            astore 2 /* prefix */
        start local 2 // byte[] prefix
         1: .line 240
            aload 1 /* sigParams */
            invokevirtual java.security.spec.EdDSAParameterSpec.getContext:()Ljava/util/Optional;
            iconst_0
            newarray 8
            invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast byte[]
            astore 3 /* context */
        start local 3 // byte[] context
         2: .line 241
            aload 2 /* prefix */
            arraylength
            iconst_2
            iadd
            aload 3 /* context */
            arraylength
            iadd
            istore 4 /* length */
        start local 4 // int length
         3: .line 242
            iload 4 /* length */
            newarray 8
            astore 5 /* result */
        start local 5 // byte[] result
         4: .line 243
            aload 2 /* prefix */
            iconst_0
            aload 5 /* result */
            iconst_0
            aload 2 /* prefix */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 244
            aload 1 /* sigParams */
            invokevirtual java.security.spec.EdDSAParameterSpec.isPrehash:()Z
            ifeq 6
            iconst_1
            goto 7
      StackMap locals: java.lang.String java.security.spec.EdDSAParameterSpec byte[] byte[] int byte[]
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: i2b
            istore 6 /* x */
        start local 6 // byte x
         8: .line 245
            aload 5 /* result */
            aload 2 /* prefix */
            arraylength
            iload 6 /* x */
            bastore
         9: .line 246
            aload 5 /* result */
            aload 2 /* prefix */
            arraylength
            iconst_1
            iadd
            aload 3 /* context */
            arraylength
            i2b
            bastore
        10: .line 247
            aload 3 /* context */
            iconst_0
            aload 5 /* result */
            aload 2 /* prefix */
            arraylength
            iconst_2
            iadd
        11: .line 248
            aload 3 /* context */
            arraylength
        12: .line 247
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 249
            aload 5 /* result */
            areturn
        end local 6 // byte x
        end local 5 // byte[] result
        end local 4 // int length
        end local 3 // byte[] context
        end local 2 // byte[] prefix
        end local 1 // java.security.spec.EdDSAParameterSpec sigParams
        end local 0 // java.lang.String prefixStr
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0  prefixStr  Ljava/lang/String;
            0   14     1  sigParams  Ljava/security/spec/EdDSAParameterSpec;
            1   14     2     prefix  [B
            2   14     3    context  [B
            3   14     4     length  I
            4   14     5     result  [B
            8   14     6          x  B
    MethodParameters:
           Name  Flags
      prefixStr  
      sigParams  

  public static <T extends java.lang.Throwable> sun.security.ec.ed.EdDSAParameters getBySize(java.util.function.Function<java.lang.String, T>, int) throws T;
    descriptor: (Ljava/util/function/Function;I)Lsun/security/ec/ed/EdDSAParameters;
    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 304
            getstatic sun.security.ec.ed.EdDSAParameters.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.ed.EdDSAParameters
            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/ed/EdDSAParameters;^TT;
    MethodParameters:
           Name  Flags
      exception  
      size       

  public static <T extends java.lang.Throwable> sun.security.ec.ed.EdDSAParameters 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/ed/EdDSAParameters;
    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 312
            getstatic sun.security.ec.ed.EdDSAParameters.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.ed.EdDSAParameters
            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/ed/EdDSAParameters;^TT;
    MethodParameters:
           Name  Flags
      exception  
      algId      

  public static <T extends java.lang.Throwable> sun.security.ec.ed.EdDSAParameters 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/ed/EdDSAParameters;
    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 320
            getstatic sun.security.ec.ed.EdDSAParameters.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.ed.EdDSAParameters
            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/ed/EdDSAParameters;^TT;
    MethodParameters:
           Name  Flags
      exception  
      params     
}
SourceFile: "EdDSAParameters.java"
NestMembers:
  sun.security.ec.ed.EdDSAParameters$Digester  sun.security.ec.ed.EdDSAParameters$DigesterFactory  sun.security.ec.ed.EdDSAParameters$MessageDigester  sun.security.ec.ed.EdDSAParameters$SHA512DigesterFactory  sun.security.ec.ed.EdDSAParameters$SHAKE256Digester  sun.security.ec.ed.EdDSAParameters$SHAKE256DigesterFactory
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Digester = sun.security.ec.ed.EdDSAParameters$Digester of sun.security.ec.ed.EdDSAParameters
  public abstract DigesterFactory = sun.security.ec.ed.EdDSAParameters$DigesterFactory of sun.security.ec.ed.EdDSAParameters
  private MessageDigester = sun.security.ec.ed.EdDSAParameters$MessageDigester of sun.security.ec.ed.EdDSAParameters
  private SHA512DigesterFactory = sun.security.ec.ed.EdDSAParameters$SHA512DigesterFactory of sun.security.ec.ed.EdDSAParameters
  private SHAKE256Digester = sun.security.ec.ed.EdDSAParameters$SHAKE256Digester of sun.security.ec.ed.EdDSAParameters
  private SHAKE256DigesterFactory = sun.security.ec.ed.EdDSAParameters$SHAKE256DigesterFactory of sun.security.ec.ed.EdDSAParameters