package com.l7tech.server;

import com.l7tech.common.io.CertUtils;
import com.l7tech.common.io.XmlUtil;
import com.l7tech.gateway.common.LicenseException;
import com.l7tech.gateway.common.security.keystore.SsgKeyEntry;
import com.l7tech.identity.AuthenticationException;
import com.l7tech.identity.User;
import com.l7tech.identity.UserBean;
import com.l7tech.message.Message;
import com.l7tech.message.TcpKnob;
import com.l7tech.message.XmlKnob;
import com.l7tech.policy.assertion.Assertion;
import com.l7tech.policy.assertion.AssertionStatus;
import com.l7tech.policy.assertion.SslAssertion;
import com.l7tech.policy.assertion.composite.AllAssertion;
import com.l7tech.policy.assertion.composite.OneOrMoreAssertion;
import com.l7tech.policy.assertion.credential.LoginCredentials;
import com.l7tech.policy.assertion.credential.http.HttpBasic;
import com.l7tech.policy.assertion.credential.http.HttpDigest;
import com.l7tech.policy.assertion.credential.wss.WssBasic;
import com.l7tech.policy.assertion.xmlsec.RequireWssSaml;
import com.l7tech.policy.assertion.xmlsec.RequireWssSignedElement;
import com.l7tech.policy.assertion.xmlsec.RequireWssTimestamp;
import com.l7tech.policy.assertion.xmlsec.RequireWssX509Cert;
import com.l7tech.policy.assertion.xmlsec.SecureConversation;
import com.l7tech.security.saml.NameIdentifierInclusionType;
import com.l7tech.security.saml.SamlAssertionGenerator;
import com.l7tech.security.saml.SamlConstants;
import com.l7tech.security.saml.SubjectStatement;
import com.l7tech.security.saml.SamlAssertionGenerator.Options;
import com.l7tech.security.token.XmlSecurityToken;
import com.l7tech.security.xml.KeyInfoInclusionType;
import com.l7tech.security.xml.SecurityTokenResolver;
import com.l7tech.security.xml.XencUtil;
import com.l7tech.security.xml.decorator.DecorationRequirements;
import com.l7tech.security.xml.decorator.DecoratorException;
import com.l7tech.security.xml.decorator.WssDecoratorImpl;
import com.l7tech.security.xml.processor.BadSecurityContextException;
import com.l7tech.security.xml.processor.ProcessorException;
import com.l7tech.security.xml.processor.ProcessorResult;
import com.l7tech.security.xml.processor.X509BinarySecurityTokenImpl;
import com.l7tech.server.message.PolicyEnforcementContext;
import com.l7tech.server.policy.ServerPolicyException;
import com.l7tech.server.policy.ServerPolicyFactory;
import com.l7tech.server.policy.assertion.ServerAssertion;
import com.l7tech.server.secureconversation.InboundSecureConversationContextManager;
import com.l7tech.server.secureconversation.SecureConversationSession;
import com.l7tech.server.secureconversation.SessionCreationException;
import com.l7tech.util.Config;
import com.l7tech.util.DomUtils;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.HexUtils;
import com.l7tech.util.ISO8601Date;
import com.l7tech.util.InvalidDocumentFormatException;
import com.l7tech.util.ResourceUtils;
import com.l7tech.util.SoapConstants;
import com.l7tech.util.SyspropUtil;
import com.l7tech.xml.soap.SoapUtil;
import com.l7tech.xml.xpath.XpathExpression;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.IOException;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.security.GeneralSecurityException;
import java.security.cert.X509Certificate;
import java.util.Arrays;
import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.atomic.AtomicReference;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.regex.Pattern;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ApplicationObjectSupport;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.xml.sax.SAXException;

public class TokenServiceImpl extends ApplicationObjectSupport implements TokenService, PropertyChangeListener {
   private static final Logger a;
   private static final String b;
   private static final String c;
   private static final String d;
   private static final String e;
   private static final String f;
   private static final String g;
   private static final String h;
   private final Config i;
   private final DefaultKey j;
   private final ServerPolicyFactory k;
   private final AtomicReference<ServerAssertion> l = new AtomicReference<>();
   private final SecurityTokenResolver m;
   private final InboundSecureConversationContextManager n;
   private final Pattern o;
   private static final String[] p;

   public TokenServiceImpl(Config var1, DefaultKey var2, ServerPolicyFactory var3, SecurityTokenResolver var4, InboundSecureConversationContextManager var5) {
      String[] var7 = p;
      this.o = Pattern.compile(var7[32]);
      if (var2 == null) {
         throw new IllegalArgumentException(var7[0]);
      }

      this.i = var1;
      this.j = var2;
      this.k = var3;
      this.m = var4;
      this.n = var5;

      try {
         this.a();
      } catch (ServerPolicyException var8) {
         throw new RuntimeException(var8);
      } catch (LicenseException var9) {
         throw new RuntimeException(var9);
      }
   }

   private void a() throws ServerPolicyException, LicenseException {
      boolean var1 = this.i.getBooleanProperty(p[13], true);
      ServerAssertion var2 = this.k.compilePolicy(this.a(var1), false);
      ServerAssertion var3 = this.l.getAndSet(var2);
      ResourceUtils.closeQuietly(var3);
   }

