package com.l7tech.xml.saml;

import com.l7tech.security.cert.KeyUsageActivity;
import com.l7tech.security.cert.KeyUsageChecker;
import com.l7tech.security.token.EncryptedKey;
import com.l7tech.security.token.SamlSecurityToken;
import com.l7tech.security.token.SecurityTokenType;
import com.l7tech.security.xml.DsigUtil;
import com.l7tech.security.xml.DsigValidity;
import com.l7tech.security.xml.SecurityTokenResolver;
import com.l7tech.security.xml.SignatureValidityContext;
import com.l7tech.security.xml.UnexpectedKeyInfoException;
import com.l7tech.security.xml.processor.EncryptedKeyImpl;
import com.l7tech.util.Charsets;
import com.l7tech.util.DomUtils;
import com.l7tech.util.HexUtils;
import com.l7tech.util.InvalidDocumentFormatException;
import com.l7tech.util.SoapConstants;
import com.l7tech.util.TooManyChildElementsException;
import java.math.BigInteger;
import java.security.GeneralSecurityException;
import java.security.PublicKey;
import java.security.SignatureException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import java.util.Calendar;
import java.util.logging.Logger;
import javax.xml.crypto.dsig.Reference;
import org.apache.xmlbeans.XmlObject;
import org.w3c.dom.Element;
import org.xml.sax.SAXException;
import x0Assertion.oasisNamesTcSAML2.AssertionType;
import x0Assertion.oasisNamesTcSAML2.NameIDType;

public final class SamlAssertionV2 extends SamlAssertion {
   private static final Logger c;
   private final AssertionType d;
   private Element e;
   private Element f;
   private SamlSecurityToken.ConfirmationMethod g;
   private X509Certificate h;
   private X509Certificate i;
   private X509Certificate j;
   private String k;
   private String l;
   private String m;
   private boolean n;
   private Calendar o;
   private Calendar p;
   private Calendar q;
   private String r;
   private String s;
   private String t;
   private String u;
   private EncryptedKey v;
   private static final String[] y;

