public final class org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory extends javax.xml.crypto.dsig.keyinfo.KeyInfoFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory
  super_class: javax.xml.crypto.dsig.keyinfo.KeyInfoFactory
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
         0: .line 50
            aload 0 /* this */
            invokespecial javax.xml.crypto.dsig.keyinfo.KeyInfoFactory.<init>:()V
            return
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;

  public javax.xml.crypto.dsig.keyinfo.KeyInfo newKeyInfo(java.util.List<? extends javax.xml.crypto.XMLStructure>);
    descriptor: (Ljava/util/List;)Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.util.List content
         0: .line 53
            aload 0 /* this */
            aload 1 /* content */
            aconst_null
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory.newKeyInfo:(Ljava/util/List;Ljava/lang/String;)Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
            areturn
        end local 1 // java.util.List content
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1  content  Ljava/util/List<+Ljavax/xml/crypto/XMLStructure;>;
    Signature: (Ljava/util/List<+Ljavax/xml/crypto/XMLStructure;>;)Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
    MethodParameters:
         Name  Flags
      content  

  public javax.xml.crypto.dsig.keyinfo.KeyInfo newKeyInfo(java.util.List<? extends javax.xml.crypto.XMLStructure>, java.lang.String);
    descriptor: (Ljava/util/List;Ljava/lang/String;)Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.util.List content
        start local 2 // java.lang.String id
         0: .line 57
            new org.jcp.xml.dsig.internal.dom.DOMKeyInfo
            dup
            aload 1 /* content */
            aload 2 /* id */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyInfo.<init>:(Ljava/util/List;Ljava/lang/String;)V
            areturn
        end local 2 // java.lang.String id
        end local 1 // java.util.List content
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1  content  Ljava/util/List<+Ljavax/xml/crypto/XMLStructure;>;
            0    1     2       id  Ljava/lang/String;
    Signature: (Ljava/util/List<+Ljavax/xml/crypto/XMLStructure;>;Ljava/lang/String;)Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
    MethodParameters:
         Name  Flags
      content  
      id       

  public javax.xml.crypto.dsig.keyinfo.KeyName newKeyName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/xml/crypto/dsig/keyinfo/KeyName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.lang.String name
         0: .line 61
            new org.jcp.xml.dsig.internal.dom.DOMKeyName
            dup
            aload 1 /* name */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyName.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public javax.xml.crypto.dsig.keyinfo.KeyValue newKeyValue(java.security.PublicKey);
    descriptor: (Ljava/security/PublicKey;)Ljavax/xml/crypto/dsig/keyinfo/KeyValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.security.PublicKey key
         0: .line 65
            aload 1 /* key */
            invokeinterface java.security.PublicKey.getAlgorithm:()Ljava/lang/String;
            astore 2 /* algorithm */
        start local 2 // java.lang.String algorithm
         1: .line 66
            aload 2 /* algorithm */
            ldc "DSA"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 67
            new org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA
            dup
            aload 1 /* key */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.<init>:(Ljava/security/PublicKey;)V
            areturn
         3: .line 68
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* algorithm */
            ldc "RSA"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 69
            new org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA
            dup
            aload 1 /* key */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.<init>:(Ljava/security/PublicKey;)V
            areturn
         5: .line 70
      StackMap locals:
      StackMap stack:
            aload 2 /* algorithm */
            ldc "EC"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 71
            new org.jcp.xml.dsig.internal.dom.DOMKeyValue$EC
            dup
            aload 1 /* key */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyValue$EC.<init>:(Ljava/security/PublicKey;)V
            areturn
         7: .line 73
      StackMap locals:
      StackMap stack:
            new java.security.KeyException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unsupported key algorithm: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* algorithm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.security.KeyException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String algorithm
        end local 1 // java.security.PublicKey key
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    8     1        key  Ljava/security/PublicKey;
            1    8     2  algorithm  Ljava/lang/String;
    Exceptions:
      throws java.security.KeyException
    MethodParameters:
      Name  Flags
      key   

  public javax.xml.crypto.dsig.keyinfo.PGPData newPGPData(byte[]);
    descriptor: ([B)Ljavax/xml/crypto/dsig/keyinfo/PGPData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // byte[] keyId
         0: .line 78
            aload 0 /* this */
            aload 1 /* keyId */
            aconst_null
            aconst_null
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory.newPGPData:([B[BLjava/util/List;)Ljavax/xml/crypto/dsig/keyinfo/PGPData;
            areturn
        end local 1 // byte[] keyId
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1  keyId  [B
    MethodParameters:
       Name  Flags
      keyId  

  public javax.xml.crypto.dsig.keyinfo.PGPData newPGPData(byte[], byte[], java.util.List<? extends javax.xml.crypto.XMLStructure>);
    descriptor: ([B[BLjava/util/List;)Ljavax/xml/crypto/dsig/keyinfo/PGPData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // byte[] keyId
        start local 2 // byte[] keyPacket
        start local 3 // java.util.List other
         0: .line 83
            new org.jcp.xml.dsig.internal.dom.DOMPGPData
            dup
            aload 1 /* keyId */
            aload 2 /* keyPacket */
            aload 3 /* other */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMPGPData.<init>:([B[BLjava/util/List;)V
            areturn
        end local 3 // java.util.List other
        end local 2 // byte[] keyPacket
        end local 1 // byte[] keyId
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1      keyId  [B
            0    1     2  keyPacket  [B
            0    1     3      other  Ljava/util/List<+Ljavax/xml/crypto/XMLStructure;>;
    Signature: ([B[BLjava/util/List<+Ljavax/xml/crypto/XMLStructure;>;)Ljavax/xml/crypto/dsig/keyinfo/PGPData;
    MethodParameters:
           Name  Flags
      keyId      
      keyPacket  
      other      

  public javax.xml.crypto.dsig.keyinfo.PGPData newPGPData(byte[], java.util.List<? extends javax.xml.crypto.XMLStructure>);
    descriptor: ([BLjava/util/List;)Ljavax/xml/crypto/dsig/keyinfo/PGPData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // byte[] keyPacket
        start local 2 // java.util.List other
         0: .line 88
            new org.jcp.xml.dsig.internal.dom.DOMPGPData
            dup
            aload 1 /* keyPacket */
            aload 2 /* other */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMPGPData.<init>:([BLjava/util/List;)V
            areturn
        end local 2 // java.util.List other
        end local 1 // byte[] keyPacket
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1  keyPacket  [B
            0    1     2      other  Ljava/util/List<+Ljavax/xml/crypto/XMLStructure;>;
    Signature: ([BLjava/util/List<+Ljavax/xml/crypto/XMLStructure;>;)Ljavax/xml/crypto/dsig/keyinfo/PGPData;
    MethodParameters:
           Name  Flags
      keyPacket  
      other      

  public javax.xml.crypto.dsig.keyinfo.RetrievalMethod newRetrievalMethod(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/xml/crypto/dsig/keyinfo/RetrievalMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.lang.String uri
         0: .line 92
            aload 0 /* this */
            aload 1 /* uri */
            aconst_null
            aconst_null
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory.newRetrievalMethod:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljavax/xml/crypto/dsig/keyinfo/RetrievalMethod;
            areturn
        end local 1 // java.lang.String uri
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1   uri  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      uri   

  public javax.xml.crypto.dsig.keyinfo.RetrievalMethod newRetrievalMethod(java.lang.String, java.lang.String, java.util.List<? extends javax.xml.crypto.dsig.Transform>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljavax/xml/crypto/dsig/keyinfo/RetrievalMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.lang.String uri
        start local 2 // java.lang.String type
        start local 3 // java.util.List transforms
         0: .line 97
            aload 1 /* uri */
            ifnonnull 2
         1: .line 98
            new java.lang.NullPointerException
            dup
            ldc "uri must not be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 100
      StackMap locals:
      StackMap stack:
            new org.jcp.xml.dsig.internal.dom.DOMRetrievalMethod
            dup
            aload 1 /* uri */
            aload 2 /* type */
            aload 3 /* transforms */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMRetrievalMethod.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)V
            areturn
        end local 3 // java.util.List transforms
        end local 2 // java.lang.String type
        end local 1 // java.lang.String uri
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    3     1         uri  Ljava/lang/String;
            0    3     2        type  Ljava/lang/String;
            0    3     3  transforms  Ljava/util/List<+Ljavax/xml/crypto/dsig/Transform;>;
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<+Ljavax/xml/crypto/dsig/Transform;>;)Ljavax/xml/crypto/dsig/keyinfo/RetrievalMethod;
    MethodParameters:
            Name  Flags
      uri         
      type        
      transforms  

  public javax.xml.crypto.dsig.keyinfo.X509Data newX509Data(java.util.List<?>);
    descriptor: (Ljava/util/List;)Ljavax/xml/crypto/dsig/keyinfo/X509Data;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.util.List content
         0: .line 104
            new org.jcp.xml.dsig.internal.dom.DOMX509Data
            dup
            aload 1 /* content */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMX509Data.<init>:(Ljava/util/List;)V
            areturn
        end local 1 // java.util.List content
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1  content  Ljava/util/List<*>;
    Signature: (Ljava/util/List<*>;)Ljavax/xml/crypto/dsig/keyinfo/X509Data;
    MethodParameters:
         Name  Flags
      content  

  public javax.xml.crypto.dsig.keyinfo.X509IssuerSerial newX509IssuerSerial(java.lang.String, java.math.BigInteger);
    descriptor: (Ljava/lang/String;Ljava/math/BigInteger;)Ljavax/xml/crypto/dsig/keyinfo/X509IssuerSerial;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.lang.String issuerName
        start local 2 // java.math.BigInteger serialNumber
         0: .line 109
            new org.jcp.xml.dsig.internal.dom.DOMX509IssuerSerial
            dup
            aload 1 /* issuerName */
            aload 2 /* serialNumber */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMX509IssuerSerial.<init>:(Ljava/lang/String;Ljava/math/BigInteger;)V
            areturn
        end local 2 // java.math.BigInteger serialNumber
        end local 1 // java.lang.String issuerName
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    1     1    issuerName  Ljava/lang/String;
            0    1     2  serialNumber  Ljava/math/BigInteger;
    MethodParameters:
              Name  Flags
      issuerName    
      serialNumber  

  public boolean isFeatureSupported(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // java.lang.String feature
         0: .line 113
            aload 1 /* feature */
            ifnonnull 2
         1: .line 114
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 116
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.String feature
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0    3     1  feature  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      feature  

  public javax.xml.crypto.URIDereferencer getURIDereferencer();
    descriptor: ()Ljavax/xml/crypto/URIDereferencer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
         0: .line 121
            getstatic org.jcp.xml.dsig.internal.dom.DOMURIDereferencer.INSTANCE:Ljavax/xml/crypto/URIDereferencer;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;

  public javax.xml.crypto.dsig.keyinfo.KeyInfo unmarshalKeyInfo(javax.xml.crypto.XMLStructure);
    descriptor: (Ljavax/xml/crypto/XMLStructure;)Ljavax/xml/crypto/dsig/keyinfo/KeyInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
        start local 1 // javax.xml.crypto.XMLStructure xmlStructure
         0: .line 126
            aload 1 /* xmlStructure */
            ifnonnull 2
         1: .line 127
            new java.lang.NullPointerException
            dup
            ldc "xmlStructure cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 129
      StackMap locals:
      StackMap stack:
            aload 1 /* xmlStructure */
            instanceof javax.xml.crypto.dom.DOMStructure
            ifne 4
         3: .line 130
            new java.lang.ClassCastException
            dup
            ldc "xmlStructure must be of type DOMStructure"
            invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 133
      StackMap locals:
      StackMap stack:
            aload 1 /* xmlStructure */
            checkcast javax.xml.crypto.dom.DOMStructure
            invokevirtual javax.xml.crypto.dom.DOMStructure.getNode:()Lorg/w3c/dom/Node;
         5: .line 132
            astore 2 /* node */
        start local 2 // org.w3c.dom.Node node
         6: .line 134
            aload 2 /* node */
            invokeinterface org.w3c.dom.Node.normalize:()V
         7: .line 136
            aconst_null
            astore 3 /* element */
        start local 3 // org.w3c.dom.Element element
         8: .line 137
            aload 2 /* node */
            invokeinterface org.w3c.dom.Node.getNodeType:()S
            bipush 9
            if_icmpne 11
         9: .line 138
            aload 2 /* node */
            checkcast org.w3c.dom.Document
            invokeinterface org.w3c.dom.Document.getDocumentElement:()Lorg/w3c/dom/Element;
            astore 3 /* element */
        10: .line 139
            goto 17
      StackMap locals: org.w3c.dom.Node org.w3c.dom.Element
      StackMap stack:
        11: aload 2 /* node */
            invokeinterface org.w3c.dom.Node.getNodeType:()S
            iconst_1
            if_icmpne 14
        12: .line 140
            aload 2 /* node */
            checkcast org.w3c.dom.Element
            astore 3 /* element */
        13: .line 141
            goto 17
        14: .line 142
      StackMap locals:
      StackMap stack:
            new javax.xml.crypto.MarshalException
            dup
        15: .line 143
            ldc "xmlStructure does not contain a proper Node"
        16: .line 142
            invokespecial javax.xml.crypto.MarshalException.<init>:(Ljava/lang/String;)V
            athrow
        17: .line 147
      StackMap locals:
      StackMap stack:
            aload 3 /* element */
            invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
            astore 4 /* tag */
        start local 4 // java.lang.String tag
        18: .line 148
            aload 4 /* tag */
            ifnonnull 20
        19: .line 149
            new javax.xml.crypto.MarshalException
            dup
            ldc "Document implementation must support DOM Level 2 and be namespace aware"
            invokespecial javax.xml.crypto.MarshalException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 152
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* tag */
            ldc "KeyInfo"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        21: .line 153
            new org.jcp.xml.dsig.internal.dom.DOMKeyInfo
            dup
            aload 3 /* element */
            new org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory$UnmarshalContext
            dup
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory$UnmarshalContext.<init>:()V
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory.getProvider:()Ljava/security/Provider;
            invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyInfo.<init>:(Lorg/w3c/dom/Element;Ljavax/xml/crypto/XMLCryptoContext;Ljava/security/Provider;)V
            areturn
        22: .line 155
      StackMap locals:
      StackMap stack:
            new javax.xml.crypto.MarshalException
            dup
            new java.lang.StringBuilder
            dup
            ldc "invalid KeyInfo tag: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* tag */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial javax.xml.crypto.MarshalException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.String tag
        end local 3 // org.w3c.dom.Element element
        end local 2 // org.w3c.dom.Node node
        end local 1 // javax.xml.crypto.XMLStructure xmlStructure
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lorg/jcp/xml/dsig/internal/dom/DOMKeyInfoFactory;
            0   23     1  xmlStructure  Ljavax/xml/crypto/XMLStructure;
            6   23     2          node  Lorg/w3c/dom/Node;
            8   23     3       element  Lorg/w3c/dom/Element;
           18   23     4           tag  Ljava/lang/String;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
              Name  Flags
      xmlStructure  
}
SourceFile: "DOMKeyInfoFactory.java"
NestMembers:
  org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory$UnmarshalContext
InnerClasses:
  private UnmarshalContext = org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory$UnmarshalContext of org.jcp.xml.dsig.internal.dom.DOMKeyInfoFactory
  final DSA = org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA of org.jcp.xml.dsig.internal.dom.DOMKeyValue
  final EC = org.jcp.xml.dsig.internal.dom.DOMKeyValue$EC of org.jcp.xml.dsig.internal.dom.DOMKeyValue
  final RSA = org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA of org.jcp.xml.dsig.internal.dom.DOMKeyValue