public class org.bouncycastle.asn1.eac.ECDSAPublicKey extends org.bouncycastle.asn1.eac.PublicKeyDataObject
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bouncycastle.asn1.eac.ECDSAPublicKey
  super_class: org.bouncycastle.asn1.eac.PublicKeyDataObject
{
  private org.bouncycastle.asn1.ASN1ObjectIdentifier usage;
    descriptor: Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
    flags: (0x0002) ACC_PRIVATE

  private java.math.BigInteger primeModulusP;
    descriptor: Ljava/math/BigInteger;
    flags: (0x0002) ACC_PRIVATE

  private java.math.BigInteger firstCoefA;
    descriptor: Ljava/math/BigInteger;
    flags: (0x0002) ACC_PRIVATE

  private java.math.BigInteger secondCoefB;
    descriptor: Ljava/math/BigInteger;
    flags: (0x0002) ACC_PRIVATE

  private byte[] basePointG;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private java.math.BigInteger orderOfBasePointR;
    descriptor: Ljava/math/BigInteger;
    flags: (0x0002) ACC_PRIVATE

  private byte[] publicPointY;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private java.math.BigInteger cofactorF;
    descriptor: Ljava/math/BigInteger;
    flags: (0x0002) ACC_PRIVATE

  private int options;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

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

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

  void <init>(org.bouncycastle.asn1.ASN1Sequence);
    descriptor: (Lorg/bouncycastle/asn1/ASN1Sequence;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // org.bouncycastle.asn1.ASN1Sequence seq
         0: .line 51
            aload 0 /* this */
            invokespecial org.bouncycastle.asn1.eac.PublicKeyDataObject.<init>:()V
         1: .line 54
            aload 1 /* seq */
            invokevirtual org.bouncycastle.asn1.ASN1Sequence.getObjects:()Ljava/util/Enumeration;
            astore 2 /* en */
        start local 2 // java.util.Enumeration en
         2: .line 56
            aload 0 /* this */
            aload 2 /* en */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            invokestatic org.bouncycastle.asn1.ASN1ObjectIdentifier.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.usage:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
         3: .line 58
            aload 0 /* this */
            iconst_0
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         4: .line 59
            goto 27
         5: .line 61
      StackMap locals: org.bouncycastle.asn1.eac.ECDSAPublicKey org.bouncycastle.asn1.ASN1Sequence java.util.Enumeration
      StackMap stack:
            aload 2 /* en */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            astore 3 /* obj */
        start local 3 // java.lang.Object obj
         6: .line 63
            aload 3 /* obj */
            instanceof org.bouncycastle.asn1.ASN1TaggedObject
            ifeq 26
         7: .line 65
            aload 3 /* obj */
            checkcast org.bouncycastle.asn1.ASN1TaggedObject
            astore 4 /* to */
        start local 4 // org.bouncycastle.asn1.ASN1TaggedObject to
         8: .line 66
            aload 4 /* to */
            invokevirtual org.bouncycastle.asn1.ASN1TaggedObject.getTagNo:()I
            tableswitch { // 1 - 7
                    1: 9
                    2: 11
                    3: 13
                    4: 15
                    5: 17
                    6: 19
                    7: 21
              default: 23
          }
         9: .line 69
      StackMap locals: java.lang.Object org.bouncycastle.asn1.ASN1TaggedObject
      StackMap stack:
            aload 0 /* this */
            aload 4 /* to */
            invokestatic org.bouncycastle.asn1.eac.UnsignedInteger.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/eac/UnsignedInteger;
            invokevirtual org.bouncycastle.asn1.eac.UnsignedInteger.getValue:()Ljava/math/BigInteger;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setPrimeModulusP:(Ljava/math/BigInteger;)V
        10: .line 70
            goto 27
        11: .line 72
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* to */
            invokestatic org.bouncycastle.asn1.eac.UnsignedInteger.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/eac/UnsignedInteger;
            invokevirtual org.bouncycastle.asn1.eac.UnsignedInteger.getValue:()Ljava/math/BigInteger;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setFirstCoefA:(Ljava/math/BigInteger;)V
        12: .line 73
            goto 27
        13: .line 75
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* to */
            invokestatic org.bouncycastle.asn1.eac.UnsignedInteger.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/eac/UnsignedInteger;
            invokevirtual org.bouncycastle.asn1.eac.UnsignedInteger.getValue:()Ljava/math/BigInteger;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setSecondCoefB:(Ljava/math/BigInteger;)V
        14: .line 76
            goto 27
        15: .line 78
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* to */
            iconst_0
            invokestatic org.bouncycastle.asn1.ASN1OctetString.getInstance:(Lorg/bouncycastle/asn1/ASN1TaggedObject;Z)Lorg/bouncycastle/asn1/ASN1OctetString;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setBasePointG:(Lorg/bouncycastle/asn1/ASN1OctetString;)V
        16: .line 79
            goto 27
        17: .line 81
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* to */
            invokestatic org.bouncycastle.asn1.eac.UnsignedInteger.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/eac/UnsignedInteger;
            invokevirtual org.bouncycastle.asn1.eac.UnsignedInteger.getValue:()Ljava/math/BigInteger;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setOrderOfBasePointR:(Ljava/math/BigInteger;)V
        18: .line 82
            goto 27
        19: .line 84
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* to */
            iconst_0
            invokestatic org.bouncycastle.asn1.ASN1OctetString.getInstance:(Lorg/bouncycastle/asn1/ASN1TaggedObject;Z)Lorg/bouncycastle/asn1/ASN1OctetString;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setPublicPointY:(Lorg/bouncycastle/asn1/ASN1OctetString;)V
        20: .line 85
            goto 27
        21: .line 87
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* to */
            invokestatic org.bouncycastle.asn1.eac.UnsignedInteger.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/eac/UnsignedInteger;
            invokevirtual org.bouncycastle.asn1.eac.UnsignedInteger.getValue:()Ljava/math/BigInteger;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setCofactorF:(Ljava/math/BigInteger;)V
        22: .line 88
            goto 27
        23: .line 90
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
        24: .line 91
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Object Identifier!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // org.bouncycastle.asn1.ASN1TaggedObject to
        25: .line 93
      StackMap locals:
      StackMap stack:
            goto 27
        26: .line 96
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Object Identifier!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.Object obj
        27: .line 59
      StackMap locals:
      StackMap stack:
            aload 2 /* en */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 5
        28: .line 99
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 32
            if_icmpeq 30
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 127
            if_icmpeq 30
        29: .line 101
            new java.lang.IllegalArgumentException
            dup
            ldc "All options must be either present or absent!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        30: .line 103
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.util.Enumeration en
        end local 1 // org.bouncycastle.asn1.ASN1Sequence seq
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   31     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0   31     1   seq  Lorg/bouncycastle/asn1/ASN1Sequence;
            2   31     2    en  Ljava/util/Enumeration;
            6   27     3   obj  Ljava/lang/Object;
            8   25     4    to  Lorg/bouncycastle/asn1/ASN1TaggedObject;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      seq   

  public void <init>(org.bouncycastle.asn1.ASN1ObjectIdentifier, byte[]);
    descriptor: (Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // org.bouncycastle.asn1.ASN1ObjectIdentifier usage
        start local 2 // byte[] ppY
         0: .line 105
            aload 0 /* this */
            invokespecial org.bouncycastle.asn1.eac.PublicKeyDataObject.<init>:()V
         1: .line 108
            aload 0 /* this */
            aload 1 /* usage */
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.usage:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
         2: .line 109
            aload 0 /* this */
            new org.bouncycastle.asn1.DEROctetString
            dup
            aload 2 /* ppY */
            invokespecial org.bouncycastle.asn1.DEROctetString.<init>:([B)V
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setPublicPointY:(Lorg/bouncycastle/asn1/ASN1OctetString;)V
         3: .line 110
            return
        end local 2 // byte[] ppY
        end local 1 // org.bouncycastle.asn1.ASN1ObjectIdentifier usage
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    4     1  usage  Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
            0    4     2    ppY  [B
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
       Name  Flags
      usage  
      ppY    

  public void <init>(org.bouncycastle.asn1.ASN1ObjectIdentifier, java.math.BigInteger, java.math.BigInteger, java.math.BigInteger, byte[], java.math.BigInteger, byte[], int);
    descriptor: (Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;Ljava/math/BigInteger;Ljava/math/BigInteger;Ljava/math/BigInteger;[BLjava/math/BigInteger;[BI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=9
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // org.bouncycastle.asn1.ASN1ObjectIdentifier usage
        start local 2 // java.math.BigInteger p
        start local 3 // java.math.BigInteger a
        start local 4 // java.math.BigInteger b
        start local 5 // byte[] basePoint
        start local 6 // java.math.BigInteger order
        start local 7 // byte[] publicPoint
        start local 8 // int cofactor
         0: .line 112
            aload 0 /* this */
            invokespecial org.bouncycastle.asn1.eac.PublicKeyDataObject.<init>:()V
         1: .line 114
            aload 0 /* this */
            aload 1 /* usage */
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.usage:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
         2: .line 115
            aload 0 /* this */
            aload 2 /* p */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setPrimeModulusP:(Ljava/math/BigInteger;)V
         3: .line 116
            aload 0 /* this */
            aload 3 /* a */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setFirstCoefA:(Ljava/math/BigInteger;)V
         4: .line 117
            aload 0 /* this */
            aload 4 /* b */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setSecondCoefB:(Ljava/math/BigInteger;)V
         5: .line 118
            aload 0 /* this */
            new org.bouncycastle.asn1.DEROctetString
            dup
            aload 5 /* basePoint */
            invokespecial org.bouncycastle.asn1.DEROctetString.<init>:([B)V
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setBasePointG:(Lorg/bouncycastle/asn1/ASN1OctetString;)V
         6: .line 119
            aload 0 /* this */
            aload 6 /* order */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setOrderOfBasePointR:(Ljava/math/BigInteger;)V
         7: .line 120
            aload 0 /* this */
            new org.bouncycastle.asn1.DEROctetString
            dup
            aload 7 /* publicPoint */
            invokespecial org.bouncycastle.asn1.DEROctetString.<init>:([B)V
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setPublicPointY:(Lorg/bouncycastle/asn1/ASN1OctetString;)V
         8: .line 121
            aload 0 /* this */
            iload 8 /* cofactor */
            i2l
            invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.setCofactorF:(Ljava/math/BigInteger;)V
         9: .line 122
            return
        end local 8 // int cofactor
        end local 7 // byte[] publicPoint
        end local 6 // java.math.BigInteger order
        end local 5 // byte[] basePoint
        end local 4 // java.math.BigInteger b
        end local 3 // java.math.BigInteger a
        end local 2 // java.math.BigInteger p
        end local 1 // org.bouncycastle.asn1.ASN1ObjectIdentifier usage
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0   10     1        usage  Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
            0   10     2            p  Ljava/math/BigInteger;
            0   10     3            a  Ljava/math/BigInteger;
            0   10     4            b  Ljava/math/BigInteger;
            0   10     5    basePoint  [B
            0   10     6        order  Ljava/math/BigInteger;
            0   10     7  publicPoint  [B
            0   10     8     cofactor  I
    MethodParameters:
             Name  Flags
      usage        
      p            
      a            
      b            
      basePoint    
      order        
      publicPoint  
      cofactor     

  public org.bouncycastle.asn1.ASN1ObjectIdentifier getUsage();
    descriptor: ()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 126
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.usage:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  public byte[] getBasePointG();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 131
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 8
            iand
            ifeq 2
         1: .line 133
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.basePointG:[B
            invokestatic org.bouncycastle.util.Arrays.clone:([B)[B
            areturn
         2: .line 137
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  private void setBasePointG(org.bouncycastle.asn1.ASN1OctetString);
    descriptor: (Lorg/bouncycastle/asn1/ASN1OctetString;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // org.bouncycastle.asn1.ASN1OctetString basePointG
         0: .line 144
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 8
            iand
            ifne 4
         1: .line 146
            aload 0 /* this */
            dup
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 8
            ior
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         2: .line 147
            aload 0 /* this */
            aload 1 /* basePointG */
            invokevirtual org.bouncycastle.asn1.ASN1OctetString.getOctets:()[B
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.basePointG:[B
         3: .line 148
            goto 5
         4: .line 151
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Base Point G already set"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 153
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.bouncycastle.asn1.ASN1OctetString basePointG
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    6     1  basePointG  Lorg/bouncycastle/asn1/ASN1OctetString;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
            Name  Flags
      basePointG  

  public java.math.BigInteger getCofactorF();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 157
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 64
            iand
            ifeq 2
         1: .line 159
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.cofactorF:Ljava/math/BigInteger;
            areturn
         2: .line 163
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  private void setCofactorF(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // java.math.BigInteger cofactorF
         0: .line 170
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 64
            iand
            ifne 4
         1: .line 172
            aload 0 /* this */
            dup
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 64
            ior
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         2: .line 173
            aload 0 /* this */
            aload 1 /* cofactorF */
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.cofactorF:Ljava/math/BigInteger;
         3: .line 174
            goto 5
         4: .line 177
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Cofactor F already set"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 179
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.math.BigInteger cofactorF
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    6     1  cofactorF  Ljava/math/BigInteger;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
           Name  Flags
      cofactorF  

  public java.math.BigInteger getFirstCoefA();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 183
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_2
            iand
            ifeq 2
         1: .line 185
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.firstCoefA:Ljava/math/BigInteger;
            areturn
         2: .line 189
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  private void setFirstCoefA(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // java.math.BigInteger firstCoefA
         0: .line 196
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_2
            iand
            ifne 4
         1: .line 198
            aload 0 /* this */
            dup
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_2
            ior
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         2: .line 199
            aload 0 /* this */
            aload 1 /* firstCoefA */
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.firstCoefA:Ljava/math/BigInteger;
         3: .line 200
            goto 5
         4: .line 203
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "First Coef A already set"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 205
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.math.BigInteger firstCoefA
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    6     1  firstCoefA  Ljava/math/BigInteger;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
            Name  Flags
      firstCoefA  

  public java.math.BigInteger getOrderOfBasePointR();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 209
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 16
            iand
            ifeq 2
         1: .line 211
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.orderOfBasePointR:Ljava/math/BigInteger;
            areturn
         2: .line 215
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  private void setOrderOfBasePointR(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // java.math.BigInteger orderOfBasePointR
         0: .line 222
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 16
            iand
            ifne 4
         1: .line 224
            aload 0 /* this */
            dup
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 16
            ior
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         2: .line 225
            aload 0 /* this */
            aload 1 /* orderOfBasePointR */
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.orderOfBasePointR:Ljava/math/BigInteger;
         3: .line 226
            goto 5
         4: .line 229
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Order of base point R already set"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 231
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.math.BigInteger orderOfBasePointR
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    6     1  orderOfBasePointR  Ljava/math/BigInteger;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
                   Name  Flags
      orderOfBasePointR  

  public java.math.BigInteger getPrimeModulusP();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 235
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_1
            iand
            ifeq 2
         1: .line 237
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.primeModulusP:Ljava/math/BigInteger;
            areturn
         2: .line 241
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  private void setPrimeModulusP(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // java.math.BigInteger primeModulusP
         0: .line 247
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_1
            iand
            ifne 4
         1: .line 249
            aload 0 /* this */
            dup
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_1
            ior
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         2: .line 250
            aload 0 /* this */
            aload 1 /* primeModulusP */
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.primeModulusP:Ljava/math/BigInteger;
         3: .line 251
            goto 5
         4: .line 254
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Prime Modulus P already set"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 256
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.math.BigInteger primeModulusP
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    6     1  primeModulusP  Ljava/math/BigInteger;
    MethodParameters:
               Name  Flags
      primeModulusP  

  public byte[] getPublicPointY();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 260
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 32
            iand
            ifeq 2
         1: .line 262
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.publicPointY:[B
            invokestatic org.bouncycastle.util.Arrays.clone:([B)[B
            areturn
         2: .line 266
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  private void setPublicPointY(org.bouncycastle.asn1.ASN1OctetString);
    descriptor: (Lorg/bouncycastle/asn1/ASN1OctetString;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // org.bouncycastle.asn1.ASN1OctetString publicPointY
         0: .line 273
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 32
            iand
            ifne 4
         1: .line 275
            aload 0 /* this */
            dup
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            bipush 32
            ior
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         2: .line 276
            aload 0 /* this */
            aload 1 /* publicPointY */
            invokevirtual org.bouncycastle.asn1.ASN1OctetString.getOctets:()[B
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.publicPointY:[B
         3: .line 277
            goto 5
         4: .line 280
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Public Point Y already set"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 282
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.bouncycastle.asn1.ASN1OctetString publicPointY
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    6     1  publicPointY  Lorg/bouncycastle/asn1/ASN1OctetString;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
              Name  Flags
      publicPointY  

  public java.math.BigInteger getSecondCoefB();
    descriptor: ()Ljava/math/BigInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 286
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_4
            iand
            ifeq 2
         1: .line 288
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.secondCoefB:Ljava/math/BigInteger;
            areturn
         2: .line 292
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  private void setSecondCoefB(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // java.math.BigInteger secondCoefB
         0: .line 299
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_4
            iand
            ifne 4
         1: .line 301
            aload 0 /* this */
            dup
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
            iconst_4
            ior
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.options:I
         2: .line 302
            aload 0 /* this */
            aload 1 /* secondCoefB */
            putfield org.bouncycastle.asn1.eac.ECDSAPublicKey.secondCoefB:Ljava/math/BigInteger;
         3: .line 303
            goto 5
         4: .line 306
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Second Coef B already set"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 308
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.math.BigInteger secondCoefB
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0    6     1  secondCoefB  Ljava/math/BigInteger;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
             Name  Flags
      secondCoefB  

  public boolean hasParameters();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 312
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.primeModulusP:Ljava/math/BigInteger;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;

  public org.bouncycastle.asn1.ASN1EncodableVector getASN1EncodableVector(org.bouncycastle.asn1.ASN1ObjectIdentifier, boolean);
    descriptor: (Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;Z)Lorg/bouncycastle/asn1/ASN1EncodableVector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
        start local 1 // org.bouncycastle.asn1.ASN1ObjectIdentifier oid
        start local 2 // boolean publicPointOnly
         0: .line 317
            new org.bouncycastle.asn1.ASN1EncodableVector
            dup
            invokespecial org.bouncycastle.asn1.ASN1EncodableVector.<init>:()V
            astore 3 /* v */
        start local 3 // org.bouncycastle.asn1.ASN1EncodableVector v
         1: .line 318
            aload 3 /* v */
            aload 1 /* oid */
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         2: .line 320
            iload 2 /* publicPointOnly */
            ifne 8
         3: .line 322
            aload 3 /* v */
            new org.bouncycastle.asn1.eac.UnsignedInteger
            dup
            iconst_1
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getPrimeModulusP:()Ljava/math/BigInteger;
            invokespecial org.bouncycastle.asn1.eac.UnsignedInteger.<init>:(ILjava/math/BigInteger;)V
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         4: .line 323
            aload 3 /* v */
            new org.bouncycastle.asn1.eac.UnsignedInteger
            dup
            iconst_2
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getFirstCoefA:()Ljava/math/BigInteger;
            invokespecial org.bouncycastle.asn1.eac.UnsignedInteger.<init>:(ILjava/math/BigInteger;)V
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         5: .line 324
            aload 3 /* v */
            new org.bouncycastle.asn1.eac.UnsignedInteger
            dup
            iconst_3
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getSecondCoefB:()Ljava/math/BigInteger;
            invokespecial org.bouncycastle.asn1.eac.UnsignedInteger.<init>:(ILjava/math/BigInteger;)V
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         6: .line 325
            aload 3 /* v */
            new org.bouncycastle.asn1.DERTaggedObject
            dup
            iconst_0
            iconst_4
            new org.bouncycastle.asn1.DEROctetString
            dup
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getBasePointG:()[B
            invokespecial org.bouncycastle.asn1.DEROctetString.<init>:([B)V
            invokespecial org.bouncycastle.asn1.DERTaggedObject.<init>:(ZILorg/bouncycastle/asn1/ASN1Encodable;)V
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         7: .line 326
            aload 3 /* v */
            new org.bouncycastle.asn1.eac.UnsignedInteger
            dup
            iconst_5
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getOrderOfBasePointR:()Ljava/math/BigInteger;
            invokespecial org.bouncycastle.asn1.eac.UnsignedInteger.<init>:(ILjava/math/BigInteger;)V
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         8: .line 328
      StackMap locals: org.bouncycastle.asn1.ASN1EncodableVector
      StackMap stack:
            aload 3 /* v */
            new org.bouncycastle.asn1.DERTaggedObject
            dup
            iconst_0
            bipush 6
            new org.bouncycastle.asn1.DEROctetString
            dup
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getPublicPointY:()[B
            invokespecial org.bouncycastle.asn1.DEROctetString.<init>:([B)V
            invokespecial org.bouncycastle.asn1.DERTaggedObject.<init>:(ZILorg/bouncycastle/asn1/ASN1Encodable;)V
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         9: .line 329
            iload 2 /* publicPointOnly */
            ifne 11
        10: .line 331
            aload 3 /* v */
            new org.bouncycastle.asn1.eac.UnsignedInteger
            dup
            bipush 7
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getCofactorF:()Ljava/math/BigInteger;
            invokespecial org.bouncycastle.asn1.eac.UnsignedInteger.<init>:(ILjava/math/BigInteger;)V
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
        11: .line 334
      StackMap locals:
      StackMap stack:
            aload 3 /* v */
            areturn
        end local 3 // org.bouncycastle.asn1.ASN1EncodableVector v
        end local 2 // boolean publicPointOnly
        end local 1 // org.bouncycastle.asn1.ASN1ObjectIdentifier oid
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   12     0             this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
            0   12     1              oid  Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
            0   12     2  publicPointOnly  Z
            1   12     3                v  Lorg/bouncycastle/asn1/ASN1EncodableVector;
    MethodParameters:
                 Name  Flags
      oid              
      publicPointOnly  

  public org.bouncycastle.asn1.ASN1Primitive toASN1Primitive();
    descriptor: ()Lorg/bouncycastle/asn1/ASN1Primitive;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
         0: .line 339
            new org.bouncycastle.asn1.DERSequence
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield org.bouncycastle.asn1.eac.ECDSAPublicKey.usage:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.hasParameters:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals: org.bouncycastle.asn1.eac.ECDSAPublicKey
      StackMap stack: new 0 new 0 org.bouncycastle.asn1.eac.ECDSAPublicKey org.bouncycastle.asn1.ASN1ObjectIdentifier
         1: iconst_1
      StackMap locals: org.bouncycastle.asn1.eac.ECDSAPublicKey
      StackMap stack: new 0 new 0 org.bouncycastle.asn1.eac.ECDSAPublicKey org.bouncycastle.asn1.ASN1ObjectIdentifier int
         2: invokevirtual org.bouncycastle.asn1.eac.ECDSAPublicKey.getASN1EncodableVector:(Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;Z)Lorg/bouncycastle/asn1/ASN1EncodableVector;
            invokespecial org.bouncycastle.asn1.DERSequence.<init>:(Lorg/bouncycastle/asn1/ASN1EncodableVector;)V
            areturn
        end local 0 // org.bouncycastle.asn1.eac.ECDSAPublicKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/eac/ECDSAPublicKey;
}
SourceFile: "ECDSAPublicKey.java"