   @Override
   public AssertionStatus respondToSecurityTokenRequest(
      PolicyEnforcementContext param1, TokenService.CredentialsAuthenticator param2, boolean param3, boolean param4
   ) throws InvalidDocumentFormatException, TokenServiceImpl.TokenServiceException, ProcessorException, BadSecurityContextException, GeneralSecurityException, AuthenticationException {
      // $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: getstatic com/l7tech/policy/assertion/AssertionStatus.UNDEFINED Lcom/l7tech/policy/assertion/AssertionStatus;
      // 003: astore 5
      // 005: aconst_null
      // 006: astore 6
      // 008: new com/l7tech/security/xml/processor/WssProcessorImpl
      // 00b: dup
      // 00c: invokespecial com/l7tech/security/xml/processor/WssProcessorImpl.<init> ()V
      // 00f: astore 7
      // 011: aload 1
      // 012: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRequest ()Lcom/l7tech/message/Message; 1
      // 017: invokevirtual com/l7tech/message/Message.getSecurityKnob ()Lcom/l7tech/message/SecurityKnob;
      // 01a: astore 8
      // 01c: aload 7
      // 01e: aload 1
      // 01f: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRequest ()Lcom/l7tech/message/Message; 1
      // 024: aload 0
      // 025: getfield com/l7tech/server/TokenServiceImpl.n Lcom/l7tech/server/secureconversation/InboundSecureConversationContextManager;
      // 028: aload 0
      // 029: getfield com/l7tech/server/TokenServiceImpl.m Lcom/l7tech/security/xml/SecurityTokenResolver;
      // 02c: invokeinterface com/l7tech/security/xml/processor/WssProcessor.undecorateMessage (Lcom/l7tech/message/Message;Lcom/l7tech/security/xml/processor/SecurityContextFinder;Lcom/l7tech/security/xml/SecurityTokenResolver;)Lcom/l7tech/security/xml/processor/ProcessorResult; 4
      // 031: astore 9
      // 033: aload 8
      // 035: aload 9
      // 037: invokeinterface com/l7tech/message/SecurityKnob.setProcessorResult (Lcom/l7tech/security/xml/processor/ProcessorResult;)V 2
      // 03c: goto 061
      // 03f: astore 7
      // 041: getstatic com/l7tech/policy/assertion/AssertionStatus.BAD_REQUEST Lcom/l7tech/policy/assertion/AssertionStatus;
      // 044: astore 5
      // 046: new com/l7tech/security/xml/processor/ProcessorException
      // 049: dup
      // 04a: aload 7
      // 04c: invokespecial com/l7tech/security/xml/processor/ProcessorException.<init> (Ljava/lang/Throwable;)V
      // 04f: athrow
      // 050: astore 7
      // 052: getstatic com/l7tech/policy/assertion/AssertionStatus.BAD_REQUEST Lcom/l7tech/policy/assertion/AssertionStatus;
      // 055: astore 5
      // 057: new com/l7tech/util/InvalidDocumentFormatException
      // 05a: dup
      // 05b: aload 7
      // 05d: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/Throwable;)V
      // 060: athrow
      // 061: aload 0
      // 062: getfield com/l7tech/server/TokenServiceImpl.l Ljava/util/concurrent/atomic/AtomicReference;
      // 065: invokevirtual java/util/concurrent/atomic/AtomicReference.get ()Ljava/lang/Object;
      // 068: checkcast com/l7tech/server/policy/assertion/ServerAssertion
      // 06b: aload 1
      // 06c: invokeinterface com/l7tech/server/policy/assertion/ServerAssertion.checkRequest (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/policy/assertion/AssertionStatus; 2
      // 071: astore 5
      // 073: goto 093
      // 076: astore 7
      // 078: new com/l7tech/security/xml/processor/ProcessorException
      // 07b: dup
      // 07c: aload 7
      // 07e: invokespecial com/l7tech/security/xml/processor/ProcessorException.<init> (Ljava/lang/Throwable;)V
      // 081: athrow
      // 082: astore 7
      // 084: getstatic com/l7tech/policy/assertion/AssertionStatus.FAILED Lcom/l7tech/policy/assertion/AssertionStatus;
      // 087: astore 5
      // 089: new com/l7tech/security/xml/processor/ProcessorException
      // 08c: dup
      // 08d: aload 7
      // 08f: invokespecial com/l7tech/security/xml/processor/ProcessorException.<init> (Ljava/lang/Throwable;)V
      // 092: athrow
      // 093: aload 1
      // 094: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getDefaultAuthenticationContext ()Lcom/l7tech/server/message/AuthenticationContext; 1
      // 099: invokevirtual com/l7tech/server/message/AuthenticationContext.getLastCredentials ()Lcom/l7tech/policy/assertion/credential/LoginCredentials;
      // 09c: astore 7
      // 09e: aconst_null
      // 09f: astore 8
      // 0a1: aload 7
      // 0a3: ifnull 0b0
      // 0a6: aload 2
      // 0a7: aload 7
      // 0a9: invokeinterface com/l7tech/server/TokenService$CredentialsAuthenticator.authenticate (Lcom/l7tech/policy/assertion/credential/LoginCredentials;)Lcom/l7tech/identity/User; 2
      // 0ae: astore 8
      // 0b0: aload 8
      // 0b2: ifnonnull 21c
      // 0b5: getstatic com/l7tech/policy/assertion/AssertionStatus.AUTH_FAILED Lcom/l7tech/policy/assertion/AssertionStatus;
      // 0b8: astore 5
      // 0ba: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 0bd: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 0c0: astore 19
      // 0c2: aload 19
      // 0c4: bipush 82
      // 0c6: aaload
      // 0c7: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 0ca: new com/l7tech/xml/SoapFaultLevel
      // 0cd: dup
      // 0ce: invokespecial com/l7tech/xml/SoapFaultLevel.<init> ()V
      // 0d1: astore 9
      // 0d3: aload 9
      // 0d5: bipush 1
      // 0d6: invokevirtual com/l7tech/xml/SoapFaultLevel.setLevel (I)V
      // 0d9: aload 1
      // 0da: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getService ()Lcom/l7tech/gateway/common/service/PublishedService; 1
      // 0df: ifnull 10a
      // 0e2: aload 1
      // 0e3: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getService ()Lcom/l7tech/gateway/common/service/PublishedService; 1
      // 0e8: invokevirtual com/l7tech/gateway/common/service/PublishedService.getSoapVersion ()Lcom/l7tech/xml/soap/SoapVersion;
      // 0eb: getstatic com/l7tech/xml/soap/SoapVersion.SOAP_1_2 Lcom/l7tech/xml/soap/SoapVersion;
      // 0ee: if_acmpne 10a
      // 0f1: goto 0f8
      // 0f4: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0f7: athrow
      // 0f8: aload 9
      // 0fa: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 0fd: bipush 71
      // 0ff: aaload
      // 100: invokevirtual com/l7tech/xml/SoapFaultLevel.setFaultTemplate (Ljava/lang/String;)V
      // 103: goto 119
      // 106: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 109: athrow
      // 10a: aload 9
      // 10c: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 10f: astore 19
      // 111: aload 19
      // 113: bipush 69
      // 115: aaload
      // 116: invokevirtual com/l7tech/xml/SoapFaultLevel.setFaultTemplate (Ljava/lang/String;)V
      // 119: aload 1
      // 11a: aload 9
      // 11c: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.setFaultlevel (Lcom/l7tech/xml/SoapFaultLevel;)V 2
      // 121: aload 5
      // 123: astore 10
      // 125: aload 6
      // 127: ifnonnull 141
      // 12a: aload 5
      // 12c: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 12f: if_acmpne 141
      // 132: goto 139
      // 135: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 138: athrow
      // 139: bipush 1
      // 13a: goto 142
      // 13d: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 140: athrow
      // 141: bipush 0
      // 142: istore 11
      // 144: iload 11
      // 146: ifeq 156
      // 149: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 14c: bipush 55
      // 14e: aaload
      // 14f: goto 160
      // 152: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 155: athrow
      // 156: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 159: astore 19
      // 15b: aload 19
      // 15d: bipush 61
      // 15f: aaload
      // 160: astore 12
      // 162: iload 11
      // 164: ifne 1c9
      // 167: aload 6
      // 169: instanceof com/l7tech/server/TokenServiceImpl$TokenServiceException
      // 16c: ifeq 192
      // 16f: goto 176
      // 172: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 175: athrow
      // 176: aload 12
      // 178: aload 6
      // 17a: invokevirtual java/lang/Throwable.getMessage ()Ljava/lang/String;
      // 17d: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 180: astore 19
      // 182: aload 19
      // 184: bipush 51
      // 186: aaload
      // 187: swap
      // 188: 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" ]
      // 18d: astore 12
      // 18f: goto 1c9
      // 192: aload 5
      // 194: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 197: if_acmpeq 1b6
      // 19a: aload 12
      // 19c: aload 5
      // 19e: invokevirtual com/l7tech/policy/assertion/AssertionStatus.getMessage ()Ljava/lang/String;
      // 1a1: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 1a4: astore 19
      // 1a6: aload 19
      // 1a8: bipush 33
      // 1aa: aaload
      // 1ab: swap
      // 1ac: 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" ]
      // 1b1: astore 12
      // 1b3: goto 1c9
      // 1b6: aload 12
      // 1b8: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 1bb: astore 19
      // 1bd: aload 19
      // 1bf: bipush 64
      // 1c1: aaload
      // 1c2: 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" ]
      // 1c7: astore 12
      // 1c9: aload 0
      // 1ca: aload 1
      // 1cb: invokevirtual com/l7tech/server/TokenServiceImpl.c (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/identity/User;
      // 1ce: astore 13
      // 1d0: aload 0
      // 1d1: invokevirtual com/l7tech/server/TokenServiceImpl.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 1d4: new com/l7tech/server/event/system/TokenServiceEvent
      // 1d7: dup
      // 1d8: aload 0
      // 1d9: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 1dc: aload 0
      // 1dd: aload 1
      // 1de: invokevirtual com/l7tech/server/TokenServiceImpl.b (Lcom/l7tech/server/message/PolicyEnforcementContext;)Ljava/lang/String;
      // 1e1: aload 12
      // 1e3: aload 13
      // 1e5: invokeinterface com/l7tech/identity/User.getProviderId ()Lcom/l7tech/objectmodel/Goid; 1
      // 1ea: aload 0
      // 1eb: aload 13
      // 1ed: invokevirtual com/l7tech/server/TokenServiceImpl.a (Lcom/l7tech/identity/User;)Ljava/lang/String;
      // 1f0: aload 13
      // 1f2: invokeinterface com/l7tech/identity/User.getId ()Ljava/lang/String; 1
      // 1f7: invokespecial com/l7tech/server/event/system/TokenServiceEvent.<init> (Ljava/lang/Object;Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Lcom/l7tech/objectmodel/Goid;Ljava/lang/String;Ljava/lang/String;)V
      // 1fa: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 1ff: goto 219
      // 202: astore 11
      // 204: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 207: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 20a: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 20d: astore 19
      // 20f: aload 19
      // 211: bipush 73
      // 213: aaload
      // 214: aload 11
      // 216: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 219: aload 10
      // 21b: areturn
      // 21c: aload 1
      // 21d: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getDefaultAuthenticationContext ()Lcom/l7tech/server/message/AuthenticationContext; 1
      // 222: new com/l7tech/server/identity/AuthenticationResult
      // 225: dup
      // 226: aload 8
      // 228: aload 7
      // 22a: invokevirtual com/l7tech/policy/assertion/credential/LoginCredentials.getSecurityTokens ()[Lcom/l7tech/security/token/SecurityToken;
      // 22d: aconst_null
      // 22e: bipush 0
      // 22f: invokespecial com/l7tech/server/identity/AuthenticationResult.<init> (Lcom/l7tech/identity/User;[Lcom/l7tech/security/token/SecurityToken;Ljava/security/cert/X509Certificate;Z)V
      // 232: invokevirtual com/l7tech/server/message/AuthenticationContext.addAuthenticationResult (Lcom/l7tech/server/identity/AuthenticationResult;)V
      // 235: aload 5
      // 237: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 23a: if_acmpeq 357
      // 23d: aload 5
      // 23f: invokestatic java/lang/String.valueOf (Ljava/lang/Object;)Ljava/lang/String;
      // 242: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 245: astore 19
      // 247: aload 19
      // 249: bipush 39
      // 24b: aaload
      // 24c: swap
      // 24d: 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" ]
      // 252: astore 9
      // 254: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 257: aload 9
      // 259: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 25c: aload 5
      // 25e: astore 10
      // 260: aload 6
      // 262: ifnonnull 27c
      // 265: aload 5
      // 267: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 26a: if_acmpne 27c
      // 26d: goto 274
      // 270: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 273: athrow
      // 274: bipush 1
      // 275: goto 27d
      // 278: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 27b: athrow
      // 27c: bipush 0
      // 27d: istore 11
      // 27f: iload 11
      // 281: ifeq 291
      // 284: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 287: bipush 66
      // 289: aaload
      // 28a: goto 29b
      // 28d: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 290: athrow
      // 291: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 294: astore 19
      // 296: aload 19
      // 298: bipush 43
      // 29a: aaload
      // 29b: astore 12
      // 29d: iload 11
      // 29f: ifne 304
      // 2a2: aload 6
      // 2a4: instanceof com/l7tech/server/TokenServiceImpl$TokenServiceException
      // 2a7: ifeq 2cd
      // 2aa: goto 2b1
      // 2ad: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2b0: athrow
      // 2b1: aload 12
      // 2b3: aload 6
      // 2b5: invokevirtual java/lang/Throwable.getMessage ()Ljava/lang/String;
      // 2b8: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 2bb: astore 19
      // 2bd: aload 19
      // 2bf: bipush 33
      // 2c1: aaload
      // 2c2: swap
      // 2c3: 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" ]
      // 2c8: astore 12
      // 2ca: goto 304
      // 2cd: aload 5
      // 2cf: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 2d2: if_acmpeq 2f1
      // 2d5: aload 12
      // 2d7: aload 5
      // 2d9: invokevirtual com/l7tech/policy/assertion/AssertionStatus.getMessage ()Ljava/lang/String;
      // 2dc: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 2df: astore 19
      // 2e1: aload 19
      // 2e3: bipush 33
      // 2e5: aaload
      // 2e6: swap
      // 2e7: 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" ]
      // 2ec: astore 12
      // 2ee: goto 304
      // 2f1: aload 12
      // 2f3: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 2f6: astore 19
      // 2f8: aload 19
      // 2fa: bipush 56
      // 2fc: aaload
      // 2fd: 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" ]
      // 302: astore 12
      // 304: aload 0
      // 305: aload 1
      // 306: invokevirtual com/l7tech/server/TokenServiceImpl.c (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/identity/User;
      // 309: astore 13
      // 30b: aload 0
      // 30c: invokevirtual com/l7tech/server/TokenServiceImpl.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 30f: new com/l7tech/server/event/system/TokenServiceEvent
      // 312: dup
      // 313: aload 0
      // 314: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 317: aload 0
      // 318: aload 1
      // 319: invokevirtual com/l7tech/server/TokenServiceImpl.b (Lcom/l7tech/server/message/PolicyEnforcementContext;)Ljava/lang/String;
      // 31c: aload 12
      // 31e: aload 13
      // 320: invokeinterface com/l7tech/identity/User.getProviderId ()Lcom/l7tech/objectmodel/Goid; 1
      // 325: aload 0
      // 326: aload 13
      // 328: invokevirtual com/l7tech/server/TokenServiceImpl.a (Lcom/l7tech/identity/User;)Ljava/lang/String;
      // 32b: aload 13
      // 32d: invokeinterface com/l7tech/identity/User.getId ()Ljava/lang/String; 1
      // 332: invokespecial com/l7tech/server/event/system/TokenServiceEvent.<init> (Ljava/lang/Object;Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Lcom/l7tech/objectmodel/Goid;Ljava/lang/String;Ljava/lang/String;)V
      // 335: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 33a: goto 354
      // 33d: astore 11
      // 33f: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 342: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 345: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 348: astore 19
      // 34a: aload 19
      // 34c: bipush 8
      // 34e: aaload
      // 34f: aload 11
      // 351: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 354: aload 10
      // 356: areturn
      // 357: aload 0
      // 358: aload 1
      // 359: invokevirtual com/l7tech/server/TokenServiceImpl.a (Lcom/l7tech/server/message/PolicyEnforcementContext;)Ljava/util/Map;
      // 35c: astore 9
      // 35e: aload 0
      // 35f: aload 9
      // 361: invokevirtual com/l7tech/server/TokenServiceImpl.a (Ljava/util/Map;)Z
      // 364: ifeq 378
      // 367: aload 0
      // 368: aload 9
      // 36a: aload 1
      // 36b: aload 8
      // 36d: getstatic com/l7tech/util/SoapConstants.WSSC_NAMESPACE Ljava/lang/String;
      // 370: invokevirtual com/l7tech/server/TokenServiceImpl.a (Ljava/util/Map;Lcom/l7tech/server/message/PolicyEnforcementContext;Lcom/l7tech/identity/User;Ljava/lang/String;)Lorg/w3c/dom/Document;
      // 373: astore 10
      // 375: goto 3df
      // 378: aload 0
      // 379: aload 9
      // 37b: invokevirtual com/l7tech/server/TokenServiceImpl.b (Ljava/util/Map;)Z
      // 37e: ifeq 392
      // 381: aload 0
      // 382: aload 9
      // 384: aload 1
      // 385: aload 8
      // 387: getstatic com/l7tech/util/SoapConstants.WSSC_NAMESPACE2 Ljava/lang/String;
      // 38a: invokevirtual com/l7tech/server/TokenServiceImpl.a (Ljava/util/Map;Lcom/l7tech/server/message/PolicyEnforcementContext;Lcom/l7tech/identity/User;Ljava/lang/String;)Lorg/w3c/dom/Document;
      // 38d: astore 10
      // 38f: goto 3df
      // 392: aload 0
      // 393: aload 9
      // 395: invokevirtual com/l7tech/server/TokenServiceImpl.c (Ljava/util/Map;)Z
      // 398: ifeq 3ad
      // 39b: aload 0
      // 39c: aload 9
      // 39e: getstatic com/l7tech/security/saml/SamlConstants.NS_SAML2 Ljava/lang/String;
      // 3a1: aload 1
      // 3a2: iload 3
      // 3a3: iload 4
      // 3a5: invokevirtual com/l7tech/server/TokenServiceImpl.a (Ljava/util/Map;Ljava/lang/String;Lcom/l7tech/server/message/PolicyEnforcementContext;ZZ)Lorg/w3c/dom/Document;
      // 3a8: astore 10
      // 3aa: goto 3df
      // 3ad: aload 0
      // 3ae: aload 9
      // 3b0: invokevirtual com/l7tech/server/TokenServiceImpl.d (Ljava/util/Map;)Z
      // 3b3: ifeq 3c8
      // 3b6: aload 0
      // 3b7: aload 9
      // 3b9: getstatic com/l7tech/security/saml/SamlConstants.NS_SAML Ljava/lang/String;
      // 3bc: aload 1
      // 3bd: iload 3
      // 3be: iload 4
      // 3c0: invokevirtual com/l7tech/server/TokenServiceImpl.a (Ljava/util/Map;Ljava/lang/String;Lcom/l7tech/server/message/PolicyEnforcementContext;ZZ)Lorg/w3c/dom/Document;
      // 3c3: astore 10
      // 3c5: goto 3df
      // 3c8: getstatic com/l7tech/policy/assertion/AssertionStatus.BAD_REQUEST Lcom/l7tech/policy/assertion/AssertionStatus;
      // 3cb: astore 5
      // 3cd: new com/l7tech/util/InvalidDocumentFormatException
      // 3d0: dup
      // 3d1: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 3d4: astore 19
      // 3d6: aload 19
      // 3d8: bipush 14
      // 3da: aaload
      // 3db: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/String;)V
      // 3de: athrow
      // 3df: aload 1
      // 3e0: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getResponse ()Lcom/l7tech/message/Message; 1
      // 3e5: aload 10
      // 3e7: invokestatic com/l7tech/message/Message.getMaxBytes ()J
      // 3ea: invokevirtual com/l7tech/message/Message.initialize (Lorg/w3c/dom/Document;J)V
      // 3ed: aload 5
      // 3ef: astore 11
      // 3f1: aload 6
      // 3f3: ifnonnull 40d
      // 3f6: aload 5
      // 3f8: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 3fb: if_acmpne 40d
      // 3fe: goto 405
      // 401: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 404: athrow
      // 405: bipush 1
      // 406: goto 40e
      // 409: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 40c: athrow
      // 40d: bipush 0
      // 40e: istore 12
      // 410: iload 12
      // 412: ifeq 422
      // 415: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 418: bipush 66
      // 41a: aaload
      // 41b: goto 42c
      // 41e: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 421: athrow
      // 422: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 425: astore 19
      // 427: aload 19
      // 429: bipush 43
      // 42b: aaload
      // 42c: astore 13
      // 42e: iload 12
      // 430: ifne 495
      // 433: aload 6
      // 435: instanceof com/l7tech/server/TokenServiceImpl$TokenServiceException
      // 438: ifeq 45e
      // 43b: goto 442
      // 43e: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 441: athrow
      // 442: aload 13
      // 444: aload 6
      // 446: invokevirtual java/lang/Throwable.getMessage ()Ljava/lang/String;
      // 449: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 44c: astore 19
      // 44e: aload 19
      // 450: bipush 33
      // 452: aaload
      // 453: swap
      // 454: 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" ]
      // 459: astore 13
      // 45b: goto 495
      // 45e: aload 5
      // 460: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 463: if_acmpeq 482
      // 466: aload 13
      // 468: aload 5
      // 46a: invokevirtual com/l7tech/policy/assertion/AssertionStatus.getMessage ()Ljava/lang/String;
      // 46d: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 470: astore 19
      // 472: aload 19
      // 474: bipush 33
      // 476: aaload
      // 477: swap
      // 478: 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" ]
      // 47d: astore 13
      // 47f: goto 495
      // 482: aload 13
      // 484: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 487: astore 19
      // 489: aload 19
      // 48b: bipush 56
      // 48d: aaload
      // 48e: 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" ]
      // 493: astore 13
      // 495: aload 0
      // 496: aload 1
      // 497: invokevirtual com/l7tech/server/TokenServiceImpl.c (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/identity/User;
      // 49a: astore 14
      // 49c: aload 0
      // 49d: invokevirtual com/l7tech/server/TokenServiceImpl.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 4a0: new com/l7tech/server/event/system/TokenServiceEvent
      // 4a3: dup
      // 4a4: aload 0
      // 4a5: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 4a8: aload 0
      // 4a9: aload 1
      // 4aa: invokevirtual com/l7tech/server/TokenServiceImpl.b (Lcom/l7tech/server/message/PolicyEnforcementContext;)Ljava/lang/String;
      // 4ad: aload 13
      // 4af: aload 14
      // 4b1: invokeinterface com/l7tech/identity/User.getProviderId ()Lcom/l7tech/objectmodel/Goid; 1
      // 4b6: aload 0
      // 4b7: aload 14
      // 4b9: invokevirtual com/l7tech/server/TokenServiceImpl.a (Lcom/l7tech/identity/User;)Ljava/lang/String;
      // 4bc: aload 14
      // 4be: invokeinterface com/l7tech/identity/User.getId ()Ljava/lang/String; 1
      // 4c3: invokespecial com/l7tech/server/event/system/TokenServiceEvent.<init> (Ljava/lang/Object;Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Lcom/l7tech/objectmodel/Goid;Ljava/lang/String;Ljava/lang/String;)V
      // 4c6: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 4cb: goto 4e5
      // 4ce: astore 12
      // 4d0: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 4d3: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 4d6: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 4d9: astore 19
      // 4db: aload 19
      // 4dd: bipush 8
      // 4df: aaload
      // 4e0: aload 12
      // 4e2: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 4e5: aload 11
      // 4e7: areturn
      // 4e8: astore 7
      // 4ea: aload 7
      // 4ec: astore 6
      // 4ee: aload 7
      // 4f0: athrow
      // 4f1: astore 7
      // 4f3: aload 7
      // 4f5: astore 6
      // 4f7: aload 7
      // 4f9: athrow
      // 4fa: astore 15
      // 4fc: aload 6
      // 4fe: ifnonnull 518
      // 501: aload 5
      // 503: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 506: if_acmpne 518
      // 509: goto 510
      // 50c: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 50f: athrow
      // 510: bipush 1
      // 511: goto 519
      // 514: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 517: athrow
      // 518: bipush 0
      // 519: istore 16
      // 51b: iload 16
      // 51d: ifeq 52d
      // 520: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 523: bipush 66
      // 525: aaload
      // 526: goto 537
      // 529: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 52c: athrow
      // 52d: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 530: astore 19
      // 532: aload 19
      // 534: bipush 43
      // 536: aaload
      // 537: astore 17
      // 539: iload 16
      // 53b: ifne 5a0
      // 53e: aload 6
      // 540: instanceof com/l7tech/server/TokenServiceImpl$TokenServiceException
      // 543: ifeq 569
      // 546: goto 54d
      // 549: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 54c: athrow
      // 54d: aload 17
      // 54f: aload 6
      // 551: invokevirtual java/lang/Throwable.getMessage ()Ljava/lang/String;
      // 554: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 557: astore 19
      // 559: aload 19
      // 55b: bipush 33
      // 55d: aaload
      // 55e: swap
      // 55f: 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" ]
      // 564: astore 17
      // 566: goto 5a0
      // 569: aload 5
      // 56b: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 56e: if_acmpeq 58d
      // 571: aload 17
      // 573: aload 5
      // 575: invokevirtual com/l7tech/policy/assertion/AssertionStatus.getMessage ()Ljava/lang/String;
      // 578: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 57b: astore 19
      // 57d: aload 19
      // 57f: bipush 33
      // 581: aaload
      // 582: swap
      // 583: 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" ]
      // 588: astore 17
      // 58a: goto 5a0
      // 58d: aload 17
      // 58f: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 592: astore 19
      // 594: aload 19
      // 596: bipush 56
      // 598: aaload
      // 599: 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" ]
      // 59e: astore 17
      // 5a0: aload 0
      // 5a1: aload 1
      // 5a2: invokevirtual com/l7tech/server/TokenServiceImpl.c (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/identity/User;
      // 5a5: astore 18
      // 5a7: aload 0
      // 5a8: invokevirtual com/l7tech/server/TokenServiceImpl.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 5ab: new com/l7tech/server/event/system/TokenServiceEvent
      // 5ae: dup
      // 5af: aload 0
      // 5b0: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 5b3: aload 0
      // 5b4: aload 1
      // 5b5: invokevirtual com/l7tech/server/TokenServiceImpl.b (Lcom/l7tech/server/message/PolicyEnforcementContext;)Ljava/lang/String;
      // 5b8: aload 17
      // 5ba: aload 18
      // 5bc: invokeinterface com/l7tech/identity/User.getProviderId ()Lcom/l7tech/objectmodel/Goid; 1
      // 5c1: aload 0
      // 5c2: aload 18
      // 5c4: invokevirtual com/l7tech/server/TokenServiceImpl.a (Lcom/l7tech/identity/User;)Ljava/lang/String;
      // 5c7: aload 18
      // 5c9: invokeinterface com/l7tech/identity/User.getId ()Ljava/lang/String; 1
      // 5ce: invokespecial com/l7tech/server/event/system/TokenServiceEvent.<init> (Ljava/lang/Object;Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Lcom/l7tech/objectmodel/Goid;Ljava/lang/String;Ljava/lang/String;)V
      // 5d1: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 5d6: goto 5ec
      // 5d9: astore 16
      // 5db: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 5de: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 5e1: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 5e4: bipush 8
      // 5e6: aaload
      // 5e7: aload 16
      // 5e9: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 5ec: aload 15
      // 5ee: athrow
      // try (4 -> 24): 25 java/io/IOException
      // try (4 -> 24): 33 org/xml/sax/SAXException
      // try (41 -> 48): 49 java/io/IOException
      // try (41 -> 48): 55 com/l7tech/policy/assertion/PolicyAssertionException
      // try (152 -> 157): 158 java/io/IOException
      // try (138 -> 144): 144 java/io/IOException
      // try (126 -> 134): 134 java/io/IOException
      // try (124 -> 129): 130 java/io/IOException
      // try (96 -> 110): 110 java/io/IOException
      // try (90 -> 101): 102 java/io/IOException
      // try (124 -> 218): 219 java/lang/Exception
      // try (288 -> 293): 294 java/io/IOException
      // try (274 -> 280): 280 java/io/IOException
      // try (262 -> 270): 270 java/io/IOException
      // try (260 -> 265): 266 java/io/IOException
      // try (260 -> 354): 355 java/lang/Exception
      // try (467 -> 472): 473 java/io/IOException
      // try (453 -> 459): 459 java/io/IOException
      // try (441 -> 449): 449 java/io/IOException
      // try (439 -> 444): 445 java/io/IOException
      // try (439 -> 533): 534 java/lang/Exception
      // try (4 -> 124): 546 java/security/GeneralSecurityException
      // try (231 -> 260): 546 java/security/GeneralSecurityException
      // try (367 -> 439): 546 java/security/GeneralSecurityException
      // try (4 -> 124): 551 com/l7tech/server/TokenServiceImpl$TokenServiceException
      // try (231 -> 260): 551 com/l7tech/server/TokenServiceImpl$TokenServiceException
      // try (367 -> 439): 551 com/l7tech/server/TokenServiceImpl$TokenServiceException
      // try (4 -> 124): 556 null
      // try (231 -> 260): 556 null
      // try (367 -> 439): 556 null
      // try (585 -> 590): 591 java/io/IOException
      // try (571 -> 577): 577 java/io/IOException
      // try (559 -> 567): 567 java/io/IOException
      // try (557 -> 562): 563 java/io/IOException
      // try (557 -> 651): 652 java/lang/Exception
      // try (546 -> 557): 556 null
   }