   public SamlAssertionV2(Element param1, SecurityTokenResolver param2) throws SAXException {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 0
      // 001: aload 1
      // 002: invokespecial com/l7tech/xml/saml/SamlAssertion.<init> (Lorg/w3c/dom/Element;)V
      // 005: aload 0
      // 006: aconst_null
      // 007: putfield com/l7tech/xml/saml/SamlAssertionV2.e Lorg/w3c/dom/Element;
      // 00a: aload 0
      // 00b: aconst_null
      // 00c: putfield com/l7tech/xml/saml/SamlAssertionV2.f Lorg/w3c/dom/Element;
      // 00f: aload 0
      // 010: aconst_null
      // 011: putfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 014: aload 0
      // 015: aconst_null
      // 016: putfield com/l7tech/xml/saml/SamlAssertionV2.h Ljava/security/cert/X509Certificate;
      // 019: aload 0
      // 01a: aconst_null
      // 01b: putfield com/l7tech/xml/saml/SamlAssertionV2.i Ljava/security/cert/X509Certificate;
      // 01e: aload 0
      // 01f: aconst_null
      // 020: putfield com/l7tech/xml/saml/SamlAssertionV2.j Ljava/security/cert/X509Certificate;
      // 023: aload 0
      // 024: aconst_null
      // 025: putfield com/l7tech/xml/saml/SamlAssertionV2.k Ljava/lang/String;
      // 028: aload 0
      // 029: aconst_null
      // 02a: putfield com/l7tech/xml/saml/SamlAssertionV2.l Ljava/lang/String;
      // 02d: aload 0
      // 02e: aconst_null
      // 02f: putfield com/l7tech/xml/saml/SamlAssertionV2.m Ljava/lang/String;
      // 032: aload 0
      // 033: bipush 0
      // 034: putfield com/l7tech/xml/saml/SamlAssertionV2.n Z
      // 037: aload 0
      // 038: aconst_null
      // 039: putfield com/l7tech/xml/saml/SamlAssertionV2.o Ljava/util/Calendar;
      // 03c: aload 0
      // 03d: aconst_null
      // 03e: putfield com/l7tech/xml/saml/SamlAssertionV2.p Ljava/util/Calendar;
      // 041: aload 0
      // 042: aconst_null
      // 043: putfield com/l7tech/xml/saml/SamlAssertionV2.q Ljava/util/Calendar;
      // 046: aload 0
      // 047: aload 1
      // 048: putfield com/l7tech/xml/saml/SamlAssertionV2.e Lorg/w3c/dom/Element;
      // 04b: aload 0
      // 04c: aload 0
      // 04d: getfield com/l7tech/xml/saml/SamlAssertionV2.e Lorg/w3c/dom/Element;
      // 050: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 053: astore 23
      // 055: aload 23
      // 057: bipush 39
      // 059: aaload
      // 05a: invokeinterface org/w3c/dom/Element.getAttribute (Ljava/lang/String;)Ljava/lang/String; 2
      // 05f: putfield com/l7tech/xml/saml/SamlAssertionV2.k Ljava/lang/String;
      // 062: aload 0
      // 063: getfield com/l7tech/xml/saml/SamlAssertionV2.k Ljava/lang/String;
      // 066: ifnull 074
      // 069: aload 0
      // 06a: getfield com/l7tech/xml/saml/SamlAssertionV2.k Ljava/lang/String;
      // 06d: invokevirtual java/lang/String.length ()I
      // 070: bipush 1
      // 071: if_icmpge 085
      // 074: new org/xml/sax/SAXException
      // 077: dup
      // 078: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 07b: bipush 4
      // 07c: aaload
      // 07d: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/String;)V
      // 080: athrow
      // 081: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 084: athrow
      // 085: aload 0
      // 086: aload 1
      // 087: invokestatic x0Assertion/oasisNamesTcSAML2/AssertionDocument$Factory.parse (Lorg/w3c/dom/Node;)Lx0Assertion/oasisNamesTcSAML2/AssertionDocument;
      // 08a: invokeinterface x0Assertion/oasisNamesTcSAML2/AssertionDocument.getAssertion ()Lx0Assertion/oasisNamesTcSAML2/AssertionType; 1
      // 08f: putfield com/l7tech/xml/saml/SamlAssertionV2.d Lx0Assertion/oasisNamesTcSAML2/AssertionType;
      // 092: aload 0
      // 093: getfield com/l7tech/xml/saml/SamlAssertionV2.d Lx0Assertion/oasisNamesTcSAML2/AssertionType;
      // 096: invokeinterface x0Assertion/oasisNamesTcSAML2/AssertionType.getSubject ()Lx0Assertion/oasisNamesTcSAML2/SubjectType; 1
      // 09b: astore 3
      // 09c: aload 3
      // 09d: ifnonnull 0c8
      // 0a0: aload 1
      // 0a1: invokestatic com/l7tech/common/io/XmlUtil.nodeToFormattedString (Lorg/w3c/dom/Node;)Ljava/lang/String;
      // 0a4: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 0a7: astore 23
      // 0a9: aload 23
      // 0ab: bipush 29
      // 0ad: aaload
      // 0ae: swap
      // 0af: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 0b4: astore 4
      // 0b6: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 0b9: aload 4
      // 0bb: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // 0be: new org/xml/sax/SAXException
      // 0c1: dup
      // 0c2: aload 4
      // 0c4: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/String;)V
      // 0c7: athrow
      // 0c8: aload 3
      // 0c9: invokeinterface x0Assertion/oasisNamesTcSAML2/SubjectType.getNameID ()Lx0Assertion/oasisNamesTcSAML2/NameIDType; 1
      // 0ce: astore 4
      // 0d0: aload 4
      // 0d2: ifnull 107
      // 0d5: aload 0
      // 0d6: aload 4
      // 0d8: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getFormat ()Ljava/lang/String; 1
      // 0dd: putfield com/l7tech/xml/saml/SamlAssertionV2.r Ljava/lang/String;
      // 0e0: aload 0
      // 0e1: aload 4
      // 0e3: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getNameQualifier ()Ljava/lang/String; 1
      // 0e8: putfield com/l7tech/xml/saml/SamlAssertionV2.s Ljava/lang/String;
      // 0eb: aload 0
      // 0ec: aload 4
      // 0ee: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getStringValue ()Ljava/lang/String; 1
      // 0f3: putfield com/l7tech/xml/saml/SamlAssertionV2.t Ljava/lang/String;
      // 0f6: aload 0
      // 0f7: aload 0
      // 0f8: aload 4
      // 0fa: invokevirtual com/l7tech/xml/saml/SamlAssertionV2.a (Lx0Assertion/oasisNamesTcSAML2/NameIDType;)Ljava/lang/String;
      // 0fd: putfield com/l7tech/xml/saml/SamlAssertionV2.m Ljava/lang/String;
      // 100: goto 12f
      // 103: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 106: athrow
      // 107: aload 1
      // 108: invokestatic com/l7tech/common/io/XmlUtil.nodeToFormattedString (Lorg/w3c/dom/Node;)Ljava/lang/String;
      // 10b: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 10e: astore 23
      // 110: aload 23
      // 112: bipush 10
      // 114: aaload
      // 115: swap
      // 116: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 11b: astore 5
      // 11d: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 120: aload 5
      // 122: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // 125: new org/xml/sax/SAXException
      // 128: dup
      // 129: aload 5
      // 12b: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/String;)V
      // 12e: athrow
      // 12f: aload 0
      // 130: getfield com/l7tech/xml/saml/SamlAssertionV2.d Lx0Assertion/oasisNamesTcSAML2/AssertionType;
      // 133: invokeinterface x0Assertion/oasisNamesTcSAML2/AssertionType.getAuthnStatementArray ()[Lx0Assertion/oasisNamesTcSAML2/AuthnStatementType; 1
      // 138: astore 5
      // 13a: aload 5
      // 13c: ifnull 16e
      // 13f: aload 5
      // 141: arraylength
      // 142: ifle 16e
      // 145: goto 14c
      // 148: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 14b: athrow
      // 14c: aload 5
      // 14e: arraylength
      // 14f: bipush 1
      // 150: isub
      // 151: istore 6
      // 153: aload 5
      // 155: iload 6
      // 157: aaload
      // 158: astore 7
      // 15a: aload 7
      // 15c: invokeinterface x0Assertion/oasisNamesTcSAML2/AuthnStatementType.getAuthnContext ()Lx0Assertion/oasisNamesTcSAML2/AuthnContextType; 1
      // 161: astore 8
      // 163: aload 0
      // 164: aload 8
      // 166: invokeinterface x0Assertion/oasisNamesTcSAML2/AuthnContextType.getAuthnContextClassRef ()Ljava/lang/String; 1
      // 16b: putfield com/l7tech/xml/saml/SamlAssertionV2.u Ljava/lang/String;
      // 16e: aload 0
      // 16f: aload 0
      // 170: getfield com/l7tech/xml/saml/SamlAssertionV2.d Lx0Assertion/oasisNamesTcSAML2/AssertionType;
      // 173: invokeinterface x0Assertion/oasisNamesTcSAML2/AssertionType.getIssueInstant ()Ljava/util/Calendar; 1
      // 178: putfield com/l7tech/xml/saml/SamlAssertionV2.o Ljava/util/Calendar;
      // 17b: aload 0
      // 17c: getfield com/l7tech/xml/saml/SamlAssertionV2.d Lx0Assertion/oasisNamesTcSAML2/AssertionType;
      // 17f: invokeinterface x0Assertion/oasisNamesTcSAML2/AssertionType.getConditions ()Lx0Assertion/oasisNamesTcSAML2/ConditionsType; 1
      // 184: astore 6
      // 186: aload 6
      // 188: ifnull 1d0
      // 18b: aload 0
      // 18c: aload 6
      // 18e: invokeinterface x0Assertion/oasisNamesTcSAML2/ConditionsType.getNotBefore ()Ljava/util/Calendar; 1
      // 193: putfield com/l7tech/xml/saml/SamlAssertionV2.p Ljava/util/Calendar;
      // 196: aload 0
      // 197: aload 6
      // 199: invokeinterface x0Assertion/oasisNamesTcSAML2/ConditionsType.getNotOnOrAfter ()Ljava/util/Calendar; 1
      // 19e: putfield com/l7tech/xml/saml/SamlAssertionV2.q Ljava/util/Calendar;
      // 1a1: aload 6
      // 1a3: invokeinterface x0Assertion/oasisNamesTcSAML2/ConditionsType.getOneTimeUseArray ()[Lx0Assertion/oasisNamesTcSAML2/OneTimeUseType; 1
      // 1a8: ifnull 1d0
      // 1ab: goto 1b2
      // 1ae: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1b1: athrow
      // 1b2: aload 6
      // 1b4: invokeinterface x0Assertion/oasisNamesTcSAML2/ConditionsType.getOneTimeUseArray ()[Lx0Assertion/oasisNamesTcSAML2/OneTimeUseType; 1
      // 1b9: arraylength
      // 1ba: ifle 1d0
      // 1bd: goto 1c4
      // 1c0: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1c3: athrow
      // 1c4: aload 0
      // 1c5: bipush 1
      // 1c6: putfield com/l7tech/xml/saml/SamlAssertionV2.n Z
      // 1c9: goto 1d0
      // 1cc: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1cf: athrow
      // 1d0: aload 3
      // 1d1: invokeinterface x0Assertion/oasisNamesTcSAML2/SubjectType.getSubjectConfirmationArray ()[Lx0Assertion/oasisNamesTcSAML2/SubjectConfirmationType; 1
      // 1d6: astore 7
      // 1d8: aload 7
      // 1da: ifnull 46d
      // 1dd: aload 7
      // 1df: arraylength
      // 1e0: ifle 46d
      // 1e3: goto 1ea
      // 1e6: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1e9: athrow
      // 1ea: aload 7
      // 1ec: arraylength
      // 1ed: bipush 1
      // 1ee: if_icmple 20a
      // 1f1: goto 1f8
      // 1f4: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1f7: athrow
      // 1f8: new java/lang/IllegalArgumentException
      // 1fb: dup
      // 1fc: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 1ff: bipush 35
      // 201: aaload
      // 202: invokespecial java/lang/IllegalArgumentException.<init> (Ljava/lang/String;)V
      // 205: athrow
      // 206: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 209: athrow
      // 20a: aload 7
      // 20c: bipush 0
      // 20d: aaload
      // 20e: invokeinterface x0Assertion/oasisNamesTcSAML2/SubjectConfirmationType.getMethod ()Ljava/lang/String; 1
      // 213: astore 8
      // 215: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 218: bipush 23
      // 21a: aaload
      // 21b: aload 8
      // 21d: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 220: ifeq 231
      // 223: aload 0
      // 224: getstatic com/l7tech/xml/saml/SamlAssertionV2.HOLDER_OF_KEY Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 227: putfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 22a: goto 265
      // 22d: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 230: athrow
      // 231: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 234: bipush 22
      // 236: aaload
      // 237: aload 8
      // 239: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 23c: ifeq 24d
      // 23f: aload 0
      // 240: getstatic com/l7tech/xml/saml/SamlAssertionV2.SENDER_VOUCHES Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 243: putfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 246: goto 265
      // 249: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 24c: athrow
      // 24d: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 250: astore 23
      // 252: aload 23
      // 254: bipush 3
      // 255: aaload
      // 256: astore 9
      // 258: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 25b: aload 9
      // 25d: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 260: aload 0
      // 261: aconst_null
      // 262: putfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 265: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 268: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 26b: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 26e: ifeq 297
      // 271: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 274: aload 0
      // 275: getfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 278: invokestatic java/lang/String.valueOf (Ljava/lang/Object;)Ljava/lang/String;
      // 27b: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 27e: bipush 43
      // 280: aaload
      // 281: swap
      // 282: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 285: bipush 19
      // 287: aaload
      // 288: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001" ]
      // 28d: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 290: goto 297
      // 293: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 296: athrow
      // 297: aload 7
      // 299: bipush 0
      // 29a: aaload
      // 29b: invokeinterface x0Assertion/oasisNamesTcSAML2/SubjectConfirmationType.getSubjectConfirmationData ()Lx0Assertion/oasisNamesTcSAML2/SubjectConfirmationDataType; 1
      // 2a0: astore 9
      // 2a2: aload 0
      // 2a3: getfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 2a6: getstatic com/l7tech/xml/saml/SamlAssertionV2.HOLDER_OF_KEY Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 2a9: if_acmpne 46d
      // 2ac: aload 9
      // 2ae: ifnull 46d
      // 2b1: goto 2b8
      // 2b4: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2b7: athrow
      // 2b8: aload 9
      // 2ba: invokeinterface x0Assertion/oasisNamesTcSAML2/SubjectConfirmationDataType.getDomNode ()Lorg/w3c/dom/Node; 1
      // 2bf: checkcast org/w3c/dom/Element
      // 2c2: astore 10
      // 2c4: aload 10
      // 2c6: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 2c9: astore 23
      // 2cb: aload 23
      // 2cd: bipush 24
      // 2cf: aaload
      // 2d0: aload 23
      // 2d2: bipush 45
      // 2d4: aaload
      // 2d5: invokeinterface org/w3c/dom/Element.getAttributeNS (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; 3
      // 2da: astore 11
      // 2dc: aload 10
      // 2de: aload 23
      // 2e0: bipush 17
      // 2e2: aaload
      // 2e3: invokestatic com/l7tech/util/DomUtils.findActivePrefixForNamespace (Lorg/w3c/dom/Node;Ljava/lang/String;)Ljava/lang/String;
      // 2e6: astore 12
      // 2e8: aload 12
      // 2ea: ifnonnull 2fe
      // 2ed: new java/lang/IllegalStateException
      // 2f0: dup
      // 2f1: aload 23
      // 2f3: bipush 12
      // 2f5: aaload
      // 2f6: invokespecial java/lang/IllegalStateException.<init> (Ljava/lang/String;)V
      // 2f9: athrow
      // 2fa: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2fd: athrow
      // 2fe: aload 12
      // 300: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 303: bipush 28
      // 305: aaload
      // 306: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 30b: aload 11
      // 30d: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 310: ifeq 46d
      // 313: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 316: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 319: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 31c: ifeq 339
      // 31f: goto 326
      // 322: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 325: athrow
      // 326: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 329: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 32c: bipush 34
      // 32e: aaload
      // 32f: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 332: goto 339
      // 335: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 338: athrow
      // 339: aload 9
      // 33b: invokestatic x0Assertion/oasisNamesTcSAML2/KeyInfoConfirmationDataType$Factory.newInstance ()Lx0Assertion/oasisNamesTcSAML2/KeyInfoConfirmationDataType;
      // 33e: invokeinterface x0Assertion/oasisNamesTcSAML2/KeyInfoConfirmationDataType.schemaType ()Lorg/apache/xmlbeans/SchemaType; 1
      // 343: invokeinterface x0Assertion/oasisNamesTcSAML2/SubjectConfirmationDataType.changeType (Lorg/apache/xmlbeans/SchemaType;)Lorg/apache/xmlbeans/XmlObject; 2
      // 348: checkcast x0Assertion/oasisNamesTcSAML2/KeyInfoConfirmationDataType
      // 34b: astore 13
      // 34d: aload 13
      // 34f: invokeinterface x0Assertion/oasisNamesTcSAML2/KeyInfoConfirmationDataType.getKeyInfoArray ()[Lorg/w3/x2000/x09/xmldsig/KeyInfoType; 1
      // 354: astore 14
      // 356: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 359: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 35c: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 35f: ifeq 383
      // 362: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 365: aload 14
      // 367: arraylength
      // 368: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 36b: bipush 7
      // 36d: aaload
      // 36e: swap
      // 36f: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 372: bipush 1
      // 373: aaload
      // 374: invokedynamic makeConcatWithConstants (Ljava/lang/String;ILjava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001" ]
      // 379: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 37c: goto 383
      // 37f: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 382: athrow
      // 383: aload 14
      // 385: astore 15
      // 387: aload 15
      // 389: arraylength
      // 38a: istore 16
      // 38c: bipush 0
      // 38d: istore 17
      // 38f: iload 17
      // 391: iload 16
      // 393: if_icmpge 46d
      // 396: aload 15
      // 398: iload 17
      // 39a: aaload
      // 39b: astore 18
      // 39d: aload 0
      // 39e: getfield com/l7tech/xml/saml/SamlAssertionV2.h Ljava/security/cert/X509Certificate;
      // 3a1: ifnull 3ab
      // 3a4: goto 46d
      // 3a7: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3aa: athrow
      // 3ab: aload 18
      // 3ad: invokeinterface org/w3/x2000/x09/xmldsig/KeyInfoType.getX509DataArray ()[Lorg/w3/x2000/x09/xmldsig/X509DataType; 1
      // 3b2: astore 19
      // 3b4: aload 19
      // 3b6: ifnull 3de
      // 3b9: aload 19
      // 3bb: arraylength
      // 3bc: ifle 3de
      // 3bf: goto 3c6
      // 3c2: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3c5: athrow
      // 3c6: aload 19
      // 3c8: bipush 0
      // 3c9: aaload
      // 3ca: astore 20
      // 3cc: aload 0
      // 3cd: aload 20
      // 3cf: bipush 0
      // 3d0: invokeinterface org/w3/x2000/x09/xmldsig/X509DataType.getX509CertificateArray (I)[B 2
      // 3d5: invokestatic com/l7tech/common/io/CertUtils.decodeCert ([B)Ljava/security/cert/X509Certificate;
      // 3d8: putfield com/l7tech/xml/saml/SamlAssertionV2.h Ljava/security/cert/X509Certificate;
      // 3db: goto 467
      // 3de: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 3e1: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 3e4: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 3e7: ifeq 3fd
      // 3ea: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 3ed: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 3f0: bipush 32
      // 3f2: aaload
      // 3f3: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 3f6: goto 3fd
      // 3f9: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3fc: athrow
      // 3fd: aload 18
      // 3ff: invokeinterface org/w3/x2000/x09/xmldsig/KeyInfoType.getDomNode ()Lorg/w3c/dom/Node; 1
      // 404: checkcast org/w3c/dom/Element
      // 407: astore 20
      // 409: aload 20
      // 40b: getstatic com/l7tech/util/SoapConstants.SECURITY_URIS_ARRAY [Ljava/lang/String;
      // 40e: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 411: astore 23
      // 413: aload 23
      // 415: bipush 20
      // 417: aaload
      // 418: invokestatic com/l7tech/util/DomUtils.findChildElementsByName (Lorg/w3c/dom/Element;[Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;
      // 41b: astore 21
      // 41d: aload 20
      // 41f: ifnull 467
      // 422: aload 21
      // 424: invokeinterface java/util/List.isEmpty ()Z 1
      // 429: ifne 467
      // 42c: goto 433
      // 42f: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 432: athrow
      // 433: aload 18
      // 435: invokeinterface org/w3/x2000/x09/xmldsig/KeyInfoType.getDomNode ()Lorg/w3c/dom/Node; 1
      // 43a: checkcast org/w3c/dom/Element
      // 43d: aload 2
      // 43e: getstatic com/l7tech/security/xml/KeyInfoInclusionType.ANY Ljava/util/EnumSet;
      // 441: invokestatic com/l7tech/security/xml/KeyInfoElement.parse (Lorg/w3c/dom/Element;Lcom/l7tech/security/xml/SecurityTokenResolver;Ljava/util/EnumSet;)Lcom/l7tech/security/xml/KeyInfoElement;
      // 444: astore 22
      // 446: aload 0
      // 447: aload 22
      // 449: invokevirtual com/l7tech/security/xml/KeyInfoElement.getCertificate ()Ljava/security/cert/X509Certificate;
      // 44c: putfield com/l7tech/xml/saml/SamlAssertionV2.h Ljava/security/cert/X509Certificate;
      // 44f: goto 467
      // 452: astore 22
      // 454: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 457: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 45a: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 45d: astore 23
      // 45f: aload 23
      // 461: bipush 44
      // 463: aaload
      // 464: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 467: iinc 17 1
      // 46a: goto 38f
      // 46d: aload 0
      // 46e: getfield com/l7tech/xml/saml/SamlAssertionV2.d Lx0Assertion/oasisNamesTcSAML2/AssertionType;
      // 471: invokeinterface x0Assertion/oasisNamesTcSAML2/AssertionType.getSignature ()Lorg/w3/x2000/x09/xmldsig/SignatureType; 1
      // 476: astore 8
      // 478: aload 8
      // 47a: ifnull 4c7
      // 47d: aload 0
      // 47e: aload 8
      // 480: invokeinterface org/w3/x2000/x09/xmldsig/SignatureType.getDomNode ()Lorg/w3c/dom/Node; 1
      // 485: checkcast org/w3c/dom/Element
      // 488: putfield com/l7tech/xml/saml/SamlAssertionV2.f Lorg/w3c/dom/Element;
      // 48b: aload 8
      // 48d: invokeinterface org/w3/x2000/x09/xmldsig/SignatureType.getKeyInfo ()Lorg/w3/x2000/x09/xmldsig/KeyInfoType; 1
      // 492: astore 9
      // 494: aload 9
      // 496: ifnonnull 4ab
      // 499: new org/xml/sax/SAXException
      // 49c: dup
      // 49d: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 4a0: bipush 41
      // 4a2: aaload
      // 4a3: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/String;)V
      // 4a6: athrow
      // 4a7: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 4aa: athrow
      // 4ab: aload 9
      // 4ad: invokeinterface org/w3/x2000/x09/xmldsig/KeyInfoType.getDomNode ()Lorg/w3c/dom/Node; 1
      // 4b2: checkcast org/w3c/dom/Element
      // 4b5: aload 2
      // 4b6: getstatic com/l7tech/security/xml/KeyInfoInclusionType.ANY Ljava/util/EnumSet;
      // 4b9: invokestatic com/l7tech/security/xml/KeyInfoElement.parse (Lorg/w3c/dom/Element;Lcom/l7tech/security/xml/SecurityTokenResolver;Ljava/util/EnumSet;)Lcom/l7tech/security/xml/KeyInfoElement;
      // 4bc: astore 10
      // 4be: aload 0
      // 4bf: aload 10
      // 4c1: invokevirtual com/l7tech/security/xml/KeyInfoElement.getCertificate ()Ljava/security/cert/X509Certificate;
      // 4c4: putfield com/l7tech/xml/saml/SamlAssertionV2.i Ljava/security/cert/X509Certificate;
      // 4c7: goto 513
      // 4ca: astore 3
      // 4cb: new org/xml/sax/SAXException
      // 4ce: dup
      // 4cf: aload 3
      // 4d0: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/Exception;)V
      // 4d3: athrow
      // 4d4: astore 3
      // 4d5: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 4d8: astore 23
      // 4da: aload 23
      // 4dc: bipush 46
      // 4de: aaload
      // 4df: astore 4
      // 4e1: getstatic com/l7tech/xml/saml/SamlAssertionV2.c Ljava/util/logging/Logger;
      // 4e4: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 4e7: aload 23
      // 4e9: bipush 42
      // 4eb: aaload
      // 4ec: aload 3
      // 4ed: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 4f0: new org/xml/sax/SAXException
      // 4f3: dup
      // 4f4: aload 3
      // 4f5: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/Exception;)V
      // 4f8: athrow
      // 4f9: astore 3
      // 4fa: new org/xml/sax/SAXException
      // 4fd: dup
      // 4fe: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 501: bipush 6
      // 503: aaload
      // 504: aload 3
      // 505: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/String;Ljava/lang/Exception;)V
      // 508: athrow
      // 509: astore 3
      // 50a: new org/xml/sax/SAXException
      // 50d: dup
      // 50e: aload 3
      // 50f: invokespecial org/xml/sax/SAXException.<init> (Ljava/lang/Exception;)V
      // 512: athrow
      // 513: return
      // try (462 -> 467): 468 java/lang/Exception
      // try (437 -> 446): 447 java/lang/Exception
      // try (418 -> 423): 424 java/lang/Exception
      // try (409 -> 413): 413 java/lang/Exception
      // try (376 -> 392): 393 java/lang/Exception
      // try (352 -> 364): 365 java/lang/Exception
      // try (344 -> 356): 357 java/lang/Exception
      // try (333 -> 342): 342 java/lang/Exception
      // try (303 -> 309): 310 java/lang/Exception
      // try (278 -> 295): 296 java/lang/Exception
      // try (254 -> 264): 264 java/lang/Exception
      // try (242 -> 252): 252 java/lang/Exception
      // try (221 -> 235): 235 java/lang/Exception
      // try (215 -> 225): 226 java/lang/Exception
      // try (213 -> 218): 219 java/lang/Exception
      // try (197 -> 207): 208 java/lang/Exception
      // try (183 -> 201): 202 java/lang/Exception
      // try (181 -> 194): 195 java/lang/Exception
      // try (148 -> 153): 154 java/lang/Exception
      // try (104 -> 124): 124 java/lang/Exception
      // try (58 -> 70): 70 java/lang/Exception
      // try (470 -> 481): 482 java/lang/Exception
      // try (507 -> 516): 516 java/lang/Exception
      // try (72 -> 529): 530 org/apache/xmlbeans/XmlException
      // try (72 -> 529): 536 java/security/cert/CertificateException
      // try (72 -> 529): 555 java/io/IOException
      // try (72 -> 529): 564 com/l7tech/security/xml/KeyInfoElement$MissingResolverException
   }

