public abstract class org.jcp.xml.dsig.internal.dom.DOMSignatureMethod extends org.jcp.xml.dsig.internal.dom.DOMStructure implements javax.xml.crypto.dsig.SignatureMethod
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod
  super_class: org.jcp.xml.dsig.internal.dom.DOMStructure
{
  private static java.util.logging.Logger log;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static final java.lang.String RSA_SHA256;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"

  static final java.lang.String RSA_SHA384;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/04/xmldsig-more#rsa-sha384"

  static final java.lang.String RSA_SHA512;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/04/xmldsig-more#rsa-sha512"

  static final java.lang.String HMAC_SHA256;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/04/xmldsig-more#hmac-sha256"

  static final java.lang.String HMAC_SHA384;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/04/xmldsig-more#hmac-sha384"

  static final java.lang.String HMAC_SHA512;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/04/xmldsig-more#hmac-sha512"

  private javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec params;
    descriptor: Ljavax/xml/crypto/dsig/spec/SignatureMethodParameterSpec;
    flags: (0x0002) ACC_PRIVATE

  private java.security.Signature signature;
    descriptor: Ljava/security/Signature;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 55
            ldc "org.jcp.xml.dsig.internal.dom"
            invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
         1: .line 54
            putstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
         2: .line 69
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.security.spec.AlgorithmParameterSpec);
    descriptor: (Ljava/security/spec/AlgorithmParameterSpec;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
        start local 1 // java.security.spec.AlgorithmParameterSpec params
         0: .line 81
            aload 0 /* this */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMStructure.<init>:()V
         1: .line 83
            aload 1 /* params */
            ifnull 6
         2: .line 84
            aload 1 /* params */
            instanceof javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec
            ifne 6
         3: .line 85
            new java.security.InvalidAlgorithmParameterException
            dup
         4: .line 86
            ldc "params must be of type SignatureMethodParameterSpec"
         5: .line 85
            invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 88
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.spec.AlgorithmParameterSpec
      StackMap stack:
            aload 0 /* this */
            aload 1 /* params */
            checkcast javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.checkParams:(Ljavax/xml/crypto/dsig/spec/SignatureMethodParameterSpec;)V
         7: .line 89
            aload 0 /* this */
            aload 1 /* params */
            checkcast javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec
            putfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.params:Ljavax/xml/crypto/dsig/spec/SignatureMethodParameterSpec;
         8: .line 90
            return
        end local 1 // java.security.spec.AlgorithmParameterSpec params
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
            0    9     1  params  Ljava/security/spec/AlgorithmParameterSpec;
    Exceptions:
      throws java.security.InvalidAlgorithmParameterException
    MethodParameters:
        Name  Flags
      params  

  void <init>(Element);
    descriptor: (LElement;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
         0: .line 39
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe import org.w3c cannot be resolved\n\tThe import org.w3c cannot be resolved\n\tThe import org.w3c cannot be resolved\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tDocument cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tThe type DOMSignatureMethod.SHA1withRSA must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n\tThe type DOMSignatureMethod.SHA256withRSA must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n\tThe type DOMSignatureMethod.SHA384withRSA must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n\tThe type DOMSignatureMethod.SHA512withRSA must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n\tThe type DOMSignatureMethod.SHA1withDSA must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
        Name  Flags
      smElem  

  static javax.xml.crypto.dsig.SignatureMethod unmarshal(Element);
    descriptor: (LElement;)Ljavax/xml/crypto/dsig/SignatureMethod;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 111
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
        Name  Flags
      smElem  

  void checkParams(javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec);
    descriptor: (Ljavax/xml/crypto/dsig/spec/SignatureMethodParameterSpec;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
        start local 1 // javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec params
         0: .line 149
            aload 1 /* params */
            ifnull 5
         1: .line 150
            new java.security.InvalidAlgorithmParameterException
            dup
            new java.lang.StringBuilder
            dup
            ldc "no parameters should be specified for the "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 151
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getSignatureAlgorithm:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 152
            ldc " SignatureMethod algorithm"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 150
            invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 154
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec params
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
            0    6     1  params  Ljavax/xml/crypto/dsig/spec/SignatureMethodParameterSpec;
    Exceptions:
      throws java.security.InvalidAlgorithmParameterException
    MethodParameters:
        Name  Flags
      params  

  public final java.security.spec.AlgorithmParameterSpec getParameterSpec();
    descriptor: ()Ljava/security/spec/AlgorithmParameterSpec;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
         0: .line 157
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.params:Ljavax/xml/crypto/dsig/spec/SignatureMethodParameterSpec;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;

  javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec unmarshalParams(Element);
    descriptor: (LElement;)Ljavax/xml/crypto/dsig/spec/SignatureMethodParameterSpec;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
         0: .line 171
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
            Name  Flags
      paramsElem  

  public void marshal(Node, java.lang.String, javax.xml.crypto.dom.DOMCryptoContext);
    descriptor: (LNode;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
         0: .line 181
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tNode cannot be resolved to a type\n\tDocument cannot be resolved to a type\n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
          Name  Flags
      parent    
      dsPrefix  
      context   

  boolean verify(java.security.Key, org.jcp.xml.dsig.internal.dom.DOMSignedInfo, byte[], javax.xml.crypto.dsig.XMLValidateContext);
    descriptor: (Ljava/security/Key;Lorg/jcp/xml/dsig/internal/dom/DOMSignedInfo;[BLjavax/xml/crypto/dsig/XMLValidateContext;)Z
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
        start local 1 // java.security.Key key
        start local 2 // org.jcp.xml.dsig.internal.dom.DOMSignedInfo si
        start local 3 // byte[] sig
        start local 4 // javax.xml.crypto.dsig.XMLValidateContext context
         0: .line 217
            aload 1 /* key */
            ifnull 1
            aload 2 /* si */
            ifnull 1
            aload 3 /* sig */
            ifnonnull 2
         1: .line 218
      StackMap locals:
      StackMap stack:
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 221
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            instanceof java.security.PublicKey
            ifne 4
         3: .line 222
            new java.security.InvalidKeyException
            dup
            ldc "key must be PublicKey"
            invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 224
      StackMap locals:
      StackMap stack:
            aload 4 /* context */
            aload 1 /* key */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.checkKeySize:(Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Key;)V
         5: .line 225
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            ifnonnull 16
         6: .line 227
            aload 4 /* context */
         7: .line 228
            ldc "org.jcp.xml.dsig.internal.dom.SignatureProvider"
         8: .line 227
            invokeinterface javax.xml.crypto.dsig.XMLValidateContext.getProperty:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.security.Provider
            astore 5 /* p */
        start local 5 // java.security.Provider p
         9: .line 229
            aload 0 /* this */
            aload 5 /* p */
            ifnonnull 11
        10: .line 230
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getSignatureAlgorithm:()Ljava/lang/String;
            invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
            goto 12
        11: .line 231
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Key org.jcp.xml.dsig.internal.dom.DOMSignedInfo byte[] javax.xml.crypto.dsig.XMLValidateContext java.security.Provider
      StackMap stack: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getSignatureAlgorithm:()Ljava/lang/String;
            aload 5 /* p */
            invokestatic java.security.Signature.getInstance:(Ljava/lang/String;Ljava/security/Provider;)Ljava/security/Signature;
        12: .line 229
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Key org.jcp.xml.dsig.internal.dom.DOMSignedInfo byte[] javax.xml.crypto.dsig.XMLValidateContext java.security.Provider
      StackMap stack: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Signature
            putfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
        end local 5 // java.security.Provider p
        13: .line 232
            goto 16
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Key org.jcp.xml.dsig.internal.dom.DOMSignedInfo byte[] javax.xml.crypto.dsig.XMLValidateContext
      StackMap stack: java.security.NoSuchAlgorithmException
        14: astore 5 /* nsae */
        start local 5 // java.security.NoSuchAlgorithmException nsae
        15: .line 233
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            aload 5 /* nsae */
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.security.NoSuchAlgorithmException nsae
        16: .line 236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            aload 1 /* key */
            checkcast java.security.PublicKey
            invokevirtual java.security.Signature.initVerify:(Ljava/security/PublicKey;)V
        17: .line 237
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 20
        18: .line 238
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "Signature provider:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            invokevirtual java.security.Signature.getProvider:()Ljava/security/Provider;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
        19: .line 239
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "verifying with key: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
        20: .line 241
      StackMap locals:
      StackMap stack:
            aload 2 /* si */
            aload 4 /* context */
            new org.jcp.xml.dsig.internal.SignerOutputStream
            dup
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            invokespecial org.jcp.xml.dsig.internal.SignerOutputStream.<init>:(Ljava/security/Signature;)V
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignedInfo.canonicalize:(Ljavax/xml/crypto/XMLCryptoContext;Ljava/io/ByteArrayOutputStream;)V
        21: .line 243
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getAlgorithm:()Ljava/lang/String;
            ldc "http://www.w3.org/2000/09/xmldsig#dsa-sha1"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 26
        22: .line 245
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            aload 3 /* sig */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.convertXMLDSIGtoASN1:([B)[B
            invokevirtual java.security.Signature.verify:([B)Z
        23: ireturn
        24: .line 246
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 5 /* ioe */
        start local 5 // java.io.IOException ioe
        25: .line 247
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            aload 5 /* ioe */
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.io.IOException ioe
        26: .line 250
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            aload 3 /* sig */
            invokevirtual java.security.Signature.verify:([B)Z
            ireturn
        end local 4 // javax.xml.crypto.dsig.XMLValidateContext context
        end local 3 // byte[] sig
        end local 2 // org.jcp.xml.dsig.internal.dom.DOMSignedInfo si
        end local 1 // java.security.Key key
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   27     0     this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
            0   27     1      key  Ljava/security/Key;
            0   27     2       si  Lorg/jcp/xml/dsig/internal/dom/DOMSignedInfo;
            0   27     3      sig  [B
            0   27     4  context  Ljavax/xml/crypto/dsig/XMLValidateContext;
            9   13     5        p  Ljava/security/Provider;
           15   16     5     nsae  Ljava/security/NoSuchAlgorithmException;
           25   26     5      ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           6    13      14  Class java.security.NoSuchAlgorithmException
          22    23      24  Class java.io.IOException
    Exceptions:
      throws java.security.InvalidKeyException, java.security.SignatureException, javax.xml.crypto.dsig.XMLSignatureException
    MethodParameters:
         Name  Flags
      key      
      si       
      sig      
      context  

  private static void checkKeySize(javax.xml.crypto.XMLCryptoContext, java.security.Key);
    descriptor: (Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Key;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // javax.xml.crypto.XMLCryptoContext context
        start local 1 // java.security.Key key
         0: .line 264
            aload 0 /* context */
            invokestatic org.jcp.xml.dsig.internal.dom.Utils.secureValidation:(Ljavax/xml/crypto/XMLCryptoContext;)Z
            ifeq 14
         1: .line 265
            aload 1 /* key */
            invokestatic sun.security.util.KeyUtil.getKeySize:(Ljava/security/Key;)I
            istore 2 /* size */
        start local 2 // int size
         2: .line 266
            iload 2 /* size */
            iconst_m1
            if_icmpne 8
         3: .line 270
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 7
         4: .line 271
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "Size for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 272
            aload 1 /* key */
            invokeinterface java.security.Key.getAlgorithm:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " key cannot be determined"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 271
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
         7: .line 274
      StackMap locals: int
      StackMap stack:
            return
         8: .line 276
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            invokeinterface java.security.Key.getAlgorithm:()Ljava/lang/String;
            iload 2 /* size */
            invokestatic org.jcp.xml.dsig.internal.dom.Policy.restrictKey:(Ljava/lang/String;I)Z
            ifeq 14
         9: .line 277
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* key */
            invokeinterface java.security.Key.getAlgorithm:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 278
            ldc " keys less than "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 279
            aload 1 /* key */
            invokeinterface java.security.Key.getAlgorithm:()Ljava/lang/String;
            invokestatic org.jcp.xml.dsig.internal.dom.Policy.minKeySize:(Ljava/lang/String;)I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " bits are"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 280
            ldc " forbidden when secure validation is enabled"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 277
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // int size
        14: .line 283
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.security.Key key
        end local 0 // javax.xml.crypto.XMLCryptoContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0  context  Ljavax/xml/crypto/XMLCryptoContext;
            0   15     1      key  Ljava/security/Key;
            2   14     2     size  I
    Exceptions:
      throws javax.xml.crypto.dsig.XMLSignatureException
    MethodParameters:
         Name  Flags
      context  
      key      

  byte[] sign(java.security.Key, org.jcp.xml.dsig.internal.dom.DOMSignedInfo, javax.xml.crypto.dsig.XMLSignContext);
    descriptor: (Ljava/security/Key;Lorg/jcp/xml/dsig/internal/dom/DOMSignedInfo;Ljavax/xml/crypto/dsig/XMLSignContext;)[B
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
        start local 1 // java.security.Key key
        start local 2 // org.jcp.xml.dsig.internal.dom.DOMSignedInfo si
        start local 3 // javax.xml.crypto.dsig.XMLSignContext context
         0: .line 301
            aload 1 /* key */
            ifnull 1
            aload 2 /* si */
            ifnonnull 2
         1: .line 302
      StackMap locals:
      StackMap stack:
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 305
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            instanceof java.security.PrivateKey
            ifne 4
         3: .line 306
            new java.security.InvalidKeyException
            dup
            ldc "key must be PrivateKey"
            invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 308
      StackMap locals:
      StackMap stack:
            aload 3 /* context */
            aload 1 /* key */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.checkKeySize:(Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Key;)V
         5: .line 309
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            ifnonnull 16
         6: .line 311
            aload 3 /* context */
         7: .line 312
            ldc "org.jcp.xml.dsig.internal.dom.SignatureProvider"
         8: .line 311
            invokeinterface javax.xml.crypto.dsig.XMLSignContext.getProperty:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.security.Provider
            astore 4 /* p */
        start local 4 // java.security.Provider p
         9: .line 313
            aload 0 /* this */
            aload 4 /* p */
            ifnonnull 11
        10: .line 314
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getSignatureAlgorithm:()Ljava/lang/String;
            invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
            goto 12
        11: .line 315
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Key org.jcp.xml.dsig.internal.dom.DOMSignedInfo javax.xml.crypto.dsig.XMLSignContext java.security.Provider
      StackMap stack: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getSignatureAlgorithm:()Ljava/lang/String;
            aload 4 /* p */
            invokestatic java.security.Signature.getInstance:(Ljava/lang/String;Ljava/security/Provider;)Ljava/security/Signature;
        12: .line 313
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Key org.jcp.xml.dsig.internal.dom.DOMSignedInfo javax.xml.crypto.dsig.XMLSignContext java.security.Provider
      StackMap stack: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Signature
            putfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
        end local 4 // java.security.Provider p
        13: .line 316
            goto 16
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMSignatureMethod java.security.Key org.jcp.xml.dsig.internal.dom.DOMSignedInfo javax.xml.crypto.dsig.XMLSignContext
      StackMap stack: java.security.NoSuchAlgorithmException
        14: astore 4 /* nsae */
        start local 4 // java.security.NoSuchAlgorithmException nsae
        15: .line 317
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            aload 4 /* nsae */
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.security.NoSuchAlgorithmException nsae
        16: .line 320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            aload 1 /* key */
            checkcast java.security.PrivateKey
            invokevirtual java.security.Signature.initSign:(Ljava/security/PrivateKey;)V
        17: .line 321
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 20
        18: .line 322
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "Signature provider:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            invokevirtual java.security.Signature.getProvider:()Ljava/security/Provider;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
        19: .line 323
            getstatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.log:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "Signing with key: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
        20: .line 326
      StackMap locals:
      StackMap stack:
            aload 2 /* si */
            aload 3 /* context */
            new org.jcp.xml.dsig.internal.SignerOutputStream
            dup
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            invokespecial org.jcp.xml.dsig.internal.SignerOutputStream.<init>:(Ljava/security/Signature;)V
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignedInfo.canonicalize:(Ljavax/xml/crypto/XMLCryptoContext;Ljava/io/ByteArrayOutputStream;)V
        21: .line 329
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getAlgorithm:()Ljava/lang/String;
            ldc "http://www.w3.org/2000/09/xmldsig#dsa-sha1"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        22: .line 330
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            invokevirtual java.security.Signature.sign:()[B
            invokestatic org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.convertASN1toXMLDSIG:([B)[B
        23: areturn
        24: .line 332
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.signature:Ljava/security/Signature;
            invokevirtual java.security.Signature.sign:()[B
        25: areturn
        26: .line 334
      StackMap locals:
      StackMap stack: java.security.SignatureException
            astore 4 /* se */
        start local 4 // java.security.SignatureException se
        27: .line 335
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            aload 4 /* se */
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.security.SignatureException se
        28: .line 336
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 4 /* ioe */
        start local 4 // java.io.IOException ioe
        29: .line 337
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            aload 4 /* ioe */
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.io.IOException ioe
        end local 3 // javax.xml.crypto.dsig.XMLSignContext context
        end local 2 // org.jcp.xml.dsig.internal.dom.DOMSignedInfo si
        end local 1 // java.security.Key key
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   30     0     this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
            0   30     1      key  Ljava/security/Key;
            0   30     2       si  Lorg/jcp/xml/dsig/internal/dom/DOMSignedInfo;
            0   30     3  context  Ljavax/xml/crypto/dsig/XMLSignContext;
            9   13     4        p  Ljava/security/Provider;
           15   16     4     nsae  Ljava/security/NoSuchAlgorithmException;
           27   28     4       se  Ljava/security/SignatureException;
           29   30     4      ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           6    13      14  Class java.security.NoSuchAlgorithmException
          21    23      26  Class java.security.SignatureException
          24    25      26  Class java.security.SignatureException
          21    23      28  Class java.io.IOException
          24    25      28  Class java.io.IOException
    Exceptions:
      throws java.security.InvalidKeyException, javax.xml.crypto.dsig.XMLSignatureException
    MethodParameters:
         Name  Flags
      key      
      si       
      context  

  void marshalParams(Element, java.lang.String);
    descriptor: (LElement;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
         0: .line 351
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
              Name  Flags
      parent        
      paramsPrefix  

  abstract java.lang.String getSignatureAlgorithm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0400) ACC_ABSTRACT

  boolean paramsEqual(java.security.spec.AlgorithmParameterSpec);
    descriptor: (Ljava/security/spec/AlgorithmParameterSpec;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
        start local 1 // java.security.spec.AlgorithmParameterSpec spec
         0: .line 370
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getParameterSpec:()Ljava/security/spec/AlgorithmParameterSpec;
            aload 1 /* spec */
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.security.spec.AlgorithmParameterSpec spec
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
            0    2     1  spec  Ljava/security/spec/AlgorithmParameterSpec;
    MethodParameters:
      Name  Flags
      spec  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
        start local 1 // java.lang.Object o
         0: .line 374
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 375
            iconst_1
            ireturn
         2: .line 378
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof javax.xml.crypto.dsig.SignatureMethod
            ifne 4
         3: .line 379
            iconst_0
            ireturn
         4: .line 381
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast javax.xml.crypto.dsig.SignatureMethod
            astore 2 /* osm */
        start local 2 // javax.xml.crypto.dsig.SignatureMethod osm
         5: .line 383
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.getAlgorithm:()Ljava/lang/String;
            aload 2 /* osm */
            invokeinterface javax.xml.crypto.dsig.SignatureMethod.getAlgorithm:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         6: .line 384
            aload 0 /* this */
            aload 2 /* osm */
            invokeinterface javax.xml.crypto.dsig.SignatureMethod.getParameterSpec:()Ljava/security/spec/AlgorithmParameterSpec;
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignatureMethod.paramsEqual:(Ljava/security/spec/AlgorithmParameterSpec;)Z
            ifeq 8
         7: .line 383
            iconst_1
            ireturn
      StackMap locals: javax.xml.crypto.dsig.SignatureMethod
      StackMap stack:
         8: iconst_0
            ireturn
        end local 2 // javax.xml.crypto.dsig.SignatureMethod osm
        end local 1 // java.lang.Object o
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMSignatureMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMSignatureMethod;
            0    9     1     o  Ljava/lang/Object;
            5    9     2   osm  Ljavax/xml/crypto/dsig/SignatureMethod;
    MethodParameters:
      Name  Flags
      o     

  private static byte[] convertASN1toXMLDSIG(byte[]);
    descriptor: ([B)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // byte[] asn1Bytes
         0: .line 401
            aload 0 /* asn1Bytes */
            iconst_3
            baload
            istore 1 /* rLength */
        start local 1 // byte rLength
         1: .line 404
            iload 1 /* rLength */
            istore 2 /* i */
        start local 2 // int i
         2: goto 4
      StackMap locals: int int
      StackMap stack:
         3: iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            ifle 5
            aload 0 /* asn1Bytes */
            iconst_4
            iload 1 /* rLength */
            iadd
            iload 2 /* i */
            isub
            baload
            ifeq 3
         5: .line 406
      StackMap locals:
      StackMap stack:
            aload 0 /* asn1Bytes */
            iconst_5
            iload 1 /* rLength */
            iadd
            baload
            istore 3 /* sLength */
        start local 3 // byte sLength
         6: .line 409
            iload 3 /* sLength */
            istore 4 /* j */
        start local 4 // int j
         7: .line 410
            goto 9
      StackMap locals: int int
      StackMap stack:
         8: iinc 4 /* j */ -1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* j */
            ifle 10
            aload 0 /* asn1Bytes */
            bipush 6
            iload 1 /* rLength */
            iadd
            iload 3 /* sLength */
            iadd
            iload 4 /* j */
            isub
            baload
            ifeq 8
        10: .line 412
      StackMap locals:
      StackMap stack:
            aload 0 /* asn1Bytes */
            iconst_0
            baload
            bipush 48
            if_icmpne 13
            aload 0 /* asn1Bytes */
            iconst_1
            baload
            aload 0 /* asn1Bytes */
            arraylength
            iconst_2
            isub
            if_icmpne 13
        11: .line 413
            aload 0 /* asn1Bytes */
            iconst_2
            baload
            iconst_2
            if_icmpne 13
            iload 2 /* i */
            bipush 20
            if_icmpgt 13
        12: .line 414
            aload 0 /* asn1Bytes */
            iconst_4
            iload 1 /* rLength */
            iadd
            baload
            iconst_2
            if_icmpne 13
            iload 4 /* j */
            bipush 20
            if_icmple 14
        13: .line 415
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            ldc "Invalid ASN.1 format of DSA signature"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 417
      StackMap locals:
      StackMap stack:
            bipush 40
            newarray 8
            astore 5 /* xmldsigBytes */
        start local 5 // byte[] xmldsigBytes
        15: .line 419
            aload 0 /* asn1Bytes */
            iconst_4
            iload 1 /* rLength */
            iadd
            iload 2 /* i */
            isub
            aload 5 /* xmldsigBytes */
            bipush 20
            iload 2 /* i */
            isub
            iload 2 /* i */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        16: .line 420
            aload 0 /* asn1Bytes */
            bipush 6
            iload 1 /* rLength */
            iadd
            iload 3 /* sLength */
            iadd
            iload 4 /* j */
            isub
            aload 5 /* xmldsigBytes */
        17: .line 421
            bipush 40
            iload 4 /* j */
            isub
            iload 4 /* j */
        18: .line 420
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        19: .line 423
            aload 5 /* xmldsigBytes */
            areturn
        end local 5 // byte[] xmldsigBytes
        end local 4 // int j
        end local 3 // byte sLength
        end local 2 // int i
        end local 1 // byte rLength
        end local 0 // byte[] asn1Bytes
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0     asn1Bytes  [B
            1   20     1       rLength  B
            2   20     2             i  I
            6   20     3       sLength  B
            7   20     4             j  I
           15   20     5  xmldsigBytes  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      asn1Bytes  

  private static byte[] convertXMLDSIGtoASN1(byte[]);
    descriptor: ([B)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // byte[] xmldsigBytes
         0: .line 441
            aload 0 /* xmldsigBytes */
            arraylength
            bipush 40
            if_icmpeq 2
         1: .line 442
            new java.io.IOException
            dup
            ldc "Invalid XMLDSIG format of DSA signature"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 447
      StackMap locals:
      StackMap stack:
            bipush 20
            istore 1 /* i */
        start local 1 // int i
         3: goto 5
      StackMap locals: int
      StackMap stack:
         4: iinc 1 /* i */ -1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            ifle 6
            aload 0 /* xmldsigBytes */
            bipush 20
            iload 1 /* i */
            isub
            baload
            ifeq 4
         6: .line 449
      StackMap locals:
      StackMap stack:
            iload 1 /* i */
            istore 2 /* j */
        start local 2 // int j
         7: .line 451
            aload 0 /* xmldsigBytes */
            bipush 20
            iload 1 /* i */
            isub
            baload
            ifge 9
         8: .line 452
            iinc 2 /* j */ 1
         9: .line 457
      StackMap locals: int
      StackMap stack:
            bipush 20
            istore 3 /* k */
        start local 3 // int k
        10: goto 12
      StackMap locals: int
      StackMap stack:
        11: iinc 3 /* k */ -1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* k */
            ifle 13
            aload 0 /* xmldsigBytes */
            bipush 40
            iload 3 /* k */
            isub
            baload
            ifeq 11
        13: .line 459
      StackMap locals:
      StackMap stack:
            iload 3 /* k */
            istore 4 /* l */
        start local 4 // int l
        14: .line 461
            aload 0 /* xmldsigBytes */
            bipush 40
            iload 3 /* k */
            isub
            baload
            ifge 16
        15: .line 462
            iinc 4 /* l */ 1
        16: .line 465
      StackMap locals: int
      StackMap stack:
            bipush 6
            iload 2 /* j */
            iadd
            iload 4 /* l */
            iadd
            newarray 8
            astore 5 /* asn1Bytes */
        start local 5 // byte[] asn1Bytes
        17: .line 467
            aload 5 /* asn1Bytes */
            iconst_0
            bipush 48
            bastore
        18: .line 468
            aload 5 /* asn1Bytes */
            iconst_1
            iconst_4
            iload 2 /* j */
            iadd
            iload 4 /* l */
            iadd
            i2b
            bastore
        19: .line 469
            aload 5 /* asn1Bytes */
            iconst_2
            iconst_2
            bastore
        20: .line 470
            aload 5 /* asn1Bytes */
            iconst_3
            iload 2 /* j */
            i2b
            bastore
        21: .line 472
            aload 0 /* xmldsigBytes */
            bipush 20
            iload 1 /* i */
            isub
            aload 5 /* asn1Bytes */
            iconst_4
            iload 2 /* j */
            iadd
            iload 1 /* i */
            isub
            iload 1 /* i */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        22: .line 474
            aload 5 /* asn1Bytes */
            iconst_4
            iload 2 /* j */
            iadd
            iconst_2
            bastore
        23: .line 475
            aload 5 /* asn1Bytes */
            iconst_5
            iload 2 /* j */
            iadd
            iload 4 /* l */
            i2b
            bastore
        24: .line 477
            aload 0 /* xmldsigBytes */
            bipush 40
            iload 3 /* k */
            isub
            aload 5 /* asn1Bytes */
            bipush 6
            iload 2 /* j */
            iadd
            iload 4 /* l */
            iadd
            iload 3 /* k */
            isub
            iload 3 /* k */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        25: .line 479
            aload 5 /* asn1Bytes */
            areturn
        end local 5 // byte[] asn1Bytes
        end local 4 // int l
        end local 3 // int k
        end local 2 // int j
        end local 1 // int i
        end local 0 // byte[] xmldsigBytes
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0  xmldsigBytes  [B
            3   26     1             i  I
            7   26     2             j  I
           10   26     3             k  I
           14   26     4             l  I
           17   26     5     asn1Bytes  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      xmldsigBytes  
}
SourceFile: "DOMSignatureMethod.java"
NestMembers:
  org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA1withDSA  org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA1withRSA  org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA256withRSA  org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA384withRSA  org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA512withRSA
InnerClasses:
  final SHA1withDSA = org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA1withDSA of org.jcp.xml.dsig.internal.dom.DOMSignatureMethod
  final SHA1withRSA = org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA1withRSA of org.jcp.xml.dsig.internal.dom.DOMSignatureMethod
  final SHA256withRSA = org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA256withRSA of org.jcp.xml.dsig.internal.dom.DOMSignatureMethod
  final SHA384withRSA = org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA384withRSA of org.jcp.xml.dsig.internal.dom.DOMSignatureMethod
  final SHA512withRSA = org.jcp.xml.dsig.internal.dom.DOMSignatureMethod$SHA512withRSA of org.jcp.xml.dsig.internal.dom.DOMSignatureMethod