   @Override
   public void propertyChange(PropertyChangeEvent 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: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 03: bipush 60
      // 05: aaload
      // 06: aload 1
      // 07: invokevirtual java/beans/PropertyChangeEvent.getPropertyName ()Ljava/lang/String;
      // 0a: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 0d: ifne 27
      // 10: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 13: bipush 47
      // 15: aaload
      // 16: aload 1
      // 17: invokevirtual java/beans/PropertyChangeEvent.getPropertyName ()Ljava/lang/String;
      // 1a: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 1d: ifeq 65
      // 20: goto 27
      // 23: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 26: athrow
      // 27: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 2a: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 2d: bipush 27
      // 2f: aaload
      // 30: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 33: aload 0
      // 34: invokevirtual com/l7tech/server/TokenServiceImpl.a ()V
      // 37: goto 65
      // 3a: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3d: athrow
      // 3e: astore 2
      // 3f: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 42: getstatic java/util/logging/Level.SEVERE Ljava/util/logging/Level;
      // 45: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 48: astore 3
      // 49: aload 3
      // 4a: bipush 9
      // 4c: aaload
      // 4d: aload 2
      // 4e: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 51: goto 65
      // 54: astore 2
      // 55: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 58: getstatic java/util/logging/Level.SEVERE Ljava/util/logging/Level;
      // 5b: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 5e: bipush 7
      // 60: aaload
      // 61: aload 2
      // 62: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 65: return
      // try (0 -> 14): 15 com/l7tech/server/policy/ServerPolicyException
      // try (22 -> 24): 27 com/l7tech/server/policy/ServerPolicyException
      // try (22 -> 24): 38 com/l7tech/gateway/common/LicenseException
      // try (7 -> 25): 25 java/lang/IllegalArgumentException
   }