   @Override
   public SecurityTokenType getType() {
      return SecurityTokenType.SAML2_ASSERTION;
   }

   @Override
   public int getVersionId() {
      return 2;
   }

   @Override
   public boolean isHolderOfKey() {
      return HOLDER_OF_KEY.equals(this.g);
   }

   @Override
   public boolean isSenderVouches() {
      return SENDER_VOUCHES.equals(this.g);
   }

   @Override
   public boolean isBearerToken() {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: aload 0
      // 01: getfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 04: ifnull 1b
      // 07: getstatic com/l7tech/xml/saml/SamlAssertionV2.BEARER_TOKEN Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 0a: aload 0
      // 0b: getfield com/l7tech/xml/saml/SamlAssertionV2.g Lcom/l7tech/security/token/SamlSecurityToken$ConfirmationMethod;
      // 0e: invokevirtual java/lang/Object.equals (Ljava/lang/Object;)Z
      // 11: ifeq 23
      // 14: goto 1b
      // 17: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1a: athrow
      // 1b: bipush 1
      // 1c: goto 24
      // 1f: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 22: athrow
      // 23: bipush 0
      // 24: ireturn
      // try (0 -> 8): 9 java/lang/IllegalArgumentException
      // try (3 -> 13): 13 java/lang/IllegalArgumentException
   }

