public final class org.jcp.xml.dsig.internal.dom.DOMXMLSignature extends org.jcp.xml.dsig.internal.dom.DOMStructure implements javax.xml.crypto.dsig.XMLSignature
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.jcp.xml.dsig.internal.dom.DOMXMLSignature
  super_class: org.jcp.xml.dsig.internal.dom.DOMStructure
{
  private static final com.sun.org.slf4j.internal.Logger LOG;
    descriptor: Lcom/sun/org/slf4j/internal/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.lang.String id;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private javax.xml.crypto.dsig.XMLSignature$SignatureValue sv;
    descriptor: Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
    flags: (0x0002) ACC_PRIVATE

  private javax.xml.crypto.dsig.keyinfo.KeyInfo ki;
    descriptor: Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<javax.xml.crypto.dsig.XMLObject> objects;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljavax/xml/crypto/dsig/XMLObject;>;

  private javax.xml.crypto.dsig.SignedInfo si;
    descriptor: Ljavax/xml/crypto/dsig/SignedInfo;
    flags: (0x0002) ACC_PRIVATE

  private org.w3c.dom.Document ownerDoc;
    descriptor: Lorg/w3c/dom/Document;
    flags: (0x0002) ACC_PRIVATE

  private org.w3c.dom.Element localSigElem;
    descriptor: Lorg/w3c/dom/Element;
    flags: (0x0002) ACC_PRIVATE

  private org.w3c.dom.Element sigElem;
    descriptor: Lorg/w3c/dom/Element;
    flags: (0x0002) ACC_PRIVATE

  private boolean validationStatus;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean validated;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private javax.xml.crypto.KeySelectorResult ksr;
    descriptor: Ljavax/xml/crypto/KeySelectorResult;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Map<java.lang.String, javax.xml.crypto.XMLStructure> signatureIdMap;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljavax/xml/crypto/XMLStructure;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 69
            ldc Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            invokestatic com.sun.org.slf4j.internal.LoggerFactory.getLogger:(Ljava/lang/Class;)Lcom/sun/org/slf4j/internal/Logger;
         1: .line 68
            putstatic org.jcp.xml.dsig.internal.dom.DOMXMLSignature.LOG:Lcom/sun/org/slf4j/internal/Logger;
         2: .line 84
            invokestatic com.sun.org.apache.xml.internal.security.Init.init:()V
         3: .line 85
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(javax.xml.crypto.dsig.SignedInfo, javax.xml.crypto.dsig.keyinfo.KeyInfo, java.util.List<? extends javax.xml.crypto.dsig.XMLObject>, java.lang.String, java.lang.String);
    descriptor: (Ljavax/xml/crypto/dsig/SignedInfo;Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;Ljava/util/List;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=6
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // javax.xml.crypto.dsig.SignedInfo si
        start local 2 // javax.xml.crypto.dsig.keyinfo.KeyInfo ki
        start local 3 // java.util.List objs
        start local 4 // java.lang.String id
        start local 5 // java.lang.String signatureValueId
         0: .line 100
            aload 0 /* this */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMStructure.<init>:()V
         1: .line 75
            aload 0 /* this */
            aconst_null
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ownerDoc:Lorg/w3c/dom/Document;
         2: .line 76
            aload 0 /* this */
            aconst_null
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.localSigElem:Lorg/w3c/dom/Element;
         3: .line 77
            aload 0 /* this */
            aconst_null
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
         4: .line 79
            aload 0 /* this */
            iconst_0
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validated:Z
         5: .line 104
            aload 1 /* si */
            ifnonnull 7
         6: .line 105
            new java.lang.NullPointerException
            dup
            ldc "signedInfo cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 107
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.SignedInfo javax.xml.crypto.dsig.keyinfo.KeyInfo java.util.List java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* si */
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
         8: .line 108
            aload 0 /* this */
            aload 4 /* id */
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
         9: .line 109
            aload 0 /* this */
            new org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue
            dup
            aload 0 /* this */
            aload 5 /* signatureValueId */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue.<init>:(Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;Ljava/lang/String;)V
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
        10: .line 110
            aload 3 /* objs */
            ifnonnull 13
        11: .line 111
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
        12: .line 112
            goto 25
        13: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        14: .line 114
            new java.util.ArrayList
            dup
            aload 3 /* objs */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
        15: .line 113
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
        16: .line 115
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        17: aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 7 /* size */
        start local 7 // int size
        18: goto 24
        19: .line 116
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            instanceof javax.xml.crypto.dsig.XMLObject
            ifne 23
        20: .line 117
            new java.lang.ClassCastException
            dup
        21: .line 118
            new java.lang.StringBuilder
            dup
            ldc "objs["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 6 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "] is not an XMLObject"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 117
            invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 115
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 6 /* i */
            iload 7 /* size */
            if_icmplt 19
        end local 7 // int size
        end local 6 // int i
        25: .line 122
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* ki */
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
        26: .line 123
            return
        end local 5 // java.lang.String signatureValueId
        end local 4 // java.lang.String id
        end local 3 // java.util.List objs
        end local 2 // javax.xml.crypto.dsig.keyinfo.KeyInfo ki
        end local 1 // javax.xml.crypto.dsig.SignedInfo si
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   27     0              this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0   27     1                si  Ljavax/xml/crypto/dsig/SignedInfo;
            0   27     2                ki  Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            0   27     3              objs  Ljava/util/List<+Ljavax/xml/crypto/dsig/XMLObject;>;
            0   27     4                id  Ljava/lang/String;
            0   27     5  signatureValueId  Ljava/lang/String;
           17   25     6                 i  I
           18   25     7              size  I
    Signature: (Ljavax/xml/crypto/dsig/SignedInfo;Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;Ljava/util/List<+Ljavax/xml/crypto/dsig/XMLObject;>;Ljava/lang/String;Ljava/lang/String;)V
    MethodParameters:
                  Name  Flags
      si                
      ki                
      objs              
      id                
      signatureValueId  

  public void <init>(org.w3c.dom.Element, javax.xml.crypto.XMLCryptoContext, java.security.Provider);
    descriptor: (Lorg/w3c/dom/Element;Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Provider;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // org.w3c.dom.Element sigElem
        start local 2 // javax.xml.crypto.XMLCryptoContext context
        start local 3 // java.security.Provider provider
         0: .line 131
            aload 0 /* this */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMStructure.<init>:()V
         1: .line 75
            aload 0 /* this */
            aconst_null
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ownerDoc:Lorg/w3c/dom/Document;
         2: .line 76
            aload 0 /* this */
            aconst_null
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.localSigElem:Lorg/w3c/dom/Element;
         3: .line 77
            aload 0 /* this */
            aconst_null
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
         4: .line 79
            aload 0 /* this */
            iconst_0
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validated:Z
         5: .line 135
            aload 0 /* this */
            aload 1 /* sigElem */
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.localSigElem:Lorg/w3c/dom/Element;
         6: .line 136
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.localSigElem:Lorg/w3c/dom/Element;
            invokeinterface org.w3c.dom.Element.getOwnerDocument:()Lorg/w3c/dom/Document;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ownerDoc:Lorg/w3c/dom/Document;
         7: .line 139
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.localSigElem:Lorg/w3c/dom/Element;
            ldc "Id"
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getAttributeValue:(Lorg/w3c/dom/Element;Ljava/lang/String;)Ljava/lang/String;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
         8: .line 141
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.localSigElem:Lorg/w3c/dom/Element;
         9: .line 142
            ldc "SignedInfo"
        10: .line 143
            ldc "http://www.w3.org/2000/09/xmldsig#"
        11: .line 141
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getFirstChildElement:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
            astore 4 /* siElem */
        start local 4 // org.w3c.dom.Element siElem
        12: .line 144
            aload 0 /* this */
            new org.jcp.xml.dsig.internal.dom.DOMSignedInfo
            dup
            aload 4 /* siElem */
            aload 2 /* context */
            aload 3 /* provider */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMSignedInfo.<init>:(Lorg/w3c/dom/Element;Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Provider;)V
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
        13: .line 147
            aload 4 /* siElem */
        14: .line 148
            ldc "SignatureValue"
        15: .line 149
            ldc "http://www.w3.org/2000/09/xmldsig#"
        16: .line 147
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
            astore 5 /* sigValElem */
        start local 5 // org.w3c.dom.Element sigValElem
        17: .line 150
            aload 0 /* this */
            new org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue
            dup
            aload 0 /* this */
            aload 5 /* sigValElem */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue.<init>:(Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;Lorg/w3c/dom/Element;)V
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
        18: .line 153
            aload 5 /* sigValElem */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Element;
            astore 6 /* nextSibling */
        start local 6 // org.w3c.dom.Element nextSibling
        19: .line 154
            aload 6 /* nextSibling */
            ifnull 23
            aload 6 /* nextSibling */
            invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
            ldc "KeyInfo"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        20: .line 155
            ldc "http://www.w3.org/2000/09/xmldsig#"
            aload 6 /* nextSibling */
            invokeinterface org.w3c.dom.Element.getNamespaceURI:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        21: .line 156
            aload 0 /* this */
            new org.jcp.xml.dsig.internal.dom.DOMKeyInfo
            dup
            aload 6 /* nextSibling */
            aload 2 /* context */
            aload 3 /* provider */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyInfo.<init>:(Lorg/w3c/dom/Element;Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Provider;)V
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
        22: .line 157
            aload 6 /* nextSibling */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Element;
            astore 6 /* nextSibling */
        23: .line 161
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature org.w3c.dom.Element javax.xml.crypto.XMLCryptoContext java.security.Provider org.w3c.dom.Element org.w3c.dom.Element org.w3c.dom.Element
      StackMap stack:
            aload 6 /* nextSibling */
            ifnonnull 26
        24: .line 162
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
        25: .line 163
            goto 40
        26: .line 164
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* tempObjects */
        start local 7 // java.util.List tempObjects
        27: .line 165
            goto 38
        28: .line 166
      StackMap locals: java.util.List
      StackMap stack:
            aload 6 /* nextSibling */
            invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        29: .line 167
            aload 6 /* nextSibling */
            invokeinterface org.w3c.dom.Element.getNamespaceURI:()Ljava/lang/String;
            astore 9 /* namespace */
        start local 9 // java.lang.String namespace
        30: .line 168
            ldc "Object"
            aload 8 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 31
            ldc "http://www.w3.org/2000/09/xmldsig#"
            aload 9 /* namespace */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 34
        31: .line 169
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            new javax.xml.crypto.MarshalException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid element name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* namespace */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        32: .line 170
            ldc ", expected KeyInfo or Object"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        33: .line 169
            invokespecial javax.xml.crypto.MarshalException.<init>:(Ljava/lang/String;)V
            athrow
        34: .line 172
      StackMap locals:
      StackMap stack:
            aload 7 /* tempObjects */
            new org.jcp.xml.dsig.internal.dom.DOMXMLObject
            dup
            aload 6 /* nextSibling */
        35: .line 173
            aload 2 /* context */
            aload 3 /* provider */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMXMLObject.<init>:(Lorg/w3c/dom/Element;Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Provider;)V
        36: .line 172
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        37: .line 174
            aload 6 /* nextSibling */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Element;
            astore 6 /* nextSibling */
        end local 9 // java.lang.String namespace
        end local 8 // java.lang.String name
        38: .line 165
      StackMap locals:
      StackMap stack:
            aload 6 /* nextSibling */
            ifnonnull 28
        39: .line 176
            aload 0 /* this */
            aload 7 /* tempObjects */
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
        end local 7 // java.util.List tempObjects
        40: .line 178
      StackMap locals:
      StackMap stack:
            return
        end local 6 // org.w3c.dom.Element nextSibling
        end local 5 // org.w3c.dom.Element sigValElem
        end local 4 // org.w3c.dom.Element siElem
        end local 3 // java.security.Provider provider
        end local 2 // javax.xml.crypto.XMLCryptoContext context
        end local 1 // org.w3c.dom.Element sigElem
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   41     0         this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0   41     1      sigElem  Lorg/w3c/dom/Element;
            0   41     2      context  Ljavax/xml/crypto/XMLCryptoContext;
            0   41     3     provider  Ljava/security/Provider;
           12   41     4       siElem  Lorg/w3c/dom/Element;
           17   41     5   sigValElem  Lorg/w3c/dom/Element;
           19   41     6  nextSibling  Lorg/w3c/dom/Element;
           27   40     7  tempObjects  Ljava/util/List<Ljavax/xml/crypto/dsig/XMLObject;>;
           29   38     8         name  Ljava/lang/String;
           30   38     9    namespace  Ljava/lang/String;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
          Name  Flags
      sigElem   
      context   
      provider  

  public java.lang.String getId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
         0: .line 181
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;

  public javax.xml.crypto.dsig.keyinfo.KeyInfo getKeyInfo();
    descriptor: ()Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
         0: .line 185
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;

  public javax.xml.crypto.dsig.SignedInfo getSignedInfo();
    descriptor: ()Ljavax/xml/crypto/dsig/SignedInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
         0: .line 189
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;

  public java.util.List<javax.xml.crypto.dsig.XMLObject> getObjects();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
         0: .line 193
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
    Signature: ()Ljava/util/List<Ljavax/xml/crypto/dsig/XMLObject;>;

  public javax.xml.crypto.dsig.XMLSignature$SignatureValue getSignatureValue();
    descriptor: ()Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
         0: .line 197
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;

  public javax.xml.crypto.KeySelectorResult getKeySelectorResult();
    descriptor: ()Ljavax/xml/crypto/KeySelectorResult;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
         0: .line 201
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ksr:Ljavax/xml/crypto/KeySelectorResult;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;

  public void marshal(org.w3c.dom.Node, java.lang.String, javax.xml.crypto.dom.DOMCryptoContext);
    descriptor: (Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // org.w3c.dom.Node parent
        start local 2 // java.lang.String dsPrefix
        start local 3 // javax.xml.crypto.dom.DOMCryptoContext context
         0: .line 208
            aload 0 /* this */
            aload 1 /* parent */
            aconst_null
            aload 2 /* dsPrefix */
            aload 3 /* context */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLSignature.marshal:(Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
         1: .line 209
            return
        end local 3 // javax.xml.crypto.dom.DOMCryptoContext context
        end local 2 // java.lang.String dsPrefix
        end local 1 // org.w3c.dom.Node parent
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0    2     1    parent  Lorg/w3c/dom/Node;
            0    2     2  dsPrefix  Ljava/lang/String;
            0    2     3   context  Ljavax/xml/crypto/dom/DOMCryptoContext;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
          Name  Flags
      parent    
      dsPrefix  
      context   

  public void marshal(org.w3c.dom.Node, org.w3c.dom.Node, java.lang.String, javax.xml.crypto.dom.DOMCryptoContext);
    descriptor: (Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // org.w3c.dom.Node parent
        start local 2 // org.w3c.dom.Node nextSibling
        start local 3 // java.lang.String dsPrefix
        start local 4 // javax.xml.crypto.dom.DOMCryptoContext context
         0: .line 215
            aload 0 /* this */
            aload 1 /* parent */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getOwnerDocument:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Document;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ownerDoc:Lorg/w3c/dom/Document;
         1: .line 216
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ownerDoc:Lorg/w3c/dom/Document;
            ldc "Signature"
         2: .line 217
            ldc "http://www.w3.org/2000/09/xmldsig#"
            aload 3 /* dsPrefix */
         3: .line 216
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.createElement:(Lorg/w3c/dom/Document;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
         4: .line 220
            aload 3 /* dsPrefix */
            ifnull 5
            aload 3 /* dsPrefix */
            invokevirtual java.lang.String.length:()I
            ifne 9
         5: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            ldc "http://www.w3.org/2000/xmlns/"
            ldc "xmlns"
         6: .line 222
            ldc "http://www.w3.org/2000/09/xmldsig#"
         7: .line 221
            invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         8: .line 223
            goto 12
         9: .line 224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            ldc "http://www.w3.org/2000/xmlns/"
            new java.lang.StringBuilder
            dup
            ldc "xmlns:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 225
            aload 3 /* dsPrefix */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc "http://www.w3.org/2000/09/xmldsig#"
        11: .line 224
            invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        12: .line 229
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            checkcast org.jcp.xml.dsig.internal.dom.DOMSignedInfo
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            aload 3 /* dsPrefix */
            aload 4 /* context */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMSignedInfo.marshal:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
        13: .line 232
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
            checkcast org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            aload 3 /* dsPrefix */
            aload 4 /* context */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue.marshal:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
        14: .line 235
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            ifnull 16
        15: .line 236
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            checkcast org.jcp.xml.dsig.internal.dom.DOMKeyInfo
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            aconst_null
            aload 3 /* dsPrefix */
            aload 4 /* context */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMKeyInfo.marshal:(Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
        16: .line 240
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        17: aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 6 /* size */
        start local 6 // int size
        18: goto 21
        19: .line 241
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.jcp.xml.dsig.internal.dom.DOMXMLObject
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            aload 3 /* dsPrefix */
            aload 4 /* context */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLObject.marshal:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
        20: .line 240
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 5 /* i */
            iload 6 /* size */
            if_icmplt 19
        end local 6 // int size
        end local 5 // int i
        22: .line 245
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            ldc "Id"
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.setAttributeID:(Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/lang/String;)V
        23: .line 247
            aload 1 /* parent */
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            aload 2 /* nextSibling */
            invokeinterface org.w3c.dom.Node.insertBefore:(Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        24: .line 248
            return
        end local 4 // javax.xml.crypto.dom.DOMCryptoContext context
        end local 3 // java.lang.String dsPrefix
        end local 2 // org.w3c.dom.Node nextSibling
        end local 1 // org.w3c.dom.Node parent
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   25     0         this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0   25     1       parent  Lorg/w3c/dom/Node;
            0   25     2  nextSibling  Lorg/w3c/dom/Node;
            0   25     3     dsPrefix  Ljava/lang/String;
            0   25     4      context  Ljavax/xml/crypto/dom/DOMCryptoContext;
           17   22     5            i  I
           18   22     6         size  I
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
             Name  Flags
      parent       
      nextSibling  
      dsPrefix     
      context      

  public boolean validate(javax.xml.crypto.dsig.XMLValidateContext);
    descriptor: (Ljavax/xml/crypto/dsig/XMLValidateContext;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=19, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // javax.xml.crypto.dsig.XMLValidateContext vc
         0: .line 254
            aload 1 /* vc */
            ifnonnull 2
         1: .line 255
            new java.lang.NullPointerException
            dup
            ldc "validateContext is null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 258
      StackMap locals:
      StackMap stack:
            aload 1 /* vc */
            instanceof javax.xml.crypto.dsig.dom.DOMValidateContext
            ifne 6
         3: .line 259
            new java.lang.ClassCastException
            dup
         4: .line 260
            ldc "validateContext must be of type DOMValidateContext"
         5: .line 259
            invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validated:Z
            ifeq 8
         7: .line 264
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validationStatus:Z
            ireturn
         8: .line 268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
            aload 1 /* vc */
            invokeinterface javax.xml.crypto.dsig.XMLSignature$SignatureValue.validate:(Ljavax/xml/crypto/dsig/XMLValidateContext;)Z
            istore 2 /* sigValidity */
        start local 2 // boolean sigValidity
         9: .line 269
            iload 2 /* sigValidity */
            ifne 13
        10: .line 270
            aload 0 /* this */
            iconst_0
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validationStatus:Z
        11: .line 271
            aload 0 /* this */
            iconst_1
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validated:Z
        12: .line 272
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validationStatus:Z
            ireturn
        13: .line 277
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            invokeinterface javax.xml.crypto.dsig.SignedInfo.getReferences:()Ljava/util/List;
            astore 3 /* refs */
        start local 3 // java.util.List refs
        14: .line 278
            iconst_1
            istore 4 /* validateRefs */
        start local 4 // boolean validateRefs
        15: .line 279
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        16: aload 3 /* refs */
            invokeinterface java.util.List.size:()I
            istore 6 /* size */
        start local 6 // int size
        17: goto 23
        18: .line 280
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLValidateContext int java.util.List int int int
      StackMap stack:
            aload 3 /* refs */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.Reference
            astore 7 /* ref */
        start local 7 // javax.xml.crypto.dsig.Reference ref
        19: .line 281
            aload 7 /* ref */
            aload 1 /* vc */
            invokeinterface javax.xml.crypto.dsig.Reference.validate:(Ljavax/xml/crypto/dsig/XMLValidateContext;)Z
            istore 8 /* refValid */
        start local 8 // boolean refValid
        20: .line 282
            getstatic org.jcp.xml.dsig.internal.dom.DOMXMLSignature.LOG:Lcom/sun/org/slf4j/internal/Logger;
            ldc "Reference [{}] is valid: {}"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 7 /* ref */
            invokeinterface javax.xml.crypto.dsig.Reference.getURI:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            iload 8 /* refValid */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            invokevirtual com.sun.org.slf4j.internal.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        21: .line 283
            iload 4 /* validateRefs */
            iload 8 /* refValid */
            iand
            istore 4 /* validateRefs */
        end local 8 // boolean refValid
        end local 7 // javax.xml.crypto.dsig.Reference ref
        22: .line 279
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 4 /* validateRefs */
            ifeq 24
            iload 5 /* i */
            iload 6 /* size */
            if_icmplt 18
        end local 6 // int size
        end local 5 // int i
        24: .line 285
      StackMap locals:
      StackMap stack:
            iload 4 /* validateRefs */
            ifne 29
        25: .line 286
            getstatic org.jcp.xml.dsig.internal.dom.DOMXMLSignature.LOG:Lcom/sun/org/slf4j/internal/Logger;
            ldc "Couldn't validate the References"
            invokevirtual com.sun.org.slf4j.internal.Logger.debug:(Ljava/lang/String;)V
        26: .line 287
            aload 0 /* this */
            iconst_0
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validationStatus:Z
        27: .line 288
            aload 0 /* this */
            iconst_1
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validated:Z
        28: .line 289
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validationStatus:Z
            ireturn
        29: .line 293
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* validateMans */
        start local 5 // boolean validateMans
        30: .line 294
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            aload 1 /* vc */
        31: .line 295
            ldc "org.jcp.xml.dsig.validateManifests"
        32: .line 294
            invokeinterface javax.xml.crypto.dsig.XMLValidateContext.getProperty:(Ljava/lang/String;)Ljava/lang/Object;
            invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
        33: .line 295
            ifeq 62
        34: .line 297
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        35: aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 7 /* size */
        start local 7 // int size
        36: goto 61
        37: .line 298
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            iload 6 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.XMLObject
            astore 8 /* xo */
        start local 8 // javax.xml.crypto.dsig.XMLObject xo
        38: .line 300
            aload 8 /* xo */
            invokeinterface javax.xml.crypto.dsig.XMLObject.getContent:()Ljava/util/List;
            astore 9 /* content */
        start local 9 // java.util.List content
        39: .line 301
            aload 9 /* content */
            invokeinterface java.util.List.size:()I
            istore 10 /* csize */
        start local 10 // int csize
        40: .line 302
            iconst_0
            istore 11 /* j */
        start local 11 // int j
        41: goto 59
        42: .line 303
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLValidateContext int java.util.List int int int int javax.xml.crypto.dsig.XMLObject java.util.List int int
      StackMap stack:
            aload 9 /* content */
            iload 11 /* j */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.xml.crypto.XMLStructure
            astore 12 /* xs */
        start local 12 // javax.xml.crypto.XMLStructure xs
        43: .line 304
            aload 12 /* xs */
            instanceof javax.xml.crypto.dsig.Manifest
            ifeq 58
        44: .line 305
            getstatic org.jcp.xml.dsig.internal.dom.DOMXMLSignature.LOG:Lcom/sun/org/slf4j/internal/Logger;
            ldc "validating manifest"
            invokevirtual com.sun.org.slf4j.internal.Logger.debug:(Ljava/lang/String;)V
        45: .line 306
            aload 12 /* xs */
            checkcast javax.xml.crypto.dsig.Manifest
            astore 13 /* man */
        start local 13 // javax.xml.crypto.dsig.Manifest man
        46: .line 308
            aload 13 /* man */
            invokeinterface javax.xml.crypto.dsig.Manifest.getReferences:()Ljava/util/List;
            astore 14 /* manRefs */
        start local 14 // java.util.List manRefs
        47: .line 309
            aload 14 /* manRefs */
            invokeinterface java.util.List.size:()I
            istore 15 /* rsize */
        start local 15 // int rsize
        48: .line 310
            iconst_0
            istore 16 /* k */
        start local 16 // int k
        49: goto 57
        50: .line 311
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLValidateContext int java.util.List int int int int javax.xml.crypto.dsig.XMLObject java.util.List int int javax.xml.crypto.XMLStructure javax.xml.crypto.dsig.Manifest java.util.List int int
      StackMap stack:
            aload 14 /* manRefs */
            iload 16 /* k */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.Reference
            astore 17 /* ref */
        start local 17 // javax.xml.crypto.dsig.Reference ref
        51: .line 312
            aload 17 /* ref */
            aload 1 /* vc */
            invokeinterface javax.xml.crypto.dsig.Reference.validate:(Ljavax/xml/crypto/dsig/XMLValidateContext;)Z
            istore 18 /* refValid */
        start local 18 // boolean refValid
        52: .line 313
            getstatic org.jcp.xml.dsig.internal.dom.DOMXMLSignature.LOG:Lcom/sun/org/slf4j/internal/Logger;
        53: .line 314
            ldc "Manifest ref [{}] is valid: {}"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 17 /* ref */
            invokeinterface javax.xml.crypto.dsig.Reference.getURI:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            iload 18 /* refValid */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
        54: .line 313
            invokevirtual com.sun.org.slf4j.internal.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        55: .line 316
            iload 5 /* validateMans */
            iload 18 /* refValid */
            iand
            istore 5 /* validateMans */
        end local 18 // boolean refValid
        end local 17 // javax.xml.crypto.dsig.Reference ref
        56: .line 310
            iinc 16 /* k */ 1
      StackMap locals:
      StackMap stack:
        57: iload 5 /* validateMans */
            ifeq 58
            iload 16 /* k */
            iload 15 /* rsize */
            if_icmplt 50
        end local 16 // int k
        end local 15 // int rsize
        end local 14 // java.util.List manRefs
        end local 13 // javax.xml.crypto.dsig.Manifest man
        end local 12 // javax.xml.crypto.XMLStructure xs
        58: .line 302
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLValidateContext int java.util.List int int int int javax.xml.crypto.dsig.XMLObject java.util.List int int
      StackMap stack:
            iinc 11 /* j */ 1
      StackMap locals:
      StackMap stack:
        59: iload 5 /* validateMans */
            ifeq 60
            iload 11 /* j */
            iload 10 /* csize */
            if_icmplt 42
        end local 11 // int j
        end local 10 // int csize
        end local 9 // java.util.List content
        end local 8 // javax.xml.crypto.dsig.XMLObject xo
        60: .line 297
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLValidateContext int java.util.List int int int int
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        61: iload 5 /* validateMans */
            ifeq 62
            iload 6 /* i */
            iload 7 /* size */
            if_icmplt 37
        end local 7 // int size
        end local 6 // int i
        62: .line 323
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 5 /* validateMans */
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validationStatus:Z
        63: .line 324
            aload 0 /* this */
            iconst_1
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validated:Z
        64: .line 325
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.validationStatus:Z
            ireturn
        end local 5 // boolean validateMans
        end local 4 // boolean validateRefs
        end local 3 // java.util.List refs
        end local 2 // boolean sigValidity
        end local 1 // javax.xml.crypto.dsig.XMLValidateContext vc
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   65     0          this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0   65     1            vc  Ljavax/xml/crypto/dsig/XMLValidateContext;
            9   65     2   sigValidity  Z
           14   65     3          refs  Ljava/util/List<Ljavax/xml/crypto/dsig/Reference;>;
           15   65     4  validateRefs  Z
           16   24     5             i  I
           17   24     6          size  I
           19   22     7           ref  Ljavax/xml/crypto/dsig/Reference;
           20   22     8      refValid  Z
           30   65     5  validateMans  Z
           35   62     6             i  I
           36   62     7          size  I
           38   60     8            xo  Ljavax/xml/crypto/dsig/XMLObject;
           39   60     9       content  Ljava/util/List<Ljavax/xml/crypto/XMLStructure;>;
           40   60    10         csize  I
           41   60    11             j  I
           43   58    12            xs  Ljavax/xml/crypto/XMLStructure;
           46   58    13           man  Ljavax/xml/crypto/dsig/Manifest;
           47   58    14       manRefs  Ljava/util/List<Ljavax/xml/crypto/dsig/Reference;>;
           48   58    15         rsize  I
           49   58    16             k  I
           51   56    17           ref  Ljavax/xml/crypto/dsig/Reference;
           52   56    18      refValid  Z
    Exceptions:
      throws javax.xml.crypto.dsig.XMLSignatureException
    MethodParameters:
      Name  Flags
      vc    

  public void sign(javax.xml.crypto.dsig.XMLSignContext);
    descriptor: (Ljavax/xml/crypto/dsig/XMLSignContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=14, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // javax.xml.crypto.dsig.XMLSignContext signContext
         0: .line 332
            aload 1 /* signContext */
            ifnonnull 2
         1: .line 333
            new java.lang.NullPointerException
            dup
            ldc "signContext cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 335
      StackMap locals:
      StackMap stack:
            aload 1 /* signContext */
            checkcast javax.xml.crypto.dsig.dom.DOMSignContext
            astore 2 /* context */
        start local 2 // javax.xml.crypto.dsig.dom.DOMSignContext context
         3: .line 336
            aload 0 /* this */
            aload 2 /* context */
            invokevirtual javax.xml.crypto.dsig.dom.DOMSignContext.getParent:()Lorg/w3c/dom/Node;
            aload 2 /* context */
            invokevirtual javax.xml.crypto.dsig.dom.DOMSignContext.getNextSibling:()Lorg/w3c/dom/Node;
         4: .line 337
            aload 2 /* context */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getSignaturePrefix:(Ljavax/xml/crypto/XMLCryptoContext;)Ljava/lang/String;
            aload 2 /* context */
         5: .line 336
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLSignature.marshal:(Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
         6: .line 340
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* allReferences */
        start local 3 // java.util.List allReferences
         7: .line 344
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
         8: .line 345
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
            aload 0 /* this */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 346
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            invokeinterface javax.xml.crypto.dsig.SignedInfo.getId:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 348
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            invokeinterface javax.xml.crypto.dsig.SignedInfo.getReferences:()Ljava/util/List;
            astore 4 /* refs */
        start local 4 // java.util.List refs
        11: .line 349
            aload 4 /* refs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 14
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        12: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.Reference
            astore 5 /* ref */
        start local 5 // javax.xml.crypto.dsig.Reference ref
        13: .line 350
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 5 /* ref */
            invokeinterface javax.xml.crypto.dsig.Reference.getId:()Ljava/lang/String;
            aload 5 /* ref */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // javax.xml.crypto.dsig.Reference ref
        14: .line 349
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        15: .line 352
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 31
      StackMap locals:
      StackMap stack:
        16: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.XMLObject
            astore 5 /* obj */
        start local 5 // javax.xml.crypto.dsig.XMLObject obj
        17: .line 353
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 5 /* obj */
            invokeinterface javax.xml.crypto.dsig.XMLObject.getId:()Ljava/lang/String;
            aload 5 /* obj */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 355
            aload 5 /* obj */
            invokeinterface javax.xml.crypto.dsig.XMLObject.getContent:()Ljava/util/List;
            astore 7 /* content */
        start local 7 // java.util.List content
        19: .line 356
            aload 7 /* content */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 30
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List javax.xml.crypto.dsig.XMLObject java.util.Iterator java.util.List top java.util.Iterator
      StackMap stack:
        20: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.xml.crypto.XMLStructure
            astore 8 /* xs */
        start local 8 // javax.xml.crypto.XMLStructure xs
        21: .line 357
            aload 8 /* xs */
            instanceof javax.xml.crypto.dsig.Manifest
            ifeq 30
        22: .line 358
            aload 8 /* xs */
            checkcast javax.xml.crypto.dsig.Manifest
            astore 10 /* man */
        start local 10 // javax.xml.crypto.dsig.Manifest man
        23: .line 359
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 10 /* man */
            invokeinterface javax.xml.crypto.dsig.Manifest.getId:()Ljava/lang/String;
            aload 10 /* man */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 361
            aload 10 /* man */
            invokeinterface javax.xml.crypto.dsig.Manifest.getReferences:()Ljava/util/List;
            astore 11 /* manRefs */
        start local 11 // java.util.List manRefs
        25: .line 362
            aload 11 /* manRefs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 29
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List javax.xml.crypto.dsig.XMLObject java.util.Iterator java.util.List javax.xml.crypto.XMLStructure java.util.Iterator javax.xml.crypto.dsig.Manifest java.util.List top java.util.Iterator
      StackMap stack:
        26: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.Reference
            astore 12 /* ref */
        start local 12 // javax.xml.crypto.dsig.Reference ref
        27: .line 363
            aload 3 /* allReferences */
            aload 12 /* ref */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        28: .line 364
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 12 /* ref */
            invokeinterface javax.xml.crypto.dsig.Reference.getId:()Ljava/lang/String;
            aload 12 /* ref */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 12 // javax.xml.crypto.dsig.Reference ref
        29: .line 362
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 26
        end local 11 // java.util.List manRefs
        end local 10 // javax.xml.crypto.dsig.Manifest man
        end local 8 // javax.xml.crypto.XMLStructure xs
        30: .line 356
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List javax.xml.crypto.dsig.XMLObject java.util.Iterator java.util.List top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        end local 7 // java.util.List content
        end local 5 // javax.xml.crypto.dsig.XMLObject obj
        31: .line 352
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        32: .line 371
            aload 3 /* allReferences */
            aload 4 /* refs */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        33: .line 374
            aload 3 /* allReferences */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 36
      StackMap locals:
      StackMap stack:
        34: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.Reference
            astore 5 /* ref */
        start local 5 // javax.xml.crypto.dsig.Reference ref
        35: .line 375
            aload 0 /* this */
            aload 5 /* ref */
            checkcast org.jcp.xml.dsig.internal.dom.DOMReference
            aload 1 /* signContext */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLSignature.digestReference:(Lorg/jcp/xml/dsig/internal/dom/DOMReference;Ljavax/xml/crypto/dsig/XMLSignContext;)V
        end local 5 // javax.xml.crypto.dsig.Reference ref
        36: .line 374
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 34
        37: .line 379
            aload 3 /* allReferences */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 42
      StackMap locals:
      StackMap stack:
        38: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.Reference
            astore 5 /* ref */
        start local 5 // javax.xml.crypto.dsig.Reference ref
        39: .line 380
            aload 5 /* ref */
            checkcast org.jcp.xml.dsig.internal.dom.DOMReference
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMReference.isDigested:()Z
            ifeq 41
        40: .line 381
            goto 42
        41: .line 383
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List javax.xml.crypto.dsig.Reference java.util.Iterator
      StackMap stack:
            aload 5 /* ref */
            checkcast org.jcp.xml.dsig.internal.dom.DOMReference
            aload 1 /* signContext */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMReference.digest:(Ljavax/xml/crypto/dsig/XMLSignContext;)V
        end local 5 // javax.xml.crypto.dsig.Reference ref
        42: .line 379
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 38
        43: .line 386
            aconst_null
            astore 5 /* signingKey */
        start local 5 // java.security.Key signingKey
        44: .line 388
            aload 1 /* signContext */
            invokeinterface javax.xml.crypto.dsig.XMLSignContext.getKeySelector:()Ljavax/xml/crypto/KeySelector;
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
        45: .line 389
            getstatic javax.xml.crypto.KeySelector$Purpose.SIGN:Ljavax/xml/crypto/KeySelector$Purpose;
        46: .line 390
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            invokeinterface javax.xml.crypto.dsig.SignedInfo.getSignatureMethod:()Ljavax/xml/crypto/dsig/SignatureMethod;
        47: .line 391
            aload 1 /* signContext */
        48: .line 388
            invokevirtual javax.xml.crypto.KeySelector.select:(Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;Ljavax/xml/crypto/KeySelector$Purpose;Ljavax/xml/crypto/AlgorithmMethod;Ljavax/xml/crypto/XMLCryptoContext;)Ljavax/xml/crypto/KeySelectorResult;
            astore 6 /* keySelectorResult */
        start local 6 // javax.xml.crypto.KeySelectorResult keySelectorResult
        49: .line 392
            aload 6 /* keySelectorResult */
            invokeinterface javax.xml.crypto.KeySelectorResult.getKey:()Ljava/security/Key;
            astore 5 /* signingKey */
        50: .line 393
            aload 5 /* signingKey */
            ifnonnull 52
        51: .line 394
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            ldc "the keySelector did not find a signing key"
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/String;)V
            athrow
        52: .line 397
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List java.security.Key javax.xml.crypto.KeySelectorResult
      StackMap stack:
            aload 0 /* this */
            aload 6 /* keySelectorResult */
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ksr:Ljavax/xml/crypto/KeySelectorResult;
        end local 6 // javax.xml.crypto.KeySelectorResult keySelectorResult
        53: .line 398
            goto 56
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature javax.xml.crypto.dsig.XMLSignContext javax.xml.crypto.dsig.dom.DOMSignContext java.util.List java.util.List java.security.Key
      StackMap stack: javax.xml.crypto.KeySelectorException
        54: astore 6 /* kse */
        start local 6 // javax.xml.crypto.KeySelectorException kse
        55: .line 399
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            ldc "cannot find signing key"
            aload 6 /* kse */
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 6 // javax.xml.crypto.KeySelectorException kse
        56: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            invokeinterface javax.xml.crypto.dsig.SignedInfo.getSignatureMethod:()Ljavax/xml/crypto/dsig/SignatureMethod;
        57: .line 404
            checkcast org.jcp.xml.dsig.internal.dom.AbstractDOMSignatureMethod
        58: .line 405
            aload 5 /* signingKey */
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            aload 1 /* signContext */
            invokevirtual org.jcp.xml.dsig.internal.dom.AbstractDOMSignatureMethod.sign:(Ljava/security/Key;Ljavax/xml/crypto/dsig/SignedInfo;Ljavax/xml/crypto/dsig/XMLSignContext;)[B
        59: .line 404
            astore 6 /* val */
        start local 6 // byte[] val
        60: .line 406
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
            checkcast org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue
            aload 6 /* val */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue.setValue:([B)V
        end local 6 // byte[] val
        61: .line 407
            goto 64
      StackMap locals:
      StackMap stack: java.security.InvalidKeyException
        62: astore 6 /* ike */
        start local 6 // java.security.InvalidKeyException ike
        63: .line 408
            new javax.xml.crypto.dsig.XMLSignatureException
            dup
            aload 6 /* ike */
            invokespecial javax.xml.crypto.dsig.XMLSignatureException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.security.InvalidKeyException ike
        64: .line 411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sigElem:Lorg/w3c/dom/Element;
            putfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.localSigElem:Lorg/w3c/dom/Element;
        65: .line 412
            return
        end local 5 // java.security.Key signingKey
        end local 4 // java.util.List refs
        end local 3 // java.util.List allReferences
        end local 2 // javax.xml.crypto.dsig.dom.DOMSignContext context
        end local 1 // javax.xml.crypto.dsig.XMLSignContext signContext
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   66     0               this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0   66     1        signContext  Ljavax/xml/crypto/dsig/XMLSignContext;
            3   66     2            context  Ljavax/xml/crypto/dsig/dom/DOMSignContext;
            7   66     3      allReferences  Ljava/util/List<Ljavax/xml/crypto/dsig/Reference;>;
           11   66     4               refs  Ljava/util/List<Ljavax/xml/crypto/dsig/Reference;>;
           13   14     5                ref  Ljavax/xml/crypto/dsig/Reference;
           17   31     5                obj  Ljavax/xml/crypto/dsig/XMLObject;
           19   31     7            content  Ljava/util/List<Ljavax/xml/crypto/XMLStructure;>;
           21   30     8                 xs  Ljavax/xml/crypto/XMLStructure;
           23   30    10                man  Ljavax/xml/crypto/dsig/Manifest;
           25   30    11            manRefs  Ljava/util/List<Ljavax/xml/crypto/dsig/Reference;>;
           27   29    12                ref  Ljavax/xml/crypto/dsig/Reference;
           35   36     5                ref  Ljavax/xml/crypto/dsig/Reference;
           39   42     5                ref  Ljavax/xml/crypto/dsig/Reference;
           44   66     5         signingKey  Ljava/security/Key;
           49   53     6  keySelectorResult  Ljavax/xml/crypto/KeySelectorResult;
           55   56     6                kse  Ljavax/xml/crypto/KeySelectorException;
           60   61     6                val  [B
           63   64     6                ike  Ljava/security/InvalidKeyException;
      Exception table:
        from    to  target  type
          44    53      54  Class javax.xml.crypto.KeySelectorException
          56    61      62  Class java.security.InvalidKeyException
    Exceptions:
      throws javax.xml.crypto.MarshalException, javax.xml.crypto.dsig.XMLSignatureException
    MethodParameters:
             Name  Flags
      signContext  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // java.lang.Object o
         0: .line 416
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 417
            iconst_1
            ireturn
         2: .line 420
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof javax.xml.crypto.dsig.XMLSignature
            ifne 4
         3: .line 421
            iconst_0
            ireturn
         4: .line 423
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast javax.xml.crypto.dsig.XMLSignature
            astore 2 /* osig */
        start local 2 // javax.xml.crypto.dsig.XMLSignature osig
         5: .line 426
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
            ifnonnull 7
            aload 2 /* osig */
            invokeinterface javax.xml.crypto.dsig.XMLSignature.getId:()Ljava/lang/String;
            ifnonnull 6
            iconst_1
            goto 8
      StackMap locals: javax.xml.crypto.dsig.XMLSignature
      StackMap stack:
         6: iconst_0
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
            aload 2 /* osig */
            invokeinterface javax.xml.crypto.dsig.XMLSignature.getId:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
         8: .line 425
      StackMap locals:
      StackMap stack: int
            istore 3 /* idEqual */
        start local 3 // boolean idEqual
         9: .line 428
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            ifnonnull 11
            aload 2 /* osig */
            invokeinterface javax.xml.crypto.dsig.XMLSignature.getKeyInfo:()Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            ifnonnull 10
            iconst_1
            goto 12
      StackMap locals: int
      StackMap stack:
        10: iconst_0
            goto 12
        11: .line 429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            aload 2 /* osig */
            invokeinterface javax.xml.crypto.dsig.XMLSignature.getKeyInfo:()Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
        12: .line 427
      StackMap locals:
      StackMap stack: int
            istore 4 /* keyInfoEqual */
        start local 4 // boolean keyInfoEqual
        13: .line 431
            iload 3 /* idEqual */
            ifeq 18
            iload 4 /* keyInfoEqual */
            ifeq 18
        14: .line 432
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
            aload 2 /* osig */
            invokeinterface javax.xml.crypto.dsig.XMLSignature.getSignatureValue:()Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 18
        15: .line 433
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            aload 2 /* osig */
            invokeinterface javax.xml.crypto.dsig.XMLSignature.getSignedInfo:()Ljavax/xml/crypto/dsig/SignedInfo;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 434
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            aload 2 /* osig */
            invokeinterface javax.xml.crypto.dsig.XMLSignature.getObjects:()Ljava/util/List;
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ifeq 18
        17: .line 431
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
        18: iconst_0
            ireturn
        end local 4 // boolean keyInfoEqual
        end local 3 // boolean idEqual
        end local 2 // javax.xml.crypto.dsig.XMLSignature osig
        end local 1 // java.lang.Object o
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0   19     1             o  Ljava/lang/Object;
            5   19     2          osig  Ljavax/xml/crypto/dsig/XMLSignature;
            9   19     3       idEqual  Z
           13   19     4  keyInfoEqual  Z
    MethodParameters:
      Name  Flags
      o     

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
         0: .line 439
            bipush 17
            istore 1 /* result */
        start local 1 // int result
         1: .line 440
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
            ifnull 3
         2: .line 441
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.id:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 1 /* result */
         3: .line 443
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            ifnull 5
         4: .line 444
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.ki:Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* result */
         5: .line 446
      StackMap locals:
      StackMap stack:
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.sv:Ljavax/xml/crypto/dsig/XMLSignature$SignatureValue;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* result */
         6: .line 447
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.si:Ljavax/xml/crypto/dsig/SignedInfo;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* result */
         7: .line 448
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.objects:Ljava/util/List;
            invokeinterface java.util.List.hashCode:()I
            iadd
            istore 1 /* result */
         8: .line 450
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            1    9     1  result  I

  private void digestReference(org.jcp.xml.dsig.internal.dom.DOMReference, javax.xml.crypto.dsig.XMLSignContext);
    descriptor: (Lorg/jcp/xml/dsig/internal/dom/DOMReference;Ljavax/xml/crypto/dsig/XMLSignContext;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=10, args_size=3
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
        start local 1 // org.jcp.xml.dsig.internal.dom.DOMReference ref
        start local 2 // javax.xml.crypto.dsig.XMLSignContext signContext
         0: .line 456
            aload 1 /* ref */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMReference.isDigested:()Z
            ifeq 2
         1: .line 457
            return
         2: .line 460
      StackMap locals:
      StackMap stack:
            aload 1 /* ref */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMReference.getURI:()Ljava/lang/String;
            astore 3 /* uri */
        start local 3 // java.lang.String uri
         3: .line 461
            aload 3 /* uri */
            invokestatic org.jcp.xml.dsig.internal.dom.Utils.sameDocumentURI:(Ljava/lang/String;)Z
            ifeq 30
         4: .line 462
            aload 3 /* uri */
            invokestatic org.jcp.xml.dsig.internal.dom.Utils.parseIdFromSameDocumentURI:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* parsedId */
        start local 4 // java.lang.String parsedId
         5: .line 463
            aload 4 /* parsedId */
            ifnull 21
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 4 /* parsedId */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 21
         6: .line 464
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMXMLSignature.signatureIdMap:Ljava/util/Map;
            aload 4 /* parsedId */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.xml.crypto.XMLStructure
            astore 5 /* xs */
        start local 5 // javax.xml.crypto.XMLStructure xs
         7: .line 465
            aload 5 /* xs */
            instanceof org.jcp.xml.dsig.internal.dom.DOMReference
            ifeq 10
         8: .line 466
            aload 0 /* this */
            aload 5 /* xs */
            checkcast org.jcp.xml.dsig.internal.dom.DOMReference
            aload 2 /* signContext */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLSignature.digestReference:(Lorg/jcp/xml/dsig/internal/dom/DOMReference;Ljavax/xml/crypto/dsig/XMLSignContext;)V
         9: .line 467
            goto 21
      StackMap locals: java.lang.String java.lang.String javax.xml.crypto.XMLStructure
      StackMap stack:
        10: aload 5 /* xs */
            instanceof javax.xml.crypto.dsig.Manifest
            ifeq 21
        11: .line 468
            aload 5 /* xs */
            checkcast javax.xml.crypto.dsig.Manifest
            astore 6 /* man */
        start local 6 // javax.xml.crypto.dsig.Manifest man
        12: .line 469
            aload 6 /* man */
            invokestatic org.jcp.xml.dsig.internal.dom.DOMManifest.getManifestReferences:(Ljavax/xml/crypto/dsig/Manifest;)Ljava/util/List;
            astore 7 /* manRefs */
        start local 7 // java.util.List manRefs
        13: .line 470
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        14: aload 7 /* manRefs */
            invokeinterface java.util.List.size:()I
            istore 9 /* size */
        start local 9 // int size
        15: goto 20
        16: .line 471
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature org.jcp.xml.dsig.internal.dom.DOMReference javax.xml.crypto.dsig.XMLSignContext java.lang.String java.lang.String javax.xml.crypto.XMLStructure javax.xml.crypto.dsig.Manifest java.util.List int int
      StackMap stack:
            aload 0 /* this */
            aload 7 /* manRefs */
            iload 8 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.jcp.xml.dsig.internal.dom.DOMReference
        17: .line 472
            aload 2 /* signContext */
        18: .line 471
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMXMLSignature.digestReference:(Lorg/jcp/xml/dsig/internal/dom/DOMReference;Ljavax/xml/crypto/dsig/XMLSignContext;)V
        19: .line 470
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 8 /* i */
            iload 9 /* size */
            if_icmplt 16
        end local 9 // int size
        end local 8 // int i
        end local 7 // java.util.List manRefs
        end local 6 // javax.xml.crypto.dsig.Manifest man
        end local 5 // javax.xml.crypto.XMLStructure xs
        21: .line 479
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature org.jcp.xml.dsig.internal.dom.DOMReference javax.xml.crypto.dsig.XMLSignContext java.lang.String java.lang.String
      StackMap stack:
            aload 3 /* uri */
            invokevirtual java.lang.String.length:()I
            ifne 30
        22: .line 480
            aload 1 /* ref */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMReference.getTransforms:()Ljava/util/List;
            astore 5 /* transforms */
        start local 5 // java.util.List transforms
        23: .line 481
            aload 5 /* transforms */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 29
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature org.jcp.xml.dsig.internal.dom.DOMReference javax.xml.crypto.dsig.XMLSignContext java.lang.String java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
        24: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.xml.crypto.dsig.Transform
            astore 6 /* transform */
        start local 6 // javax.xml.crypto.dsig.Transform transform
        25: .line 482
            aload 6 /* transform */
            invokeinterface javax.xml.crypto.dsig.Transform.getAlgorithm:()Ljava/lang/String;
            astore 8 /* transformAlg */
        start local 8 // java.lang.String transformAlg
        26: .line 483
            aload 8 /* transformAlg */
            ldc "http://www.w3.org/TR/1999/REC-xpath-19991116"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 28
        27: .line 484
            aload 8 /* transformAlg */
            ldc "http://www.w3.org/2002/06/xmldsig-filter2"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 29
        28: .line 485
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature org.jcp.xml.dsig.internal.dom.DOMReference javax.xml.crypto.dsig.XMLSignContext java.lang.String java.lang.String java.util.List javax.xml.crypto.dsig.Transform java.util.Iterator java.lang.String
      StackMap stack:
            return
        end local 8 // java.lang.String transformAlg
        end local 6 // javax.xml.crypto.dsig.Transform transform
        29: .line 481
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature org.jcp.xml.dsig.internal.dom.DOMReference javax.xml.crypto.dsig.XMLSignContext java.lang.String java.lang.String java.util.List top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 24
        end local 5 // java.util.List transforms
        end local 4 // java.lang.String parsedId
        30: .line 490
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMXMLSignature org.jcp.xml.dsig.internal.dom.DOMReference javax.xml.crypto.dsig.XMLSignContext java.lang.String
      StackMap stack:
            aload 1 /* ref */
            aload 2 /* signContext */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMReference.digest:(Ljavax/xml/crypto/dsig/XMLSignContext;)V
        31: .line 491
            return
        end local 3 // java.lang.String uri
        end local 2 // javax.xml.crypto.dsig.XMLSignContext signContext
        end local 1 // org.jcp.xml.dsig.internal.dom.DOMReference ref
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMXMLSignature this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   32     0          this  Lorg/jcp/xml/dsig/internal/dom/DOMXMLSignature;
            0   32     1           ref  Lorg/jcp/xml/dsig/internal/dom/DOMReference;
            0   32     2   signContext  Ljavax/xml/crypto/dsig/XMLSignContext;
            3   32     3           uri  Ljava/lang/String;
            5   30     4      parsedId  Ljava/lang/String;
            7   21     5            xs  Ljavax/xml/crypto/XMLStructure;
           12   21     6           man  Ljavax/xml/crypto/dsig/Manifest;
           13   21     7       manRefs  Ljava/util/List<Ljavax/xml/crypto/dsig/Reference;>;
           14   21     8             i  I
           15   21     9          size  I
           23   30     5    transforms  Ljava/util/List<Ljavax/xml/crypto/dsig/Transform;>;
           25   29     6     transform  Ljavax/xml/crypto/dsig/Transform;
           26   29     8  transformAlg  Ljava/lang/String;
    Exceptions:
      throws javax.xml.crypto.dsig.XMLSignatureException
    MethodParameters:
             Name  Flags
      ref          
      signContext  
}
SourceFile: "DOMXMLSignature.java"
NestMembers:
  org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue
InnerClasses:
  public Purpose = javax.xml.crypto.KeySelector$Purpose of javax.xml.crypto.KeySelector
  public abstract SignatureValue = javax.xml.crypto.dsig.XMLSignature$SignatureValue of javax.xml.crypto.dsig.XMLSignature
  public DOMSignatureValue = org.jcp.xml.dsig.internal.dom.DOMXMLSignature$DOMSignatureValue of org.jcp.xml.dsig.internal.dom.DOMXMLSignature