   private Assertion a(boolean var1) {
      AllAssertion var2 = new AllAssertion();
      OneOrMoreAssertion var3 = new OneOrMoreAssertion();
      AllAssertion var4 = new AllAssertion();
      OneOrMoreAssertion var5 = new OneOrMoreAssertion();

      try {
         var5.addChild(new RequireWssX509Cert());
         var5.addChild(new RequireWssSaml());
         var5.addChild(new SecureConversation());
         var4.addChild(var5);
         if (var1) {
            var4.addChild(RequireWssTimestamp.newInstance());
         }
      } catch (IllegalArgumentException var13) {
         throw a(var13);
      }

      OneOrMoreAssertion var6 = new OneOrMoreAssertion();
      String[] var11 = p;
      var6.addChild(new RequireWssSignedElement(new XpathExpression(var11[76], "s", var11[29])));
      var6.addChild(new RequireWssSignedElement(new XpathExpression(var11[30], "s", var11[77])));
      var4.addChild(var6);
      AllAssertion var7 = new AllAssertion();
      var7.addChild(new SslAssertion());
      OneOrMoreAssertion var8 = new OneOrMoreAssertion();
      var8.addChild(new HttpBasic());
      var8.addChild(new WssBasic());
      boolean var9 = this.i.getBooleanProperty(var11[52], false);

      try {
         if (var9) {
            var8.addChild(new HttpDigest());
         }
      } catch (IllegalArgumentException var12) {
         throw a(var12);
      }

      var8.addChild(new SslAssertion(true));
      RequireWssSaml var10 = new RequireWssSaml();
      var8.addChild(var10);
      var7.addChild(var8);
      var3.addChild(var4);
      var3.addChild(var7);
      var2.addChild(var3);
      Assertion.filterOutDisabledAssertions(var3);
      a.fine(p[50] + var2.toString());
      return var2;
   }

   private Document a(Map<String, String> var1, String var2, PolicyEnforcementContext var3, boolean var4, boolean var5) throws TokenServiceImpl.TokenServiceException, GeneralSecurityException {
      String var6 = null;
      TcpKnob var7 = var3.getRequest().getTcpKnob();
      if (var7 != null) {
         var6 = var7.getRemoteAddress();
      }

      LoginCredentials var8 = var3.getDefaultAuthenticationContext().getLastCredentials();
      Options var9 = new Options();

      label77: {
         UnknownHostException var10;
         try {
            if (var6 == null) {
               break label77;
            }

            try {
               var9.setClientAddress(InetAddress.getByName(var6));
               break label77;
            } catch (UnknownHostException var24) {
               var10 = var24;
            }
         } catch (SAXException var25) {
            throw a(var25);
         }

         String[] var17 = p;
         throw new TokenServiceImpl.TokenServiceException(var17[72], var10);
      }

      Options var10000;
      KeyInfoInclusionType var10001;
      label69: {
         try {
            var10000 = var9;
            if (var4) {
               var10001 = KeyInfoInclusionType.STR_THUMBPRINT;
               break label69;
            }
         } catch (UnknownHostException var23) {
            throw a(var23);
         }

         var10001 = KeyInfoInclusionType.CERT;
      }

      try {
         var10000.setIssuerKeyInfoType(var10001);
         var9.setSignAssertion(true);
         if (SamlConstants.NS_SAML2.equals(var2)) {
            var9.setVersion(2);
         }
      } catch (UnknownHostException var22) {
         throw a(var22);
      }

      SsgKeyEntry var26;
      try {
         var26 = this.j.getServerSslInfo();
      } catch (IOException var20) {
         String var10003 = ExceptionUtils.getMessage(var20);
         String[] var30 = p;
         throw new TokenServiceImpl.TokenServiceException(var30[11] + var10003, var20);
      }

      label56: {
         try {
            if (var5) {
               var34 = KeyInfoInclusionType.STR_THUMBPRINT;
               break label56;
            }
         } catch (UnknownHostException var21) {
            throw a(var21);
         }

         var34 = KeyInfoInclusionType.CERT;
      }

      KeyInfoInclusionType var11 = var34;
      SubjectStatement var12 = SubjectStatement.createAuthenticationStatement(
         var8, SubjectStatement.HOLDER_OF_KEY, var11, NameIdentifierInclusionType.FROM_CREDS, null, null, null, null
      );
      if (this.getApplicationContext() != null) {
         ApplicationContext var35 = this.getApplicationContext();
         String[] var31 = p;
         Config var13 = (Config)var35.getBean(var31[31]);
         if (var13 != null) {
            int var14 = var13.getIntProperty(var31[67], 2);
            var9.setNotBeforeSeconds(var14 * 60);
            SyspropUtil.setProperty(SamlAssertionGenerator.BEFORE_OFFSET_SYSTEM_PROPERTY, Integer.toString(var14));
            int var15 = var13.getIntProperty(var31[62], 5);
            var9.setNotAfterSeconds(var15 * 60);
            SyspropUtil.setProperty(SamlAssertionGenerator.AFTER_OFFSET_SYSTEM_PROPERTY, Integer.toString(var15));
         }
      }

      SamlAssertionGenerator var27 = new SamlAssertionGenerator(var26);
      Document var28 = var27.createAssertion(var12, var9);
      String[] var32 = p;
      StringBuilder var29 = new StringBuilder(a((String)var1.get(var32[85]), (String)var1.get(var32[70]), (String)var1.get(var32[78])));

      try {
         var29.append(XmlUtil.nodeToString(var28));
         var29.append(var32[68]);
         var29.append(var32[58]);
         Document var16 = XmlUtil.stringToDocument(var29.toString());
         return this.a(var16);
      } catch (IOException var18) {
         var32 = p;
         throw new TokenServiceImpl.TokenServiceException(var32[38], var18);
      } catch (SAXException var19) {
         throw new TokenServiceImpl.TokenServiceException(p[25], var19);
      }
   }

   private Document a(Map<String, String> var1, PolicyEnforcementContext var2, User var3, String var4) throws TokenServiceImpl.TokenServiceException, GeneralSecurityException {
      SecureConversationSession var5;
      try {
         var5 = this.n.createContextForUser(var3, var4);
      } catch (SessionCreationException var20) {
         throw new TokenServiceImpl.TokenServiceException(var20);
      }

      ProcessorResult var6 = var2.getRequest().getSecurityKnob().getProcessorResult();
      XmlSecurityToken[] var7 = var6.getXmlSecurityTokens();
      X509Certificate var8 = null;
      XmlSecurityToken[] var9 = var7;
      int var10 = var9.length;
      int var11 = 0;

      while (true) {
         if (var11 >= var10) {
            Calendar var23 = Calendar.getInstance();
            var23.setTimeInMillis(var5.getExpiration());
            String var24;
            if (var8 != null) {
               var24 = this.a(var5.getSharedSecret(), var8);
            } else {
               byte[] var10001 = var5.getSharedSecret();
               String[] var26 = p;
               var24 = this.a(var10001, (String)var1.get(var26[42]));
            }

            try {
               String[] var27 = p;
               String var10000 = a((String)var1.get(var27[85]), (String)var1.get(var27[75]), (String)var1.get(var27[44]));
               String var28 = var5.getIdentifier();
               String var15 = ISO8601Date.format(var23.getTime());
               String var16 = var24;
               String var17 = var28;
               String var25 = var10000 + var27[37] + var17 + var27[59] + var16 + var27[1] + var15 + var27[26];
               var22 = XmlUtil.stringToDocument(var25);
            } catch (SAXException var19) {
               throw new TokenServiceImpl.TokenServiceException(var19);
            }

            return this.a(var22);
         }

         label44:
         if (var9[var11] instanceof X509BinarySecurityTokenImpl var13) {
            try {
               if (!var13.isPossessionProved()) {
                  break label44;
               }

               if (var8 != null) {
                  break;
               }
            } catch (SessionCreationException var21) {
               throw a(var21);
            }

            var8 = var13.getCertificate();
         }

         var11++;
      }

      String[] var18 = p;
      String var14 = var18[41];
      a.log(Level.WARNING, var14);
      throw new TokenServiceImpl.TokenServiceException(var14);
   }

   private Document a(Document var1) throws TokenServiceImpl.TokenServiceException {
      SsgKeyEntry var2;
      Element var3;
      try {
         var3 = SoapUtil.getBodyElement(var1);
         var2 = this.j.getServerSslInfo();
      } catch (InvalidDocumentFormatException var12) {
         throw new TokenServiceImpl.TokenServiceException(var12);
      } catch (IOException var13) {
         throw new TokenServiceImpl.TokenServiceException(p[36] + ExceptionUtils.getMessage(var13), var13);
      }

      WssDecoratorImpl var4 = new WssDecoratorImpl();
      DecorationRequirements var5 = new DecorationRequirements();
      var5.setSignTimestamp(true);
      var5.getElementsToSign().add(var3);

      try {
         var5.setSenderMessageSigningCertificate(var2.getCertificate());
         var5.setSenderMessageSigningPrivateKey(var2.getPrivateKey());
         var4.decorateMessage(new Message(var1, Message.getMaxBytes()), var5);
         return var1;
      } catch (InvalidDocumentFormatException var7) {
         throw new TokenServiceImpl.TokenServiceException(var7);
      } catch (GeneralSecurityException var8) {
         throw new TokenServiceImpl.TokenServiceException(var8);
      } catch (DecoratorException var9) {
         throw new TokenServiceImpl.TokenServiceException(var9);
      } catch (SAXException var10) {
         throw new TokenServiceImpl.TokenServiceException(var10);
      } catch (IOException var11) {
         throw new TokenServiceImpl.TokenServiceException(var11);
      }
   }

   private String a(byte[] var1, String var2) {
      StringBuilder var3 = new StringBuilder();
      String[] var4 = p;
      var3.append(var4[10]).append(var2).append(var4[23]);
      var3.append(HexUtils.encodeBase64(var1, true));
      var3.append(var4[24]);
      return var3.toString();
   }

   private String a(byte[] var1, X509Certificate var2) throws GeneralSecurityException {
      StringBuilder var3 = new StringBuilder();
      String[] var6 = p;
      var3.append(var6[84]);
      String var4 = CertUtils.getSki(var2);
      if (var4 != null) {
         String var5 = var6[48] + SoapConstants.VALUETYPE_SKI + var6[54] + var4 + var6[57];
         var3.append(var6[81]);
         var3.append(var5);
         var3.append(var6[5]);
      }

      var6 = p;
      var3.append(var6[12]);
      String var7 = HexUtils.encodeBase64(XencUtil.encryptKeyWithRsaAndPad(var1, var2, var2.getPublicKey()), true);
      var3.append(var7);
      var3.append(var6[83]);
      return var3.toString();
   }