   @Override
   public SamlSecurityToken.ConfirmationMethod getConfirmationMethod() {
      return this.g;
   }

   @Override
   public String getAssertionId() {
      return this.k;
   }

   @Override
   public String getUniqueId() {
      try {
         if (this.l == null) {
            this.l = this.a();
         }
      } catch (IllegalArgumentException var1) {
         throw a(var1);
      }

      return this.l;
   }

   @Override
   public boolean hasEmbeddedIssuerSignature() {
      try {
         if (this.f != null) {
            return true;
         }
      } catch (IllegalArgumentException var1) {
         throw a(var1);
      }

      return false;
   }

   @Override
   public boolean hasSubjectConfirmationEncryptedKey() {
      try {
         try {
            if (this.a(false) != null) {
               return true;
            }
         } catch (InvalidDocumentFormatException var2) {
            throw a(var2);
         }

         return false;
      } catch (InvalidDocumentFormatException var3) {
         return false;
      }
   }

   @Override
   public Element getEmbeddedIssuerSignature() {
      return this.f;
   }

   @Override
   public EncryptedKey getSubjectConfirmationEncryptedKey(SecurityTokenResolver var1) throws InvalidDocumentFormatException, UnexpectedKeyInfoException, GeneralSecurityException {
      try {
         if (this.v != null) {
            return this.v;
         }
      } catch (InvalidDocumentFormatException var3) {
         throw a(var3);
      }

      Element var2 = this.a(true);
      return this.v = new EncryptedKeyImpl(var2, var1, SoapConstants.VALUETYPE_SAML_ASSERTIONID_SAML20, this.k);
   }

   @Override
   public boolean isSubjectConfirmationEncryptedKeyAvailable() {
      return false;
   }

   @Override
   public X509Certificate getSubjectCertificate() {
      return this.h;
   }

   @Override
   public X509Certificate getMessageSigningCertificate() {
      try {
         if (this.isHolderOfKey()) {
            return this.h;
         }
      } catch (IllegalArgumentException var2) {
         throw a(var2);
      }

      try {
         return this.isSenderVouches() ? this.i : null;
      } catch (IllegalArgumentException var1) {
         throw a(var1);
      }
   }

   @Override
   public X509Certificate getIssuerCertificate() {
      return this.i;
   }

   @Override
   public void setIssuerCertificate(X509Certificate var1) {
      try {
         if (!this.isSenderVouches()) {
            throw new IllegalStateException(y[33]);
         }
      } catch (IllegalArgumentException var2) {
         throw a(var2);
      }

      this.i = var1;
   }

   @Override
   public X509Certificate getAttestingEntity() {
      return this.j;
   }

