package com.l7tech.server;

import com.l7tech.common.http.HttpConstants;
import com.l7tech.common.http.HttpCookie;
import com.l7tech.common.http.HttpCookie.IllegalFormatException;
import com.l7tech.common.io.XmlUtil;
import com.l7tech.common.mime.ContentTypeHeader;
import com.l7tech.common.protocol.SecureSpanConstants.HttpHeaders;
import com.l7tech.gateway.common.LicenseManager;
import com.l7tech.gateway.common.service.PublishedService;
import com.l7tech.gateway.common.transport.SsgConnector;
import com.l7tech.message.HeadersKnob;
import com.l7tech.message.HttpRequestKnob;
import com.l7tech.message.Message;
import com.l7tech.objectmodel.Goid;
import com.l7tech.policy.assertion.AssertionStatus;
import com.l7tech.server.audit.AuditContextFactory;
import com.l7tech.server.audit.Auditor;
import com.l7tech.server.audit.MessageSummaryAuditFactory;
import com.l7tech.server.event.FaultProcessed;
import com.l7tech.server.message.PolicyEnforcementContext;
import com.l7tech.server.message.PolicyEnforcementContextFactory;
import com.l7tech.server.transport.http.HttpTransportModule;
import com.l7tech.server.util.EventChannel;
import com.l7tech.server.util.SoapFaultManager;
import com.l7tech.util.Charsets;
import com.l7tech.util.Config;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.InetAddressUtil;
import com.l7tech.util.Pair;
import com.l7tech.xml.SoapFaultLevel;
import com.l7tech.xml.soap.SoapVersion;
import jakarta.servlet.ServletConfig;
import jakarta.servlet.ServletException;
import jakarta.servlet.ServletOutputStream;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.Collection;
import java.util.Collections;
import java.util.Enumeration;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;
import org.xml.sax.SAXException;

public class SoapMessageProcessingServlet extends HttpServlet {
   private static final String DEFAULT_CONTENT_TYPE;
   private static final Charset DEFAULT_CONTENT_ENCODING;
   private static final String SOAP_1_2_CONTENT_TYPE;
   private static final Charset SOAP_1_2_CONTENT_ENCODING;
   private static final String PARAM_POLICYSERVLET_URI;
   private static final String DEFAULT_POLICYSERVLET_URI;
   public static final String ALLOW_GZIP_COMPRESSED_REQUEST;
   public static final String ALLOW_EMPTY_GZIP_BODY_REQUEST;
   public static final String ALLOW_GZIP_COMPRESSED_RESPONSE;
   private final Logger logger = Logger.getLogger(this.getClass().getName());
   private final Set<String> prePopulatedHeaders = Set.of(HttpConstants.HSTS_HEADER);
   private Config config;
   private MessageProcessor messageProcessor;
   private SoapFaultManager soapFaultManager;
   private LicenseManager licenseManager;
   private StashManagerFactory stashManagerFactory;
   private ApplicationEventPublisher messageProcessingEventChannel;
   private Auditor auditor;
   AuditContextFactory auditContextFactory;
   MessageSummaryAuditFactory messageSummaryAuditFactory;
   static final long serialVersionUID = 6627736600455549264L;
   private static final String[] a;

   public void init(ServletConfig var1) throws ServletException {
      super.init(var1);
      WebApplicationContext var2 = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());

      try {
         if (var2 == null) {
            throw new ServletException(a[16]);
         }
      } catch (ServletException var4) {
         throw a(var4);
      }