   private boolean a(Map<String, String> 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 1
      // 01: getstatic com/l7tech/util/SoapConstants.WST_TOKENTYPE Ljava/lang/String;
      // 04: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 09: checkcast java/lang/String
      // 0c: astore 2
      // 0d: aload 2
      // 0e: ifnull 25
      // 11: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 14: bipush 80
      // 16: aaload
      // 17: aload 2
      // 18: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 1b: ifne 2b
      // 1e: goto 25
      // 21: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 24: athrow
      // 25: bipush 0
      // 26: ireturn
      // 27: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2a: athrow
      // 2b: aload 1
      // 2c: getstatic com/l7tech/util/SoapConstants.WST_REQUESTTYPE Ljava/lang/String;
      // 2f: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 34: checkcast java/lang/String
      // 37: astore 2
      // 38: aload 2
      // 39: ifnull 50
      // 3c: aload 2
      // 3d: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 40: bipush 17
      // 42: aaload
      // 43: invokevirtual java/lang/String.endsWith (Ljava/lang/String;)Z
      // 46: ifne 69
      // 49: goto 50
      // 4c: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 4f: athrow
      // 50: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 53: aload 2
      // 54: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 57: bipush 46
      // 59: aaload
      // 5a: swap
      // 5b: 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" ]
      // 60: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // 63: bipush 0
      // 64: ireturn
      // 65: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 68: athrow
      // 69: aload 1
      // 6a: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 6d: bipush 70
      // 6f: aaload
      // 70: getstatic com/l7tech/util/SoapConstants.WSSC_NAMESPACE Ljava/lang/String;
      // 73: invokeinterface java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3
      // 78: pop
      // 79: bipush 1
      // 7a: ireturn
      // try (5 -> 13): 14 java/lang/IllegalArgumentException
      // try (7 -> 18): 18 java/lang/IllegalArgumentException
      // try (25 -> 33): 34 java/lang/IllegalArgumentException
      // try (27 -> 46): 46 java/lang/IllegalArgumentException
   }

   private boolean b(Map<String, String> 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 1
      // 01: getstatic com/l7tech/util/SoapConstants.WST_TOKENTYPE Ljava/lang/String;
      // 04: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 09: checkcast java/lang/String
      // 0c: astore 2
      // 0d: aload 2
      // 0e: ifnull 25
      // 11: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 14: bipush 74
      // 16: aaload
      // 17: aload 2
      // 18: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 1b: ifne 2b
      // 1e: goto 25
      // 21: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 24: athrow
      // 25: bipush 0
      // 26: ireturn
      // 27: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2a: athrow
      // 2b: aload 1
      // 2c: getstatic com/l7tech/util/SoapConstants.WST_REQUESTTYPE Ljava/lang/String;
      // 2f: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 34: checkcast java/lang/String
      // 37: astore 3
      // 38: aload 3
      // 39: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 3c: bipush 17
      // 3e: aaload
      // 3f: invokevirtual java/lang/String.endsWith (Ljava/lang/String;)Z
      // 42: ifne 5d
      // 45: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 48: aload 3
      // 49: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 4c: bipush 4
      // 4d: aaload
      // 4e: swap
      // 4f: 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" ]
      // 54: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // 57: bipush 0
      // 58: ireturn
      // 59: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 5c: athrow
      // 5d: aload 1
      // 5e: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 61: bipush 70
      // 63: aaload
      // 64: getstatic com/l7tech/util/SoapConstants.WSSC_NAMESPACE2 Ljava/lang/String;
      // 67: invokeinterface java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3
      // 6c: pop
      // 6d: bipush 1
      // 6e: ireturn
      // try (5 -> 13): 14 java/lang/IllegalArgumentException
      // try (7 -> 18): 18 java/lang/IllegalArgumentException
      // try (25 -> 41): 41 java/lang/IllegalArgumentException
   }

   private boolean c(Map 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 1
      // 01: getstatic com/l7tech/util/SoapConstants.WST_TOKENTYPE Ljava/lang/String;
      // 04: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 09: checkcast java/lang/String
      // 0c: astore 2
      // 0d: aload 2
      // 0e: ifnull 39
      // 11: aload 2
      // 12: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 15: bipush 87
      // 17: aaload
      // 18: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 1b: ifeq 39
      // 1e: goto 25
      // 21: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 24: athrow
      // 25: aload 2
      // 26: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 29: bipush 28
      // 2b: aaload
      // 2c: invokevirtual java/lang/String.endsWith (Ljava/lang/String;)Z
      // 2f: ifne 3f
      // 32: goto 39
      // 35: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 38: athrow
      // 39: bipush 0
      // 3a: ireturn
      // 3b: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3e: athrow
      // 3f: aload 1
      // 40: getstatic com/l7tech/util/SoapConstants.WST_REQUESTTYPE Ljava/lang/String;
      // 43: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 48: checkcast java/lang/String
      // 4b: astore 3
      // 4c: aload 3
      // 4d: ifnull 63
      // 50: aload 3
      // 51: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 54: bipush 3
      // 55: aaload
      // 56: invokevirtual java/lang/String.endsWith (Ljava/lang/String;)Z
      // 59: ifne 69
      // 5c: goto 63
      // 5f: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 62: athrow
      // 63: bipush 0
      // 64: ireturn
      // 65: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 68: athrow
      // 69: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 6c: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 6f: bipush 34
      // 71: aaload
      // 72: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 75: bipush 1
      // 76: ireturn
      // try (5 -> 13): 14 java/lang/IllegalArgumentException
      // try (7 -> 22): 23 java/lang/IllegalArgumentException
      // try (16 -> 27): 27 java/lang/IllegalArgumentException
      // try (34 -> 42): 43 java/lang/IllegalArgumentException
      // try (36 -> 47): 47 java/lang/IllegalArgumentException
   }

   private Map<String, String> a(PolicyEnforcementContext var1) throws InvalidDocumentFormatException {
      HashMap var2 = new HashMap();
      String[] var8 = p;
      var2.put(var8[78], var8[20]);
      var2.put(var8[70], SoapConstants.WSSC_NAMESPACE);

      Document var3;
      try {
         XmlKnob var4 = var1.getRequest().getXmlKnob();
         var3 = var4.getDocumentReadOnly();
      } catch (SAXException var10) {
         var8 = p;
         a.log(Level.WARNING, var8[21], var10);
         return var2;
      } catch (IOException var11) {
         var8 = p;
         a.log(Level.WARNING, var8[6], var11);
         return var2;
      }

      Element var16 = SoapUtil.getBodyElement(var3);

      try {
         if (p[2].equals(var16.getNamespaceURI())) {
            var2.put(p[78], p[2]);
         }
      } catch (SAXException var15) {
         throw a(var15);
      }

      Element var5 = DomUtils.findFirstChildElement(var16);

      try {
         if (!var5.getLocalName().equals(SoapConstants.WST_REQUESTSECURITYTOKEN)) {
            a.fine(p[49] + var5.getLocalName() + ")");
            return var2;
         }
      } catch (SAXException var9) {
         throw a(var9);
      }

      try {
         if (!Arrays.asList(SoapConstants.WST_NAMESPACE_ARRAY).contains(var5.getNamespaceURI())) {
            a.fine(p[63] + var5.getNamespaceURI() + ")");
            return var2;
         }
      } catch (SAXException var14) {
         throw a(var14);
      }

      var8 = p;
      var2.put(var8[85], var5.getNamespaceURI());
      Element var6 = DomUtils.findOnlyOneChildElementByName(var5, SoapConstants.WST_NAMESPACE_ARRAY, SoapConstants.WST_TOKENTYPE);

      label59: {
         try {
            if (var6 == null) {
               a.warning(var8[45]);
               break label59;
            }
         } catch (SAXException var13) {
            throw a(var13);
         }

         var2.put(SoapConstants.WST_TOKENTYPE, DomUtils.getTextValue(var6));
      }

      Element var7 = DomUtils.findOnlyOneChildElementByName(var5, SoapConstants.WST_NAMESPACE_ARRAY, SoapConstants.WST_REQUESTTYPE);

      try {
         if (var7 == null) {
            a.warning(p[35]);
            return var2;
         }
      } catch (SAXException var12) {
         throw a(var12);
      }

      var2.put(SoapConstants.WST_REQUESTTYPE, DomUtils.getTextValue(var7));
      return var2;
   }

   private boolean d(Map 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 1
      // 01: getstatic com/l7tech/util/SoapConstants.WST_TOKENTYPE Ljava/lang/String;
      // 04: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 09: checkcast java/lang/String
      // 0c: astore 2
      // 0d: aload 2
      // 0e: ifnull 26
      // 11: aload 0
      // 12: getfield com/l7tech/server/TokenServiceImpl.o Ljava/util/regex/Pattern;
      // 15: aload 2
      // 16: invokevirtual java/util/regex/Pattern.matcher (Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
      // 19: invokevirtual java/util/regex/Matcher.find ()Z
      // 1c: ifne 45
      // 1f: goto 26
      // 22: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 25: athrow
      // 26: getstatic com/l7tech/server/TokenServiceImpl.a Ljava/util/logging/Logger;
      // 29: aload 2
      // 2a: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 2d: bipush 86
      // 2f: aaload
      // 30: swap
      // 31: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 34: bipush 65
      // 36: aaload
      // 37: 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" ]
      // 3c: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 3f: bipush 0
      // 40: ireturn
      // 41: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 44: athrow
      // 45: aload 1
      // 46: getstatic com/l7tech/util/SoapConstants.WST_REQUESTTYPE Ljava/lang/String;
      // 49: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 4e: checkcast java/lang/String
      // 51: astore 3
      // 52: aload 3
      // 53: ifnull 72
      // 56: aload 3
      // 57: getstatic com/l7tech/server/TokenServiceImpl.p [Ljava/lang/String;
      // 5a: bipush 17
      // 5c: aaload
      // 5d: invokevirtual java/lang/String.endsWith (Ljava/lang/String;)Z
      // 60: ifeq 72
      // 63: goto 6a
      // 66: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 69: athrow
      // 6a: bipush 1
      // 6b: goto 73
      // 6e: invokestatic com/l7tech/server/TokenServiceImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 71: athrow
      // 72: bipush 0
      // 73: ireturn
      // try (5 -> 13): 14 java/lang/IllegalArgumentException
      // try (7 -> 29): 29 java/lang/IllegalArgumentException
      // try (36 -> 44): 45 java/lang/IllegalArgumentException
      // try (38 -> 49): 49 java/lang/IllegalArgumentException
   }

   private String b(PolicyEnforcementContext var1) {
      String var2 = null;
      if (var1 != null) {
         Message var3 = var1.getRequest();
         if (var3.isHttpRequest()) {
            var2 = var3.getHttpRequestKnob().getRemoteAddress();
         }
      }

      return var2;
   }

   private User c(PolicyEnforcementContext var1) {
      Object var2 = null;
      if (var1.getDefaultAuthenticationContext().isAuthenticated()) {
         var2 = var1.getDefaultAuthenticationContext().getLastAuthenticatedUser();
      }

      if (var2 == null) {
         var2 = new UserBean();
      }

      return (User)var2;
   }

   private String a(User var1) {
      try {
         if (var1.getName() != null) {
            return var1.getName();
         }
      } catch (IllegalArgumentException var2) {
         throw a(var2);
      }

      return var1.getLogin();
   }

   private static String a(String var0, String var1, String var2) {
      String var3 = var1;
      String var4 = SoapConstants.SECURITY_NAMESPACE;
      String var5 = SoapConstants.WSU_NAMESPACE;
      String var6 = var0;
      String var7 = var2;
      String[] var8 = p;
      return var8[40] + var7 + var8[15] + var6 + var8[53] + var5 + var8[16] + var4 + var8[19] + var3 + var8[22];
   }