   @Override
   public void setAttestingEntity(X509Certificate param1) {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: aload 0
      // 01: invokevirtual com/l7tech/xml/saml/SamlAssertionV2.isHolderOfKey ()Z
      // 04: ifeq 2b
      // 07: aload 1
      // 08: aload 0
      // 09: getfield com/l7tech/xml/saml/SamlAssertionV2.h Ljava/security/cert/X509Certificate;
      // 0c: invokestatic com/l7tech/common/io/CertUtils.certsAreEqual (Ljava/security/cert/X509Certificate;Ljava/security/cert/X509Certificate;)Z
      // 0f: ifne 43
      // 12: goto 19
      // 15: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 18: athrow
      // 19: new java/lang/IllegalStateException
      // 1c: dup
      // 1d: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 20: bipush 37
      // 22: aaload
      // 23: invokespecial java/lang/IllegalStateException.<init> (Ljava/lang/String;)V
      // 26: athrow
      // 27: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2a: athrow
      // 2b: aload 0
      // 2c: invokevirtual com/l7tech/xml/saml/SamlAssertionV2.isSenderVouches ()Z
      // 2f: ifne 43
      // 32: new java/lang/IllegalStateException
      // 35: dup
      // 36: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 39: bipush 0
      // 3a: aaload
      // 3b: invokespecial java/lang/IllegalStateException.<init> (Ljava/lang/String;)V
      // 3e: athrow
      // 3f: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 42: athrow
      // 43: aload 0
      // 44: aload 1
      // 45: putfield com/l7tech/xml/saml/SamlAssertionV2.j Ljava/security/cert/X509Certificate;
      // 48: return
      // try (0 -> 8): 9 java/lang/IllegalArgumentException
      // try (3 -> 18): 18 java/lang/IllegalArgumentException
      // try (20 -> 30): 30 java/lang/IllegalArgumentException
   }

   @Override
   public Element asElement() {
      return this.e;
   }

   @Override
   public String getElementId() {
      return this.k;
   }

   @Override
   public void verifyEmbeddedIssuerSignature() throws SignatureException {
      try {
         if (!this.hasEmbeddedIssuerSignature()) {
            throw new IllegalStateException(y[14]);
         }
      } catch (CertificateException var18) {
         throw a(var18);
      }

      try {
         String[] var9 = y;
         Element var1 = DomUtils.findOnlyOneChildElementByName(this.e, SoapConstants.DIGSIG_URI, var9[27]);

         try {
            if (var1 == null) {
               throw new SamlAssertion.CausedSignatureException(var9[21]);
            }
         } catch (CertificateException var16) {
            throw a(var16);
         }

         X509Certificate var2 = this.getIssuerCertificate();

         try {
            if (var2 == null) {
               throw new SamlAssertion.CausedSignatureException(y[16]);
            }
         } catch (CertificateException var15) {
            throw a(var15);
         }

         PublicKey var3 = var2.getPublicKey();

         try {
            KeyUsageChecker.requireActivity(KeyUsageActivity.verifyXml, var2);
         } catch (CertificateException var12) {
            throw new SamlAssertion.CausedSignatureException(var12);
         }

         DsigValidity var4 = new SignatureValidityContext.Builder(var1, var3).build().verify();

         try {
            if (!var4.getCoreValidity()) {
               throw new SamlAssertion.CausedSignatureException(y[11] + var4.getInvalidSignatureMessage());
            }
         } catch (CertificateException var14) {
            throw a(var14);
         }

         boolean var5 = false;

         for (Reference var7 : var4.getReferences()) {
            String var8 = DsigUtil.getIdFromReference(var7);
            if (this.getAssertionId().equals(var8)) {
               var5 = true;
               break;
            }
         }

         try {
            if (!var5) {
               throw new SamlAssertion.CausedSignatureException(y[2]);
            }
         } catch (CertificateException var11) {
            throw a(var11);
         }

         try {
            if (!DsigUtil.hasSamlEnvelopedTransform(this.getAssertionId(), var1)) {
               throw new SamlAssertion.CausedSignatureException(y[36]);
            }
         } catch (CertificateException var13) {
            throw a(var13);
         }

         try {
            if (var4.getNumberOfReferences() != 1) {
               throw new SamlAssertion.CausedSignatureException(y[15] + var4.getNumberOfReferences() + y[26]);
            }
         } catch (CertificateException var10) {
            throw a(var10);
         }
      } catch (TooManyChildElementsException var17) {
         throw new SamlAssertion.CausedSignatureException(var17);
      }
   }

   @Override
   public String getNameIdentifierFormat() {
      return this.r;
   }

   @Override
   public String getNameQualifier() {
      return this.s;
   }

   @Override
   public String getNameIdentifierValue() {
      return this.t;
   }

   @Override
   public String getAuthenticationMethod() {
      return this.u;
   }

   @Override
   public boolean isOneTimeUse() {
      return this.n;
   }

   @Override
   public Calendar getIssueInstant() {
      return this.o;
   }

   @Override
   public Calendar getStarts() {
      return this.p;
   }

   @Override
   public Calendar getExpires() {
      return this.q;
   }

   @Override
   public boolean isExpiringSoon(int var1) {
      Calendar var2 = this.getExpires();

      try {
         if (var2 == null) {
            return false;
         }
      } catch (IllegalArgumentException var5) {
         throw a(var5);
      }

      Calendar var3 = Calendar.getInstance(UTC_TIME_ZONE);

      try {
         var3.add(13, var1);
         if (!var2.after(var3)) {
            return true;
         }
      } catch (IllegalArgumentException var4) {
         throw a(var4);
      }

      return false;
   }

   @Override
   public XmlObject getXmlBeansAssertionType() {
      return this.d;
   }

   private Element a(boolean param1) throws InvalidDocumentFormatException {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 0
      // 001: invokevirtual com/l7tech/xml/saml/SamlAssertionV2.asElement ()Lorg/w3c/dom/Element;
      // 004: astore 2
      // 005: aload 2
      // 006: invokeinterface org/w3c/dom/Element.getNamespaceURI ()Ljava/lang/String; 1
      // 00b: astore 3
      // 00c: aload 2
      // 00d: aload 3
      // 00e: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 011: astore 9
      // 013: aload 9
      // 015: bipush 8
      // 017: aaload
      // 018: invokestatic com/l7tech/common/io/XmlUtil.findOnlyOneChildElementByName (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
      // 01b: astore 4
      // 01d: aload 4
      // 01f: ifnonnull 040
      // 022: iload 1
      // 023: ifeq 03e
      // 026: goto 02d
      // 029: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 02c: athrow
      // 02d: new com/l7tech/util/InvalidDocumentFormatException
      // 030: dup
      // 031: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 034: bipush 5
      // 035: aaload
      // 036: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/String;)V
      // 039: athrow
      // 03a: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 03d: athrow
      // 03e: aconst_null
      // 03f: areturn
      // 040: aload 4
      // 042: aload 3
      // 043: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 046: astore 9
      // 048: aload 9
      // 04a: bipush 9
      // 04c: aaload
      // 04d: invokestatic com/l7tech/common/io/XmlUtil.findOnlyOneChildElementByName (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
      // 050: astore 5
      // 052: aload 5
      // 054: ifnonnull 076
      // 057: iload 1
      // 058: ifeq 074
      // 05b: goto 062
      // 05e: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 061: athrow
      // 062: new com/l7tech/util/InvalidDocumentFormatException
      // 065: dup
      // 066: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 069: bipush 38
      // 06b: aaload
      // 06c: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/String;)V
      // 06f: athrow
      // 070: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 073: athrow
      // 074: aconst_null
      // 075: areturn
      // 076: aload 5
      // 078: aload 3
      // 079: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 07c: astore 9
      // 07e: aload 9
      // 080: bipush 18
      // 082: aaload
      // 083: invokestatic com/l7tech/common/io/XmlUtil.findOnlyOneChildElementByName (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
      // 086: astore 6
      // 088: aload 6
      // 08a: ifnonnull 0ac
      // 08d: iload 1
      // 08e: ifeq 0aa
      // 091: goto 098
      // 094: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 097: athrow
      // 098: new com/l7tech/util/InvalidDocumentFormatException
      // 09b: dup
      // 09c: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 09f: bipush 40
      // 0a1: aaload
      // 0a2: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/String;)V
      // 0a5: athrow
      // 0a6: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0a9: athrow
      // 0aa: aconst_null
      // 0ab: areturn
      // 0ac: aload 6
      // 0ae: getstatic com/l7tech/util/SoapConstants.DIGSIG_URI Ljava/lang/String;
      // 0b1: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 0b4: astore 9
      // 0b6: aload 9
      // 0b8: bipush 13
      // 0ba: aaload
      // 0bb: invokestatic com/l7tech/common/io/XmlUtil.findOnlyOneChildElementByName (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
      // 0be: astore 7
      // 0c0: aload 7
      // 0c2: ifnonnull 0e4
      // 0c5: iload 1
      // 0c6: ifeq 0e2
      // 0c9: goto 0d0
      // 0cc: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0cf: athrow
      // 0d0: new com/l7tech/util/InvalidDocumentFormatException
      // 0d3: dup
      // 0d4: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 0d7: bipush 30
      // 0d9: aaload
      // 0da: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/String;)V
      // 0dd: athrow
      // 0de: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0e1: athrow
      // 0e2: aconst_null
      // 0e3: areturn
      // 0e4: aload 7
      // 0e6: getstatic com/l7tech/util/SoapConstants.XMLENC_NS Ljava/lang/String;
      // 0e9: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 0ec: astore 9
      // 0ee: aload 9
      // 0f0: bipush 31
      // 0f2: aaload
      // 0f3: invokestatic com/l7tech/common/io/XmlUtil.findOnlyOneChildElementByName (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
      // 0f6: astore 8
      // 0f8: aload 8
      // 0fa: ifnonnull 11c
      // 0fd: iload 1
      // 0fe: ifeq 11a
      // 101: goto 108
      // 104: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 107: athrow
      // 108: new com/l7tech/util/InvalidDocumentFormatException
      // 10b: dup
      // 10c: getstatic com/l7tech/xml/saml/SamlAssertionV2.y [Ljava/lang/String;
      // 10f: bipush 25
      // 111: aaload
      // 112: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/String;)V
      // 115: athrow
      // 116: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 119: athrow
      // 11a: aconst_null
      // 11b: areturn
      // 11c: aload 8
      // 11e: areturn
      // try (15 -> 19): 20 com/l7tech/util/InvalidDocumentFormatException
      // try (17 -> 29): 29 com/l7tech/util/InvalidDocumentFormatException
      // try (42 -> 46): 47 com/l7tech/util/InvalidDocumentFormatException
      // try (44 -> 56): 56 com/l7tech/util/InvalidDocumentFormatException
      // try (69 -> 73): 74 com/l7tech/util/InvalidDocumentFormatException
      // try (71 -> 83): 83 com/l7tech/util/InvalidDocumentFormatException
      // try (96 -> 100): 101 com/l7tech/util/InvalidDocumentFormatException
      // try (98 -> 110): 110 com/l7tech/util/InvalidDocumentFormatException
      // try (123 -> 127): 128 com/l7tech/util/InvalidDocumentFormatException
      // try (125 -> 137): 137 com/l7tech/util/InvalidDocumentFormatException
   }