      String[] var3 = a;
      this.config = (Config)var2.getBean(var3[11], Config.class);
      this.messageProcessor = (MessageProcessor)var2.getBean(var3[1], MessageProcessor.class);
      this.soapFaultManager = (SoapFaultManager)var2.getBean(var3[6], SoapFaultManager.class);
      this.licenseManager = (LicenseManager)var2.getBean(var3[49], LicenseManager.class);
      this.stashManagerFactory = (StashManagerFactory)var2.getBean(var3[39], StashManagerFactory.class);
      this.messageProcessingEventChannel = (ApplicationEventPublisher)var2.getBean(var3[34], EventChannel.class);
      this.auditContextFactory = (AuditContextFactory)var2.getBean(var3[50], AuditContextFactory.class);
      this.messageSummaryAuditFactory = (MessageSummaryAuditFactory)var2.getBean(var3[54], MessageSummaryAuditFactory.class);
      this.auditor = new Auditor(this, var2, this.logger);
   }

   public void doPost(HttpServletRequest var1, HttpServletResponse var2) throws ServletException, IOException {
      this.service(var1, var2);
   }

   protected void service(HttpServletRequest var1, HttpServletResponse var2) throws ServletException, IOException {
      Message var3 = new Message();
      Message var4 = new Message();

      try (PolicyEnforcementContext var5 = PolicyEnforcementContextFactory.createPolicyEnforcementContext(var4, var3, true)) {
         AssertionStatus[] var6 = new AssertionStatus[]{null};
         this.auditContextFactory.doWithNewAuditContext(new a6(this, var6, var1, var2, var5), new a7(this, var6, var5));
      } catch (ServletException | IOException var10) {
         throw var10;
      } catch (Exception var11) {
         throw new ServletException(var11);
      }
   }

   private AssertionStatus serviceNoAudit(HttpServletRequest param1, HttpServletResponse param2, PolicyEnforcementContext param3) throws ServletException, IOException {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 0
      // 001: aload 1
      // 002: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.getConnector (Ljakarta/servlet/http/HttpServletRequest;)Lcom/l7tech/gateway/common/transport/SsgConnector;
      // 005: astore 4
      // 007: aload 0
      // 008: getfield com/l7tech/server/SoapMessageProcessingServlet.licenseManager Lcom/l7tech/gateway/common/LicenseManager;
      // 00b: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 00e: astore 34
      // 010: aload 34
      // 012: bipush 65
      // 014: aaload
      // 015: invokeinterface com/l7tech/gateway/common/LicenseManager.requireFeature (Ljava/lang/String;)V 2
      // 01a: aload 4
      // 01c: getstatic com/l7tech/gateway/common/transport/SsgConnector$Endpoint.MESSAGE_INPUT Lcom/l7tech/gateway/common/transport/SsgConnector$Endpoint;
      // 01f: invokestatic com/l7tech/server/transport/http/HttpTransportModule.requireEndpoint (Lcom/l7tech/gateway/common/transport/SsgConnector;Lcom/l7tech/gateway/common/transport/SsgConnector$Endpoint;)V
      // 022: goto 09a
      // 025: astore 5
      // 027: aload 1
      // 028: aload 2
      // 029: aload 4
      // 02b: aload 0
      // 02c: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 02f: invokestatic com/l7tech/server/transport/http/HttpTransportModule.addHstsResponseHeaderIfRequired (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;Lcom/l7tech/gateway/common/transport/SsgConnector;Lcom/l7tech/util/Config;)Z
      // 032: pop
      // 033: aload 0
      // 034: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 037: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 03a: aload 5
      // 03c: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 03f: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 042: astore 34
      // 044: aload 34
      // 046: bipush 7
      // 048: aaload
      // 049: swap
      // 04a: aload 34
      // 04c: bipush 5
      // 04d: aaload
      // 04e: 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" ]
      // 053: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 056: aload 2
      // 057: sipush 503
      // 05a: invokeinterface jakarta/servlet/http/HttpServletResponse.sendError (I)V 2
      // 05f: aconst_null
      // 060: areturn
      // 061: astore 5
      // 063: aload 1
      // 064: aload 2
      // 065: aload 4
      // 067: aload 0
      // 068: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 06b: invokestatic com/l7tech/server/transport/http/HttpTransportModule.addHstsResponseHeaderIfRequired (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;Lcom/l7tech/gateway/common/transport/SsgConnector;Lcom/l7tech/util/Config;)Z
      // 06e: pop
      // 06f: aload 0
      // 070: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 073: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 076: aload 1
      // 077: invokeinterface jakarta/servlet/http/HttpServletRequest.getServerPort ()I 1
      // 07c: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 07f: astore 34
      // 081: aload 34
      // 083: bipush 19
      // 085: aaload
      // 086: swap
      // 087: invokedynamic makeConcatWithConstants (Ljava/lang/String;I)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" ]
      // 08c: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 08f: aload 2
      // 090: sipush 500
      // 093: invokeinterface jakarta/servlet/http/HttpServletResponse.sendError (I)V 2
      // 098: aconst_null
      // 099: areturn
      // 09a: aload 2
      // 09b: aload 4
      // 09d: aload 0
      // 09e: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 0a1: invokestatic com/l7tech/server/transport/http/HttpTransportModule.addHstsHeaderIfRequired (Ljakarta/servlet/http/HttpServletResponse;Lcom/l7tech/gateway/common/transport/SsgConnector;Lcom/l7tech/util/Config;)Z
      // 0a4: istore 5
      // 0a6: iload 5
      // 0a8: ifeq 0b6
      // 0ab: aload 0
      // 0ac: getfield com/l7tech/server/SoapMessageProcessingServlet.prePopulatedHeaders Ljava/util/Set;
      // 0af: goto 0b9
      // 0b2: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0b5: athrow
      // 0b6: invokestatic java/util/Collections.emptySet ()Ljava/util/Set;
      // 0b9: astore 6
      // 0bb: aload 0
      // 0bc: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 0bf: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 0c2: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 0c5: ifeq 13e
      // 0c8: aload 0
      // 0c9: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 0cc: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 0cf: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 0d2: astore 34
      // 0d4: aload 34
      // 0d6: bipush 0
      // 0d7: aaload
      // 0d8: bipush 1
      // 0d9: anewarray 812
      // 0dc: dup
      // 0dd: bipush 0
      // 0de: aload 1
      // 0df: invokeinterface jakarta/servlet/http/HttpServletRequest.getRequestURI ()Ljava/lang/String; 1
      // 0e4: aastore
      // 0e5: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;[Ljava/lang/Object;)V
      // 0e8: aload 0
      // 0e9: aload 1
      // 0ea: invokeinterface jakarta/servlet/http/HttpServletRequest.getHeaderNames ()Ljava/util/Enumeration; 1
      // 0ef: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.safeList (Ljava/util/Enumeration;)Ljava/lang/Iterable;
      // 0f2: invokeinterface java/lang/Iterable.iterator ()Ljava/util/Iterator; 1
      // 0f7: astore 7
      // 0f9: aload 7
      // 0fb: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 100: ifeq 13e
      // 103: aload 7
      // 105: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 10a: checkcast java/lang/String
      // 10d: astore 8
      // 10f: aload 0
      // 110: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 113: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 116: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 119: astore 34
      // 11b: aload 34
      // 11d: bipush 36
      // 11f: aaload
      // 120: bipush 2
      // 121: anewarray 812
      // 124: dup
      // 125: bipush 0
      // 126: aload 8
      // 128: aastore
      // 129: dup
      // 12a: bipush 1
      // 12b: aload 0
      // 12c: aload 1
      // 12d: aload 8
      // 12f: invokeinterface jakarta/servlet/http/HttpServletRequest.getHeaders (Ljava/lang/String;)Ljava/util/Enumeration; 2
      // 134: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.safeList (Ljava/util/Enumeration;)Ljava/lang/Iterable;
      // 137: aastore
      // 138: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;[Ljava/lang/Object;)V
      // 13b: goto 0f9
      // 13e: aconst_null
      // 13f: astore 7
      // 141: aload 1
      // 142: getstatic com/l7tech/common/http/HttpConstants.HEADER_CONTENT_ENCODING Ljava/lang/String;
      // 145: invokeinterface jakarta/servlet/http/HttpServletRequest.getHeader (Ljava/lang/String;)Ljava/lang/String; 2
      // 14a: astore 8
      // 14c: bipush 0
      // 14d: istore 9
      // 14f: bipush 0
      // 150: istore 10
      // 152: aload 0
      // 153: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 156: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 159: astore 34
      // 15b: aload 34
      // 15d: bipush 67
      // 15f: aaload
      // 160: bipush 1
      // 161: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 166: istore 11
      // 168: aload 8
      // 16a: ifnull 2b0
      // 16d: aload 8
      // 16f: invokevirtual java/lang/String.toLowerCase ()Ljava/lang/String;
      // 172: aload 34
      // 174: bipush 20
      // 176: aaload
      // 177: invokevirtual java/lang/String.contains (Ljava/lang/CharSequence;)Z
      // 17a: ifeq 294
      // 17d: goto 184
      // 180: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 183: athrow
      // 184: aload 0
      // 185: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 188: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 18b: bipush 26
      // 18d: aaload
      // 18e: bipush 1
      // 18f: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 194: ifne 1c3
      // 197: goto 19e
      // 19a: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 19d: athrow
      // 19e: aload 0
      // 19f: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 1a2: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 1a5: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 1a8: bipush 56
      // 1aa: aaload
      // 1ab: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 1ae: aload 0
      // 1af: aload 1
      // 1b0: aload 2
      // 1b1: sipush 415
      // 1b4: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 1b7: bipush 59
      // 1b9: aaload
      // 1ba: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.rejectGzipRequest (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;ILjava/lang/String;)V
      // 1bd: aconst_null
      // 1be: areturn
      // 1bf: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1c2: athrow
      // 1c3: bipush 1
      // 1c4: istore 9
      // 1c6: iload 11
      // 1c8: istore 10
      // 1ca: aload 0
      // 1cb: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 1ce: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 1d1: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 1d4: ifeq 1f7
      // 1d7: aload 0
      // 1d8: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 1db: aload 1
      // 1dc: invokeinterface jakarta/servlet/http/HttpServletRequest.getContentLength ()I 1
      // 1e1: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 1e4: bipush 47
      // 1e6: aaload
      // 1e7: swap
      // 1e8: invokedynamic makeConcatWithConstants (Ljava/lang/String;I)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" ]
      // 1ed: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 1f0: goto 1f7
      // 1f3: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1f6: athrow
      // 1f7: aload 1
      // 1f8: invokeinterface jakarta/servlet/http/HttpServletRequest.getInputStream ()Ljakarta/servlet/ServletInputStream; 1
      // 1fd: astore 12
      // 1ff: aload 0
      // 200: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 203: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 206: astore 34
      // 208: aload 34
      // 20a: bipush 8
      // 20c: aaload
      // 20d: bipush 0
      // 20e: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 213: ifeq 24c
      // 216: new java/io/PushbackInputStream
      // 219: dup
      // 21a: aload 12
      // 21c: invokespecial java/io/PushbackInputStream.<init> (Ljava/io/InputStream;)V
      // 21f: astore 13
      // 221: bipush 1
      // 222: newarray 8
      // 224: astore 14
      // 226: aload 13
      // 228: aload 14
      // 22a: invokevirtual java/io/PushbackInputStream.read ([B)I
      // 22d: istore 15
      // 22f: iload 15
      // 231: ifle 249
      // 234: aload 13
      // 236: aload 14
      // 238: bipush 0
      // 239: iload 15
      // 23b: invokevirtual java/io/PushbackInputStream.unread ([BII)V
      // 23e: new java/util/zip/GZIPInputStream
      // 241: dup
      // 242: aload 13
      // 244: invokespecial java/util/zip/GZIPInputStream.<init> (Ljava/io/InputStream;)V
      // 247: astore 7
      // 249: goto 257
      // 24c: new java/util/zip/GZIPInputStream
      // 24f: dup
      // 250: aload 12
      // 252: invokespecial java/util/zip/GZIPInputStream.<init> (Ljava/io/InputStream;)V
      // 255: astore 7
      // 257: goto 2c1
      // 25a: astore 12
      // 25c: aload 12
      // 25e: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 261: astore 13
      // 263: aload 0
      // 264: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 267: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 26a: aload 13
      // 26c: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 26f: astore 34
      // 271: aload 34
      // 273: bipush 27
      // 275: aaload
      // 276: swap
      // 277: 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" ]
      // 27c: aload 12
      // 27e: invokestatic com/l7tech/util/ExceptionUtils.getDebugException (Ljava/lang/Throwable;)Ljava/lang/Throwable;
      // 281: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 284: aload 0
      // 285: aload 1
      // 286: aload 2
      // 287: sipush 400
      // 28a: aload 34
      // 28c: bipush 46
      // 28e: aaload
      // 28f: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.rejectGzipRequest (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;ILjava/lang/String;)V
      // 292: aconst_null
      // 293: areturn
      // 294: aload 0
      // 295: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 298: aload 8
      // 29a: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 29d: astore 34
      // 29f: aload 34
      // 2a1: bipush 24
      // 2a3: aaload
      // 2a4: swap
      // 2a5: 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" ]
      // 2aa: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 2ad: goto 2c1
      // 2b0: aload 0
      // 2b1: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 2b4: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 2b7: astore 34
      // 2b9: aload 34
      // 2bb: bipush 48
      // 2bd: aaload
      // 2be: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 2c1: iload 10
      // 2c3: ifne 2e8
      // 2c6: iload 11
      // 2c8: ifeq 2f0
      // 2cb: goto 2d2
      // 2ce: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2d1: athrow
      // 2d2: aload 1
      // 2d3: getstatic com/l7tech/common/http/HttpConstants.HEADER_ACCEPT_ENCODING Ljava/lang/String;
      // 2d6: invokeinterface jakarta/servlet/http/HttpServletRequest.getHeader (Ljava/lang/String;)Ljava/lang/String; 2
      // 2db: invokestatic com/l7tech/common/http/HttpHeaderUtil.acceptsGzipResponse (Ljava/lang/String;)Z
      // 2de: ifeq 2f0
      // 2e1: goto 2e8
      // 2e4: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2e7: athrow
      // 2e8: bipush 1
      // 2e9: goto 2f1
      // 2ec: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2ef: athrow
      // 2f0: bipush 0
      // 2f1: istore 10
      // 2f3: aload 3
      // 2f4: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getResponse ()Lcom/l7tech/message/Message; 1
      // 2f9: astore 12
      // 2fb: aload 3
      // 2fc: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRequest ()Lcom/l7tech/message/Message; 1
      // 301: astore 13
      // 303: aload 0
      // 304: aload 1
      // 305: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.getRequestContentType (Ljakarta/servlet/http/HttpServletRequest;)Lcom/l7tech/common/mime/ContentTypeHeader;
      // 308: astore 14
      // 30a: aload 4
      // 30c: getstatic com/l7tech/gateway/common/transport/SsgConnector.PROP_OVERRIDE_CONTENT_TYPE Ljava/lang/String;
      // 30f: invokevirtual com/l7tech/gateway/common/transport/SsgConnector.getProperty (Ljava/lang/String;)Ljava/lang/String;
      // 312: astore 15
      // 314: aload 15
      // 316: ifnull 320
      // 319: aload 15
      // 31b: invokestatic com/l7tech/common/mime/ContentTypeHeader.create (Ljava/lang/String;)Lcom/l7tech/common/mime/ContentTypeHeader;
      // 31e: astore 14
      // 320: aload 3
      // 321: iload 9
      // 323: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.setRequestWasCompressed (Z)V 2
      // 328: aload 0
      // 329: getfield com/l7tech/server/SoapMessageProcessingServlet.stashManagerFactory Lcom/l7tech/server/StashManagerFactory;
      // 32c: invokeinterface com/l7tech/server/StashManagerFactory.createStashManager ()Lcom/l7tech/common/mime/StashManager; 1
      // 331: astore 16
      // 333: aconst_null
      // 334: astore 17
      // 336: aload 4
      // 338: getstatic com/l7tech/gateway/common/transport/SsgConnector.PROP_REQUEST_SIZE_LIMIT Ljava/lang/String;
      // 33b: invokestatic com/l7tech/message/Message.getMaxBytes ()J
      // 33e: invokevirtual com/l7tech/gateway/common/transport/SsgConnector.getLongProperty (Ljava/lang/String;J)J
      // 341: lstore 18
      // 343: iload 9
      // 345: ifeq 35d
      // 348: aload 7
      // 34a: ifnull 35d
      // 34d: goto 354
      // 350: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 353: athrow
      // 354: aload 7
      // 356: goto 363
      // 359: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 35c: athrow
      // 35d: aload 1
      // 35e: invokeinterface jakarta/servlet/http/HttpServletRequest.getInputStream ()Ljakarta/servlet/ServletInputStream; 1
      // 363: astore 20
      // 365: aload 13
      // 367: aload 16
      // 369: aload 14
      // 36b: aload 20
      // 36d: lload 18
      // 36f: invokevirtual com/l7tech/message/Message.initialize (Lcom/l7tech/common/mime/StashManager;Lcom/l7tech/common/mime/ContentTypeHeader;Ljava/io/InputStream;J)V
      // 372: aload 4
      // 374: getstatic com/l7tech/objectmodel/EntityType.SERVICE Lcom/l7tech/objectmodel/EntityType;
      // 377: getstatic com/l7tech/gateway/common/transport/SsgConnector.PROP_HARDWIRED_SERVICE_ID Ljava/lang/String;
      // 37a: getstatic com/l7tech/objectmodel/PersistentEntity.DEFAULT_GOID Lcom/l7tech/objectmodel/Goid;
      // 37d: invokevirtual com/l7tech/gateway/common/transport/SsgConnector.getGoidProperty (Lcom/l7tech/objectmodel/EntityType;Ljava/lang/String;Lcom/l7tech/objectmodel/Goid;)Lcom/l7tech/objectmodel/Goid;
      // 380: astore 21
      // 382: aload 21
      // 384: invokestatic com/l7tech/objectmodel/Goid.isDefault (Lcom/l7tech/objectmodel/Goid;)Z
      // 387: ifne 3a1
      // 38a: aload 13
      // 38c: ldc com/l7tech/message/HasServiceId
      // 38e: new com/l7tech/message/HasServiceIdImpl
      // 391: dup
      // 392: aload 21
      // 394: invokespecial com/l7tech/message/HasServiceIdImpl.<init> (Lcom/l7tech/objectmodel/Goid;)V
      // 397: invokevirtual com/l7tech/message/Message.attachKnob (Ljava/lang/Class;Lcom/l7tech/message/MessageKnob;)V
      // 39a: goto 3a1
      // 39d: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3a0: athrow
      // 3a1: aload 13
      // 3a3: invokevirtual com/l7tech/message/Message.getMimeKnob ()Lcom/l7tech/message/MimeKnob;
      // 3a6: astore 22
      // 3a8: new com/l7tech/message/HttpServletRequestKnob
      // 3ab: dup
      // 3ac: new com/l7tech/server/d
      // 3af: dup
      // 3b0: aload 1
      // 3b1: new com/l7tech/server/a9
      // 3b4: dup
      // 3b5: aload 22
      // 3b7: invokespecial com/l7tech/server/a9.<init> (Lcom/l7tech/message/MimeKnob;)V
      // 3ba: invokespecial com/l7tech/server/d.<init> (Ljakarta/servlet/http/HttpServletRequest;Lcom/l7tech/server/a8;)V
      // 3bd: invokespecial com/l7tech/message/HttpServletRequestKnob.<init> (Ljakarta/servlet/http/HttpServletRequest;)V
      // 3c0: astore 23
      // 3c2: aload 13
      // 3c4: aload 23
      // 3c6: invokevirtual com/l7tech/message/Message.attachHttpRequestKnob (Lcom/l7tech/message/HttpRequestKnob;)V
      // 3c9: aload 1
      // 3ca: aload 13
      // 3cc: invokestatic com/l7tech/server/util/ServletUtils.loadHeaders (Ljakarta/servlet/http/HttpServletRequest;Lcom/l7tech/message/Message;)V
      // 3cf: aload 0
      // 3d0: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 3d3: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 3d6: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 3d9: ifeq 3f6
      // 3dc: new com/l7tech/message/HttpServletResponseKnob
      // 3df: dup
      // 3e0: new com/l7tech/server/e
      // 3e3: dup
      // 3e4: aload 2
      // 3e5: aload 0
      // 3e6: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 3e9: invokespecial com/l7tech/server/e.<init> (Ljakarta/servlet/http/HttpServletResponse;Ljava/util/logging/Logger;)V
      // 3ec: invokespecial com/l7tech/message/HttpServletResponseKnob.<init> (Ljakarta/servlet/http/HttpServletResponse;)V
      // 3ef: goto 3fe
      // 3f2: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3f5: athrow
      // 3f6: new com/l7tech/message/HttpServletResponseKnob
      // 3f9: dup
      // 3fa: aload 2
      // 3fb: invokespecial com/l7tech/message/HttpServletResponseKnob.<init> (Ljakarta/servlet/http/HttpServletResponse;)V
      // 3fe: astore 24
      // 400: aload 12
      // 402: aload 24
      // 404: invokevirtual com/l7tech/message/Message.attachHttpResponseKnob (Lcom/l7tech/message/HttpResponseKnob;)V
      // 407: aload 0
      // 408: getfield com/l7tech/server/SoapMessageProcessingServlet.messageProcessor Lcom/l7tech/server/MessageProcessor;
      // 40b: aload 3
      // 40c: invokevirtual com/l7tech/server/MessageProcessor.processMessageNoAudit (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/policy/assertion/AssertionStatus;
      // 40f: astore 17
      // 411: aload 3
      // 412: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isAuditSaveRequest ()Z 1
      // 417: ifeq 446
      // 41a: aload 13
      // 41c: invokevirtual com/l7tech/message/Message.getMimeKnob ()Lcom/l7tech/message/MimeKnob;
      // 41f: invokeinterface com/l7tech/message/MimeKnob.isBufferingDisallowed ()Z 1
      // 424: ifne 446
      // 427: goto 42e
      // 42a: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 42d: athrow
      // 42e: aload 13
      // 430: invokevirtual com/l7tech/message/Message.getMimeKnob ()Lcom/l7tech/message/MimeKnob;
      // 433: invokeinterface com/l7tech/message/MimeKnob.getFirstPart ()Lcom/l7tech/common/mime/PartInfo; 1
      // 438: bipush 0
      // 439: invokeinterface com/l7tech/common/mime/PartInfo.getInputStream (Z)Ljava/io/InputStream; 2
      // 43e: pop
      // 43f: goto 446
      // 442: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 445: athrow
      // 446: aload 17
      // 448: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 44b: if_acmpeq 4a3
      // 44e: aload 0
      // 44f: aload 3
      // 450: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.getSoapFaultLevel (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/xml/SoapFaultLevel;
      // 453: astore 25
      // 455: aload 0
      // 456: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 459: aload 17
      // 45b: invokevirtual com/l7tech/policy/assertion/AssertionStatus.getMessage ()Ljava/lang/String;
      // 45e: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 461: astore 34
      // 463: aload 34
      // 465: bipush 51
      // 467: aaload
      // 468: swap
      // 469: 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" ]
      // 46e: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 471: aload 25
      // 473: invokevirtual com/l7tech/xml/SoapFaultLevel.getLevel ()I
      // 476: ifne 4a3
      // 479: aload 0
      // 47a: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 47d: aload 25
      // 47f: invokestatic java/lang/String.valueOf (Ljava/lang/Object;)Ljava/lang/String;
      // 482: aload 34
      // 484: bipush 28
      // 486: aaload
      // 487: swap
      // 488: 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" ]
      // 48d: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 490: aload 1
      // 491: aload 34
      // 493: bipush 14
      // 495: aaload
      // 496: aload 34
      // 498: bipush 33
      // 49a: aaload
      // 49b: invokeinterface jakarta/servlet/http/HttpServletRequest.setAttribute (Ljava/lang/String;Ljava/lang/Object;)V 3
      // 4a0: aload 17
      // 4a2: areturn
      // 4a3: aload 2
      // 4a4: invokeinterface jakarta/servlet/http/HttpServletResponse.isCommitted ()Z 1
      // 4a9: ifeq 4da
      // 4ac: aload 0
      // 4ad: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 4b0: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 4b3: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 4b6: ifeq 4d7
      // 4b9: goto 4c0
      // 4bc: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 4bf: athrow
      // 4c0: aload 0
      // 4c1: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 4c4: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 4c7: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 4ca: bipush 37
      // 4cc: aaload
      // 4cd: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 4d0: goto 4d7
      // 4d3: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 4d6: athrow
      // 4d7: aload 17
      // 4d9: areturn
      // 4da: aload 3
      // 4db: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getResponse ()Lcom/l7tech/message/Message; 1
      // 4e0: invokevirtual com/l7tech/message/Message.getHeadersKnob ()Lcom/l7tech/message/HeadersKnob;
      // 4e3: astore 25
      // 4e5: aload 0
      // 4e6: aload 3
      // 4e7: aload 23
      // 4e9: aload 25
      // 4eb: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.getPassThroughHeaders (Lcom/l7tech/server/message/PolicyEnforcementContext;Lcom/l7tech/message/HttpRequestKnob;Lcom/l7tech/message/HeadersKnob;)Ljava/util/Collection;
      // 4ee: astore 26
      // 4f0: aload 6
      // 4f2: invokeinterface java/util/Set.isEmpty ()Z 1
      // 4f7: ifeq 50b
      // 4fa: aload 24
      // 4fc: aload 26
      // 4fe: invokestatic java/util/Collections.emptyList ()Ljava/util/List;
      // 501: invokevirtual com/l7tech/message/HttpServletResponseKnob.beginResponse (Ljava/util/Collection;Ljava/util/Collection;)V
      // 504: goto 517
      // 507: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 50a: athrow
      // 50b: aload 24
      // 50d: aload 6
      // 50f: aload 26
      // 511: invokestatic java/util/Collections.emptyList ()Ljava/util/List;
      // 514: invokevirtual com/l7tech/message/HttpServletResponseKnob.beginResponse (Ljava/util/Set;Ljava/util/Collection;Ljava/util/Collection;)V
      // 517: aload 24
      // 519: invokevirtual com/l7tech/message/HttpServletResponseKnob.getStatus ()I
      // 51c: istore 27
      // 51e: iload 27
      // 520: bipush 1
      // 521: if_icmpge 540
      // 524: aload 17
      // 526: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 529: if_acmpne 53b
      // 52c: goto 533
      // 52f: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 532: athrow
      // 533: sipush 200
      // 536: istore 27
      // 538: goto 540
      // 53b: sipush 503
      // 53e: istore 27
      // 540: aload 17
      // 542: getstatic com/l7tech/policy/assertion/AssertionStatus.NONE Lcom/l7tech/policy/assertion/AssertionStatus;
      // 545: if_acmpne 749
      // 548: aload 12
      // 54a: ldc com/l7tech/message/MimeKnob
      // 54c: invokevirtual com/l7tech/message/Message.getKnob (Ljava/lang/Class;)Ljava/lang/Object;
      // 54f: ifnull 568
      // 552: goto 559
      // 555: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 558: athrow
      // 559: aload 12
      // 55b: invokevirtual com/l7tech/message/Message.isInitialized ()Z
      // 55e: ifne 5de
      // 561: goto 568
      // 564: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 567: athrow
      // 568: iload 27
      // 56a: sipush 200
      // 56d: if_icmplt 5aa
      // 570: goto 577
      // 573: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 576: athrow
      // 577: iload 27
      // 579: sipush 400
      // 57c: if_icmpge 5aa
      // 57f: goto 586
      // 582: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 585: athrow
      // 586: aload 0
      // 587: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 58a: iload 27
      // 58c: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 58f: bipush 63
      // 591: aaload
      // 592: swap
      // 593: invokedynamic makeConcatWithConstants (Ljava/lang/String;I)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" ]
      // 598: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 59b: aload 2
      // 59c: iload 27
      // 59e: invokeinterface jakarta/servlet/http/HttpServletResponse.setStatus (I)V 2
      // 5a3: goto 5c4
      // 5a6: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 5a9: athrow
      // 5aa: aload 0
      // 5ab: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 5ae: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 5b1: astore 34
      // 5b3: aload 34
      // 5b5: bipush 45
      // 5b7: aaload
      // 5b8: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 5bb: aload 2
      // 5bc: sipush 200
      // 5bf: invokeinterface jakarta/servlet/http/HttpServletResponse.setStatus (I)V 2
      // 5c4: aload 2
      // 5c5: aconst_null
      // 5c6: invokeinterface jakarta/servlet/http/HttpServletResponse.setContentType (Ljava/lang/String;)V 2
      // 5cb: aload 2
      // 5cc: bipush 0
      // 5cd: invokeinterface jakarta/servlet/http/HttpServletResponse.setContentLength (I)V 2
      // 5d2: aload 2
      // 5d3: invokeinterface jakarta/servlet/http/HttpServletResponse.getOutputStream ()Ljakarta/servlet/ServletOutputStream; 1
      // 5d8: invokevirtual jakarta/servlet/ServletOutputStream.close ()V
      // 5db: aload 17
      // 5dd: areturn
      // 5de: aload 12
      // 5e0: invokevirtual com/l7tech/message/Message.getMimeKnob ()Lcom/l7tech/message/MimeKnob;
      // 5e3: astore 28
      // 5e5: aload 2
      // 5e6: iload 27
      // 5e8: invokeinterface jakarta/servlet/http/HttpServletResponse.setStatus (I)V 2
      // 5ed: aload 25
      // 5ef: getstatic com/l7tech/common/http/HttpConstants.HEADER_CONTENT_TYPE Ljava/lang/String;
      // 5f2: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 5f5: astore 34
      // 5f7: aload 34
      // 5f9: bipush 44
      // 5fb: aaload
      // 5fc: bipush 0
      // 5fd: invokeinterface com/l7tech/message/HeadersKnob.getHeaders (Ljava/lang/String;Ljava/lang/String;Z)Ljava/util/Collection; 4
      // 602: astore 29
      // 604: aload 29
      // 606: ifnull 61a
      // 609: aload 29
      // 60b: invokeinterface java/util/Collection.isEmpty ()Z 1
      // 610: ifeq 658
      // 613: goto 61a
      // 616: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 619: athrow
      // 61a: aload 28
      // 61c: invokeinterface com/l7tech/message/MimeKnob.getOuterContentType ()Lcom/l7tech/common/mime/ContentTypeHeader; 1
      // 621: astore 30
      // 623: aload 30
      // 625: getstatic com/l7tech/common/mime/ContentTypeHeader.NONE Lcom/l7tech/common/mime/ContentTypeHeader;
      // 628: if_acmpne 633
      // 62b: aconst_null
      // 62c: goto 638
      // 62f: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 632: athrow
      // 633: aload 30
      // 635: invokevirtual com/l7tech/common/mime/ContentTypeHeader.getFullValue ()Ljava/lang/String;
      // 638: astore 31
      // 63a: aload 2
      // 63b: aload 31
      // 63d: invokeinterface jakarta/servlet/http/HttpServletResponse.setContentType (Ljava/lang/String;)V 2
      // 642: aload 31
      // 644: ifnonnull 658
      // 647: aload 2
      // 648: getstatic com/l7tech/common/http/HttpConstants.HEADER_CONTENT_LENGTH Ljava/lang/String;
      // 64b: aconst_null
      // 64c: invokeinterface jakarta/servlet/http/HttpServletResponse.setHeader (Ljava/lang/String;Ljava/lang/String;)V 3
      // 651: goto 658
      // 654: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 657: athrow
      // 658: aload 2
      // 659: invokeinterface jakarta/servlet/http/HttpServletResponse.getOutputStream ()Ljakarta/servlet/ServletOutputStream; 1
      // 65e: astore 30
      // 660: iload 10
      // 662: ifeq 6ad
      // 665: aload 2
      // 666: getstatic com/l7tech/common/http/HttpConstants.HEADER_CONTENT_ENCODING Ljava/lang/String;
      // 669: invokeinterface jakarta/servlet/http/HttpServletResponse.containsHeader (Ljava/lang/String;)Z 2
      // 66e: ifne 6ad
      // 671: goto 678
      // 674: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 677: athrow
      // 678: aload 0
      // 679: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 67c: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 67f: astore 34
      // 681: aload 34
      // 683: bipush 41
      // 685: aaload
      // 686: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 689: aload 2
      // 68a: getstatic com/l7tech/common/http/HttpConstants.HEADER_CONTENT_ENCODING Ljava/lang/String;
      // 68d: aload 34
      // 68f: bipush 55
      // 691: aaload
      // 692: invokeinterface jakarta/servlet/http/HttpServletResponse.setHeader (Ljava/lang/String;Ljava/lang/String;)V 3
      // 697: new java/util/zip/GZIPOutputStream
      // 69a: dup
      // 69b: aload 30
      // 69d: bipush 1
      // 69e: invokespecial java/util/zip/GZIPOutputStream.<init> (Ljava/io/OutputStream;Z)V
      // 6a1: astore 30
      // 6a3: aload 2
      // 6a4: getstatic com/l7tech/common/http/HttpConstants.HEADER_CONTENT_LENGTH Ljava/lang/String;
      // 6a7: aconst_null
      // 6a8: invokeinterface jakarta/servlet/http/HttpServletResponse.setHeader (Ljava/lang/String;Ljava/lang/String;)V 3
      // 6ad: aload 0
      // 6ae: aload 3
      // 6af: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.canStreamResponse (Lcom/l7tech/server/message/PolicyEnforcementContext;)Z
      // 6b2: istore 31
      // 6b4: iload 31
      // 6b6: ifeq 6e2
      // 6b9: aload 0
      // 6ba: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 6bd: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 6c0: bipush 29
      // 6c2: aaload
      // 6c3: bipush 1
      // 6c4: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 6c9: ifeq 6e2
      // 6cc: goto 6d3
      // 6cf: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 6d2: athrow
      // 6d3: aload 28
      // 6d5: lconst_0
      // 6d6: invokeinterface com/l7tech/message/MimeKnob.setContentLengthLimit (J)V 3
      // 6db: goto 6e2
      // 6de: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 6e1: athrow
      // 6e2: iload 31
      // 6e4: ifeq 703
      // 6e7: aload 12
      // 6e9: invokevirtual com/l7tech/message/Message.getMimeKnob ()Lcom/l7tech/message/MimeKnob;
      // 6ec: invokeinterface com/l7tech/message/MimeKnob.isBufferingDisallowed ()Z 1
      // 6f1: ifeq 703
      // 6f4: goto 6fb
      // 6f7: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 6fa: athrow
      // 6fb: bipush 1
      // 6fc: goto 704
      // 6ff: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 702: athrow
      // 703: bipush 0
      // 704: istore 32
      // 706: aload 28
      // 708: iload 31
      // 70a: invokeinterface com/l7tech/message/MimeKnob.getEntireMessageBodyAsInputStream (Z)Ljava/io/InputStream; 2
      // 70f: aload 30
      // 711: iload 32
      // 713: invokestatic com/l7tech/util/IOUtils.copyStream (Ljava/io/InputStream;Ljava/io/OutputStream;Z)J
      // 716: pop2
      // 717: aload 30
      // 719: invokevirtual java/io/OutputStream.close ()V
      // 71c: aload 0
      // 71d: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 720: iload 27
      // 722: aload 28
      // 724: invokeinterface com/l7tech/message/MimeKnob.getOuterContentType ()Lcom/l7tech/common/mime/ContentTypeHeader; 1
      // 729: invokevirtual com/l7tech/common/mime/ContentTypeHeader.getFullValue ()Ljava/lang/String;
      // 72c: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 72f: astore 34
      // 731: aload 34
      // 733: bipush 61
      // 735: aaload
      // 736: dup_x2
      // 737: pop
      // 738: aload 34
      // 73a: bipush 15
      // 73c: aaload
      // 73d: swap
      // 73e: invokedynamic makeConcatWithConstants (Ljava/lang/String;ILjava/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\u0001" ]
      // 743: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 746: goto 882
      // 749: aload 24
      // 74b: invokevirtual com/l7tech/message/HttpServletResponseKnob.hasChallenge ()Z
      // 74e: ifeq 771
      // 751: aload 0
      // 752: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 755: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 758: bipush 9
      // 75a: aaload
      // 75b: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 75e: aload 24
      // 760: invokevirtual com/l7tech/message/HttpServletResponseKnob.beginChallenge ()V
      // 763: aload 0
      // 764: aload 3
      // 765: aload 1
      // 766: aload 2
      // 767: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.sendChallenge (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // 76a: goto 882
      // 76d: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 770: athrow
      // 771: aload 3
      // 772: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isMalformedRequest ()Z 1
      // 777: ifeq 7c4
      // 77a: aload 0
      // 77b: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 77e: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 781: bipush 35
      // 783: aaload
      // 784: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 787: aload 3
      // 788: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getFaultlevel ()Lcom/l7tech/xml/SoapFaultLevel; 1
      // 78d: ifnull 7b8
      // 790: goto 797
      // 793: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 796: athrow
      // 797: aload 3
      // 798: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getFaultlevel ()Lcom/l7tech/xml/SoapFaultLevel; 1
      // 79d: invokevirtual com/l7tech/xml/SoapFaultLevel.isAlwaysReturnSoapFault ()Z
      // 7a0: ifeq 7b8
      // 7a3: goto 7aa
      // 7a6: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 7a9: athrow
      // 7aa: aload 0
      // 7ab: aload 3
      // 7ac: aload 1
      // 7ad: aload 2
      // 7ae: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.returnFault (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // 7b1: goto 882
      // 7b4: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 7b7: athrow
      // 7b8: aload 2
      // 7b9: sipush 400
      // 7bc: invokeinterface jakarta/servlet/http/HttpServletResponse.sendError (I)V 2
      // 7c1: goto 882
      // 7c4: sipush 500
      // 7c7: istore 28
      // 7c9: aload 3
      // 7ca: getstatic com/l7tech/policy/assertion/HttpRoutingAssertion.VAR_HTTP_ROUTING_REASON_CODE Ljava/lang/String;
      // 7cd: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getVariable (Ljava/lang/String;)Ljava/lang/Object; 2
      // 7d2: checkcast java/lang/Integer
      // 7d5: astore 29
      // 7d7: bipush -6
      // 7d9: aload 29
      // 7db: invokevirtual java/lang/Integer.intValue ()I
      // 7de: if_icmpne 815
      // 7e1: aload 0
      // 7e2: getfield com/l7tech/server/SoapMessageProcessingServlet.soapFaultManager Lcom/l7tech/server/util/SoapFaultManager;
      // 7e5: aload 3
      // 7e6: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getFaultlevel ()Lcom/l7tech/xml/SoapFaultLevel; 1
      // 7eb: aload 3
      // 7ec: invokevirtual com/l7tech/server/util/SoapFaultManager.constructReturningFault (Lcom/l7tech/xml/SoapFaultLevel;Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/server/util/SoapFaultManager$FaultResponse;
      // 7ef: astore 30
      // 7f1: aload 0
      // 7f2: aload 3
      // 7f3: aload 30
      // 7f5: invokevirtual com/l7tech/server/util/SoapFaultManager$FaultResponse.getContent ()Ljava/lang/String;
      // 7f8: aload 30
      // 7fa: invokevirtual com/l7tech/server/util/SoapFaultManager$FaultResponse.getContentType ()Lcom/l7tech/common/mime/ContentTypeHeader;
      // 7fd: invokevirtual com/l7tech/common/mime/ContentTypeHeader.getEncoding ()Ljava/nio/charset/Charset;
      // 800: aload 30
      // 802: invokevirtual com/l7tech/server/util/SoapFaultManager$FaultResponse.getContentType ()Lcom/l7tech/common/mime/ContentTypeHeader;
      // 805: invokevirtual com/l7tech/common/mime/ContentTypeHeader.getFullValue ()Ljava/lang/String;
      // 808: sipush 504
      // 80b: aload 1
      // 80c: aload 2
      // 80d: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.sendExceptionFault (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljava/lang/String;Ljava/nio/charset/Charset;Ljava/lang/String;ILjakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // 810: sipush 504
      // 813: istore 28
      // 815: aload 0
      // 816: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 819: iload 28
      // 81b: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 81e: astore 34
      // 820: aload 34
      // 822: bipush 42
      // 824: aaload
      // 825: swap
      // 826: invokedynamic makeConcatWithConstants (Ljava/lang/String;I)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" ]
      // 82b: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 82e: aload 0
      // 82f: aload 3
      // 830: aload 1
      // 831: aload 2
      // 832: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.returnFault (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // 835: goto 882
      // 838: astore 29
      // 83a: aload 0
      // 83b: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 83e: iload 28
      // 840: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 843: astore 34
      // 845: aload 34
      // 847: bipush 57
      // 849: aaload
      // 84a: swap
      // 84b: invokedynamic makeConcatWithConstants (Ljava/lang/String;I)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" ]
      // 850: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 853: aload 0
      // 854: aload 3
      // 855: aload 1
      // 856: aload 2
      // 857: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.returnFault (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // 85a: goto 882
      // 85d: astore 33
      // 85f: aload 0
      // 860: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 863: iload 28
      // 865: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 868: astore 34
      // 86a: aload 34
      // 86c: bipush 57
      // 86e: aaload
      // 86f: swap
      // 870: invokedynamic makeConcatWithConstants (Ljava/lang/String;I)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" ]
      // 875: invokevirtual java/util/logging/Logger.fine (Ljava/lang/String;)V
      // 878: aload 0
      // 879: aload 3
      // 87a: aload 1
      // 87b: aload 2
      // 87c: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.returnFault (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // 87f: aload 33
      // 881: athrow
      // 882: goto b04
      // 885: astore 18
      // 887: aload 18
      // 889: instanceof com/l7tech/policy/assertion/PolicyAssertionException
      // 88c: ifeq 90f
      // 88f: aload 18
      // 891: ldc com/l7tech/gateway/common/LicenseException
      // 893: invokestatic com/l7tech/util/ExceptionUtils.causedBy (Ljava/lang/Throwable;Ljava/lang/Class;)Z
      // 896: ifeq 8b6
      // 899: goto 8a0
      // 89c: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 89f: athrow
      // 8a0: aload 0
      // 8a1: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 8a4: getstatic java/util/logging/Level.SEVERE Ljava/util/logging/Level;
      // 8a7: aload 18
      // 8a9: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 8ac: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 8af: goto a69
      // 8b2: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 8b5: athrow
      // 8b6: aload 18
      // 8b8: ldc com/l7tech/security/xml/decorator/DecoratorException
      // 8ba: invokestatic com/l7tech/util/ExceptionUtils.causedBy (Ljava/lang/Throwable;Ljava/lang/Class;)Z
      // 8bd: ifeq 8f8
      // 8c0: aload 18
      // 8c2: ldc com/l7tech/security/xml/decorator/DecoratorException
      // 8c4: invokestatic com/l7tech/util/ExceptionUtils.getCauseIfCausedBy (Ljava/lang/Throwable;Ljava/lang/Class;)Ljava/lang/Throwable;
      // 8c7: checkcast com/l7tech/security/xml/decorator/DecoratorException
      // 8ca: astore 19
      // 8cc: aload 0
      // 8cd: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 8d0: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 8d3: aload 18
      // 8d5: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 8d8: aload 19
      // 8da: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 8dd: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 8e0: astore 34
      // 8e2: aload 34
      // 8e4: bipush 31
      // 8e6: aaload
      // 8e7: swap
      // 8e8: 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" ]
      // 8ed: aload 18
      // 8ef: invokestatic com/l7tech/util/ExceptionUtils.getDebugException (Ljava/lang/Throwable;)Ljava/lang/Throwable;
      // 8f2: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 8f5: goto a69
      // 8f8: aload 0
      // 8f9: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 8fc: getstatic java/util/logging/Level.SEVERE Ljava/util/logging/Level;
      // 8ff: aload 18
      // 901: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 904: aload 18
      // 906: invokestatic com/l7tech/util/ExceptionUtils.getDebugException (Ljava/lang/Throwable;)Ljava/lang/Throwable;
      // 909: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 90c: goto a69
      // 90f: aload 18
      // 911: instanceof com/l7tech/server/policy/PolicyVersionException
      // 914: ifeq 92e
      // 917: aload 0
      // 918: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 91b: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 91e: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 921: bipush 18
      // 923: aaload
      // 924: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 927: goto a69
      // 92a: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 92d: athrow
      // 92e: aload 18
      // 930: instanceof com/l7tech/server/MethodNotAllowedException
      // 933: ifeq 949
      // 936: aload 0
      // 937: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 93a: aload 18
      // 93c: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 93f: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // 942: goto a69
      // 945: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 948: athrow
      // 949: aload 18
      // 94b: instanceof com/l7tech/server/MessageProcessingSuspendedException
      // 94e: ifeq 97b
      // 951: aload 0
      // 952: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 955: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 958: bipush 66
      // 95a: aaload
      // 95b: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // 95e: aload 0
      // 95f: getfield com/l7tech/server/SoapMessageProcessingServlet.auditor Lcom/l7tech/server/audit/Auditor;
      // 962: getstatic com/l7tech/gateway/common/audit/SystemMessages.AUDIT_ARCHIVER_MESSAGE_PROCESSING_SUSPENDED Lcom/l7tech/gateway/common/audit/Messages$M;
      // 965: bipush 1
      // 966: anewarray 969
      // 969: dup
      // 96a: bipush 0
      // 96b: aload 18
      // 96d: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 970: aastore
      // 971: invokevirtual com/l7tech/server/audit/Auditor.logAndAudit (Lcom/l7tech/gateway/common/audit/AuditDetailMessage;[Ljava/lang/String;)V
      // 974: goto a69
      // 977: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 97a: athrow
      // 97b: aload 18
      // 97d: instanceof java/io/IOException
      // 980: ifeq 9b1
      // 983: aload 18
      // 985: invokevirtual java/lang/Object.getClass ()Ljava/lang/Class;
      // 988: invokevirtual java/lang/Class.getName ()Ljava/lang/String;
      // 98b: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 98e: bipush 62
      // 990: aaload
      // 991: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 994: ifeq 9b1
      // 997: goto 99e
      // 99a: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 99d: athrow
      // 99e: aload 0
      // 99f: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 9a2: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 9a5: bipush 3
      // 9a6: aaload
      // 9a7: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // 9aa: aload 17
      // 9ac: areturn
      // 9ad: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 9b0: athrow
      // 9b1: aload 18
      // 9b3: instanceof com/l7tech/server/MessageResponseIOException
      // 9b6: ifeq 9c0
      // 9b9: goto a69
      // 9bc: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 9bf: athrow
      // 9c0: aload 18
      // 9c2: instanceof java/io/IOException
      // 9c5: ifeq a3d
      // 9c8: aload 18
      // 9ca: ldc com/l7tech/common/http/prov/apache/components/AbortedSocketException
      // 9cc: invokestatic com/l7tech/util/ExceptionUtils.causedBy (Ljava/lang/Throwable;Ljava/lang/Class;)Z
      // 9cf: ifeq a16
      // 9d2: goto 9d9
      // 9d5: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 9d8: athrow
      // 9d9: aload 18
      // 9db: ldc com/l7tech/common/http/prov/apache/components/AbortedSocketException
      // 9dd: invokestatic com/l7tech/util/ExceptionUtils.getCauseIfCausedBy (Ljava/lang/Throwable;Ljava/lang/Class;)Ljava/lang/Throwable;
      // 9e0: checkcast com/l7tech/common/http/prov/apache/components/AbortedSocketException
      // 9e3: astore 19
      // 9e5: aload 0
      // 9e6: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // 9e9: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 9ec: ldc com/l7tech/common/http/prov/apache/components/AbortedSocketException
      // 9ee: invokevirtual java/lang/Class.getName ()Ljava/lang/String;
      // 9f1: aload 19
      // 9f3: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 9f6: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 9f9: astore 34
      // 9fb: aload 34
      // 9fd: bipush 21
      // 9ff: aaload
      // a00: swap
      // a01: 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" ]
      // a06: aload 18
      // a08: invokestatic com/l7tech/util/ExceptionUtils.getDebugException (Ljava/lang/Throwable;)Ljava/lang/Throwable;
      // a0b: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // a0e: getstatic com/l7tech/policy/assertion/AssertionStatus.FALSIFIED Lcom/l7tech/policy/assertion/AssertionStatus;
      // a11: astore 17
      // a13: goto a69
      // a16: aload 0
      // a17: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // a1a: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // a1d: aload 18
      // a1f: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // a22: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // a25: astore 34
      // a27: aload 34
      // a29: bipush 10
      // a2b: aaload
      // a2c: swap
      // a2d: 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" ]
      // a32: aload 18
      // a34: invokestatic com/l7tech/util/ExceptionUtils.getDebugException (Ljava/lang/Throwable;)Ljava/lang/Throwable;
      // a37: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // a3a: goto a69
      // a3d: aload 18
      // a3f: ldc java/net/SocketTimeoutException
      // a41: invokestatic com/l7tech/util/ExceptionUtils.causedBy (Ljava/lang/Throwable;Ljava/lang/Class;)Z
      // a44: ifeq a58
      // a47: aload 0
      // a48: getfield com/l7tech/server/SoapMessageProcessingServlet.auditor Lcom/l7tech/server/audit/Auditor;
      // a4b: getstatic com/l7tech/gateway/common/audit/SystemMessages.SOCKET_TIMEOUT Lcom/l7tech/gateway/common/audit/Messages$M;
      // a4e: invokevirtual com/l7tech/server/audit/Auditor.logAndAudit (Lcom/l7tech/gateway/common/audit/AuditDetailMessage;)V
      // a51: goto a69
      // a54: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // a57: athrow
      // a58: aload 0
      // a59: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // a5c: getstatic java/util/logging/Level.SEVERE Ljava/util/logging/Level;
      // a5f: aload 18
      // a61: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // a64: aload 18
      // a66: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // a69: aload 0
      // a6a: aload 3
      // a6b: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.getSoapFaultLevel (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/xml/SoapFaultLevel;
      // a6e: astore 19
      // a70: aload 19
      // a72: invokevirtual com/l7tech/xml/SoapFaultLevel.getLevel ()I
      // a75: ifne aa1
      // a78: aload 0
      // a79: getfield com/l7tech/server/SoapMessageProcessingServlet.logger Ljava/util/logging/Logger;
      // a7c: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // a7f: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // a82: bipush 12
      // a84: aaload
      // a85: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // a88: aload 1
      // a89: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // a8c: bipush 33
      // a8e: aaload
      // a8f: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // a92: bipush 33
      // a94: aaload
      // a95: invokeinterface jakarta/servlet/http/HttpServletRequest.setAttribute (Ljava/lang/String;Ljava/lang/Object;)V 3
      // a9a: aload 17
      // a9c: areturn
      // a9d: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // aa0: athrow
      // aa1: aload 2
      // aa2: invokeinterface jakarta/servlet/http/HttpServletResponse.isCommitted ()Z 1
      // aa7: ifne ab7
      // aaa: aload 2
      // aab: invokeinterface jakarta/servlet/http/HttpServletResponse.reset ()V 1
      // ab0: goto acc
      // ab3: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // ab6: athrow
      // ab7: aload 1
      // ab8: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // abb: astore 34
      // abd: aload 34
      // abf: bipush 33
      // ac1: aaload
      // ac2: aload 34
      // ac4: bipush 33
      // ac6: aaload
      // ac7: invokeinterface jakarta/servlet/http/HttpServletRequest.setAttribute (Ljava/lang/String;Ljava/lang/Object;)V 3
      // acc: aload 18
      // ace: instanceof com/l7tech/server/MessageResponseIOException
      // ad1: ifeq aec
      // ad4: aload 0
      // ad5: aload 3
      // ad6: aload 18
      // ad8: invokevirtual java/lang/Throwable.getMessage ()Ljava/lang/String;
      // adb: aconst_null
      // adc: aconst_null
      // add: sipush 500
      // ae0: aload 1
      // ae1: aload 2
      // ae2: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.sendExceptionFault (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljava/lang/String;Ljava/nio/charset/Charset;Ljava/lang/String;ILjakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // ae5: goto af5
      // ae8: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // aeb: athrow
      // aec: aload 0
      // aed: aload 3
      // aee: aload 18
      // af0: aload 1
      // af1: aload 2
      // af2: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.sendExceptionFault (Lcom/l7tech/server/message/PolicyEnforcementContext;Ljava/lang/Throwable;Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
      // af5: goto b04
      // af8: astore 20
      // afa: new jakarta/servlet/ServletException
      // afd: dup
      // afe: aload 20
      // b00: invokespecial jakarta/servlet/ServletException.<init> (Ljava/lang/Throwable;)V
      // b03: athrow
      // b04: aload 17
      // b06: areturn
      // try (4 -> 15): 16 com/l7tech/gateway/common/LicenseException
      // try (4 -> 15): 45 com/l7tech/server/transport/ListenerException
      // try (210 -> 225): 226 com/l7tech/gateway/common/LicenseException
      // try (176 -> 204): 204 com/l7tech/gateway/common/LicenseException
      // try (166 -> 184): 185 com/l7tech/gateway/common/LicenseException
      // try (164 -> 173): 174 com/l7tech/gateway/common/LicenseException
      // try (77 -> 82): 82 com/l7tech/gateway/common/LicenseException
      // try (228 -> 271): 272 java/lang/Exception
      // try (467 -> 480): 481 com/l7tech/gateway/common/LicenseException
      // try (464 -> 471): 472 com/l7tech/gateway/common/LicenseException
      // try (428 -> 449): 449 com/l7tech/gateway/common/LicenseException
      // try (400 -> 410): 411 com/l7tech/gateway/common/LicenseException
      // try (376 -> 383): 383 com/l7tech/gateway/common/LicenseException
      // try (374 -> 378): 379 com/l7tech/gateway/common/LicenseException
      // try (327 -> 337): 337 com/l7tech/gateway/common/LicenseException
      // try (322 -> 332): 333 com/l7tech/gateway/common/LicenseException
      // try (320 -> 324): 325 com/l7tech/gateway/common/LicenseException
      // try (862 -> 894): 911 com/l7tech/policy/variable/NoSuchVariableException
      // try (862 -> 894): 929 null
      // try (911 -> 912): 929 null
      // try (929 -> 930): 929 null
      // try (369 -> 524): 949 java/lang/Throwable
      // try (528 -> 543): 544 com/l7tech/gateway/common/LicenseException
      // try (525 -> 533): 534 com/l7tech/gateway/common/LicenseException
      // try (525 -> 547): 949 java/lang/Throwable
      // try (612 -> 631): 631 com/l7tech/gateway/common/LicenseException
      // try (606 -> 615): 616 com/l7tech/gateway/common/LicenseException
      // try (600 -> 609): 610 com/l7tech/gateway/common/LicenseException
      // try (593 -> 603): 604 com/l7tech/gateway/common/LicenseException
      // try (590 -> 597): 598 com/l7tech/gateway/common/LicenseException
      // try (576 -> 582): 583 com/l7tech/gateway/common/LicenseException
      // try (558 -> 566): 566 com/l7tech/gateway/common/LicenseException
      // try (548 -> 654): 949 java/lang/Throwable
      // try (841 -> 854): 854 com/l7tech/gateway/common/LicenseException
      // try (829 -> 845): 846 com/l7tech/gateway/common/LicenseException
      // try (826 -> 838): 839 com/l7tech/gateway/common/LicenseException
      // try (807 -> 824): 824 com/l7tech/gateway/common/LicenseException
      // try (765 -> 774): 774 com/l7tech/gateway/common/LicenseException
      // try (763 -> 769): 770 com/l7tech/gateway/common/LicenseException
      // try (746 -> 760): 761 com/l7tech/gateway/common/LicenseException
      // try (744 -> 754): 755 com/l7tech/gateway/common/LicenseException
      // try (707 -> 713): 714 com/l7tech/gateway/common/LicenseException
      // try (692 -> 701): 702 com/l7tech/gateway/common/LicenseException
      // try (682 -> 687): 687 com/l7tech/gateway/common/LicenseException
      // try (671 -> 676): 677 com/l7tech/gateway/common/LicenseException
      // try (655 -> 948): 949 java/lang/Throwable
      // try (1195 -> 1209): 1209 com/l7tech/gateway/common/LicenseException
      // try (1177 -> 1183): 1183 com/l7tech/gateway/common/LicenseException
      // try (1155 -> 1175): 1175 com/l7tech/gateway/common/LicenseException
      // try (1133 -> 1142): 1142 com/l7tech/gateway/common/LicenseException
      // try (1082 -> 1089): 1090 com/l7tech/gateway/common/LicenseException
      // try (1076 -> 1080): 1080 com/l7tech/gateway/common/LicenseException
      // try (1055 -> 1074): 1074 com/l7tech/gateway/common/LicenseException
      // try (1052 -> 1063): 1064 com/l7tech/gateway/common/LicenseException
      // try (1029 -> 1050): 1050 com/l7tech/gateway/common/LicenseException
      // try (1018 -> 1027): 1027 com/l7tech/gateway/common/LicenseException
      // try (1005 -> 1016): 1016 com/l7tech/gateway/common/LicenseException
      // try (953 -> 967): 967 com/l7tech/gateway/common/LicenseException
      // try (950 -> 957): 958 com/l7tech/gateway/common/LicenseException
      // try (1177 -> 1217): 1218 org/xml/sax/SAXException
   }

   private Collection<Pair<String, Object>> getPassThroughHeaders(PolicyEnforcementContext param1, HttpRequestKnob param2, HeadersKnob param3) {
      // $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: new java/util/ArrayList
      // 003: dup
      // 004: invokespecial java/util/ArrayList.<init> ()V
      // 007: astore 4
      // 009: aload 2
      // 00a: invokeinterface com/l7tech/message/HttpRequestKnob.getRequestURL ()Ljava/net/URL; 1
      // 00f: astore 5
      // 011: aload 1
      // 012: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isOverwriteResponseCookieDomain ()Z 1
      // 017: ifeq 026
      // 01a: aload 5
      // 01c: invokevirtual java/net/URL.getHost ()Ljava/lang/String;
      // 01f: goto 027
      // 022: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 025: athrow
      // 026: aconst_null
      // 027: astore 6
      // 029: aload 1
      // 02a: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isOverwriteResponseCookiePath ()Z 1
      // 02f: ifeq 041
      // 032: aload 5
      // 034: invokevirtual java/net/URL.getPath ()Ljava/lang/String;
      // 037: invokestatic com/l7tech/common/http/CookieUtils.trimLastSubPath (Ljava/lang/String;)Ljava/lang/String;
      // 03a: goto 042
      // 03d: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 040: athrow
      // 041: aconst_null
      // 042: astore 7
      // 044: aload 3
      // 045: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 048: bipush 30
      // 04a: aaload
      // 04b: bipush 0
      // 04c: invokeinterface com/l7tech/message/HeadersKnob.getHeaders (Ljava/lang/String;Z)Ljava/util/Collection; 3
      // 051: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 056: astore 8
      // 058: aload 8
      // 05a: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 05f: ifeq 126
      // 062: aload 8
      // 064: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 069: checkcast com/l7tech/message/Header
      // 06c: astore 9
      // 06e: aload 9
      // 070: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 073: checkcast java/lang/String
      // 076: getstatic com/l7tech/common/http/HttpConstants.HEADER_SET_COOKIE Ljava/lang/String;
      // 079: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 07c: ifne 09f
      // 07f: aload 4
      // 081: new com/l7tech/util/Pair
      // 084: dup
      // 085: aload 9
      // 087: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 08a: aload 9
      // 08c: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 08f: invokespecial com/l7tech/util/Pair.<init> (Ljava/lang/Object;Ljava/lang/Object;)V
      // 092: invokeinterface java/util/List.add (Ljava/lang/Object;)Z 2
      // 097: pop
      // 098: goto 123
      // 09b: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 09e: athrow
      // 09f: aload 9
      // 0a1: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 0a4: instanceof java/lang/String
      // 0a7: ifeq 123
      // 0aa: new java/lang/StringBuffer
      // 0ad: dup
      // 0ae: invokespecial java/lang/StringBuffer.<init> ()V
      // 0b1: astore 10
      // 0b3: aload 9
      // 0b5: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 0b8: checkcast java/lang/String
      // 0bb: invokestatic com/l7tech/common/http/CookieUtils.splitCookieHeader (Ljava/lang/String;)Ljava/util/List;
      // 0be: astore 11
      // 0c0: bipush 0
      // 0c1: istore 12
      // 0c3: iload 12
      // 0c5: aload 11
      // 0c7: invokeinterface java/util/List.size ()I 1
      // 0cc: if_icmpge 10a
      // 0cf: iload 12
      // 0d1: ifle 0eb
      // 0d4: goto 0db
      // 0d7: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0da: athrow
      // 0db: aload 10
      // 0dd: getstatic com/l7tech/common/http/CookieUtils.ATTRIBUTE_DELIMITER Ljava/lang/String;
      // 0e0: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 0e3: pop
      // 0e4: goto 0eb
      // 0e7: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0ea: athrow
      // 0eb: aload 10
      // 0ed: aload 11
      // 0ef: iload 12
      // 0f1: invokeinterface java/util/List.get (I)Ljava/lang/Object; 2
      // 0f6: checkcast java/lang/String
      // 0f9: aload 6
      // 0fb: aload 7
      // 0fd: invokestatic com/l7tech/common/http/CookieUtils.replaceCookieDomainAndPath (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
      // 100: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 103: pop
      // 104: iinc 12 1
      // 107: goto 0c3
      // 10a: aload 4
      // 10c: new com/l7tech/util/Pair
      // 10f: dup
      // 110: aload 9
      // 112: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 115: aload 10
      // 117: invokevirtual java/lang/StringBuffer.toString ()Ljava/lang/String;
      // 11a: invokespecial com/l7tech/util/Pair.<init> (Ljava/lang/Object;Ljava/lang/Object;)V
      // 11d: invokeinterface java/util/List.add (Ljava/lang/Object;)Z 2
      // 122: pop
      // 123: goto 058
      // 126: aload 4
      // 128: areturn
      // try (7 -> 13): 13 java/lang/IllegalStateException
      // try (17 -> 24): 24 java/lang/IllegalStateException
      // try (43 -> 60): 60 java/lang/IllegalStateException
      // try (77 -> 83): 84 java/lang/IllegalStateException
      // try (81 -> 90): 91 java/lang/IllegalStateException
   }

   private HttpCookie getHttpCookieFromHeader(String var1) {
      HttpCookie var2 = null;

      try {
         var2 = new HttpCookie(var1);
      } catch (IllegalFormatException var4) {
         this.logger.log(Level.FINE, a[23], ExceptionUtils.getDebugException(var4));
      }

      return var2;
   }

   SsgConnector getConnector(HttpServletRequest var1) {
      return HttpTransportModule.getConnector(var1);
   }

   void setLicenseManager(LicenseManager var1) {
      this.licenseManager = var1;
   }

   void setConfig(Config var1) {
      this.config = var1;
   }

   void setStashManagerFactory(StashManagerFactory var1) {
      this.stashManagerFactory = var1;
   }

   void setMessageProcessor(MessageProcessor var1) {
      this.messageProcessor = var1;
   }

   private boolean canStreamResponse(PolicyEnforcementContext 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: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isAuditSaveResponse ()Z 1
      // 06: ifne 44
      // 09: aload 0
      // 0a: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 0d: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 10: bipush 17
      // 12: aaload
      // 13: bipush 1
      // 14: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 19: ifeq 44
      // 1c: goto 23
      // 1f: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 22: athrow
      // 23: aload 0
      // 24: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 27: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 2a: bipush 4
      // 2b: aaload
      // 2c: bipush 0
      // 2d: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 32: ifne 44
      // 35: goto 3c
      // 38: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3b: athrow
      // 3c: bipush 1
      // 3d: goto 45
      // 40: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 43: athrow
      // 44: bipush 0
      // 45: ireturn
      // try (0 -> 11): 12 java/lang/IllegalStateException
      // try (3 -> 22): 23 java/lang/IllegalStateException
      // try (14 -> 27): 27 java/lang/IllegalStateException
   }

   private ContentTypeHeader getRequestContentType(HttpServletRequest 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: invokeinterface jakarta/servlet/http/HttpServletRequest.getContentType ()Ljava/lang/String; 1
      // 06: astore 2
      // 07: aload 2
      // 08: ifnull 24
      // 0b: aload 2
      // 0c: invokevirtual java/lang/String.length ()I
      // 0f: ifle 24
      // 12: goto 19
      // 15: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 18: athrow
      // 19: aload 2
      // 1a: invokestatic com/l7tech/common/mime/ContentTypeHeader.create (Ljava/lang/String;)Lcom/l7tech/common/mime/ContentTypeHeader;
      // 1d: goto 27
      // 20: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 23: athrow
      // 24: getstatic com/l7tech/common/mime/ContentTypeHeader.XML_DEFAULT Lcom/l7tech/common/mime/ContentTypeHeader;
      // 27: areturn
      // try (3 -> 8): 9 java/lang/IllegalStateException
      // try (5 -> 14): 14 java/lang/IllegalStateException
   }

   private void rejectGzipRequest(HttpServletRequest param1, HttpServletResponse param2, int param3, String param4) throws IOException {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: aload 0
      // 01: getfield com/l7tech/server/SoapMessageProcessingServlet.config Lcom/l7tech/util/Config;
      // 04: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 07: bipush 58
      // 09: aaload
      // 0a: bipush 1
      // 0b: invokeinterface com/l7tech/util/Config.getBooleanProperty (Ljava/lang/String;Z)Z 3
      // 10: ifeq a2
      // 13: aload 1
      // 14: invokeinterface jakarta/servlet/http/HttpServletRequest.getScheme ()Ljava/lang/String; 1
      // 19: aload 1
      // 1a: invokeinterface jakarta/servlet/http/HttpServletRequest.getServerName ()Ljava/lang/String; 1
      // 1f: invokestatic com/l7tech/util/InetAddressUtil.getHostForUrl (Ljava/lang/String;)Ljava/lang/String;
      // 22: aload 1
      // 23: invokeinterface jakarta/servlet/http/HttpServletRequest.getServerPort ()I 1
      // 28: bipush 80
      // 2a: if_icmpne 3d
      // 2d: goto 34
      // 30: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 33: athrow
      // 34: ldc ""
      // 36: goto 48
      // 39: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3c: athrow
      // 3d: aload 1
      // 3e: invokeinterface jakarta/servlet/http/HttpServletRequest.getServerPort ()I 1
      // 43: invokedynamic makeConcatWithConstants (I)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" ]
      // 48: aload 1
      // 49: invokeinterface jakarta/servlet/http/HttpServletRequest.getRequestURI ()Ljava/lang/String; 1
      // 4e: astore 9
      // 50: astore 10
      // 52: astore 11
      // 54: getstatic com/l7tech/server/SoapMessageProcessingServlet.a [Ljava/lang/String;
      // 57: bipush 38
      // 59: aaload
      // 5a: aload 11
      // 5c: aload 10
      // 5e: aload 9
      // 60: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;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\u0001\u0001" ]
      // 65: astore 5
      // 67: aload 0
      // 68: aload 1
      // 69: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.getRequestContentType (Ljakarta/servlet/http/HttpServletRequest;)Lcom/l7tech/common/mime/ContentTypeHeader;
      // 6c: astore 6
      // 6e: aload 6
      // 70: invokevirtual com/l7tech/common/mime/ContentTypeHeader.getMainValue ()Ljava/lang/String;
      // 73: invokestatic com/l7tech/xml/soap/SoapVersion.contentTypeToSoapVersion (Ljava/lang/String;)Lcom/l7tech/xml/soap/SoapVersion;
      // 76: astore 7
      // 78: aload 0
      // 79: getfield com/l7tech/server/SoapMessageProcessingServlet.soapFaultManager Lcom/l7tech/server/util/SoapFaultManager;
      // 7c: aload 7
      // 7e: getstatic com/l7tech/xml/soap/SoapVersion.SOAP_1_2 Lcom/l7tech/xml/soap/SoapVersion;
      // 81: if_acmpne 8c
      // 84: bipush 1
      // 85: goto 8d
      // 88: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 8b: athrow
      // 8c: bipush 0
      // 8d: aload 5
      // 8f: bipush 0
      // 90: aload 4
      // 92: invokevirtual com/l7tech/server/util/SoapFaultManager.constructFault (ZLjava/lang/String;ZLjava/lang/String;)Lcom/l7tech/server/util/SoapFaultManager$FaultResponse;
      // 95: astore 8
      // 97: aload 0
      // 98: aload 8
      // 9a: aload 2
      // 9b: invokevirtual com/l7tech/server/SoapMessageProcessingServlet.writeFault (Lcom/l7tech/server/util/SoapFaultManager$FaultResponse;Ljakarta/servlet/http/HttpServletResponse;)Ljava/lang/String;
      // 9e: pop
      // 9f: goto a9
      // a2: aload 2
      // a3: iload 3
      // a4: invokeinterface jakarta/servlet/http/HttpServletResponse.sendError (I)V 2
      // a9: return
      // try (0 -> 17): 18 java/io/IOException
      // try (8 -> 22): 22 java/io/IOException
      // try (48 -> 55): 55 java/io/IOException
   }

   private SoapFaultLevel getSoapFaultLevel(PolicyEnforcementContext var1) {
      SoapFaultLevel var2 = var1.getFaultlevel();
      if (var2 == null) {
         var2 = this.soapFaultManager.getDefaultBehaviorSettings();
      }

      return var2;
   }

   private String makePolicyUrl(HttpServletRequest var1, Goid var2) {
      StringBuilder var3 = new StringBuilder(var1.getScheme());
      String[] var5 = a;
      var3.append(var5[40]);
      var3.append(InetAddressUtil.getHostForUrl(var1.getServerName()));
      var3.append(":");
      var3.append(var1.getServerPort());
      var3.append(var1.getContextPath());
      String var4 = this.getServletConfig().getInitParameter(var5[2]);

      label19: {
         try {
            if (var4 != null && var4.length() != 0) {
               break label19;
            }
         } catch (IllegalStateException var6) {
            throw a(var6);
         }

         var4 = a[53];
      }

      var3.append(var4);
      var3.append(var2);
      return var3.toString();
   }

   private void returnFault(PolicyEnforcementContext var1, HttpServletRequest var2, HttpServletResponse var3) throws IOException, SAXException {
      SoapFaultLevel var4 = this.getSoapFaultLevel(var1);

      label20: {
         try {
            if (!var4.isIncludePolicyDownloadURL() || !this.shouldSendBackPolicyUrl(var1)) {
               break label20;
            }
         } catch (IOException var7) {
            throw a(var7);
         }

         PublishedService var5 = var1.getService();
         if (var5 != null) {
            String var6 = this.makePolicyUrl(var2, var5.getGoid());
            var3.setHeader(HttpHeaders.POLICYURL_HEADER, var6);
         }
      }

      SoapFaultManager.FaultResponse var8 = this.soapFaultManager.constructReturningFault(var4, var1);
      String var9 = this.writeFault(var8, var3);
      this.messageProcessingEventChannel.publishEvent(new FaultProcessed(var1, var9, this.messageProcessor));
   }

   private String writeFault(SoapFaultManager.FaultResponse var1, HttpServletResponse var2) throws IOException {
      ServletOutputStream var3 = null;
      String var4 = null;

      try {
         var3 = var2.getOutputStream();
         var2.setStatus(var1.getHttpStatus());
         if (var1.getContentBytes() != null) {
            var4 = var1.getContent();

            try {
               if (!var2.isCommitted()) {
                  this.soapFaultManager.sendExtraHeaders(var1, var2);
                  var2.setContentType(var1.getContentType().getFullValue());
                  var3.write(var1.getContentBytes());
               }
            } catch (IOException var10) {
               throw a(var10);
            }
         }
      } finally {
         try {
            if (var3 != null) {
               var3.close();
            }
         } catch (IOException var11) {
            throw a(var11);
         }
      }

      return var4;
   }

   private void sendExceptionFault(PolicyEnforcementContext var1, Throwable var2, HttpServletRequest var3, HttpServletResponse var4) throws IOException, SAXException {
      SoapFaultManager.FaultResponse var5 = this.soapFaultManager.constructExceptionFault(var2, var1.getFaultlevel(), var1);

      try {
         if (!var4.isCommitted()) {
            this.soapFaultManager.sendExtraHeaders(var5, var4);
         }
      } catch (IOException var6) {
         throw a(var6);
      }

      this.sendExceptionFault(
         var1, var5.getContent(), var5.getContentType().getEncoding(), var5.getContentType().getFullValue(), var5.getHttpStatus(), var3, var4
      );
   }

   private void sendExceptionFault(
      PolicyEnforcementContext var1, String var2, Charset var3, String var4, int var5, HttpServletRequest var6, HttpServletResponse var7
   ) throws IOException, SAXException {
      ServletOutputStream var8 = null;

      try {
         var8 = var7.getOutputStream();

         label138: {
            try {
               if (var4 != null) {
                  var7.setContentType(var4);
                  break label138;
               }
            } catch (IOException var23) {
               throw a(var23);
            }

            label128: {
               try {
                  if (var1.getService() != null && var1.getService().getSoapVersion() == SoapVersion.SOAP_1_2) {
                     break label128;
                  }
               } catch (IOException var24) {
                  throw a(var24);
               }

               var7.setContentType(DEFAULT_CONTENT_TYPE);
               var3 = DEFAULT_CONTENT_ENCODING;
               break label138;
            }

            var7.setContentType(a[68]);
            var3 = SOAP_1_2_CONTENT_ENCODING;
         }

         var7.setStatus(var5);
         SoapFaultLevel var9 = this.getSoapFaultLevel(var1);

         label115: {
            try {
               if (!var9.isIncludePolicyDownloadURL() || !this.shouldSendBackPolicyUrl(var1)) {
                  break label115;
               }
            } catch (IOException var22) {
               throw a(var22);
            }

            PublishedService var10 = var1.getService();
            if (var10 != null) {
               String var11 = this.makePolicyUrl(var6, var10.getGoid());
               var7.setHeader(HttpHeaders.POLICYURL_HEADER, var11);
            }
         }

         if (!var3.canEncode()) {
            var3 = Charsets.UTF8;
         }

         try {
            if (!var7.isCommitted()) {
               var8.write(var2.getBytes(var3));
            }
         } catch (IOException var21) {
            throw a(var21);
         }
      } finally {
         try {
            if (var8 != null) {
               var8.close();
            }
         } catch (IOException var20) {
            throw a(var20);
         }
      }

      this.messageProcessingEventChannel.publishEvent(new FaultProcessed(var1, var2, this.messageProcessor));
   }

   private boolean shouldSendBackPolicyUrl(PolicyEnforcementContext param1) throws IOException {
      // $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: aconst_null
      // 01: astore 2
      // 02: aload 1
      // 03: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRequest ()Lcom/l7tech/message/Message; 1
      // 08: invokevirtual com/l7tech/message/Message.getHttpRequestKnob ()Lcom/l7tech/message/HttpRequestKnob;
      // 0b: getstatic com/l7tech/common/protocol/SecureSpanConstants$HttpHeaders.POLICY_VERSION Ljava/lang/String;
      // 0e: invokeinterface com/l7tech/message/HttpRequestKnob.getHeaderFirstValue (Ljava/lang/String;)Ljava/lang/String; 2
      // 13: astore 2
      // 14: goto 18
      // 17: astore 3
      // 18: aload 2
      // 19: ifnull 2b
      // 1c: aload 2
      // 1d: invokevirtual java/lang/String.length ()I
      // 20: bipush 1
      // 21: if_icmpge 36
      // 24: goto 2b
      // 27: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2a: athrow
      // 2b: aload 1
      // 2c: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isRequestPolicyViolated ()Z 1
      // 31: ireturn
      // 32: invokestatic com/l7tech/server/SoapMessageProcessingServlet.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 35: athrow
      // 36: aload 1
      // 37: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isRequestClaimingWrongPolicyVersion ()Z 1
      // 3c: ireturn
      // try (2 -> 8): 9 java/lang/IllegalStateException
      // try (10 -> 16): 17 java/lang/IllegalStateException
      // try (12 -> 22): 22 java/lang/IllegalStateException
   }

   // $VF: Could not verify finally blocks. A semaphore variable has been added to preserve control flow.
   // 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!)
   private void sendChallenge(PolicyEnforcementContext var1, HttpServletRequest var2, HttpServletResponse var3) throws IOException {
      ServletOutputStream var4 = null;
      boolean var11 = false /* VF: Semaphore variable */;

      try {
         var11 = true;
         var3.setStatus(401);
         PublishedService var5 = var1.getService();

         label63: {
            try {
               if (var5 == null || !this.shouldSendBackPolicyUrl(var1)) {
                  break label63;
               }
            } catch (IOException var13) {
               throw a(var13);
            }

            String var6 = this.makePolicyUrl(var2, var5.getGoid());
            var3.setHeader(HttpHeaders.POLICYURL_HEADER, var6);
         }

         var4 = var3.getOutputStream();
         var4.print(a[13]);
         var11 = false;
      } finally {
         if (var11) {
            try {
               if (var4 != null) {
                  var4.close();
               }
            } catch (IOException var12) {
               throw a(var12);
            }
         }
      }

      if (var4 != null) {
         var4.close();
      }
   }

   private Iterable<String> safeList(Enumeration var1) {
      try {
         if (var1 == null) {
            return Collections.emptyList();
         }
      } catch (IllegalStateException var2) {
         throw a(var2);
      }

      return Collections.list(var1);
   }

   static {
      String[] var5 = new String[69];
      int var3 = 0;
      String var2 = "`\u001c\u0007tAISY=6W\u0015\u001bcz\u0001s\u007f\u001a\u000bKu\u0010E- W\u0000\\Sx:<G\u0004HEG:\u0010x'?M\u0002BeM:%H\u0004OcZ!\u0019k$:A\u000fO\u0016K$<W\u0004_\u0016K'=J\u0004XBA'=\n\u001dI=7M\u0015\u0015YZ!4M\u000fZZe):J1ZD\\f6J\u0000YZM\u0002\u000ff\u0010['2T'ZCD<\u001eE\u000fZQM:1x=1H\bH^M,sW\u0004I@A+6\u0004\f^E[)4AARXX='\u0004\bH\u0016F''\u0004\rRUM& A\u0005\u001b\u0011$Z-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eLsE8']#TRQ%[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016K 2H\r^XO-$ag\u001c\u0004\u0004IDG:sS\tRZMh#V\u000eXS[;:J\u0006\u001b[M; E\u0006^\f\b\f[-!R\u0004IuG&5M\u0006\\x'?M\u0002B\u0016\\ !A\u0016\u001bSZ:<VAZXLh P\u0004ZZ\\ sI\u000e_S\b! \u0004\u0012^B\u0006h\u001aJ\u0012OD]+'M\u000f\\\u0016^)?R\u0004\u001bBGh7V\u000eK\u0016K'=J\u0004XBA'=\u0004\u0002T[X$6P\u0004WO\u0006\u0017i='L\u0004UBA+2P\bTX\b\u001a6U\u0014RDM,\tC!?H\f^XG?\u000f\u0006h0K\u000fOSF<~P\u0018KS\b6k'=B\b\\CZ)'M\u000eU\u0016M:!K\u0013\u0000\u0016K'&H\u0005\u001bXG<sC\u0004O\u0016I8#H\bXW\\!<JAXYF<6\\\u0015\u0017A'\u001bP\u0015KdM;#K\u000fHS{<!A\u0000V_F/1z-\"Q\u0004HB\b:6B\u0004IDM,sP\u000e\u001bWFh<Q\u0015_W\\-7\u0004\u0017^D[!<JATP\b8<H\bXO=x=1H\bH^M,sW\u0004I@A+6\u0004\f^E[)4AARXX='\u0004\bH\u0016F''\u0004\u0004UWJ$6@ATX\b<;M\u0012\u001bFG:'\bA\u0004O2:T\u0002\u0012h\u001bZ-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eL\u0017}&2F\r^\u0016\\'sT\u0000IEMh0K\u000eP_Mh\u001aK'=P\u0004UB\u0005-=G\u000e__F/sJ\u000eO\u0016O2:TA\u001cZ- T\u000eUEMf0K\fKDM; \n\u0006A_Xf2H\rTA\u001bZ-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eL(k)=J\u000eO\u0016L-0K\fKDM; \u0004\u0015SS\b!=G\u000eV_F/sV\u0004JCM;'\u001eAqf'sT\u000eW_K1sB\u000eNXLh2J\u0005\u001bQD'1E\r\u001bEM<'M\u000f\\\u0016A;sP\u000e\u001bQGh P\u0004ZZ\\ sM\u000f\u001bB@! \u0004\u0002ZEMfsm\u000fHBZ=0P\bUQ\b>2H\u0017^\u0016\\'s@\u0013TF\b+<J\u000f^U\\!<JAXYE8?A\u0015WO\u0006\u001dA'\u001bP\u0015KdM;#K\u000fHS{<!A\u0000VcF$:I\bOSL\u000b`\u001c\u0007tAsSI,6V\u0002\u0012h#I8#H\bXW\\!<JNHYI8x\\\fW\r\b+;E\u0013HS\\u&P\u0007\u0016\u000e\tC!?H\f^XG?\u001dE- W\u0000\\Sx:<G\u0004HEA&4a\u0017^X\\\u000b;E\u000fUSD:{-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016\u001cxc\u0004\u0005NS\b<<\u0004\u0004ZDD1sT\u0000IEMh5E\bWCZ-\u001d`\u001c\u0007tAISY=6W\u0015\u001b^M)7A\u0013\u001bmSx.y\\@\u0007U1z- T\u000eUEMh2H\u0013^WL1sG\u000eV[A<'A\u0005\u0017\u0016F''\u0004\u0012^XL!=CAIS[8<J\u0012^\u0018\u0003\u0012g|\u0013[<2W\tvWF)4A\u0013}WK<<V\u0018\u0003\u0012g|\"R!#T\bUQ\b:6W\u0011TX[-sF\u0000X]\b<<\u0004\u0013^G]- P\u0004I\u001c[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016$Z-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eLsE8']#TRQ\u000b`\u001c\u0007tAsSI,6VX[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016Ih#H\u0000XS@'?@\u0004I\u0016M%#P\u0018\u001bDM;#K\u000fHS\b<<\u0004\u0000\u001bE]+0A\u0012HP]$sK\u000f^\u001b_)*\u0004\f^E[)4A\u001fa&%E\rRR\b\u000f\tm1\u001bUG%#V\u0004HEM,sV\u0004JCM;',Z-\"Q\u0004HB\b?:P\t\u001bQR!#\u0004\u0002TX\\-=PL^XK'7M\u000f\\\u0016L-'A\u0002OSLh\u001dF'sG\u000eUBM&'\t\u0004UUG,:J\u0006\u001bEX-0M\u0007RSL\u000eD!0A\u000fHSe)=E\u0006^D\u0013I=7M\u0015xYF<6\\\u0015}WK<<V\u00189K 6G\nRXOh5K\u0013\u001bFG<6J\u0015RWDh0K\u000fUSK<:K\u000f\u001bRZ'#\u0004\u0003^UI= AAHBI<&WARE\b\u0010x'?M\u0002BeM:%H\u0004OcZ!\u0019\u00078<H\bXO\u0007,:W\u0002T\t[-!R\bXSG!7\u0019\u001aE- W\u0000\\S{=>I\u0000IOi=7M\u0015}WK<<V\u0018\u0004O2:T\"z-9A\u0002O_F/sc;rf\b+<I\u0011IS[;6@AISY=6W\u0015\u0015\u001c[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016(Z-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006;<E\u0011}W]$'v\u0004QSK<:K\u000f!z-9A\u0002O_F/sc;rf\b+<I\u0011IS[;6@AISY=6W\u0015\u000f\u0013h0L\u0000IEM<nQ\u0015]\u001b\u0010\"[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=A\u0005\u001bE\\)'Q\u0012\u001b2G:4\n\u0000KWK 6\n\u0002ZBI$:J\u0000\u0015UG&=A\u0002OYZf\u0010H\b^X\\\t1K\u0013OsP+6T\u0015RYF$Z-'Q\u0013U_F/sA\fKBQh#E\u0018WYI,sS\bO^\b;'E\u0015NE\b\u0019\u00078<H\bXO\u0007,:W\u0002T\t[-!R\bXSG!7\u0019\u0018[-!R\bXS\u0012\u0000'P\u0011vS[;2C\u0004rXX='2e- W\u0000\\S\b8!K\u0002^E[!=CAHC[86J\u0005^R\b**\u0004\u0015SS\b\t&@\bO\u0016i:0L\bMSZ";
      int var4 = "`\u001c\u0007tAISY=6W\u0015\u001bcz\u0001s\u007f\u001a\u000bKu\u0010E- W\u0000\\Sx:<G\u0004HEG:\u0010x'?M\u0002BeM:%H\u0004OcZ!\u0019k$:A\u000fO\u0016K$<W\u0004_\u0016K'=J\u0004XBA'=\n\u001dI=7M\u0015\u0015YZ!4M\u000fZZe):J1ZD\\f6J\u0000YZM\u0002\u000ff\u0010['2T'ZCD<\u001eE\u000fZQM:1x=1H\bH^M,sW\u0004I@A+6\u0004\f^E[)4AARXX='\u0004\bH\u0016F''\u0004\rRUM& A\u0005\u001b\u0011$Z-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eLsE8']#TRQ%[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016K 2H\r^XO-$ag\u001c\u0004\u0004IDG:sS\tRZMh#V\u000eXS[;:J\u0006\u001b[M; E\u0006^\f\b\f[-!R\u0004IuG&5M\u0006\\x'?M\u0002B\u0016\\ !A\u0016\u001bSZ:<VAZXLh P\u0004ZZ\\ sI\u000e_S\b! \u0004\u0012^B\u0006h\u001aJ\u0012OD]+'M\u000f\\\u0016^)?R\u0004\u001bBGh7V\u000eK\u0016K'=J\u0004XBA'=\u0004\u0002T[X$6P\u0004WO\u0006\u0017i='L\u0004UBA+2P\bTX\b\u001a6U\u0014RDM,\tC!?H\f^XG?\u000f\u0006h0K\u000fOSF<~P\u0018KS\b6k'=B\b\\CZ)'M\u000eU\u0016M:!K\u0013\u0000\u0016K'&H\u0005\u001bXG<sC\u0004O\u0016I8#H\bXW\\!<JAXYF<6\\\u0015\u0017A'\u001bP\u0015KdM;#K\u000fHS{<!A\u0000V_F/1z-\"Q\u0004HB\b:6B\u0004IDM,sP\u000e\u001bWFh<Q\u0015_W\\-7\u0004\u0017^D[!<JATP\b8<H\bXO=x=1H\bH^M,sW\u0004I@A+6\u0004\f^E[)4AARXX='\u0004\bH\u0016F''\u0004\u0004UWJ$6@ATX\b<;M\u0012\u001bFG:'\bA\u0004O2:T\u0002\u0012h\u001bZ-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eL\u0017}&2F\r^\u0016\\'sT\u0000IEMh0K\u000eP_Mh\u001aK'=P\u0004UB\u0005-=G\u000e__F/sJ\u000eO\u0016O2:TA\u001cZ- T\u000eUEMf0K\fKDM; \n\u0006A_Xf2H\rTA\u001bZ-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eL(k)=J\u000eO\u0016L-0K\fKDM; \u0004\u0015SS\b!=G\u000eV_F/sV\u0004JCM;'\u001eAqf'sT\u000eW_K1sB\u000eNXLh2J\u0005\u001bQD'1E\r\u001bEM<'M\u000f\\\u0016A;sP\u000e\u001bQGh P\u0004ZZ\\ sM\u000f\u001bB@! \u0004\u0002ZEMfsm\u000fHBZ=0P\bUQ\b>2H\u0017^\u0016\\'s@\u0013TF\b+<J\u000f^U\\!<JAXYE8?A\u0015WO\u0006\u001dA'\u001bP\u0015KdM;#K\u000fHS{<!A\u0000VcF$:I\bOSL\u000b`\u001c\u0007tAsSI,6V\u0002\u0012h#I8#H\bXW\\!<JNHYI8x\\\fW\r\b+;E\u0013HS\\u&P\u0007\u0016\u000e\tC!?H\f^XG?\u001dE- W\u0000\\Sx:<G\u0004HEA&4a\u0017^X\\\u000b;E\u000fUSD:{-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016\u001cxc\u0004\u0005NS\b<<\u0004\u0004ZDD1sT\u0000IEMh5E\bWCZ-\u001d`\u001c\u0007tAISY=6W\u0015\u001b^M)7A\u0013\u001bmSx.y\\@\u0007U1z- T\u000eUEMh2H\u0013^WL1sG\u000eV[A<'A\u0005\u0017\u0016F''\u0004\u0012^XL!=CAIS[8<J\u0012^\u0018\u0003\u0012g|\u0013[<2W\tvWF)4A\u0013}WK<<V\u0018\u0003\u0012g|\"R!#T\bUQ\b:6W\u0011TX[-sF\u0000X]\b<<\u0004\u0013^G]- P\u0004I\u001c[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016$Z-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006)?H\u000eLsE8']#TRQ\u000b`\u001c\u0007tAsSI,6VX[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016Ih#H\u0000XS@'?@\u0004I\u0016M%#P\u0018\u001bDM;#K\u000fHS\b<<\u0004\u0000\u001bE]+0A\u0012HP]$sK\u000f^\u001b_)*\u0004\f^E[)4A\u001fa&%E\rRR\b\u000f\tm1\u001bUG%#V\u0004HEM,sV\u0004JCM;',Z-\"Q\u0004HB\b?:P\t\u001bQR!#\u0004\u0002TX\\-=PL^XK'7M\u000f\\\u0016L-'A\u0002OSLh\u001dF'sG\u000eUBM&'\t\u0004UUG,:J\u0006\u001bEX-0M\u0007RSL\u000eD!0A\u000fHSe)=E\u0006^D\u0013I=7M\u0015xYF<6\\\u0015}WK<<V\u00189K 6G\nRXOh5K\u0013\u001bFG<6J\u0015RWDh0K\u000fUSK<:K\u000f\u001bRZ'#\u0004\u0003^UI= AAHBI<&WARE\b\u0010x'?M\u0002BeM:%H\u0004OcZ!\u0019\u00078<H\bXO\u0007,:W\u0002T\t[-!R\bXSG!7\u0019\u001aE- W\u0000\\S{=>I\u0000IOi=7M\u0015}WK<<V\u0018\u0004O2:T\"z-9A\u0002O_F/sc;rf\b+<I\u0011IS[;6@AISY=6W\u0015\u0015\u001c[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=M\u000f\\\u0016(Z-\"Q\u0004HB\u0006+<I\u0011IS[;}C\u001bRF\u0006;<E\u0011}W]$'v\u0004QSK<:K\u000f!z-9A\u0002O_F/sc;rf\b+<I\u0011IS[;6@AISY=6W\u0015\u000f\u0013h0L\u0000IEM<nQ\u0015]\u001b\u0010\"[-!R\r^B\b<!E\u000fHFG:'\u0004\u0013^B]:=A\u0005\u001bE\\)'Q\u0012\u001b2G:4\n\u0000KWK 6\n\u0002ZBI$:J\u0000\u0015UG&=A\u0002OYZf\u0010H\b^X\\\t1K\u0013OsP+6T\u0015RYF$Z-'Q\u0013U_F/sA\fKBQh#E\u0018WYI,sS\bO^\b;'E\u0015NE\b\u0019\u00078<H\bXO\u0007,:W\u0002T\t[-!R\bXSG!7\u0019\u0018[-!R\bXS\u0012\u0000'P\u0011vS[;2C\u0004rXX='2e- W\u0000\\S\b8!K\u0002^E[!=CAHC[86J\u0005^R\b**\u0004\u0015SS\b\t&@\bO\u0016i:0L\bMSZ"
         .length();
      char var1 = 22;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 121;
         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) {
                     a = var5;
                     String[] var9 = a;
                     DEFAULT_POLICYSERVLET_URI = a[64];
                     PARAM_POLICYSERVLET_URI = var9[52];
                     SOAP_1_2_CONTENT_TYPE = var9[32];
                     ALLOW_GZIP_COMPRESSED_REQUEST = var9[22];
                     ALLOW_EMPTY_GZIP_BODY_REQUEST = var9[43];
                     ALLOW_GZIP_COMPRESSED_RESPONSE = var9[25];
                     DEFAULT_CONTENT_TYPE = XmlUtil.TEXT_XML + a[60];
                     DEFAULT_CONTENT_ENCODING = Charsets.UTF8;
                     SOAP_1_2_CONTENT_ENCODING = Charsets.UTF8;
                     return;
                  }

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

                  var2 = "<KF2h3#+\u0000V-j-\"+]Fl`'9>\u0000T.k2'#/^E.n>1:GZ,(.?/^\u001e:j1knM]#u.5:\u0013@6aph";
                  var4 = "<KF2h3#+\u0000V-j-\"+]Fl`'9>\u0000T.k2'#/^E.n>1:GZ,(.?/^\u001e:j1knM]#u.5:\u0013@6aph".length();
                  var1 = 28;
                  var7 = -1;
            }

            var10000 = 31;
            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] ^ 79);
      }

      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 -> 81;
            case 1 -> 49;
            case 2 -> 42;
            case 3 -> 93;
            case 4 -> 24;
            case 5 -> 66;
            default -> 79;
         });
      }

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