   static {
      String[] var5 = new String[88];
      int var3 = 0;
      String var2 = "QDgJ\u000e\u0007N^Dx\u000b\u0016\u001eIa\u0001cN[\u001bHzWhO\u001e\u000f\u001aaN!H\t\u000e[aD!J[?U~Dox\u001e\u0019L|Bd5)\u000evX\u000fQhpPtN\b\u001f_qqsD\u0014\rnzJdEEWMfU;g\u0012\r_aHlNEWMfT;n\u0003\u001bSgDr\u0015'}Uu[AD\u0015bVv\u0005\fX\u0014zSf\u0004I[\n&\u000e1\u001eT\u0018UtQ,N\u0015\u001d_yNqN\f:Us^\b\u001f\u0015\\Rr^\u001e\u001aGDp^\u001e\u0018NAXqN[\u0005Ua\u0001r^\u000b\u001bUgUdOU\n)\u000eJN\u0002\"TsN?\u001dV@oE\u0014\u001f\u001arDu\u000b\t\u000eK`Dr_\\\u0018\u001aqNb^\u0016\u000eTa&PSsD\tKHpCtB\u0017\u000fS{F!_\u0014\u0000_{\u0001rN\t\u001dSvD![\u0014\u0007SvX/\u0017PSsD\tK^|RqJ\u000f\bR|Of\u000b\u001e\u001d_{U&PSsD\tKHpCtB\u0017\u000fS{F!_\u0014\u0000_{\u0001rN\t\u001dSvD![\u0014\u0007SvX/\u0018)Vr_A)S{@sR(\u000eYgDu\u000b/\u0012Jp\u001c#&@O`I\u0017\u000e\u001aaN!L\u001e\u001f\u001aqDgJ\u000e\u0007N5rdY\r\u000eH5rRg[\u0000_l\u001b!#)YdE\u0018Qy|QiN\t/[a@?\u0017\u0003\u000eTv\u001bBB\u000b\u0003_gw`G\u000e\u000e\u0004\u001dfDs]\u0012\b_;W`G\u0012\u000f[aDVX\b?SxDr_\u001a\u0006JfAAIhX[\u0019_dTdX\u000fKYtOoD\u000fKXp\u0001sN\u0018\u0004]{H{N\u001fK[f\u0001`\u000b\r\nV|E!y\u001e\u001aOpRux\u001e\bOgHuR/\u0004QpO:7\u001f=X\u0014\nJ/cnO\u0002U\u0006bRu\u0011)\u000eK`Dr_(\u000eY`Sh_\u0002?U~Doy\u001e\u0018JzOrN[\u0013WyOr\u0011\f\u0018N(\u0003\u000e7\u0001yF\u0017\u0005I/VrX\u001eV\u0018\f:Us^\b\u001f\u0015\\Rr^\u001e\u001d)\u000evX\u000fQhpPtN\b\u001f_qrdH\u000e\u0019SaXUD\u0010\u000eT+\r7\u0001yF\u0017\u0005I/VrHFI)}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDIz@q\u0004\u001e\u0005LpMn[\u001eD\u001dV@oE\u0014\u001f\u001arDu\u000b\t\u000eK`Dr_\\\u0018\u001aqNb^\u0016\u000eTa\u001e7\u001f=\\\b\u001f\u0000GDp^\u001e\u0018NpERN\u0018\u001eH|Ux\u007f\u0014\u0000_{\u001f\u000f:rxF\u0016\u000eNgHb`\u001e\u0012\u0018+\u0013)\u000evX\u000fQx|O`Y\u00028_vSd_E\u0019VNtG\u001f\u0005\u001da\u0001sN\u001a\u000f\u001afHfE\u0012\u0005]5JdR\\)\u000evX\u000eQ\u007fmQhY\u001e\u0018\u0004)\u000evX\u000fQv|Gd_\u0012\u0006_+\u001d.\\\b\u001f\u0000GDp^\u001e\u0018NFDb^\t\u0002Nlun@\u001e\u0005hpRqD\u0015\u0018_+\u001d.X\u0014\nJ/cnO\u0002U\u0006:RnJ\u000bQ\u007f{WdG\u0014\u001b_+ GDc^\u0012\u0007^|Of\u000b\u000f\u0004QpO!X\u001e\u0019L|Bd\u000b\u000b\u0004V|Bx\u0005\tTRrN\t\u001fSzO)}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDIz@q\u0004\u001e\u0005LpMn[\u001eD\u0012:R;n\u0015\u001d_yNqNT\u0018\u0000WNeR\ffDs]\u001e\u0019yzOgB\u001c\u0015N\u001b\"v:\u0018IpSuB\u0014\u0005\u001ei\u007fRj6'\u001e\u0002/\u00010GDp^\u001e\u0018N5V`X[\u0002^pOuB\u001d\u0002_q\u0001`X[\u0004Tp\u0001gD\tKiTlM\u000bIE\n5un@\u001e\u00052GDp^\u001e\u0018N5Ux[\u001eKTzU!X\u000b\u000eY|GhN\u001fE\u001aAIhX[\u0002I5On_[\u0018OeQnY\u000f\u000e^;\u001f@O`I\u0017\u000e\u001aaN!L\u001e\u001f\u001aqDgJ\u000e\u0007N5rRg[\u0000_l\u001b!*)VrHA8_vTsB\u000f\u0012yzOuN\u0003\u001fnzJdEEWMfB;b\u001f\u000eTaHgB\u001e\u0019\u0004\u0019VNtG\u001f\u0005\u001da\u0001sN\u001a\u000f\u001afHfE\u0012\u0005]5JdR&AId\u000b\u0012\u0005NpSoJ\u0017KJzMhH\u0002KMtR!E\u0014\u001f\u001agDr[\u001e\bNpE!\u001b)RnJ\u000bQ\u007f{WdG\u0014\u001b_5YlG\u0015\u0018\u0000fN`[FIQGDp^\u001e\u0018N5HoH\u0017\u001e^pE!F\u0014\u0019_5UiJ\u0015KU{D!sN[\u00035RdH\u000e\u0019SaX!_\u0014\u0000_{\u0001vC\u0014\u0018_5JdR[\u0004M{DsX\u0013\u0002J5V`X[\u001bHzWdE\u0007aStX\u000f\u0005I\u0014FDb^\t\u0002Nl\u0001UD\u0010\u000eT5dsY\u0014\u0019\u0006fN`[\u0015\u00180ANjN\u0015KNlQd\u000b\u0015\u0004N5RqN\u0018\u0002\\|De\u0005[?R|R!B\bKTzU!X\u000e\u001bJzSuN\u001fE\u001aGDp^\u001e\u0018NAXqN[\u0005Ua\u0001r^\u000b\u001bUgUdOU\u0011}Uu[?\u0002]pRu\u0005\u001e\u0005[wMd<)VrX\u001eQipBtY\u0012\u001fCANjN\u00159_sDsN\u0015\b_+\u001dvX\b\u000e\u0000^Dxb\u001f\u000eTaHgB\u001e\u0019\u001aC@m^\u001e?CeD<\t(WNeR\\\u0018\u001avIhG\u001fK^zDr\u000b\u0015\u0004N5RdN\u0016KNz\u0001cN[\n\u001aGrU\u000bS\u001fANjN\u00158_gWhH\u001eK_{GnY\u0018\u0002Tr\u0001qD\u0017\u0002Yl\u001b!\u0002/\u0001\u0011}Uu[?\u0002]pRu\u0005\u001e\u0005[wMd\r7\u0001yF\u0017\u0005I/Vr^FI\u00027\u001f\u0015FDb^\t\u0002Nl\u0001UD\u0010\u000eT5hrX\u000e\u000e^\u0012/\u0001qY\u0014\b_fRhE\u001cK_gSnY3)\u000evX\b\u000e\u0000^Dxb\u001f\u000eTaHgB\u001e\u0019\u0004)\u000evX\b\u000e\u0000FDb^\t\u0002Nlun@\u001e\u0005hpGdY\u001e\u0005Yp\u001f?)\u000evX\u000fQhpPtN\b\u001fipBtY\u0012\u001fCANjN\u00159_fQnE\b\u000e\u0004)\u000erD\u001a\u001b\u0000WNeREW\u0015fN`[A.TcDmD\u000b\u000e\u0004b)\u000evX\u0018QsqDo_\u0012\rSpS?\u0017T\u001cIv\u001bRN\u0018\u001eH|Uxh\u0014\u0005NpYu\u007f\u0014\u0000_{\u001f=\u0004\f\u0018N/sdZ\u000e\u000eIaDex\u001e\bOgHuR/\u0004QpO?\u0017\f\u0018N/sdZ\u000e\u000eIaDe{\t\u0004Usun@\u001e\u0005\u0004\u001dfDs]\u0012\b_;W`G\u0012\u000f[aDVX\b?SxDr_\u001a\u0006Jf\u0014FDb^\t\u0002Nl\u0001UD\u0010\u000eT5dsY\u0014\u0019\u0015f@lG:\rNpSNM\u001d\u0018_alhE\u000e\u001f_ AStX\u000fKTtLdX\u000b\nYp\u0001oD\u000fKHpBnL\u0015\u0002@pE!\u0003\u0012/\u0001qY\u0014\b_fRhE\u001cK_gSnY32\u0001hX[\u0005Ua\u0001sN\u0018\u0004]{H{N\u001fK[f\u0001bJ\u0017\u0007S{F!M\u0014\u0019\u001at\u0001rJ\u0016\u0007\u0000TRrN\t\u001fSzO\u0015FDb^\t\u0002Nl\u0001UD\u0010\u000eT5hrX\u000e\u000e^\u0016f@lG9\u000e\\zSdd\u001d\rIpULB\u0015\u001eNp\u001d)\u000evX\u000fQhpPtN\b\u001f_qrdH\u000e\u0019SaXUD\u0010\u000eT+Ǧ)\u001eyF\u0017KLpSrB\u0014\u0005\u00077\u0010/\u001bYK_{BnO\u0012\u0005](\u0003T\u007f=F\u00027\u001e?!G\u0018UtQdE\rQ\u007f{WdG\u0014\u001b_5YlG\u0015\u0018\u0000fN`[\u001e\u0005L(\u0003i_\u000f\u001b\u0000:\u000erH\u0013\u000eWtR/S\u0016\u0007Iz@q\u0005\u0014\u0019]:RnJ\u000bD_{WdG\u0014\u001b_:\u0003!\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u000b[K\u001amLmE\bQV\"\u001c#C\u000f\u001fJ/\u000e.\\\f\u001c\u0014y@xN\t\\NpBi\u0005\u0018\u0004W:Vr\u0004\u000b\u0004V|Bx\u0004\u001d\nOyU#\u0015qK\u001a5\u0001=X\u0014\nJpOw\u00119\u0004^l\u001f\u000b\u000b[K\u001a5\u0001!\u000bG\u0018UtQdE\rQ|tTm_Ea\u001a5\u0001!\u000b[K\u001a5\u0001!\u000bG\r[`MuH\u0014\u000f_+M6\u0011\u0015\u0004[`UiN\u0015\u001fSv@uB\u0014\u0005\u0006:G`^\u0017\u001fYzEd\u0015qK\u001a5\u0001!\u000b[K\u001a5\u0001!\u0017\u001d\nOyUr_\t\u0002Tr\u001fUC\u001eKHpPtN\b\u001f\u001asNs\u000b\u001aKNzJdE[\u001c[f\u0001oD\u000fK[`UiN\u0015\u001fSv@uN\u001fW\u0015s@tG\u000f\u0018NgHoLEa\u001a5\u0001!\u000b[K\u001a5\u0001!\u000bG\r[`MuJ\u0018\u001fUg\u001f%P\t\u000eK`Dr_U\u001eHy\\=\u0004\u001d\nOyU`H\u000f\u0004H++!\u000b[K\u001a5\u0001!\u0017T\u0018UtQdE\rQ|tTm_Ea\u001a5\u0001!\u0017T\u0018UtQdE\rQxzEx\u0015qW\u0015fN`[\u001e\u0005L/do]\u001e\u0007UeD?\u0004fBoXɽ)\u001eyF\u0017KLpSrB\u0014\u0005\u00077\u0010/\u001bYK_{BnO\u0012\u0005](\u0003T\u007f=F\u00027\u001e?!G\u0018UtQdE\rQ\u007f{WdG\u0014\u001b_5YlG\u0015\u0018\u0000fN`[\u001e\u0005L(\u0003i_\u000f\u001b\u0000:\u000ev\\\fEM&\u000fnY\u001cD\b%\u00112\u0004K^\u0015fN`[V\u000eTcDmD\u000b\u000e\u00185\u0001!\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u000b[\u0013WyOr\u0011\u0017\\\u00077Iu_\u000bQ\u0015:Vv\\U\u0007[lDs\u001c\u000f\u000eY}\u000fbD\u0016DMf\u000eqD\u0017\u0002Yl\u000egJ\u000e\u0007N7\u001f\u000b\u000b[K\u001a)RnJ\u000b\u000eTc\u001bCD\u001f\u0012\u0004\u001f\u0001!\u000b[K\u001a5\u0001=X\u0014\nJpOw\u0011=\nOyU?![K\u001a5\u0001!\u000b[K\u001a5\u0001=X\u0014\nJpOw\u00118\u0004^p\u001f\u000b\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u000b[WIz@qN\u0015\u001d\u0000C@m^\u001eUV\"\u001boD\u001a\u001eN}Do_\u0012\b[aHnEGDIz@qN\u0015\u001d\u0000C@m^\u001eU05\u0001!\u000b[K\u001a5\u0001!\u000b[W\u0015fN`[\u001e\u0005L/bnO\u001eU05\u0001!\u000b[K\u001a5\u0001!\u000b[WIz@qN\u0015\u001d\u0000GD`X\u0014\u0005\u0004\u001f\u0001!\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u0017\b\u0004[eDo]A?_mU!S\u0016\u0007\u0000y@oLFI_{\fTxYUn}D!Y\u001e\u001aOpRu\u000b\u001d\u0004H5@!_\u0014\u0000_{\u0001vJ\bKTzU!J\u000e\u001fRpOuB\u0018\nNpE=\u0004\b\u0004[eDo]A?_mU?![K\u001a5\u0001!\u000b[K\u001a5\u0001=\u0004\b\u0004[eDo]A9_tRnEEa\u001a5\u0001!\u000b[K\u001a5\u0001!\u000bG\u0018UtQdE\rQhzMd\u0015_\u0010HpPtN\b\u001f\u0014`SmVGDIz@qN\u0015\u001d\u0000GNmNEa\u001a5\u0001!\u000b[K\u001a)\u000erD\u001a\u001b_{W;m\u001a\u001eVa\u001f\u000b\u000b[K\u001a)\u000erD\u001a\u001b_{W;i\u0014\u000fC++=\u0004\b\u0004[eDo]A.TcDmD\u000b\u000e\u0004\"VNtG\u001f\u0005\u001da\u0001sN\b\u0004VcD!H\u0017\u0002_{U!b+K[qEsN\b\u0018\u0017PSsD\tK^|RqJ\u000f\bR|Of\u000b\u001e\u001d_{U,}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDMf\u000e3\u001bK^\u0015%\u0013.X\u0018DIvU\u0004fBoX\u0012:R;n\u0015\u001d_yNqNT\u0018\u0000WNeR'}Uu[AD\u0015bVv\u0005\fX\u0014zSf\u0004I[\n&\u000e1\u001eT\u0018UtQ,N\u0015\u001d_yNqN\u0006fN`[\u0015\u0018?)\u000evX\u000fQhpPtN\b\u001fipBtY\u0012\u001fCANjN\u00159_fQnE\b\u000e\u0004)\u000erD\u001a\u001b\u0000WNeREW\u0015fN`[A.TcDmD\u000b\u000e\u00045}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDMf\u000e3\u001bK_\u0015%\u0015.X\u001e\bOgHuRT\u0018Y:Rb_4)jdR2\u0005\\z\u0001yF\u0017\u0005I(\u0003i_\u000f\u001b\u0000:\u000ev\\\fEM&\u000fnY\u001cD\b%\u00111\u0004KR\u0015mLmO\b\u0002]6\u0003?-AId\u000b\t\u000eK`Dr_[\rUg\u0001`\u000b\u000f\u0004QpO!\\\u001a\u0018\u001a{Nu\u000b\u001a\u001eN}Do_\u0012\b[aDe9)\u000eyN\u0015\b\u0000VHqC\u001e\u0019ltMtNEW\u0015mDoHA(SeIdY?\nNt\u001f=\u0004\u0003\u000eTv\u001bDE\u0018\u0019CeUdO0\u000eC+¢)YdE\u0018Q\u007f{BsR\u000b\u001f_qjdR[\u001cI`\u001bHOFITpVQY\u0014\u0004\\7\u0001yF\u0017\u0005I/YdE\u0018V\u0018}Uu[AD\u0015bVv\u0005\fX\u0014zSf\u0004I[\n$\u000e1\u001fT\u0013WyDoHXI\u0004)YdE\u0018Q\u007f{BsR\u000b\u001fSzOLN\u000f\u0003Uq\u0001@G\u001c\u0004H|UiFFIRaUq\u0011TDMbV/\\HEUgF.\u0019K[\u000b:\u00115\u0004\u0003\u0006VpOb\b\t\u0018[8\u0010^\u001eYK\u0015+\u0007aStX\u000f\u0005I";
      int var4 = "QDgJ\u000e\u0007N^Dx\u000b\u0016\u001eIa\u0001cN[\u001bHzWhO\u001e\u000f\u001aaN!H\t\u000e[aD!J[?U~Dox\u001e\u0019L|Bd5)\u000evX\u000fQhpPtN\b\u001f_qqsD\u0014\rnzJdEEWMfU;g\u0012\r_aHlNEWMfT;n\u0003\u001bSgDr\u0015'}Uu[AD\u0015bVv\u0005\fX\u0014zSf\u0004I[\n&\u000e1\u001eT\u0018UtQ,N\u0015\u001d_yNqN\f:Us^\b\u001f\u0015\\Rr^\u001e\u001aGDp^\u001e\u0018NAXqN[\u0005Ua\u0001r^\u000b\u001bUgUdOU\n)\u000eJN\u0002\"TsN?\u001dV@oE\u0014\u001f\u001arDu\u000b\t\u000eK`Dr_\\\u0018\u001aqNb^\u0016\u000eTa&PSsD\tKHpCtB\u0017\u000fS{F!_\u0014\u0000_{\u0001rN\t\u001dSvD![\u0014\u0007SvX/\u0017PSsD\tK^|RqJ\u000f\bR|Of\u000b\u001e\u001d_{U&PSsD\tKHpCtB\u0017\u000fS{F!_\u0014\u0000_{\u0001rN\t\u001dSvD![\u0014\u0007SvX/\u0018)Vr_A)S{@sR(\u000eYgDu\u000b/\u0012Jp\u001c#&@O`I\u0017\u000e\u001aaN!L\u001e\u001f\u001aqDgJ\u000e\u0007N5rdY\r\u000eH5rRg[\u0000_l\u001b!#)YdE\u0018Qy|QiN\t/[a@?\u0017\u0003\u000eTv\u001bBB\u000b\u0003_gw`G\u000e\u000e\u0004\u001dfDs]\u0012\b_;W`G\u0012\u000f[aDVX\b?SxDr_\u001a\u0006JfAAIhX[\u0019_dTdX\u000fKYtOoD\u000fKXp\u0001sN\u0018\u0004]{H{N\u001fK[f\u0001`\u000b\r\nV|E!y\u001e\u001aOpRux\u001e\bOgHuR/\u0004QpO:7\u001f=X\u0014\nJ/cnO\u0002U\u0006bRu\u0011)\u000eK`Dr_(\u000eY`Sh_\u0002?U~Doy\u001e\u0018JzOrN[\u0013WyOr\u0011\f\u0018N(\u0003\u000e7\u0001yF\u0017\u0005I/VrX\u001eV\u0018\f:Us^\b\u001f\u0015\\Rr^\u001e\u001d)\u000evX\u000fQhpPtN\b\u001f_qrdH\u000e\u0019SaXUD\u0010\u000eT+\r7\u0001yF\u0017\u0005I/VrHFI)}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDIz@q\u0004\u001e\u0005LpMn[\u001eD\u001dV@oE\u0014\u001f\u001arDu\u000b\t\u000eK`Dr_\\\u0018\u001aqNb^\u0016\u000eTa\u001e7\u001f=\\\b\u001f\u0000GDp^\u001e\u0018NpERN\u0018\u001eH|Ux\u007f\u0014\u0000_{\u001f\u000f:rxF\u0016\u000eNgHb`\u001e\u0012\u0018+\u0013)\u000evX\u000fQx|O`Y\u00028_vSd_E\u0019VNtG\u001f\u0005\u001da\u0001sN\u001a\u000f\u001afHfE\u0012\u0005]5JdR\\)\u000evX\u000eQ\u007fmQhY\u001e\u0018\u0004)\u000evX\u000fQv|Gd_\u0012\u0006_+\u001d.\\\b\u001f\u0000GDp^\u001e\u0018NFDb^\t\u0002Nlun@\u001e\u0005hpRqD\u0015\u0018_+\u001d.X\u0014\nJ/cnO\u0002U\u0006:RnJ\u000bQ\u007f{WdG\u0014\u001b_+ GDc^\u0012\u0007^|Of\u000b\u000f\u0004QpO!X\u001e\u0019L|Bd\u000b\u000b\u0004V|Bx\u0005\tTRrN\t\u001fSzO)}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDIz@q\u0004\u001e\u0005LpMn[\u001eD\u0012:R;n\u0015\u001d_yNqNT\u0018\u0000WNeR\ffDs]\u001e\u0019yzOgB\u001c\u0015N\u001b\"v:\u0018IpSuB\u0014\u0005\u001ei\u007fRj6'\u001e\u0002/\u00010GDp^\u001e\u0018N5V`X[\u0002^pOuB\u001d\u0002_q\u0001`X[\u0004Tp\u0001gD\tKiTlM\u000bIE\n5un@\u001e\u00052GDp^\u001e\u0018N5Ux[\u001eKTzU!X\u000b\u000eY|GhN\u001fE\u001aAIhX[\u0002I5On_[\u0018OeQnY\u000f\u000e^;\u001f@O`I\u0017\u000e\u001aaN!L\u001e\u001f\u001aqDgJ\u000e\u0007N5rRg[\u0000_l\u001b!*)VrHA8_vTsB\u000f\u0012yzOuN\u0003\u001fnzJdEEWMfB;b\u001f\u000eTaHgB\u001e\u0019\u0004\u0019VNtG\u001f\u0005\u001da\u0001sN\u001a\u000f\u001afHfE\u0012\u0005]5JdR&AId\u000b\u0012\u0005NpSoJ\u0017KJzMhH\u0002KMtR!E\u0014\u001f\u001agDr[\u001e\bNpE!\u001b)RnJ\u000bQ\u007f{WdG\u0014\u001b_5YlG\u0015\u0018\u0000fN`[FIQGDp^\u001e\u0018N5HoH\u0017\u001e^pE!F\u0014\u0019_5UiJ\u0015KU{D!sN[\u00035RdH\u000e\u0019SaX!_\u0014\u0000_{\u0001vC\u0014\u0018_5JdR[\u0004M{DsX\u0013\u0002J5V`X[\u001bHzWdE\u0007aStX\u000f\u0005I\u0014FDb^\t\u0002Nl\u0001UD\u0010\u000eT5dsY\u0014\u0019\u0006fN`[\u0015\u00180ANjN\u0015KNlQd\u000b\u0015\u0004N5RqN\u0018\u0002\\|De\u0005[?R|R!B\bKTzU!X\u000e\u001bJzSuN\u001fE\u001aGDp^\u001e\u0018NAXqN[\u0005Ua\u0001r^\u000b\u001bUgUdOU\u0011}Uu[?\u0002]pRu\u0005\u001e\u0005[wMd<)VrX\u001eQipBtY\u0012\u001fCANjN\u00159_sDsN\u0015\b_+\u001dvX\b\u000e\u0000^Dxb\u001f\u000eTaHgB\u001e\u0019\u001aC@m^\u001e?CeD<\t(WNeR\\\u0018\u001avIhG\u001fK^zDr\u000b\u0015\u0004N5RdN\u0016KNz\u0001cN[\n\u001aGrU\u000bS\u001fANjN\u00158_gWhH\u001eK_{GnY\u0018\u0002Tr\u0001qD\u0017\u0002Yl\u001b!\u0002/\u0001\u0011}Uu[?\u0002]pRu\u0005\u001e\u0005[wMd\r7\u0001yF\u0017\u0005I/Vr^FI\u00027\u001f\u0015FDb^\t\u0002Nl\u0001UD\u0010\u000eT5hrX\u000e\u000e^\u0012/\u0001qY\u0014\b_fRhE\u001cK_gSnY3)\u000evX\b\u000e\u0000^Dxb\u001f\u000eTaHgB\u001e\u0019\u0004)\u000evX\b\u000e\u0000FDb^\t\u0002Nlun@\u001e\u0005hpGdY\u001e\u0005Yp\u001f?)\u000evX\u000fQhpPtN\b\u001fipBtY\u0012\u001fCANjN\u00159_fQnE\b\u000e\u0004)\u000erD\u001a\u001b\u0000WNeREW\u0015fN`[A.TcDmD\u000b\u000e\u0004b)\u000evX\u0018QsqDo_\u0012\rSpS?\u0017T\u001cIv\u001bRN\u0018\u001eH|Uxh\u0014\u0005NpYu\u007f\u0014\u0000_{\u001f=\u0004\f\u0018N/sdZ\u000e\u000eIaDex\u001e\bOgHuR/\u0004QpO?\u0017\f\u0018N/sdZ\u000e\u000eIaDe{\t\u0004Usun@\u001e\u0005\u0004\u001dfDs]\u0012\b_;W`G\u0012\u000f[aDVX\b?SxDr_\u001a\u0006Jf\u0014FDb^\t\u0002Nl\u0001UD\u0010\u000eT5dsY\u0014\u0019\u0015f@lG:\rNpSNM\u001d\u0018_alhE\u000e\u001f_ AStX\u000fKTtLdX\u000b\nYp\u0001oD\u000fKHpBnL\u0015\u0002@pE!\u0003\u0012/\u0001qY\u0014\b_fRhE\u001cK_gSnY32\u0001hX[\u0005Ua\u0001sN\u0018\u0004]{H{N\u001fK[f\u0001bJ\u0017\u0007S{F!M\u0014\u0019\u001at\u0001rJ\u0016\u0007\u0000TRrN\t\u001fSzO\u0015FDb^\t\u0002Nl\u0001UD\u0010\u000eT5hrX\u000e\u000e^\u0016f@lG9\u000e\\zSdd\u001d\rIpULB\u0015\u001eNp\u001d)\u000evX\u000fQhpPtN\b\u001f_qrdH\u000e\u0019SaXUD\u0010\u000eT+Ǧ)\u001eyF\u0017KLpSrB\u0014\u0005\u00077\u0010/\u001bYK_{BnO\u0012\u0005](\u0003T\u007f=F\u00027\u001e?!G\u0018UtQdE\rQ\u007f{WdG\u0014\u001b_5YlG\u0015\u0018\u0000fN`[\u001e\u0005L(\u0003i_\u000f\u001b\u0000:\u000erH\u0013\u000eWtR/S\u0016\u0007Iz@q\u0005\u0014\u0019]:RnJ\u000bD_{WdG\u0014\u001b_:\u0003!\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u000b[K\u001amLmE\bQV\"\u001c#C\u000f\u001fJ/\u000e.\\\f\u001c\u0014y@xN\t\\NpBi\u0005\u0018\u0004W:Vr\u0004\u000b\u0004V|Bx\u0004\u001d\nOyU#\u0015qK\u001a5\u0001=X\u0014\nJpOw\u00119\u0004^l\u001f\u000b\u000b[K\u001a5\u0001!\u000bG\u0018UtQdE\rQ|tTm_Ea\u001a5\u0001!\u000b[K\u001a5\u0001!\u000bG\r[`MuH\u0014\u000f_+M6\u0011\u0015\u0004[`UiN\u0015\u001fSv@uB\u0014\u0005\u0006:G`^\u0017\u001fYzEd\u0015qK\u001a5\u0001!\u000b[K\u001a5\u0001!\u0017\u001d\nOyUr_\t\u0002Tr\u001fUC\u001eKHpPtN\b\u001f\u001asNs\u000b\u001aKNzJdE[\u001c[f\u0001oD\u000fK[`UiN\u0015\u001fSv@uN\u001fW\u0015s@tG\u000f\u0018NgHoLEa\u001a5\u0001!\u000b[K\u001a5\u0001!\u000bG\r[`MuJ\u0018\u001fUg\u001f%P\t\u000eK`Dr_U\u001eHy\\=\u0004\u001d\nOyU`H\u000f\u0004H++!\u000b[K\u001a5\u0001!\u0017T\u0018UtQdE\rQ|tTm_Ea\u001a5\u0001!\u0017T\u0018UtQdE\rQxzEx\u0015qW\u0015fN`[\u001e\u0005L/do]\u001e\u0007UeD?\u0004fBoXɽ)\u001eyF\u0017KLpSrB\u0014\u0005\u00077\u0010/\u001bYK_{BnO\u0012\u0005](\u0003T\u007f=F\u00027\u001e?!G\u0018UtQdE\rQ\u007f{WdG\u0014\u001b_5YlG\u0015\u0018\u0000fN`[\u001e\u0005L(\u0003i_\u000f\u001b\u0000:\u000ev\\\fEM&\u000fnY\u001cD\b%\u00112\u0004K^\u0015fN`[V\u000eTcDmD\u000b\u000e\u00185\u0001!\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u000b[\u0013WyOr\u0011\u0017\\\u00077Iu_\u000bQ\u0015:Vv\\U\u0007[lDs\u001c\u000f\u000eY}\u000fbD\u0016DMf\u000eqD\u0017\u0002Yl\u000egJ\u000e\u0007N7\u001f\u000b\u000b[K\u001a)RnJ\u000b\u000eTc\u001bCD\u001f\u0012\u0004\u001f\u0001!\u000b[K\u001a5\u0001=X\u0014\nJpOw\u0011=\nOyU?![K\u001a5\u0001!\u000b[K\u001a5\u0001=X\u0014\nJpOw\u00118\u0004^p\u001f\u000b\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u000b[WIz@qN\u0015\u001d\u0000C@m^\u001eUV\"\u001boD\u001a\u001eN}Do_\u0012\b[aHnEGDIz@qN\u0015\u001d\u0000C@m^\u001eU05\u0001!\u000b[K\u001a5\u0001!\u000b[W\u0015fN`[\u001e\u0005L/bnO\u001eU05\u0001!\u000b[K\u001a5\u0001!\u000b[WIz@qN\u0015\u001d\u0000GD`X\u0014\u0005\u0004\u001f\u0001!\u000b[K\u001a5\u0001!\u000b[K\u001a5\u0001!\u0017\b\u0004[eDo]A?_mU!S\u0016\u0007\u0000y@oLFI_{\fTxYUn}D!Y\u001e\u001aOpRu\u000b\u001d\u0004H5@!_\u0014\u0000_{\u0001vJ\bKTzU!J\u000e\u001fRpOuB\u0018\nNpE=\u0004\b\u0004[eDo]A?_mU?![K\u001a5\u0001!\u000b[K\u001a5\u0001=\u0004\b\u0004[eDo]A9_tRnEEa\u001a5\u0001!\u000b[K\u001a5\u0001!\u000bG\u0018UtQdE\rQhzMd\u0015_\u0010HpPtN\b\u001f\u0014`SmVGDIz@qN\u0015\u001d\u0000GNmNEa\u001a5\u0001!\u000b[K\u001a)\u000erD\u001a\u001b_{W;m\u001a\u001eVa\u001f\u000b\u000b[K\u001a)\u000erD\u001a\u001b_{W;i\u0014\u000fC++=\u0004\b\u0004[eDo]A.TcDmD\u000b\u000e\u0004\"VNtG\u001f\u0005\u001da\u0001sN\b\u0004VcD!H\u0017\u0002_{U!b+K[qEsN\b\u0018\u0017PSsD\tK^|RqJ\u000f\bR|Of\u000b\u001e\u001d_{U,}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDMf\u000e3\u001bK^\u0015%\u0013.X\u0018DIvU\u0004fBoX\u0012:R;n\u0015\u001d_yNqNT\u0018\u0000WNeR'}Uu[AD\u0015bVv\u0005\fX\u0014zSf\u0004I[\n&\u000e1\u001eT\u0018UtQ,N\u0015\u001d_yNqN\u0006fN`[\u0015\u0018?)\u000evX\u000fQhpPtN\b\u001fipBtY\u0012\u001fCANjN\u00159_fQnE\b\u000e\u0004)\u000erD\u001a\u001b\u0000WNeREW\u0015fN`[A.TcDmD\u000b\u000e\u00045}Uu[AD\u0015fBiN\u0016\nI;YlG\b\u0004[e\u000fnY\u001cDMf\u000e3\u001bK_\u0015%\u0015.X\u001e\bOgHuRT\u0018Y:Rb_4)jdR2\u0005\\z\u0001yF\u0017\u0005I(\u0003i_\u000f\u001b\u0000:\u000ev\\\fEM&\u000fnY\u001cD\b%\u00111\u0004KR\u0015mLmO\b\u0002]6\u0003?-AId\u000b\t\u000eK`Dr_[\rUg\u0001`\u000b\u000f\u0004QpO!\\\u001a\u0018\u001a{Nu\u000b\u001a\u001eN}Do_\u0012\b[aDe9)\u000eyN\u0015\b\u0000VHqC\u001e\u0019ltMtNEW\u0015mDoHA(SeIdY?\nNt\u001f=\u0004\u0003\u000eTv\u001bDE\u0018\u0019CeUdO0\u000eC+¢)YdE\u0018Q\u007f{BsR\u000b\u001f_qjdR[\u001cI`\u001bHOFITpVQY\u0014\u0004\\7\u0001yF\u0017\u0005I/YdE\u0018V\u0018}Uu[AD\u0015bVv\u0005\fX\u0014zSf\u0004I[\n$\u000e1\u001fT\u0013WyDoHXI\u0004)YdE\u0018Q\u007f{BsR\u000b\u001fSzOLN\u000f\u0003Uq\u0001@G\u001c\u0004H|UiFFIRaUq\u0011TDMbV/\\HEUgF.\u0019K[\u000b:\u00115\u0004\u0003\u0006VpOb\b\t\u0018[8\u0010^\u001eYK\u0015+\u0007aStX\u000f\u0005I"
         .length();
      char var1 = '4';
      int var7 = -1;

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

         while (true) {
            String var8 = a(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     p = var5;
                     String[] var9 = p;
                     g = p[70];
                     c = var9[52];
                     b = var9[13];
                     d = var9[18];
                     f = var9[85];
                     e = var9[79];
                     h = var9[78];
                     a = Logger.getLogger(TokenServiceImpl.class.getName());
                     return;
                  }

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

                  var2 = "\u0016\u0019=\u0019Bh\u00142\u0013v[%7\u00048FC]\u001e+\u0005l\u0012MQ\b1L\"\u001f\u0016o,\u000f:lN\u0002\fW#\u0005%\u0019^H\u0004-\u0018";
                  var4 = "\u0016\u0019=\u0019Bh\u00142\u0013v[%7\u00048FC]\u001e+\u0005l\u0012MQ\b1L\"\u001f\u0016o,\u000f:lN\u0002\fW#\u0005%\u0019^H\u0004-\u0018"
                     .length();
                  var1 = 11;
                  var7 = -1;
            }

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

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

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

      return var10000;
   }

   private static String a(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 -> 67;
            case 1 -> 119;
            case 2 -> 87;
            case 3 -> 125;
            case 4 -> 45;
            case 5 -> 61;
            default -> 108;
         });
      }

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

   public class TokenServiceException extends Exception {
      static final long serialVersionUID = 7762542878026708184L;

      public TokenServiceException(Throwable nullx) {
         super(nullx);
      }

      public TokenServiceException(String nullx) {
         super(nullx);
      }

      public TokenServiceException(String nullx, Throwable nullxx) {
         super(nullx, nullxx);
      }
   }
}