   private String a() {
      String var1;
      if (this.hasEmbeddedIssuerSignature()) {
         X509Certificate var2 = this.getIssuerCertificate();
         String var3 = var2.getSubjectDN().getName();
         var1 = HexUtils.encodeBase64(
            HexUtils.getMd5Digest(
               new byte[][]{
                  this.getAssertionId().getBytes(Charsets.UTF8),
                  var3.getBytes(Charsets.UTF8),
                  BigInteger.valueOf(this.d.getIssueInstant().getTimeInMillis()).toByteArray(),
                  this.d.getSignature().getSignatureValue().getByteArrayValue()
               }
            )
         );
      } else {
         var1 = HexUtils.encodeBase64(
            HexUtils.getMd5Digest(
               new byte[][]{
                  this.getAssertionId().getBytes(Charsets.UTF8),
                  this.a(this.d.getIssuer()).getBytes(Charsets.UTF8),
                  BigInteger.valueOf(this.a(this.d.getIssueInstant())).toByteArray(),
                  this.m.getBytes(Charsets.UTF8),
                  this.a(this.u).getBytes(Charsets.UTF8),
                  this.a(this.g).getBytes(Charsets.UTF8)
               }
            )
         );
      }

      return var1;
   }

   private long a(Calendar var1) {
      long var2 = 0L;
      if (var1 != null) {
         var2 = var1.getTimeInMillis();
      }

      return var2;
   }

   private String a(Object var1) {
      String var2 = "";
      if (var1 != null) {
         var2 = var1.toString();
      }

      return var2;
   }

   private String a(NameIDType param1) {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: new java/lang/StringBuffer
      // 03: dup
      // 04: invokespecial java/lang/StringBuffer.<init> ()V
      // 07: astore 2
      // 08: aload 1
      // 09: ifnull b6
      // 0c: aload 1
      // 0d: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getFormat ()Ljava/lang/String; 1
      // 12: ifnull 35
      // 15: goto 1c
      // 18: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1b: athrow
      // 1c: aload 2
      // 1d: aload 1
      // 1e: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getFormat ()Ljava/lang/String; 1
      // 23: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 26: pop
      // 27: aload 2
      // 28: ldc " "
      // 2a: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 2d: pop
      // 2e: goto 35
      // 31: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 34: athrow
      // 35: aload 1
      // 36: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getNameQualifier ()Ljava/lang/String; 1
      // 3b: ifnull 57
      // 3e: aload 2
      // 3f: aload 1
      // 40: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getNameQualifier ()Ljava/lang/String; 1
      // 45: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 48: pop
      // 49: aload 2
      // 4a: ldc " "
      // 4c: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 4f: pop
      // 50: goto 57
      // 53: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 56: athrow
      // 57: aload 1
      // 58: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getSPNameQualifier ()Ljava/lang/String; 1
      // 5d: ifnull 79
      // 60: aload 2
      // 61: aload 1
      // 62: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getSPNameQualifier ()Ljava/lang/String; 1
      // 67: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 6a: pop
      // 6b: aload 2
      // 6c: ldc " "
      // 6e: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 71: pop
      // 72: goto 79
      // 75: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 78: athrow
      // 79: aload 1
      // 7a: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getSPProvidedID ()Ljava/lang/String; 1
      // 7f: ifnull 9b
      // 82: aload 2
      // 83: aload 1
      // 84: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getSPProvidedID ()Ljava/lang/String; 1
      // 89: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 8c: pop
      // 8d: aload 2
      // 8e: ldc " "
      // 90: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 93: pop
      // 94: goto 9b
      // 97: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 9a: athrow
      // 9b: aload 1
      // 9c: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getStringValue ()Ljava/lang/String; 1
      // a1: ifnull b6
      // a4: aload 2
      // a5: aload 1
      // a6: invokeinterface x0Assertion/oasisNamesTcSAML2/NameIDType.getStringValue ()Ljava/lang/String; 1
      // ab: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // ae: pop
      // af: goto b6
      // b2: invokestatic com/l7tech/xml/saml/SamlAssertionV2.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // b5: athrow
      // b6: aload 2
      // b7: invokevirtual java/lang/StringBuffer.toString ()Ljava/lang/String;
      // ba: invokevirtual java/lang/String.trim ()Ljava/lang/String;
      // bd: areturn
      // try (4 -> 9): 10 java/lang/IllegalArgumentException
      // try (6 -> 21): 22 java/lang/IllegalArgumentException
      // try (24 -> 36): 37 java/lang/IllegalArgumentException
      // try (39 -> 51): 52 java/lang/IllegalArgumentException
      // try (54 -> 66): 67 java/lang/IllegalArgumentException
      // try (69 -> 77): 78 java/lang/IllegalArgumentException
   }

