public class org.apache.catalina.core.ApplicationContextFacade implements javax.servlet.ServletContext
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.catalina.core.ApplicationContextFacade
  super_class: java.lang.Object
{
  private final java.util.Map<java.lang.String, java.lang.Class<?>[]> classCache;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;[Ljava/lang/Class<*>;>;

  private final java.util.Map<java.lang.String, java.lang.reflect.Method> objectCache;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/reflect/Method;>;

  private final org.apache.catalina.core.ApplicationContext context;
    descriptor: Lorg/apache/catalina/core/ApplicationContext;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.apache.catalina.core.ApplicationContext);
    descriptor: (Lorg/apache/catalina/core/ApplicationContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // org.apache.catalina.core.ApplicationContext context
         0: .line 85
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 86
            aload 0 /* this */
            aload 1 /* context */
            putfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
         2: .line 88
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
         3: .line 89
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield org.apache.catalina.core.ApplicationContextFacade.objectCache:Ljava/util/Map;
         4: .line 90
            aload 0 /* this */
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.initClassCache:()V
         5: .line 91
            return
        end local 1 // org.apache.catalina.core.ApplicationContext context
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    6     1  context  Lorg/apache/catalina/core/ApplicationContext;
    MethodParameters:
         Name  Flags
      context  

  private void initClassCache();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 95
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            astore 1 /* clazz */
        start local 1 // java.lang.Class[] clazz
         1: .line 96
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getContext"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 97
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getMimeType"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 98
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getResourcePaths"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 99
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getResource"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 100
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getResourceAsStream"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 101
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getRequestDispatcher"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 102
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getNamedDispatcher"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 103
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getServlet"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 104
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "setInitParameter"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/String;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 105
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "createServlet"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Class;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 106
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "addServlet"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/String;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 107
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "createFilter"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Class;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 108
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "addFilter"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/String;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 109
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "createListener"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Class;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 110
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "addListener"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 111
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getFilterRegistration"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 112
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getServletRegistration"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 113
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getInitParameter"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 114
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "setAttribute"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/Object;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 115
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "removeAttribute"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 116
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getRealPath"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 117
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "getAttribute"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 118
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "log"
            aload 1 /* clazz */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 119
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            ldc "setSessionTrackingModes"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/util/Set;
            aastore
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 120
            return
        end local 1 // java.lang.Class[] clazz
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   26     0   this  Lorg/apache/catalina/core/ApplicationContextFacade;
            1   26     1  clazz  [Ljava/lang/Class;

  public javax.servlet.ServletContext getContext(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/servlet/ServletContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String uripath
         0: .line 137
            aconst_null
            astore 2 /* theContext */
        start local 2 // javax.servlet.ServletContext theContext
         1: .line 138
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         2: .line 140
            aload 0 /* this */
            ldc "getContext"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* uripath */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
         3: .line 139
            checkcast javax.servlet.ServletContext
            astore 2 /* theContext */
         4: .line 141
            goto 6
         5: .line 142
      StackMap locals: javax.servlet.ServletContext
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* uripath */
            invokevirtual org.apache.catalina.core.ApplicationContext.getContext:(Ljava/lang/String;)Ljavax/servlet/ServletContext;
            astore 2 /* theContext */
         6: .line 144
      StackMap locals:
      StackMap stack:
            aload 2 /* theContext */
            ifnull 9
         7: .line 145
            aload 2 /* theContext */
            instanceof org.apache.catalina.core.ApplicationContext
            ifeq 9
         8: .line 146
            aload 2 /* theContext */
            checkcast org.apache.catalina.core.ApplicationContext
            invokevirtual org.apache.catalina.core.ApplicationContext.getFacade:()Ljavax/servlet/ServletContext;
            astore 2 /* theContext */
         9: .line 148
      StackMap locals:
      StackMap stack:
            aload 2 /* theContext */
            areturn
        end local 2 // javax.servlet.ServletContext theContext
        end local 1 // java.lang.String uripath
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   10     1     uripath  Ljava/lang/String;
            1   10     2  theContext  Ljavax/servlet/ServletContext;
    MethodParameters:
         Name  Flags
      uripath  

  public int getMajorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 154
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getMajorVersion:()I
            ireturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public int getMinorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 160
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getMinorVersion:()I
            ireturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public java.lang.String getMimeType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String file
         0: .line 166
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 167
            aload 0 /* this */
            ldc "getMimeType"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* file */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* file */
            invokevirtual org.apache.catalina.core.ApplicationContext.getMimeType:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String file
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    3     1  file  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      file  

  public java.util.Set<java.lang.String> getResourcePaths(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String path
         0: .line 176
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 177
            aload 0 /* this */
            ldc "getResourcePaths"
         2: .line 178
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* path */
            aastore
         3: .line 177
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            areturn
         4: .line 180
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* path */
            invokevirtual org.apache.catalina.core.ApplicationContext.getResourcePaths:(Ljava/lang/String;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  path  Ljava/lang/String;
    Signature: (Ljava/lang/String;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
      Name  Flags
      path  

  public java.net.URL getResource(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String path
         0: .line 188
            getstatic org.apache.catalina.Globals.IS_SECURITY_ENABLED:Z
            ifeq 10
         1: .line 190
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            ldc "getResource"
         2: .line 191
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* path */
            aastore
         3: .line 190
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.invokeMethod:(Lorg/apache/catalina/core/ApplicationContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.net.URL
         4: areturn
         5: .line 192
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* t */
        start local 2 // java.lang.Throwable t
         6: .line 193
            aload 2 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         7: .line 194
            aload 2 /* t */
            instanceof java.net.MalformedURLException
            ifeq 9
         8: .line 195
            aload 2 /* t */
            checkcast java.net.MalformedURLException
            athrow
         9: .line 197
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.Throwable t
        10: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* path */
            invokevirtual org.apache.catalina.core.ApplicationContext.getResource:(Ljava/lang/String;)Ljava/net/URL;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   11     1  path  Ljava/lang/String;
            6   10     2     t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.Throwable
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
      Name  Flags
      path  

  public java.io.InputStream getResourceAsStream(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/io/InputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String path
         0: .line 207
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 208
            aload 0 /* this */
            ldc "getResourceAsStream"
         2: .line 209
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* path */
            aastore
         3: .line 208
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.io.InputStream
            areturn
         4: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* path */
            invokevirtual org.apache.catalina.core.ApplicationContext.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public javax.servlet.RequestDispatcher getRequestDispatcher(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/servlet/RequestDispatcher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String path
         0: .line 218
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 219
            aload 0 /* this */
            ldc "getRequestDispatcher"
         2: .line 220
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* path */
            aastore
         3: .line 219
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.RequestDispatcher
            areturn
         4: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* path */
            invokevirtual org.apache.catalina.core.ApplicationContext.getRequestDispatcher:(Ljava/lang/String;)Ljavax/servlet/RequestDispatcher;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  final

  public javax.servlet.RequestDispatcher getNamedDispatcher(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/servlet/RequestDispatcher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String name
         0: .line 229
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 230
            aload 0 /* this */
            ldc "getNamedDispatcher"
         2: .line 231
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
         3: .line 230
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.RequestDispatcher
            areturn
         4: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* name */
            invokevirtual org.apache.catalina.core.ApplicationContext.getNamedDispatcher:(Ljava/lang/String;)Ljavax/servlet/RequestDispatcher;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public javax.servlet.Servlet getServlet(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/servlet/Servlet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String name
         0: .line 245
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 10
         1: .line 247
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            ldc "getServlet"
         2: .line 248
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
         3: .line 247
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.invokeMethod:(Lorg/apache/catalina/core/ApplicationContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.Servlet
         4: areturn
         5: .line 249
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* t */
        start local 2 // java.lang.Throwable t
         6: .line 250
            aload 2 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         7: .line 251
            aload 2 /* t */
            instanceof javax.servlet.ServletException
            ifeq 9
         8: .line 252
            aload 2 /* t */
            checkcast javax.servlet.ServletException
            athrow
         9: .line 254
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.Throwable t
        10: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* name */
            invokevirtual org.apache.catalina.core.ApplicationContext.getServlet:(Ljava/lang/String;)Ljavax/servlet/Servlet;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   11     1  name  Ljava/lang/String;
            6   10     2     t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.Throwable
    Exceptions:
      throws javax.servlet.ServletException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<javax.servlet.Servlet> getServlets();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 269
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 270
            aload 0 /* this */
            ldc "getServlets"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Enumeration
            areturn
         2: .line 272
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getServlets:()Ljava/util/Enumeration;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Enumeration<Ljavax/servlet/Servlet;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public java.util.Enumeration<java.lang.String> getServletNames();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 284
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 285
            aload 0 /* this */
            ldc "getServletNames"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Enumeration
            areturn
         2: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getServletNames:()Ljava/util/Enumeration;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Enumeration<Ljava/lang/String;>;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public void log(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String msg
         0: .line 294
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 295
            aload 0 /* this */
            ldc "log"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* msg */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 296
            goto 4
         3: .line 297
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* msg */
            invokevirtual org.apache.catalina.core.ApplicationContext.log:(Ljava/lang/String;)V
         4: .line 299
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String msg
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      msg   

  public void log(java.lang.Exception, java.lang.String);
    descriptor: (Ljava/lang/Exception;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.Exception exception
        start local 2 // java.lang.String msg
         0: .line 309
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 310
            aload 0 /* this */
            ldc "log"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Exception;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/String;
            aastore
         2: .line 311
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* exception */
            aastore
            dup
            iconst_1
            aload 2 /* msg */
            aastore
         3: .line 310
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 312
            goto 6
         5: .line 313
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* exception */
            aload 2 /* msg */
            invokevirtual org.apache.catalina.core.ApplicationContext.log:(Ljava/lang/Exception;Ljava/lang/String;)V
         6: .line 315
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String msg
        end local 1 // java.lang.Exception exception
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    7     1  exception  Ljava/lang/Exception;
            0    7     2        msg  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      exception  
      msg        

  public void log(java.lang.String, java.lang.Throwable);
    descriptor: (Ljava/lang/String;Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String message
        start local 2 // java.lang.Throwable throwable
         0: .line 320
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 321
            aload 0 /* this */
            ldc "log"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/Throwable;
            aastore
         2: .line 322
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* message */
            aastore
            dup
            iconst_1
            aload 2 /* throwable */
            aastore
         3: .line 321
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 323
            goto 6
         5: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* message */
            aload 2 /* throwable */
            invokevirtual org.apache.catalina.core.ApplicationContext.log:(Ljava/lang/String;Ljava/lang/Throwable;)V
         6: .line 326
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Throwable throwable
        end local 1 // java.lang.String message
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    7     1    message  Ljava/lang/String;
            0    7     2  throwable  Ljava/lang/Throwable;
    MethodParameters:
           Name  Flags
      message    
      throwable  

  public java.lang.String getRealPath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String path
         0: .line 331
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 332
            aload 0 /* this */
            ldc "getRealPath"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* path */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 334
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* path */
            invokevirtual org.apache.catalina.core.ApplicationContext.getRealPath:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    3     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public java.lang.String getServerInfo();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 341
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 342
            aload 0 /* this */
            ldc "getServerInfo"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getServerInfo:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public java.lang.String getInitParameter(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String name
         0: .line 351
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 352
            aload 0 /* this */
            ldc "getInitParameter"
         2: .line 353
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
         3: .line 352
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         4: .line 355
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* name */
            invokevirtual org.apache.catalina.core.ApplicationContext.getInitParameter:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<java.lang.String> getInitParameterNames();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 363
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 364
            aload 0 /* this */
         2: .line 365
            ldc "getInitParameterNames"
            aconst_null
         3: .line 364
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Enumeration
            areturn
         4: .line 367
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getInitParameterNames:()Ljava/util/Enumeration;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Enumeration<Ljava/lang/String;>;

  public java.lang.Object getAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String name
         0: .line 374
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 375
            aload 0 /* this */
            ldc "getAttribute"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            areturn
         2: .line 377
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* name */
            invokevirtual org.apache.catalina.core.ApplicationContext.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    3     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<java.lang.String> getAttributeNames();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 385
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 386
            aload 0 /* this */
         2: .line 387
            ldc "getAttributeNames"
            aconst_null
         3: .line 386
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Enumeration
            areturn
         4: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getAttributeNames:()Ljava/util/Enumeration;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Enumeration<Ljava/lang/String;>;

  public void setAttribute(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Object object
         0: .line 396
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 397
            aload 0 /* this */
            ldc "setAttribute"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
            dup
            iconst_1
            aload 2 /* object */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 398
            goto 4
         3: .line 399
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* name */
            aload 2 /* object */
            invokevirtual org.apache.catalina.core.ApplicationContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
         4: .line 401
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object object
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1    name  Ljava/lang/String;
            0    5     2  object  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      name    
      object  

  public void removeAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String name
         0: .line 406
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 407
            aload 0 /* this */
            ldc "removeAttribute"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 408
            goto 4
         3: .line 409
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* name */
            invokevirtual org.apache.catalina.core.ApplicationContext.removeAttribute:(Ljava/lang/String;)V
         4: .line 411
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public java.lang.String getServletContextName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 416
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 417
            aload 0 /* this */
            ldc "getServletContextName"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getServletContextName:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public java.lang.String getContextPath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 426
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 427
            aload 0 /* this */
            ldc "getContextPath"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 429
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getContextPath:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public javax.servlet.FilterRegistration$Dynamic addFilter(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavax/servlet/FilterRegistration$Dynamic;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String filterName
        start local 2 // java.lang.String className
         0: .line 437
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 438
            aload 0 /* this */
         2: .line 439
            ldc "addFilter"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* filterName */
            aastore
            dup
            iconst_1
            aload 2 /* className */
            aastore
         3: .line 438
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.FilterRegistration$Dynamic
            areturn
         4: .line 441
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* filterName */
            aload 2 /* className */
            invokevirtual org.apache.catalina.core.ApplicationContext.addFilter:(Ljava/lang/String;Ljava/lang/String;)Ljavax/servlet/FilterRegistration$Dynamic;
            areturn
        end local 2 // java.lang.String className
        end local 1 // java.lang.String filterName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  filterName  Ljava/lang/String;
            0    5     2   className  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      filterName  
      className   

  public javax.servlet.FilterRegistration$Dynamic addFilter(java.lang.String, javax.servlet.Filter);
    descriptor: (Ljava/lang/String;Ljavax/servlet/Filter;)Ljavax/servlet/FilterRegistration$Dynamic;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String filterName
        start local 2 // javax.servlet.Filter filter
         0: .line 449
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 450
            aload 0 /* this */
            ldc "addFilter"
         2: .line 451
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljavax/servlet/Filter;
            aastore
         3: .line 452
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* filterName */
            aastore
            dup
            iconst_1
            aload 2 /* filter */
            aastore
         4: .line 450
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.FilterRegistration$Dynamic
            areturn
         5: .line 454
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* filterName */
            aload 2 /* filter */
            invokevirtual org.apache.catalina.core.ApplicationContext.addFilter:(Ljava/lang/String;Ljavax/servlet/Filter;)Ljavax/servlet/FilterRegistration$Dynamic;
            areturn
        end local 2 // javax.servlet.Filter filter
        end local 1 // java.lang.String filterName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    6     1  filterName  Ljava/lang/String;
            0    6     2      filter  Ljavax/servlet/Filter;
    MethodParameters:
            Name  Flags
      filterName  
      filter      

  public javax.servlet.FilterRegistration$Dynamic addFilter(java.lang.String, java.lang.Class<? extends javax.servlet.Filter>);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)Ljavax/servlet/FilterRegistration$Dynamic;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String filterName
        start local 2 // java.lang.Class filterClass
         0: .line 462
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 463
            aload 0 /* this */
            ldc "addFilter"
         2: .line 464
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/Class;
            aastore
         3: .line 465
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* filterName */
            aastore
            dup
            iconst_1
            aload 2 /* filterClass */
            aastore
         4: .line 463
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.FilterRegistration$Dynamic
            areturn
         5: .line 467
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* filterName */
            aload 2 /* filterClass */
            invokevirtual org.apache.catalina.core.ApplicationContext.addFilter:(Ljava/lang/String;Ljava/lang/Class;)Ljavax/servlet/FilterRegistration$Dynamic;
            areturn
        end local 2 // java.lang.Class filterClass
        end local 1 // java.lang.String filterName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    6     1   filterName  Ljava/lang/String;
            0    6     2  filterClass  Ljava/lang/Class<+Ljavax/servlet/Filter;>;
    Signature: (Ljava/lang/String;Ljava/lang/Class<+Ljavax/servlet/Filter;>;)Ljavax/servlet/FilterRegistration$Dynamic;
    MethodParameters:
             Name  Flags
      filterName   
      filterClass  

  public <T extends javax.servlet.Filter> T createFilter(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljavax/servlet/Filter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.Class c
         0: .line 475
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 10
         1: .line 477
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            ldc "createFilter"
         2: .line 478
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* c */
            aastore
         3: .line 477
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.invokeMethod:(Lorg/apache/catalina/core/ApplicationContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.Filter
         4: areturn
         5: .line 479
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* t */
        start local 2 // java.lang.Throwable t
         6: .line 480
            aload 2 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         7: .line 481
            aload 2 /* t */
            instanceof javax.servlet.ServletException
            ifeq 9
         8: .line 482
            aload 2 /* t */
            checkcast javax.servlet.ServletException
            athrow
         9: .line 484
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.Throwable t
        10: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* c */
            invokevirtual org.apache.catalina.core.ApplicationContext.createFilter:(Ljava/lang/Class;)Ljavax/servlet/Filter;
            areturn
        end local 1 // java.lang.Class c
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   11     1     c  Ljava/lang/Class<TT;>;
            6   10     2     t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.Throwable
    Exceptions:
      throws javax.servlet.ServletException
    Signature: <T::Ljavax/servlet/Filter;>(Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
      Name  Flags
      c     

  public javax.servlet.FilterRegistration getFilterRegistration(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/servlet/FilterRegistration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String filterName
         0: .line 494
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 495
            aload 0 /* this */
         2: .line 496
            ldc "getFilterRegistration"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* filterName */
            aastore
         3: .line 495
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.FilterRegistration
            areturn
         4: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* filterName */
            invokevirtual org.apache.catalina.core.ApplicationContext.getFilterRegistration:(Ljava/lang/String;)Ljavax/servlet/FilterRegistration;
            areturn
        end local 1 // java.lang.String filterName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  filterName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      filterName  

  public javax.servlet.ServletRegistration$Dynamic addServlet(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavax/servlet/ServletRegistration$Dynamic;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String servletName
        start local 2 // java.lang.String className
         0: .line 506
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 507
            aload 0 /* this */
         2: .line 508
            ldc "addServlet"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* servletName */
            aastore
            dup
            iconst_1
            aload 2 /* className */
            aastore
         3: .line 507
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.ServletRegistration$Dynamic
            areturn
         4: .line 510
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* servletName */
            aload 2 /* className */
            invokevirtual org.apache.catalina.core.ApplicationContext.addServlet:(Ljava/lang/String;Ljava/lang/String;)Ljavax/servlet/ServletRegistration$Dynamic;
            areturn
        end local 2 // java.lang.String className
        end local 1 // java.lang.String servletName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  servletName  Ljava/lang/String;
            0    5     2    className  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      servletName  
      className    

  public javax.servlet.ServletRegistration$Dynamic addServlet(java.lang.String, javax.servlet.Servlet);
    descriptor: (Ljava/lang/String;Ljavax/servlet/Servlet;)Ljavax/servlet/ServletRegistration$Dynamic;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String servletName
        start local 2 // javax.servlet.Servlet servlet
         0: .line 518
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 519
            aload 0 /* this */
            ldc "addServlet"
         2: .line 520
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljavax/servlet/Servlet;
            aastore
         3: .line 521
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* servletName */
            aastore
            dup
            iconst_1
            aload 2 /* servlet */
            aastore
         4: .line 519
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.ServletRegistration$Dynamic
            areturn
         5: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* servletName */
            aload 2 /* servlet */
            invokevirtual org.apache.catalina.core.ApplicationContext.addServlet:(Ljava/lang/String;Ljavax/servlet/Servlet;)Ljavax/servlet/ServletRegistration$Dynamic;
            areturn
        end local 2 // javax.servlet.Servlet servlet
        end local 1 // java.lang.String servletName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    6     1  servletName  Ljava/lang/String;
            0    6     2      servlet  Ljavax/servlet/Servlet;
    MethodParameters:
             Name  Flags
      servletName  
      servlet      

  public javax.servlet.ServletRegistration$Dynamic addServlet(java.lang.String, java.lang.Class<? extends javax.servlet.Servlet>);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)Ljavax/servlet/ServletRegistration$Dynamic;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String servletName
        start local 2 // java.lang.Class servletClass
         0: .line 531
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 532
            aload 0 /* this */
            ldc "addServlet"
         2: .line 533
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/Class;
            aastore
         3: .line 534
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* servletName */
            aastore
            dup
            iconst_1
            aload 2 /* servletClass */
            aastore
         4: .line 532
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.ServletRegistration$Dynamic
            areturn
         5: .line 536
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* servletName */
            aload 2 /* servletClass */
            invokevirtual org.apache.catalina.core.ApplicationContext.addServlet:(Ljava/lang/String;Ljava/lang/Class;)Ljavax/servlet/ServletRegistration$Dynamic;
            areturn
        end local 2 // java.lang.Class servletClass
        end local 1 // java.lang.String servletName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    6     1   servletName  Ljava/lang/String;
            0    6     2  servletClass  Ljava/lang/Class<+Ljavax/servlet/Servlet;>;
    Signature: (Ljava/lang/String;Ljava/lang/Class<+Ljavax/servlet/Servlet;>;)Ljavax/servlet/ServletRegistration$Dynamic;
    MethodParameters:
              Name  Flags
      servletName   
      servletClass  

  public javax.servlet.ServletRegistration$Dynamic addJspFile(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljavax/servlet/ServletRegistration$Dynamic;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String jspName
        start local 2 // java.lang.String jspFile
         0: .line 543
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 544
            aload 0 /* this */
            ldc "addJspFile"
         2: .line 545
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* jspName */
            aastore
            dup
            iconst_1
            aload 2 /* jspFile */
            aastore
         3: .line 544
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.ServletRegistration$Dynamic
            areturn
         4: .line 547
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* jspName */
            aload 2 /* jspFile */
            invokevirtual org.apache.catalina.core.ApplicationContext.addJspFile:(Ljava/lang/String;Ljava/lang/String;)Ljavax/servlet/ServletRegistration$Dynamic;
            areturn
        end local 2 // java.lang.String jspFile
        end local 1 // java.lang.String jspName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  jspName  Ljava/lang/String;
            0    5     2  jspFile  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      jspName  
      jspFile  

  public <T extends javax.servlet.Servlet> T createServlet(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljavax/servlet/Servlet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.Class c
         0: .line 556
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 10
         1: .line 558
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            ldc "createServlet"
         2: .line 559
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* c */
            aastore
         3: .line 558
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.invokeMethod:(Lorg/apache/catalina/core/ApplicationContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.Servlet
         4: areturn
         5: .line 560
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* t */
        start local 2 // java.lang.Throwable t
         6: .line 561
            aload 2 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         7: .line 562
            aload 2 /* t */
            instanceof javax.servlet.ServletException
            ifeq 9
         8: .line 563
            aload 2 /* t */
            checkcast javax.servlet.ServletException
            athrow
         9: .line 565
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.Throwable t
        10: .line 568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* c */
            invokevirtual org.apache.catalina.core.ApplicationContext.createServlet:(Ljava/lang/Class;)Ljavax/servlet/Servlet;
            areturn
        end local 1 // java.lang.Class c
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   11     1     c  Ljava/lang/Class<TT;>;
            6   10     2     t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.Throwable
    Exceptions:
      throws javax.servlet.ServletException
    Signature: <T::Ljavax/servlet/Servlet;>(Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
      Name  Flags
      c     

  public javax.servlet.ServletRegistration getServletRegistration(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljavax/servlet/ServletRegistration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String servletName
         0: .line 575
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 576
            aload 0 /* this */
         2: .line 577
            ldc "getServletRegistration"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* servletName */
            aastore
         3: .line 576
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.ServletRegistration
            areturn
         4: .line 579
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* servletName */
            invokevirtual org.apache.catalina.core.ApplicationContext.getServletRegistration:(Ljava/lang/String;)Ljavax/servlet/ServletRegistration;
            areturn
        end local 1 // java.lang.String servletName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  servletName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      servletName  

  public java.util.Set<javax.servlet.SessionTrackingMode> getDefaultSessionTrackingModes();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 587
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 589
            aload 0 /* this */
            ldc "getDefaultSessionTrackingModes"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 588
            checkcast java.util.Set
            areturn
         3: .line 591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getDefaultSessionTrackingModes:()Ljava/util/Set;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Set<Ljavax/servlet/SessionTrackingMode;>;

  public java.util.Set<javax.servlet.SessionTrackingMode> getEffectiveSessionTrackingModes();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 598
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 600
            aload 0 /* this */
            ldc "getEffectiveSessionTrackingModes"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 599
            checkcast java.util.Set
            areturn
         3: .line 602
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getEffectiveSessionTrackingModes:()Ljava/util/Set;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Set<Ljavax/servlet/SessionTrackingMode;>;

  public javax.servlet.SessionCookieConfig getSessionCookieConfig();
    descriptor: ()Ljavax/servlet/SessionCookieConfig;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 609
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 611
            aload 0 /* this */
            ldc "getSessionCookieConfig"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
         2: .line 610
            checkcast javax.servlet.SessionCookieConfig
            areturn
         3: .line 613
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getSessionCookieConfig:()Ljavax/servlet/SessionCookieConfig;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public void setSessionTrackingModes(java.util.Set<javax.servlet.SessionTrackingMode>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.util.Set sessionTrackingModes
         0: .line 621
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 622
            aload 0 /* this */
            ldc "setSessionTrackingModes"
         2: .line 623
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* sessionTrackingModes */
            aastore
         3: .line 622
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 624
            goto 6
         5: .line 625
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* sessionTrackingModes */
            invokevirtual org.apache.catalina.core.ApplicationContext.setSessionTrackingModes:(Ljava/util/Set;)V
         6: .line 627
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Set sessionTrackingModes
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    7     0                  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    7     1  sessionTrackingModes  Ljava/util/Set<Ljavax/servlet/SessionTrackingMode;>;
    Signature: (Ljava/util/Set<Ljavax/servlet/SessionTrackingMode;>;)V
    MethodParameters:
                      Name  Flags
      sessionTrackingModes  

  public boolean setInitParameter(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String value
         0: .line 632
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 6
         1: .line 633
            aload 0 /* this */
            ldc "setInitParameter"
         2: .line 634
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            aastore
            dup
            iconst_1
            aload 2 /* value */
            aastore
         3: .line 633
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
         4: .line 634
            invokevirtual java.lang.Boolean.booleanValue:()Z
         5: .line 633
            ireturn
         6: .line 636
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* name */
            aload 2 /* value */
            invokevirtual org.apache.catalina.core.ApplicationContext.setInitParameter:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
        end local 2 // java.lang.String value
        end local 1 // java.lang.String name
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    7     1   name  Ljava/lang/String;
            0    7     2  value  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      name   
      value  

  public void addListener(java.lang.Class<? extends java.util.EventListener>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.Class listenerClass
         0: .line 643
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 6
         1: .line 644
            aload 0 /* this */
            ldc "addListener"
         2: .line 645
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Class;
            aastore
         3: .line 646
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* listenerClass */
            aastore
         4: .line 644
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 647
            goto 7
         6: .line 648
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* listenerClass */
            invokevirtual org.apache.catalina.core.ApplicationContext.addListener:(Ljava/lang/Class;)V
         7: .line 650
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Class listenerClass
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0           this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    8     1  listenerClass  Ljava/lang/Class<+Ljava/util/EventListener;>;
    Signature: (Ljava/lang/Class<+Ljava/util/EventListener;>;)V
    MethodParameters:
               Name  Flags
      listenerClass  

  public void addListener(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String className
         0: .line 655
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 5
         1: .line 656
            aload 0 /* this */
            ldc "addListener"
         2: .line 657
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* className */
            aastore
         3: .line 656
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 658
            goto 6
         5: .line 659
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* className */
            invokevirtual org.apache.catalina.core.ApplicationContext.addListener:(Ljava/lang/String;)V
         6: .line 661
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String className
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    7     1  className  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      className  

  public <T extends java.util.EventListener> void addListener();
    descriptor: (Ljava/util/EventListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.util.EventListener t
         0: .line 666
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 6
         1: .line 667
            aload 0 /* this */
            ldc "addListener"
         2: .line 668
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/util/EventListener;
            aastore
         3: .line 669
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* t */
            aastore
         4: .line 667
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 670
            goto 7
         6: .line 671
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* t */
            invokevirtual org.apache.catalina.core.ApplicationContext.addListener:(Ljava/util/EventListener;)V
         7: .line 673
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.EventListener t
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    8     1     t  TT;
    Signature: <T::Ljava/util/EventListener;>(TT;)V
    MethodParameters:
      Name  Flags
      t     

  public <T extends java.util.EventListener> T createListener(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/util/EventListener;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.Class c
         0: .line 680
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 10
         1: .line 682
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            ldc "createListener"
         2: .line 683
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* c */
            aastore
         3: .line 682
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.invokeMethod:(Lorg/apache/catalina/core/ApplicationContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.EventListener
         4: areturn
         5: .line 684
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* t */
        start local 2 // java.lang.Throwable t
         6: .line 685
            aload 2 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         7: .line 686
            aload 2 /* t */
            instanceof javax.servlet.ServletException
            ifeq 9
         8: .line 687
            aload 2 /* t */
            checkcast javax.servlet.ServletException
            athrow
         9: .line 689
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.Throwable t
        10: .line 692
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* c */
            invokevirtual org.apache.catalina.core.ApplicationContext.createListener:(Ljava/lang/Class;)Ljava/util/EventListener;
            areturn
        end local 1 // java.lang.Class c
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   11     1     c  Ljava/lang/Class<TT;>;
            6   10     2     t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     4       5  Class java.lang.Throwable
    Exceptions:
      throws javax.servlet.ServletException
    Signature: <T::Ljava/util/EventListener;>(Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
      Name  Flags
      c     

  public void declareRoles(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String[] roleNames
         0: .line 699
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 700
            aload 0 /* this */
            ldc "declareRoles"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* roleNames */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 701
            goto 4
         3: .line 702
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* roleNames */
            invokevirtual org.apache.catalina.core.ApplicationContext.declareRoles:([Ljava/lang/String;)V
         4: .line 704
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String[] roleNames
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  roleNames  [Ljava/lang/String;
    MethodParameters:
           Name  Flags
      roleNames  

  public java.lang.ClassLoader getClassLoader();
    descriptor: ()Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 709
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 710
            aload 0 /* this */
            ldc "getClassLoader"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.ClassLoader
            areturn
         2: .line 712
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getClassLoader:()Ljava/lang/ClassLoader;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public int getEffectiveMajorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 719
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 6
         1: .line 720
            aload 0 /* this */
            ldc "getEffectiveMajorVersion"
         2: .line 721
            aconst_null
         3: .line 720
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
         4: .line 721
            invokevirtual java.lang.Integer.intValue:()I
         5: .line 720
            ireturn
         6: .line 723
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getEffectiveMajorVersion:()I
            ireturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public int getEffectiveMinorVersion();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 730
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 6
         1: .line 731
            aload 0 /* this */
            ldc "getEffectiveMinorVersion"
         2: .line 732
            aconst_null
         3: .line 731
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
         4: .line 732
            invokevirtual java.lang.Integer.intValue:()I
         5: .line 731
            ireturn
         6: .line 734
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getEffectiveMinorVersion:()I
            ireturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public java.util.Map<java.lang.String, ? extends javax.servlet.FilterRegistration> getFilterRegistrations();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 742
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 743
            aload 0 /* this */
         2: .line 744
            ldc "getFilterRegistrations"
            aconst_null
         3: .line 743
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
            areturn
         4: .line 746
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getFilterRegistrations:()Ljava/util/Map;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Map<Ljava/lang/String;+Ljavax/servlet/FilterRegistration;>;

  public javax.servlet.descriptor.JspConfigDescriptor getJspConfigDescriptor();
    descriptor: ()Ljavax/servlet/descriptor/JspConfigDescriptor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 753
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 754
            aload 0 /* this */
            ldc "getJspConfigDescriptor"
         2: .line 755
            aconst_null
         3: .line 754
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.servlet.descriptor.JspConfigDescriptor
            areturn
         4: .line 757
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getJspConfigDescriptor:()Ljavax/servlet/descriptor/JspConfigDescriptor;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public java.util.Map<java.lang.String, ? extends javax.servlet.ServletRegistration> getServletRegistrations();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 765
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 4
         1: .line 766
            aload 0 /* this */
         2: .line 767
            ldc "getServletRegistrations"
            aconst_null
         3: .line 766
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
            areturn
         4: .line 769
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getServletRegistrations:()Ljava/util/Map;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;
    Signature: ()Ljava/util/Map<Ljava/lang/String;+Ljavax/servlet/ServletRegistration;>;

  public java.lang.String getVirtualServerName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 776
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 777
            aload 0 /* this */
            ldc "getVirtualServerName"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 779
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getVirtualServerName:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public int getSessionTimeout();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 786
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 787
            aload 0 /* this */
            ldc "getSessionTimeout"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
         2: .line 789
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getSessionTimeout:()I
            ireturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public void setSessionTimeout(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // int sessionTimeout
         0: .line 796
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 797
            aload 0 /* this */
            ldc "setSessionTimeout"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 1 /* sessionTimeout */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 798
            goto 4
         3: .line 799
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            iload 1 /* sessionTimeout */
            invokevirtual org.apache.catalina.core.ApplicationContext.setSessionTimeout:(I)V
         4: .line 801
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int sessionTimeout
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  sessionTimeout  I
    MethodParameters:
                Name  Flags
      sessionTimeout  

  public java.lang.String getRequestCharacterEncoding();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 806
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 807
            aload 0 /* this */
            ldc "getRequestCharacterEncoding"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 809
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getRequestCharacterEncoding:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public void setRequestCharacterEncoding(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String encoding
         0: .line 816
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 817
            aload 0 /* this */
            ldc "setRequestCharacterEncoding"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* encoding */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 818
            goto 4
         3: .line 819
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* encoding */
            invokevirtual org.apache.catalina.core.ApplicationContext.setRequestCharacterEncoding:(Ljava/lang/String;)V
         4: .line 821
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String encoding
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  encoding  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      encoding  

  public java.lang.String getResponseCharacterEncoding();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
         0: .line 826
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 2
         1: .line 827
            aload 0 /* this */
            ldc "getResponseCharacterEncoding"
            aconst_null
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            areturn
         2: .line 829
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual org.apache.catalina.core.ApplicationContext.getResponseCharacterEncoding:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/catalina/core/ApplicationContextFacade;

  public void setResponseCharacterEncoding(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String encoding
         0: .line 836
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 837
            aload 0 /* this */
            ldc "setResponseCharacterEncoding"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* encoding */
            aastore
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.doPrivileged:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 838
            goto 4
         3: .line 839
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* encoding */
            invokevirtual org.apache.catalina.core.ApplicationContext.setResponseCharacterEncoding:(Ljava/lang/String;)V
         4: .line 841
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String encoding
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  encoding  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      encoding  

  private java.lang.Object doPrivileged(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String methodName
        start local 2 // java.lang.Object[] params
         0: .line 852
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 1 /* methodName */
            aload 2 /* params */
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.invokeMethod:(Lorg/apache/catalina/core/ApplicationContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
         1: areturn
         2: .line 853
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3 /* t */
        start local 3 // java.lang.Throwable t
         3: .line 854
            aload 3 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         4: .line 855
            new java.lang.RuntimeException
            dup
            aload 3 /* t */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            aload 3 /* t */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.Throwable t
        end local 2 // java.lang.Object[] params
        end local 1 // java.lang.String methodName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    5     1  methodName  Ljava/lang/String;
            0    5     2      params  [Ljava/lang/Object;
            3    5     3           t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
    MethodParameters:
            Name  Flags
      methodName  final
      params      final

  private java.lang.Object invokeMethod(org.apache.catalina.core.ApplicationContext, java.lang.String, java.lang.Object[]);
    descriptor: (Lorg/apache/catalina/core/ApplicationContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // org.apache.catalina.core.ApplicationContext appContext
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.Object[] params
         0: .line 874
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.objectCache:Ljava/util/Map;
            aload 2 /* methodName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.reflect.Method
            astore 4 /* method */
        start local 4 // java.lang.reflect.Method method
         1: .line 875
            aload 4 /* method */
            ifnonnull 6
         2: .line 876
            aload 1 /* appContext */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
         3: .line 877
            aload 2 /* methodName */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.classCache:Ljava/util/Map;
            aload 2 /* methodName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Class[]
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
         4: .line 876
            astore 4 /* method */
         5: .line 878
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.objectCache:Ljava/util/Map;
            aload 2 /* methodName */
            aload 4 /* method */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 881
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
            aload 0 /* this */
            aload 4 /* method */
            aload 1 /* appContext */
            aload 3 /* params */
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.executeMethod:(Ljava/lang/reflect/Method;Lorg/apache/catalina/core/ApplicationContext;[Ljava/lang/Object;)Ljava/lang/Object;
            astore 6
         7: .line 886
            aconst_null
            astore 3 /* params */
         8: .line 881
            aload 6
            areturn
        end local 4 // java.lang.reflect.Method method
         9: .line 882
      StackMap locals: org.apache.catalina.core.ApplicationContextFacade org.apache.catalina.core.ApplicationContext java.lang.String java.lang.Object[]
      StackMap stack: java.lang.Exception
            astore 4 /* ex */
        start local 4 // java.lang.Exception ex
        10: .line 883
            aload 0 /* this */
            aload 4 /* ex */
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.handleException:(Ljava/lang/Exception;)V
        11: .line 886
            aconst_null
            astore 3 /* params */
        12: .line 884
            aconst_null
            areturn
        end local 4 // java.lang.Exception ex
        13: .line 885
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        14: .line 886
            aconst_null
            astore 3 /* params */
        15: .line 887
            aload 5
            athrow
        end local 3 // java.lang.Object[] params
        end local 2 // java.lang.String methodName
        end local 1 // org.apache.catalina.core.ApplicationContext appContext
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   16     1  appContext  Lorg/apache/catalina/core/ApplicationContext;
            0   16     2  methodName  Ljava/lang/String;
            0   16     3      params  [Ljava/lang/Object;
            1    9     4      method  Ljava/lang/reflect/Method;
           10   13     4          ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     7       9  Class java.lang.Exception
           0     7      13  any
           9    11      13  any
    Exceptions:
      throws java.lang.Throwable
    MethodParameters:
            Name  Flags
      appContext  
      methodName  final
      params      

  private  doPrivileged(java.lang.String, java.lang.Class<?>[], []);
    descriptor: (Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.String methodName
        start local 2 // java.lang.Class[] clazz
        start local 3 // java.lang.Object[] params
         0: .line 902
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* methodName */
            aload 2 /* clazz */
            invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 4 /* method */
        start local 4 // java.lang.reflect.Method method
         1: .line 903
            aload 0 /* this */
            aload 4 /* method */
            aload 0 /* this */
            getfield org.apache.catalina.core.ApplicationContextFacade.context:Lorg/apache/catalina/core/ApplicationContext;
            aload 3 /* params */
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.executeMethod:(Ljava/lang/reflect/Method;Lorg/apache/catalina/core/ApplicationContext;[Ljava/lang/Object;)Ljava/lang/Object;
            astore 7
         2: .line 913
            aconst_null
            astore 3 /* params */
         3: .line 903
            aload 7
            areturn
        end local 4 // java.lang.reflect.Method method
         4: .line 904
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* ex */
        start local 4 // java.lang.Exception ex
         5: .line 906
            aload 0 /* this */
            aload 4 /* ex */
            invokevirtual org.apache.catalina.core.ApplicationContextFacade.handleException:(Ljava/lang/Exception;)V
         6: .line 907
            goto 10
      StackMap locals: org.apache.catalina.core.ApplicationContextFacade java.lang.String java.lang.Class[] java.lang.Object[] java.lang.Exception
      StackMap stack: java.lang.Throwable
         7: astore 5 /* t */
        start local 5 // java.lang.Throwable t
         8: .line 908
            aload 5 /* t */
            invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
         9: .line 909
            new java.lang.RuntimeException
            dup
            aload 5 /* t */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.Throwable t
        10: .line 913
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* params */
        11: .line 911
            aconst_null
            areturn
        end local 4 // java.lang.Exception ex
        12: .line 912
      StackMap locals: org.apache.catalina.core.ApplicationContextFacade java.lang.String java.lang.Class[] java.lang.Object[]
      StackMap stack: java.lang.Throwable
            astore 6
        13: .line 913
            aconst_null
            astore 3 /* params */
        14: .line 914
            aload 6
            athrow
        end local 3 // java.lang.Object[] params
        end local 2 // java.lang.Class[] clazz
        end local 1 // java.lang.String methodName
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0   15     1  methodName  Ljava/lang/String;
            0   15     2       clazz  [Ljava/lang/Class;
            0   15     3      params  [Ljava/lang/Object;
            1    4     4      method  Ljava/lang/reflect/Method;
            5   12     4          ex  Ljava/lang/Exception;
            8   10     5           t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     2       4  Class java.lang.Exception
           5     6       7  Class java.lang.Throwable
           0     2      12  any
           4    10      12  any
    Signature: (Ljava/lang/String;[Ljava/lang/Class<*>;[Ljava/lang/Object;)Ljava/lang/Object;
    MethodParameters:
            Name  Flags
      methodName  final
      clazz       final
      params      

  private java.lang.Object executeMethod(java.lang.reflect.Method, org.apache.catalina.core.ApplicationContext, java.lang.Object[]);
    descriptor: (Ljava/lang/reflect/Method;Lorg/apache/catalina/core/ApplicationContext;[Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.reflect.Method method
        start local 2 // org.apache.catalina.core.ApplicationContext context
        start local 3 // java.lang.Object[] params
         0: .line 932
            invokestatic org.apache.catalina.security.SecurityUtil.isPackageProtectionEnabled:()Z
            ifeq 3
         1: .line 934
            new org.apache.catalina.core.ApplicationContextFacade$PrivilegedExecuteMethod
            dup
            aload 1 /* method */
            aload 2 /* context */
            aload 3 /* params */
            invokespecial org.apache.catalina.core.ApplicationContextFacade$PrivilegedExecuteMethod.<init>:(Ljava/lang/reflect/Method;Lorg/apache/catalina/core/ApplicationContext;[Ljava/lang/Object;)V
         2: .line 933
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            areturn
         3: .line 936
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            aload 2 /* context */
            aload 3 /* params */
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // java.lang.Object[] params
        end local 2 // org.apache.catalina.core.ApplicationContext context
        end local 1 // java.lang.reflect.Method method
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    4     1   method  Ljava/lang/reflect/Method;
            0    4     2  context  Lorg/apache/catalina/core/ApplicationContext;
            0    4     3   params  [Ljava/lang/Object;
    Exceptions:
      throws java.security.PrivilegedActionException, java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException
    MethodParameters:
         Name  Flags
      method   final
      context  final
      params   final

  private void handleException(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // org.apache.catalina.core.ApplicationContextFacade this
        start local 1 // java.lang.Exception ex
         0: .line 951
            aload 1 /* ex */
            instanceof java.security.PrivilegedActionException
            ifeq 2
         1: .line 952
            aload 1 /* ex */
            checkcast java.security.PrivilegedActionException
            invokevirtual java.security.PrivilegedActionException.getException:()Ljava/lang/Exception;
            astore 1 /* ex */
         2: .line 955
      StackMap locals:
      StackMap stack:
            aload 1 /* ex */
            instanceof java.lang.reflect.InvocationTargetException
            ifeq 7
         3: .line 956
            aload 1 /* ex */
            invokevirtual java.lang.Exception.getCause:()Ljava/lang/Throwable;
            astore 2 /* realException */
        start local 2 // java.lang.Throwable realException
         4: .line 957
            aload 2 /* realException */
            ifnonnull 8
         5: .line 958
            aload 1 /* ex */
            astore 2 /* realException */
         6: .line 960
            goto 8
        end local 2 // java.lang.Throwable realException
         7: .line 961
      StackMap locals:
      StackMap stack:
            aload 1 /* ex */
            astore 2 /* realException */
        start local 2 // java.lang.Throwable realException
         8: .line 964
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 2 /* realException */
            athrow
        end local 2 // java.lang.Throwable realException
        end local 1 // java.lang.Exception ex
        end local 0 // org.apache.catalina.core.ApplicationContextFacade this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lorg/apache/catalina/core/ApplicationContextFacade;
            0    9     1             ex  Ljava/lang/Exception;
            4    7     2  realException  Ljava/lang/Throwable;
            8    9     2  realException  Ljava/lang/Throwable;
    Exceptions:
      throws java.lang.Throwable
    MethodParameters:
      Name  Flags
      ex    
}
SourceFile: "ApplicationContextFacade.java"
NestMembers:
  org.apache.catalina.core.ApplicationContextFacade$PrivilegedExecuteMethod
InnerClasses:
  public abstract Dynamic = javax.servlet.FilterRegistration$Dynamic of javax.servlet.FilterRegistration
  public abstract Dynamic = javax.servlet.ServletRegistration$Dynamic of javax.servlet.ServletRegistration
  private PrivilegedExecuteMethod = org.apache.catalina.core.ApplicationContextFacade$PrivilegedExecuteMethod of org.apache.catalina.core.ApplicationContextFacade