   static {
      String[] var5 = new String[47];
      int var3 = 0;
      String var2 = ")p\u0017s\rD<\u000feY \u0011\u0001o\u000be\r1\n\u0010&\u0004vY1\u0017\u0010&\u001ehY2\u0016\u0016o\u0004~\u0017t*\u0001!\u000et\u000by/\u000b:\ty\u001c'Y\u0005<\u0019t\u000b \u0010\u000b!\nJZ\u001c-0\n)\u0005bW69P4\u0018Y\u0005<\u0019t\u000b \u0010\u000b!Jb\u00103\u0017\u0005;\u001fc\u001ct\u001d\u000b*\u00191\u0017;\rD=\u000fw\u001c&\u001c\n,\u000f1\u0018'\n\u0001=\u001ex\u0016:WZ)~\f8\u001dD!\u0005eY0\u001c\u0010*\u0018|\u0010:\u001cD;\u0002tY'\u0018\t#JR\u0016:\u001f\r=\u0007p\r=\u0016\n\u0002\u000fe\u0011;\u001dDg\u0004t\u0010 \u0011\u0001=Jy\u00168\u001d\u0001=G~\u001fy\u0012\u00016J\u007f\u0016&Y\u0017*\u0004u\u001c&T\u0012 \u001fr\u00111\nM\u0013#UY9\u0010\u0017<\u0003\u007f\u001et\u0016\u0016o\u000f|\t \u0000a.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u001c\u001fs\u00131\u001a\u0010/#\u007f\u000f5\u0015\r+JS\u0018'\u001cR{Jx\u0017t*%\u0002&1\r;\u0012\u0001!Jx\n'\f\u0001=Jr\u001c&\r\r)\u0003r\u0018 \u001c\u0004-~\rt\u00079d\u001b>\u001c\u0007;\u00139d\u001b>\u001c\u0007;)~\u00172\u0010\u0016\"\u000be\u0010;\u0017\u001d9d\u001b>\u001c\u0007;J|\f'\rD'\u000bg\u001ct\u0018D\u0001\u000b|\u001c\u001d=Du`E?\u007f\u00186\u0015\u0001o\u001e~Y\"\u001c\u0016&\fhY'\u0010\u0003!\u000be\f&\u001cD \f1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fCt/\u0005#\u0003u\u0010 \u0000D!\u0005eY5\u001a\f&\u000fg\u001c0WD&?\u007f\u00186\u0015\u0001o\u001e~Y2\u0010\n+JpY'\u0018\t#X1\t&\u001c\u0002&\u00121\u0010:Y\u0017,\u0005a\u001c\u0007!t\u0000\u001d\u0017\u0002 6'p\u0000t\u0017\u000b;Jg\u001c&\u0010\u00026Jb\u00103\u0017\u0005;\u001fc\u001coY\u0010'\u0003bY5\n\u0017*\u0018e\u0010;\u0017D&\u00191\u0017;\rD<\u0003v\u00171\u001d;9P4\u0018Y\u0005<\u0019t\u000b \u0010\u000b!Jb\u00103\u0017\u0005;\u001fc\u001ct\u0011\u0005<Jx\u0017\"\u0018\b&\u000e1\u0017!\u0014\u0006*\u00181\u00162Y\u0016*\ft\u000b1\u0017\u0007*\u00191Q\u001a\u0007x\n'\u0010\n(Jx\n'\f\u0001=Jr\u001c&\r\r)\u0003r\u0018 \u001c%\u001fc\u0017n\u0016\u0005<\u0003bC:\u0018\t*\u0019+\r7C7\u000e']CfWTu\u000bb\n1\u000b\u0010&\u0005\u007f\u00179d\u001b>\u001c\u0007;)~\u00172\u0010\u0016\"\u000be\u0010;\u0017 .\u001ep\u0002M?\u00169t\u001a!\u000b\r;\u0013E\u0016?\u001c\n\u001d\u000fw\u001c&\u001c\n,\u000f\u0019\u0007x\n'\u0010\n(JB\u00103\u0017\u0005;\u001fc\u001ct\u001c\b*\u0007t\u0017 -\u001fc\u0017n\u0016\u0005<\u0003bC:\u0018\t*\u0019+\r7C7\u000e']CfWTu\t|C'\u001c\n+\u000fcT\"\u0016\u0011,\u0002t\n,\u001fc\u0017n\u0016\u0005<\u0003bC:\u0018\t*\u0019+\r7C7\u000e']CfWTu\t|C<\u0016\b+\u000fcT;\u001fI$\u000fh)\u0002e\r$CK`\u001df\u000ez\u000eWa\u0005c\u001e{KT\u007f[>!\u001957,\u0002t\u00145T\r!\u0019e\u0018:\u001a\u0001g.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018\no/\u007f\u001a&\u0000\u0014;\u000fu21\u0000\u0002C?\t9x\u001e:\u0018\u0010:\u0018t\u001cPZ\u001c-0\n)\u0005R\u0016:\u001f\r=\u0007p\r=\u0016\n\u000b\u000be\u0018\u0000\u0000\u0014*.)~\f8\u001dD!\u0005eY2\u0010\n+Je\u00111Y\u0017:\b{\u001c7\rD&\u00041\r<\u001cD.\u0019b\u001c&\r\r \u00041C^a.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u0004\u000fh0:\u001f\u000b\f/\u007f\u001a&\u0000\u0014;\u000fu21\u0000\u0010&~\u0016?\u0010\n(Jw\u0016&Y7\u001b8?A)p\u0017s\rD<\u000feY \u0011\u0001o\u0003b\n!\u001c\u0016o\tt\u000b \u0010\u0002&\tp\r1Y\u0002 \u00181\u0017;\u0017D\u001c\u000f\u007f\u001d1\u000bI\u0019\u0005d\u001a<\u001c\u0017o\u000bb\n1\u000b\u0010&\u0005\u007f :c\u00167\u001c\u0017<\u0003\u007f\u001et2\u00016#\u007f\u001f;Y\u0007 \u0004w\u0010&\u0014\u0005;\u0003~\u0017z+%\u007f\u0015-Y\u000b!\u000f1*!\u001b\u000e*\te:;\u0017\u0002&\u0018|\u0018 \u0010\u000b!J|\u0018-Y\u0006*Ja\u000b1\n\u0001!\u001eC9P4\u0018Y\u0005<\u0019t\u000b \u0010\u000b!Jb\u00103\u0017\u0005;\u001fc\u001ct\u0011\u0005<Jx\u0017\"\u0018\b&\u000e1\r&\u0018\n<\f~\u000b9YL\"\u001fb\rt\u001b\u0001o\u000f\u007f\u000f1\u0015\u000b?\u000fuPzc)p\u0017s\rD<\u000feY \u0011\u0001o\u000be\r1\n\u0010&\u0004vY1\u0017\u0010&\u001ehY7\u001c\u0016;Je\u0016t\u001d\r)\ft\u000b1\u0017\u0010o\tt\u000b Y\u0010'\u000f\u007fY'\f\u0006%\u000fr\rt\u001a\u0001=\u001e1\u001f;\u000bD\u0007\u0005}\u001d1\u000bI\u0000\f<21\u0000D.\u0019b\u001c&\r\r \u0004m.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u001c\u001fs\u00131\u001a\u0010\f\u0005\u007f\u001f=\u000b\t.\u001ex\u0016:\u0002#Uq.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u001c\u001fs\u00131\u001a\u0010\f\u0005\u007f\u001f=\u000b\t.\u001ex\u0016:=\u0005;\u000b$9P4\u0018Y\r<\u0019d\u001c&Y\u0017&\r\u007f\u0018 \f\u0016*Jy\u0018'Y\n JZ\u001c-0\n)\u00051)t\u000b \u0010\u0002&\tp\r1Y\r!JB8\u00195D.\u0019b\u001c&\r\r \u00041\u001a;\f\b+J\u007f\u0016 Y\u0006*Ja\u0018&\n\u0001+\u0018)~\u00172\u0010\u0016\"\u000be\u0010;\u0017D\"\u000fe\u0011;\u001dD&\u00191^E!t\u0000\u001d\u0017\u0002 Jr\u0016:\r\u0005&\u0004t\u001dt\u0018D\u001c\u000fr\f&\u0010\u00106>~\u00121\u00176*\ft\u000b1\u0017\u0007*Js\f Y\r;Jf\u0018'\u0017C;JpY \u0011\u0011\"\ba\u000b=\u0017\u0010";
      int var4 = ")p\u0017s\rD<\u000feY \u0011\u0001o\u000be\r1\n\u0010&\u0004vY1\u0017\u0010&\u001ehY2\u0016\u0016o\u0004~\u0017t*\u0001!\u000et\u000by/\u000b:\ty\u001c'Y\u0005<\u0019t\u000b \u0010\u000b!\nJZ\u001c-0\n)\u0005bW69P4\u0018Y\u0005<\u0019t\u000b \u0010\u000b!Jb\u00103\u0017\u0005;\u001fc\u001ct\u001d\u000b*\u00191\u0017;\rD=\u000fw\u001c&\u001c\n,\u000f1\u0018'\n\u0001=\u001ex\u0016:WZ)~\f8\u001dD!\u0005eY0\u001c\u0010*\u0018|\u0010:\u001cD;\u0002tY'\u0018\t#JR\u0016:\u001f\r=\u0007p\r=\u0016\n\u0002\u000fe\u0011;\u001dDg\u0004t\u0010 \u0011\u0001=Jy\u00168\u001d\u0001=G~\u001fy\u0012\u00016J\u007f\u0016&Y\u0017*\u0004u\u001c&T\u0012 \u001fr\u00111\nM\u0013#UY9\u0010\u0017<\u0003\u007f\u001et\u0016\u0016o\u000f|\t \u0000a.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u001c\u001fs\u00131\u001a\u0010/#\u007f\u000f5\u0015\r+JS\u0018'\u001cR{Jx\u0017t*%\u0002&1\r;\u0012\u0001!Jx\n'\f\u0001=Jr\u001c&\r\r)\u0003r\u0018 \u001c\u0004-~\rt\u00079d\u001b>\u001c\u0007;\u00139d\u001b>\u001c\u0007;)~\u00172\u0010\u0016\"\u000be\u0010;\u0017\u001d9d\u001b>\u001c\u0007;J|\f'\rD'\u000bg\u001ct\u0018D\u0001\u000b|\u001c\u001d=Du`E?\u007f\u00186\u0015\u0001o\u001e~Y\"\u001c\u0016&\fhY'\u0010\u0003!\u000be\f&\u001cD \f1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fCt/\u0005#\u0003u\u0010 \u0000D!\u0005eY5\u001a\f&\u000fg\u001c0WD&?\u007f\u00186\u0015\u0001o\u001e~Y2\u0010\n+JpY'\u0018\t#X1\t&\u001c\u0002&\u00121\u0010:Y\u0017,\u0005a\u001c\u0007!t\u0000\u001d\u0017\u0002 6'p\u0000t\u0017\u000b;Jg\u001c&\u0010\u00026Jb\u00103\u0017\u0005;\u001fc\u001coY\u0010'\u0003bY5\n\u0017*\u0018e\u0010;\u0017D&\u00191\u0017;\rD<\u0003v\u00171\u001d;9P4\u0018Y\u0005<\u0019t\u000b \u0010\u000b!Jb\u00103\u0017\u0005;\u001fc\u001ct\u0011\u0005<Jx\u0017\"\u0018\b&\u000e1\u0017!\u0014\u0006*\u00181\u00162Y\u0016*\ft\u000b1\u0017\u0007*\u00191Q\u001a\u0007x\n'\u0010\n(Jx\n'\f\u0001=Jr\u001c&\r\r)\u0003r\u0018 \u001c%\u001fc\u0017n\u0016\u0005<\u0003bC:\u0018\t*\u0019+\r7C7\u000e']CfWTu\u000bb\n1\u000b\u0010&\u0005\u007f\u00179d\u001b>\u001c\u0007;)~\u00172\u0010\u0016\"\u000be\u0010;\u0017 .\u001ep\u0002M?\u00169t\u001a!\u000b\r;\u0013E\u0016?\u001c\n\u001d\u000fw\u001c&\u001c\n,\u000f\u0019\u0007x\n'\u0010\n(JB\u00103\u0017\u0005;\u001fc\u001ct\u001c\b*\u0007t\u0017 -\u001fc\u0017n\u0016\u0005<\u0003bC:\u0018\t*\u0019+\r7C7\u000e']CfWTu\t|C'\u001c\n+\u000fcT\"\u0016\u0011,\u0002t\n,\u001fc\u0017n\u0016\u0005<\u0003bC:\u0018\t*\u0019+\r7C7\u000e']CfWTu\t|C<\u0016\b+\u000fcT;\u001fI$\u000fh)\u0002e\r$CK`\u001df\u000ez\u000eWa\u0005c\u001e{KT\u007f[>!\u001957,\u0002t\u00145T\r!\u0019e\u0018:\u001a\u0001g.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018\no/\u007f\u001a&\u0000\u0014;\u000fu21\u0000\u0002C?\t9x\u001e:\u0018\u0010:\u0018t\u001cPZ\u001c-0\n)\u0005R\u0016:\u001f\r=\u0007p\r=\u0016\n\u000b\u000be\u0018\u0000\u0000\u0014*.)~\f8\u001dD!\u0005eY2\u0010\n+Je\u00111Y\u0017:\b{\u001c7\rD&\u00041\r<\u001cD.\u0019b\u001c&\r\r \u00041C^a.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u0004\u000fh0:\u001f\u000b\f/\u007f\u001a&\u0000\u0014;\u000fu21\u0000\u0010&~\u0016?\u0010\n(Jw\u0016&Y7\u001b8?A)p\u0017s\rD<\u000feY \u0011\u0001o\u0003b\n!\u001c\u0016o\tt\u000b \u0010\u0002&\tp\r1Y\u0002 \u00181\u0017;\u0017D\u001c\u000f\u007f\u001d1\u000bI\u0019\u0005d\u001a<\u001c\u0017o\u000bb\n1\u000b\u0010&\u0005\u007f :c\u00167\u001c\u0017<\u0003\u007f\u001et2\u00016#\u007f\u001f;Y\u0007 \u0004w\u0010&\u0014\u0005;\u0003~\u0017z+%\u007f\u0015-Y\u000b!\u000f1*!\u001b\u000e*\te:;\u0017\u0002&\u0018|\u0018 \u0010\u000b!J|\u0018-Y\u0006*Ja\u000b1\n\u0001!\u001eC9P4\u0018Y\u0005<\u0019t\u000b \u0010\u000b!Jb\u00103\u0017\u0005;\u001fc\u001ct\u0011\u0005<Jx\u0017\"\u0018\b&\u000e1\r&\u0018\n<\f~\u000b9YL\"\u001fb\rt\u001b\u0001o\u000f\u007f\u000f1\u0015\u000b?\u000fuPzc)p\u0017s\rD<\u000feY \u0011\u0001o\u000be\r1\n\u0010&\u0004vY1\u0017\u0010&\u001ehY7\u001c\u0016;Je\u0016t\u001d\r)\ft\u000b1\u0017\u0010o\tt\u000b Y\u0010'\u000f\u007fY'\f\u0006%\u000fr\rt\u001a\u0001=\u001e1\u001f;\u000bD\u0007\u0005}\u001d1\u000bI\u0000\f<21\u0000D.\u0019b\u001c&\r\r \u0004m.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u001c\u001fs\u00131\u001a\u0010\f\u0005\u007f\u001f=\u000b\t.\u001ex\u0016:\u0002#Uq.t\u000b=\u000f\u0001+!t\u0000t2\u00016#u\u001c:\r\r)\u0003t\u000bt\u000b\u0001)\u000fc\nt\r\u000bo\u000b1*\u00154(o\u000bb\n1\u000b\u0010&\u0005\u007fUt\u001b\u0011;Je\u00111Y\u0005<\u0019t\u000b \u0010\u000b!Ju\u00161\nD!\u0005eY7\u0016\n;\u000bx\u0017t\u0018D\u001c\u001fs\u00131\u001a\u0010\f\u0005\u007f\u001f=\u000b\t.\u001ex\u0016:=\u0005;\u000b$9P4\u0018Y\r<\u0019d\u001c&Y\u0017&\r\u007f\u0018 \f\u0016*Jy\u0018'Y\n JZ\u001c-0\n)\u00051)t\u000b \u0010\u0002&\tp\r1Y\r!JB8\u00195D.\u0019b\u001c&\r\r \u00041\u001a;\f\b+J\u007f\u0016 Y\u0006*Ja\u0018&\n\u0001+\u0018)~\u00172\u0010\u0016\"\u000be\u0010;\u0017D\"\u000fe\u0011;\u001dD&\u00191^E!t\u0000\u001d\u0017\u0002 Jr\u0016:\r\u0005&\u0004t\u001dt\u0018D\u001c\u000fr\f&\u0010\u00106>~\u00121\u00176*\ft\u000b1\u0017\u0007*Js\f Y\r;Jf\u0018'\u0017C;JpY \u0011\u0011\"\ba\u000b=\u0017\u0010"
         .length();
      char var1 = '?';
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 103;
         String var10001 = var2.substring(++var7, var7 + var1);
         byte var10002 = -1;

         while (true) {
            String var8 = c(var10000, c(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     y = var5;
                     c = Logger.getLogger(SamlAssertionV2.class.getName());
                     return;
                  }

                  var1 = var2.charAt(var7);
                  break;
               default:
                  var5[var3++] = var8;
                  if ((var7 += var1) < var4) {
                     var1 = var2.charAt(var7);
                     continue label24;
                  }

                  var2 = "+]<\u00041\u001cA>\u0015%7\u0013<E8\u0004l8\u0014\u007fw\r,\u0000q\u001b,W)\u001388\u00151\u0004/\u000e9=\u001e\u007fJ#\u0015l3\u001f\u007fT-\u0013?4\u001e";
                  var4 = "+]<\u00041\u001cA>\u0015%7\u0013<E8\u0004l8\u0014\u007fw\r,\u0000q\u001b,W)\u001388\u00151\u0004/\u000e9=\u001e\u007fJ#\u0015l3\u001f\u007fT-\u0013?4\u001e"
                     .length();
                  var1 = 4;
                  var7 = -1;
            }

            var10000 = 82;
            var10001 = var2.substring(++var7, var7 + var1);
            var10002 = 0;
         }
      }
   }

   private static Exception a(Exception var0) {
      return var0;
   }

   private static char[] c(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 40);
      }

      return var10000;
   }

   private static String c(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 13;
            case 1 -> 118;
            case 2 -> 30;
            case 3 -> 51;
            case 4 -> 30;
            case 5 -> 3;
            default -> 40;
         });
      }

      return new String(var10001).intern();
   }
}
